/**
 * @module botbuilder-m365
 */
/**
 * Copyright (c) Microsoft Corporation. All rights reserved.
 * Licensed under the MIT License.
 */
import { TurnContext } from 'botbuilder';
import { DefaultTurnState } from './DefaultTurnStateManager';
import { PromptManager, PromptTemplate } from './Prompts';
import { TurnState } from './TurnState';
export interface DefaultPromptManagerOptions {
    promptsFolder: string;
}
export declare class DefaultPromptManager<TState extends TurnState = DefaultTurnState> implements PromptManager<TState> {
    private readonly _functions;
    private readonly _templates;
    private readonly _options;
    private readonly _templateEngine;
    constructor(options: DefaultPromptManagerOptions | string);
    addFunction(name: string, handler: (context: TurnContext, state: TState) => Promise<any>, allowOverrides?: boolean): this;
    addPromptTemplate(name: string, template: PromptTemplate): this;
    invokeFunction(context: TurnContext, state: TState, name: string): Promise<any>;
    loadPromptTemplate(name: string): Promise<PromptTemplate>;
    renderPrompt(context: TurnContext, state: TState, nameOrTemplate: string | PromptTemplate): Promise<PromptTemplate>;
}
//# sourceMappingURL=DefaultPromptManager.d.ts.map