import type { ActionsToDirective } from "../registry/types.js"; import type { AlexaActions } from "./enums.js"; /** * A semantics action mapping of 1.x: the phrases "open", "close", "raise", "lower" for one directive of the * capability it is added to. * * toggle.addActionMapping(new ActionMapping([AlexaActions.Close], "TurnOff")); * lift.addActionMapping(new ActionMapping([AlexaActions.Open], "SetRangeValue", { rangeValue: 100 })); */ export declare class ActionMapping { type: "ActionsToDirective"; actions: AlexaActions[]; directive: ActionsToDirective["directive"]; /** Set when the mapping was built in a way that 3.0 will refuse; the bridge logs it at the next discovery. */ readonly deprecation?: string; /** * directivePayload is the payload object of the directive (alexa-discovery-objects.html, "ActionMappings object"). * 1.x took a string and put it into discovery as one. A string that holds a JSON object is parsed; any other * string throws a DeclarationError. */ constructor(actions: AlexaActions[], directiveName: string, directivePayload?: Record | string); toJSON(): ActionsToDirective; }