UNPKG

@microsoft/botbuilder-m365

Version:

M365 extensions for Microsoft BotBuilder, Alpha release.

61 lines 2.02 kB
/** * @module botbuilder-m365 */ /** * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. */ import { TurnContext } from 'botbuilder'; import { TurnState } from './TurnState'; export interface CompletionConfig { temperature: number; top_p: number; presence_penalty: number; frequency_penalty: number; max_tokens: number; stop_sequences?: string[]; } export interface InputParameter { name: string; description: string; defaultValue: string; } export interface InputConfig { parameters?: InputParameter[]; } export interface PromptTemplateConfig { schema: number; type: string; description: string; completion: CompletionConfig; default_backends?: string[]; input?: InputConfig; } export interface PromptTemplate { text: string; config: PromptTemplateConfig; } /** * Base class for all prompt managers. */ export interface PromptManager<TState extends TurnState> { /** * Adds a custom function <name> to the prompt manager. * * @param {string} name The name of the function * @param {Promise<any>} handler Promise to return on function name match * @param {boolean} allowOverrides Whether to allow overriding an existing function * @returns {this} The prompt manager */ addFunction(name: string, handler: (context: TurnContext, state: TState) => Promise<any>, allowOverrides?: boolean): this; addPromptTemplate(name: string, template: PromptTemplate): this; /** * * @param {TurnContext} context Current application turn context * @param {TurnState} state Current turn state * @param name Which function to invoke */ invokeFunction(context: TurnContext, state: TState, name: string): Promise<any>; renderPrompt(context: TurnContext, state: TState, nameOrTemplate: string | PromptTemplate): Promise<PromptTemplate>; } //# sourceMappingURL=Prompts.d.ts.map