import { s } from "../schema.js"; import { defineInterface } from "../types.js"; /** * A lock that takes more than five seconds answers with a DeferredResponse first and the Response when the bolt has * moved (alexa-lockcontroller.html, "Lock response"). The user enables unlocking by voice per device, in the Alexa app. */ export const LockController = defineInterface({ namespace: "Alexa.LockController", version: "3", doc: "https://developer.amazon.com/docs/alexaplus/device-apis/alexa-lockcontroller.html", kind: "controller", tier: 1, instanced: false, properties: { lockState: { name: "lockState", value: s.enum("LOCKED", "UNLOCKED", "JAMMED"), note: "JAMMED: the mechanism can reach neither LOCKED nor UNLOCKED", }, }, directives: { Lock: { name: "Lock", payload: s.object({}) }, Unlock: { name: "Unlock", payload: s.object({}) }, }, deferrable: true, });