/
githubmirror
/
ai-legion
Обзор
Документация
Войти
/
githubmirror
/
ai-legion
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/module/action-definition.ts
32 строки
943 B
eumemic
minor rename
11 апр 2023, 03:30
11 апр 2023, 03:30
7d24b2a
Код
Авторство
О чём код?
import { ModuleContext } from "."; import { Message } from "../message"; export interface ActionDefinition<S = void, P extends string = string> extends PartialActionDefinition<S, P> { name: string; parameters: Record<P, ParameterDefinition>; } export interface PartialActionDefinition<S = void, P extends string = never> { description: string; parameters?: Record<P, PartialParameterDefinition>; execute: ActionHandler<S, P>; } export type ParameterDefinition = Required<PartialParameterDefinition>; export interface PartialParameterDefinition { description: string; optional?: boolean; } export type ActionHandler<S = void, P extends string = string> = ( inputs: ActionHandlerInputs<S, P> ) => Promise<void>; export interface ActionHandlerInputs<S = void, P extends string = string> { parameters: Record<P, string>; context: ModuleContext<S>; sendMessage: (message: Message) => void; } export { ModuleContext };