import { RealtimeConnectConfig, RealtimeConnection, RealtimeEvent, RealtimeTransport } from "../contracts/realtime.contract.mjs"; import { GeneratedVideo, VideoGenerationResponse, VideoModelContract, VideoModelPricing, VideoOptions } from "../contracts/video.contract.mjs"; import { Usage } from "@warlock.js/ai"; //#region ../../packages/ai-live/src/mock/index.d.ts /** One scripted response for a {@link MockVideoModel}. */ export type MockVideoResponse = { video?: GeneratedVideo; usage?: Usage; durationSeconds?: number; error?: Error; }; /** Deterministic {@link VideoModelContract} double for tests — no HTTP, no polling. */ export declare class MockVideoModel implements VideoModelContract { readonly name: string; private readonly responses; readonly pricing?: VideoModelPricing | undefined; readonly provider = "mock"; readonly calls: { prompt: string; options: VideoOptions | undefined; }[]; private callIndex; constructor(name: string, responses: MockVideoResponse[], pricing?: VideoModelPricing | undefined); generate(prompt: string, options?: VideoOptions): Promise; } /** A recording {@link RealtimeConnection} the mock transport hands back. */ export declare class MockRealtimeConnection implements RealtimeConnection { private readonly scripted; readonly sentAudio: { base64: string; mediaType: string; }[]; readonly sentText: string[]; closed: boolean; constructor(scripted: RealtimeEvent[]); sendAudio(base64: string, mediaType: string): void; sendText(text: string): void; events(): AsyncIterable; close(): Promise; } /** Deterministic {@link RealtimeTransport} double — scripts the event stream, records sends. */ export declare class MockRealtimeTransport implements RealtimeTransport { private readonly scriptedEvents; readonly connectConfigs: RealtimeConnectConfig[]; lastConnection?: MockRealtimeConnection; constructor(scriptedEvents?: RealtimeEvent[]); connect(config: RealtimeConnectConfig): Promise; } //#endregion //# sourceMappingURL=index.d.mts.map