import { LlmMessage, LlmCoreProvider, LlmGenerationConfig, LlmResponse, LlmStreamResponse, LlmStreamResponseChunk, LlmStreamResponseWithToolCalls } from "../providers";
export interface TestProviderConfig {
    name?: string;
    defaultResponse?: string;
    defaultStreamResponse?: string[];
    simulateDelay?: number;
    failOnModels?: string[];
}
export declare class TestProvider implements LlmCoreProvider {
    readonly name: string;
    private defaultResponse;
    private defaultStreamResponse;
    private simulateDelay;
    private failOnModels;
    constructor(config?: TestProviderConfig);
    private delay;
    generateResponse(model: string, messages: LlmMessage[], config?: LlmGenerationConfig): Promise<LlmResponse>;
    generateResponseStream(model: string, messages: LlmMessage[], config?: LlmGenerationConfig): AsyncGenerator<LlmStreamResponseChunk | LlmStreamResponse | LlmStreamResponseWithToolCalls, void, unknown>;
    getAvailableModels(): Promise<string[]>;
    createEmbedding(model: string, text: string): Promise<number[]>;
}
