import { v1 } from 'ask-smapi-model'; import { ControlManager } from '../controls/ControlManager'; import { BaseControlIntent } from '../intents/BaseControlIntent'; import { InteractionModelGenerator } from './InteractionModelGenerator'; import { ModelData } from './ModelTypes'; import InteractionModelData = v1.skill.interactionModel.InteractionModelData; /** * Interaction model generator for skills that use the Controls Framework. * * This class extends `InteractionModelGenerator` with Controls-specific functionality. */ export declare class ControlInteractionModelGenerator extends InteractionModelGenerator { targetSlotIds: Set; constructor(); /** * Adds content to the interaction model from a ControlManager. * * Behavior: * - Calls `controlManager.buildInteractionModel` to update the IM * - If any built-in controls are used, this also adds a dummy dialogModel to the * interaction model to ensure that Dialog.SlotElicitation directive can be used. * * Usage: * - If the built-in IM content does not include some desired locale, pass the * appropriate data during instantiation of the ControlManager. * * @param controlManager - Control manager */ buildCoreModelForControls(controlManager: ControlManager): ControlInteractionModelGenerator; build(): InteractionModelData; /** * Add AMAZON.YesIntent and AMAZON.NoIntent to the interaction model. */ addYesAndNoIntents(): ControlInteractionModelGenerator; /** * Adds the information from a ControlIntent to the interaction model. * * @param controlIntent - ControlIntent that extends `BaseControlIntent` * @param controlIMData - Localization data for built-ins. */ addControlIntent(controlIntent: BaseControlIntent, controlIMData: ModelData): this; ensureSlotIsDefined(controlId: string, slotType: string): void; ensureSlotIsNoneOrDefined(controlId: string, slotType: string): void; ensureSlotValueIDsAreDefined(controlId: string, slotType: string, slotValueIds: string[]): void; ensureSlotValueIdIsDefined(controlId: string, slotType: string, slotValue: string): void; } /** * Produces a lookup table of localized slot and intent definitions used when adding * built-ins to the interaction model. * * Usage: * - initiative i18next before calling this function. */ export declare function _generateModelData(): ModelData; //# sourceMappingURL=ControlInteractionModelGenerator.d.ts.map