UNPKG

@onereach/step-voice

Version:
48 lines (47 loc) 1.7 kB
import Step from '@onereach/flow-sdk/dst/step'; import { IThreadId, IMergeField } from '@onereach/flow-sdk/dst/types'; export interface ConvStepDataIn { conversation?: string | IMergeField; conversationThread?: IThreadId; } export interface IConversation { dummy?: never; } export interface IConversationData { _conv: IConversation; } export default class ConvStep<TData extends IConversationData, TIn = unknown, TOut = unknown, TParams = any> extends Step<TIn & ConvStepDataIn, TOut, TParams> { private convDataCache?; get cache(): TData | undefined; get conversation(): string | IMergeField; get conversationId(): string; get workerThreadId(): string; /** id of the thread where conversation data is stored */ get dataThreadId(): IThreadId; get isGlobal(): boolean; get isWorker(): boolean; get useQueue(): boolean; fetchData(): Promise<TData>; getConversation(): Promise<IConversation>; updateData(): Promise<void>; hasConversation(): Promise<boolean>; runBefore(): Promise<void>; protected onSkipEvent(): Promise<void>; cancel(): Promise<void>; protected onCancel(): Promise<void>; onSleep(): Promise<void>; onAwake(): Promise<void>; onPause(): Promise<void>; onResume(): Promise<void>; waitConvEnd(): Promise<void>; waitGlobEnd(): Promise<void>; onConvEnd(): Promise<void>; pause(): Promise<void>; resume(): Promise<void>; startConversation(data: TData, { thread }?: { thread?: IThreadId; }): Promise<void>; protected _fetchCache(): Promise<(TData) | undefined>; protected _clearCache(): void; protected _refreshCache(): Promise<void>; }