import { Provider, ChatRequest, ChatResponse, ModelInfo, ChatChunk } from "../Provider.js";
import { BaseProvider } from "../BaseProvider.js";
export interface DeepSeekProviderOptions {
    apiKey: string;
    baseUrl?: string;
}
export declare class DeepSeekProvider extends BaseProvider implements Provider {
    private readonly options;
    private readonly baseUrl;
    private readonly chatHandler;
    private readonly streamingHandler;
    private readonly modelsHandler;
    capabilities: {
        supportsVision: (model: string) => boolean;
        supportsTools: (model: string) => boolean;
        supportsStructuredOutput: (model: string) => boolean;
        supportsEmbeddings: (model: string) => boolean;
        supportsImageGeneration: (model: string) => boolean;
        supportsTranscription: (model: string) => boolean;
        supportsModeration: (model: string) => boolean;
        supportsReasoning: (model: string) => boolean;
        supportsDeveloperRole: (_model: string) => boolean;
        getContextWindow: (model: string) => number | null;
    };
    constructor(options: DeepSeekProviderOptions);
    apiBase(): string;
    headers(): Record<string, string>;
    protected providerName(): string;
    defaultModel(_feature?: string): string;
    chat(request: ChatRequest): Promise<ChatResponse>;
    stream(request: ChatRequest): AsyncGenerator<ChatChunk>;
    listModels(): Promise<ModelInfo[]>;
}
//# sourceMappingURL=DeepSeekProvider.d.ts.map