import { Intent } from 'ask-sdk-model'; import { v1 } from 'ask-smapi-model'; import { BaseControlIntent } from './BaseControlIntent'; /** * Slot values conveyed by a ConjunctionControlIntent */ export interface ConjunctionControlIntentSlots { feedback?: string; action?: string; target?: string; 'action.a'?: string; 'target.a'?: string; 'action.b'?: string; 'target.b'?: string; } /** * Unpacks the complete intent object into a simpler representation. * * Note re "empty slots": * - Slots in the intent with no value appear in the intent object as "". * However, these are unpacked as **`undefined`** to be more explicit and ease * the implementation of predicates. * @param intent - Intent */ export declare function unpackConjunctionControlIntent(intent: Intent): ConjunctionControlIntentSlots; export declare function hasOneOrMoreTargets(input: ConjunctionControlIntentSlots | null): boolean; export declare function hasOneOrMoreActions(input: ConjunctionControlIntentSlots | null): boolean; export declare function areConjunctionIntentSlotsValid(input: ConjunctionControlIntentSlots | null): boolean; export interface ActionAndTask { action: string; target: string; } export declare function generateActionTaskPairs(input: ConjunctionControlIntentSlots): ActionAndTask[]; /** * Intent that conveys feedback, up to two actions, and up two targets. * * This intent is a generalization of GeneralControlIntent that can convey more * information. It is used to convey the intent of utterances such as * "Change both the start and end date" */ export declare class ConjunctionControlIntent extends BaseControlIntent { /** * Create Intent from specification of the slots */ static of(slots: ConjunctionControlIntentSlots): Intent; generateIntent(): v1.skill.interactionModel.Intent; private generateSlots; } //# sourceMappingURL=ConjunctionControlIntent.d.ts.map