UNPKG

@sberdevices/assistant-client

Version:

Модуль взаимодействия с виртуальным ассистентом

54 lines 2.59 kB
import { AssistantAppState, AssistantServerAction, AssistantClientCustomizedCommand, AssistantSmartAppData, AssistantSmartAppError, AssistantSmartAppCommand, Hints, Suggestions } from './typings'; import { ObserverFunc } from './nanoobservable'; export interface AssistantEvents<A extends AssistantSmartAppData> { start: () => void; data: (command: AssistantClientCustomizedCommand<A>) => void; command: <T extends AssistantSmartAppCommand['smart_app_data'] = AssistantSmartAppCommand['smart_app_data']>(data: T) => void; error: <T extends AssistantSmartAppError['smart_app_error'] = AssistantSmartAppError['smart_app_error']>(error: T) => void; } export interface SendDataParams { action: AssistantServerAction; name?: string; requestId?: string; } export interface CreateAssistantParams { getState: () => AssistantAppState; getRecoveryState?: () => unknown; ready?: boolean; } export declare const createAssistant: <A extends AssistantSmartAppData>({ getState, getRecoveryState, ready, }: CreateAssistantParams) => { cancelTts: (() => void) | undefined; close: () => void; getInitialData: () => AssistantClientCustomizedCommand<AssistantSmartAppCommand>[]; findInInitialData: <T>({ type, command }: { type?: string | undefined; command?: string | undefined; }) => T | undefined; getRecoveryState: () => unknown; on: <K extends "command" | "error" | "data" | "start">(event: K, cb: AssistantEvents<A>[K]) => () => void; sendAction: <D extends { type: string; payload?: Record<string, unknown> | undefined; } = { type: string; payload?: Record<string, unknown> | undefined; }, E extends { code: number; description: string; } = { code: number; description: string; }>(action: { type: string; payload: Record<string, unknown>; }, onData?: ObserverFunc<D> | undefined, onError?: ObserverFunc<E> | undefined, { name, requestId }?: Pick<SendDataParams, 'name' | 'requestId'>) => () => void; sendData: ({ action, name, requestId }: SendDataParams, onData?: ObserverFunc<AssistantSmartAppError | A> | undefined) => (() => void); setGetState: (nextGetState: () => {}) => void; setGetRecoveryState: (nextGetRecoveryState?: (() => unknown) | undefined) => void; setSuggests: (suggestions: Suggestions['buttons']) => void; setHints: (hints: Hints) => void; sendText: (message: string) => void; ready: () => void; }; export * from './typings'; //# sourceMappingURL=createAssistant.d.ts.map