import { ModelProvider } from './model_provider.js';
import { ModelProviderID } from '../data/model_data.js';
import { ProviderStreamEvent, ResponseInput, AgentDefinition } from '../types/types.js';
export declare abstract class BaseModelProvider implements ModelProvider {
    protected providerId: ModelProviderID;
    provider_id: string;
    constructor(providerId: ModelProviderID);
    abstract createResponseStream(messages: ResponseInput, model: string, agent: AgentDefinition, requestId?: string): AsyncGenerator<ProviderStreamEvent>;
    createResponseStreamWithRetry(messages: ResponseInput, model: string, agent: AgentDefinition, requestId?: string): AsyncGenerator<ProviderStreamEvent>;
    protected isValidBase64(str: string): boolean;
    protected detectImageType(base64Data: string): string | null;
}
//# sourceMappingURL=base_provider.d.ts.map