import type { OpenAICompatOptions } from './openai-compat.js';
import type { AnthropicCompatOptions } from './anthropic-compat.js';
export interface BuiltinProviderDefinition {
    readonly id: string;
    readonly label: string;
    readonly envVars: readonly string[];
    readonly serviceNames?: readonly string[] | undefined;
    readonly aliases?: readonly string[] | undefined;
    readonly subscriptionProviderId?: string | undefined;
}
export interface BuiltinOpenAICompatDefinition extends BuiltinProviderDefinition {
    readonly kind: 'openai-compat';
    readonly baseURL: string;
    readonly defaultModel: string;
    readonly models: readonly string[];
    readonly embeddingModel?: string | undefined;
    readonly reasoningFormat?: OpenAICompatOptions['reasoningFormat'] | undefined;
    readonly suppressedModelRegistryKeys?: readonly string[] | undefined;
    readonly streamProtocol?: string | undefined;
    readonly defaultHeaders?: Record<string, string> | undefined;
    readonly allowAnonymous?: boolean | undefined;
    readonly anonymousConfigured?: boolean | undefined;
    readonly anonymousDetail?: string | undefined;
}
export interface BuiltinAnthropicCompatDefinition extends BuiltinProviderDefinition {
    readonly kind: 'anthropic-compat';
    readonly baseURL: string;
    readonly defaultModel: string;
    readonly models: readonly string[];
    readonly defaultHeaders?: Record<string, string> | undefined;
    readonly authHeaderMode?: AnthropicCompatOptions['authHeaderMode'] | undefined;
    readonly streamProtocol?: string | undefined;
    readonly allowAnonymous?: boolean | undefined;
    readonly anonymousConfigured?: boolean | undefined;
    readonly anonymousDetail?: string | undefined;
}
export type BuiltinCompatDefinition = BuiltinOpenAICompatDefinition | BuiltinAnthropicCompatDefinition;
export declare const BUILTIN_PROVIDER_ENV_KEYS: Record<string, readonly string[]>;
export declare function getBuiltinProviderEnvVars(providerId: string): readonly string[];
export declare const BUILTIN_COMPAT_PROVIDERS: readonly BuiltinCompatDefinition[];
//# sourceMappingURL=builtin-catalog.d.ts.map