import type { ChatRequest, ChatResponse, LLMProvider, ProviderRuntimeMetadata, ProviderRuntimeMetadataDeps } from './interface.js';
type AnthropicStreamCapableClient = {
    messages: {
        stream: unknown;
    };
};
export interface AnthropicSdkProviderAuthConfig {
    readonly mode: 'api-key' | 'anonymous';
    readonly configured: boolean;
    readonly detail: string;
    readonly envVars?: readonly string[];
    readonly secretKeys?: readonly string[];
    readonly serviceNames?: readonly string[];
    readonly allowAnonymous?: boolean;
    readonly anonymousConfigured?: boolean;
    readonly anonymousDetail?: string;
}
export interface AnthropicSdkProviderOptions {
    readonly name: string;
    readonly label: string;
    readonly defaultModel: string;
    readonly models: readonly string[];
    readonly createClient: () => AnthropicStreamCapableClient;
    readonly auth: AnthropicSdkProviderAuthConfig;
    readonly streamProtocol: string;
    readonly notes?: readonly string[];
}
export declare class AnthropicSdkProvider implements LLMProvider {
    private readonly options;
    readonly name: string;
    readonly models: string[];
    constructor(options: AnthropicSdkProviderOptions);
    chat(params: ChatRequest): Promise<ChatResponse>;
    describeRuntime(deps: ProviderRuntimeMetadataDeps): Promise<ProviderRuntimeMetadata>;
}
export {};
//# sourceMappingURL=anthropic-sdk-provider.d.ts.map