import { SystemMessageDataType, OriginalMessageType, AppInfo } from '../../typings'; import { BatchableMethods, createProtocol } from './protocol'; export interface ClientEvents { voice: (voice: Uint8Array, original: OriginalMessageType) => void; status: (status: OriginalMessageType['status'], original: OriginalMessageType) => void; systemMessage: (systemMessage: SystemMessageDataType, original: OriginalMessageType) => void; } export declare type SystemMessage = SystemMessageDataType & { messageId: string; messageName: OriginalMessageType[]; }; export declare const createClient: (protocol: ReturnType, provideMeta?: (() => Promise>>) | undefined) => { destroy: () => void; createVoiceStream: (callback: ({ messageId, sendVoice, onMessage, }: Pick & { onMessage: (cb: (message: OriginalMessageType) => void) => () => void; }) => Promise) => Promise; sendData: (data: Record, messageName?: string) => number | Long; sendMeta: (sendSystemMessage: (data: { data: Record; messageName?: string | undefined; }, last: boolean) => void) => Promise; sendOpenAssistant: ({ isFirstSession }?: { isFirstSession: boolean; }) => Promise; sendServerAction: (serverAction: unknown, appInfo: AppInfo, messageName?: string) => Promise; sendText: (text: string, isSsml?: boolean, shouldSendDisableDubbing?: boolean | undefined) => Promise; sendCancel: (messageId: number) => void; on: (event: K, cb: ClientEvents[K]) => () => void; waitForAnswer: (messageId: number | Long) => Promise; }; //# sourceMappingURL=client.d.ts.map