import { EventEmitter } from "node:events"; import { type BailianRegion } from "./bailian-endpoints.js"; type SocketOptions = { headers?: Record; }; type ProviderSocket = EventEmitter & { readyState: number; send: (data: string | Buffer) => void; close: (code?: number, reason?: string) => void; }; type BailianAsrSocketFactory = (url: string, options: SocketOptions) => ProviderSocket; export interface BailianAsrConfig { apiKey: string; region: BailianRegion; model: string; sampleRate: number; language: string; } export interface BailianAsrClient { on(event: "ready", handler: () => void): this; on(event: "partial" | "final", handler: (text: string) => void): this; on(event: "error", handler: (error: Error) => void): this; on(event: "closed", handler: (code?: number, reason?: string) => void): this; sendPcm(chunk: Buffer): void; stop(): void; close(): void; } interface BailianAsrClientOptions { socketFactory?: BailianAsrSocketFactory; eventIdFactory?: () => string; } export declare function createBailianAsrClient(config: BailianAsrConfig, options?: BailianAsrClientOptions): BailianAsrClient; export {}; //# sourceMappingURL=bailian-asr.d.ts.map