"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TimeHoldController = void 0; const schema_js_1 = require("../schema.js"); const types_js_1 = require("../types.js"); /** * Pausing what a device does, a microwave that heats, and going on with it. Amazon pairs the interface with * Alexa.Cooking. Alexa sends Resume to a device declared with allowRemoteResume only; for another one it asks the * user to press start on the device. */ exports.TimeHoldController = (0, types_js_1.defineInterface)({ namespace: "Alexa.TimeHoldController", version: "3", doc: "https://developer.amazon.com/docs/alexaplus/device-apis/alexa-timeholdcontroller.html", kind: "controller", tier: 2, instanced: false, properties: { holdStartTime: { name: "holdStartTime", value: schema_js_1.s.dateTime() }, holdEndTime: { name: "holdEndTime", value: schema_js_1.s.dateTime() }, }, directives: { Hold: { name: "Hold", payload: schema_js_1.s.object({}) }, Resume: { name: "Resume", payload: schema_js_1.s.object({}), when: ({ options }) => options.allowRemoteResume !== false }, }, options: schema_js_1.s.object({ allowRemoteResume: schema_js_1.s.boolean(), }, { unknownKeys: "reject" }), // A capability declared the 1.x way has no allowRemoteResume; check() says so discovery: ({ options: { allowRemoteResume } }) => (allowRemoteResume === undefined ? {} : { configuration: { allowRemoteResume } }), });