import { TurnContext } from '@microsoft/agents-hosting'; import { Prompt, PromptOptions, PromptRecognizerResult, PromptValidator } from './prompt'; /** * Result returned by the {@link DateTimePrompt}. */ export interface DateTimeResolution { /** * TIMEX expression representing ambiguity of the recognized time. */ timex: string; /** * Type of time recognized. Possible values are 'date', 'time', 'datetime', 'daterange', * 'timerange', 'datetimerange', 'duration', or 'set'. */ type: string; /** * Value of the specified `type` that's a reasonable approximation given the ambiguity * of the `timex`. */ value: string; } /** * Prompts a user to enter a datetime expression. * * @remarks * By default the prompt will return to the calling dialog a {@link DateTimeResolution | DateTimeResolution[] }. * */ export declare class DateTimePrompt extends Prompt { /** * The prompts default locale that should be recognized. */ defaultLocale: string | undefined; /** * Creates a new DateTimePrompt instance. * * @param dialogId Unique ID of the dialog within its parent {@link DialogSet} or {@link ComponentDialog}. * @param validator (Optional) validator that will be called each time the user responds to the prompt. * @param defaultLocale (Optional) locale to use if the `TurnContext.activity.locale` is not specified. Defaults to a value of `en-us`. */ constructor(dialogId: string, validator?: PromptValidator, defaultLocale?: string); /** * Prompts the user for input. * * @param context TurnContext, context for the current * turn of conversation with the user. * @param state Contains state for the current instance of the prompt on the dialog stack. * @param options A PromptOptions object constructed * from the options initially provided in the call to Prompt. * @param isRetry `true` if this is the first time this prompt dialog instance * on the stack is prompting the user for input; otherwise, false. * @returns A `Promise` representing the asynchronous operation. */ protected onPrompt(context: TurnContext, state: any, options: PromptOptions, isRetry: boolean): Promise; /** * Attempts to recognize the user's input. * * @param context TurnContext, context for the current * turn of conversation with the user. * @param _state Contains state for the current instance of the prompt on the dialog stack. * @param _options A PromptOptions object constructed * from the options initially provided in the call to Prompt. * @returns A `Promise` representing the asynchronous operation. */ protected onRecognize(context: TurnContext, _state: any, _options: PromptOptions): Promise>; }