import type { ProviderConfig, ProviderDecisionTransport, ProviderKind } from "@best-agent/protocol";
export type ProviderFamily = "openai-compatible" | "anthropic" | "google";
export type ProviderDecisionFidelity = "structured_control" | "tool_calls";
export interface ProviderCapabilities {
    defaultDecisionTransport: ProviderDecisionTransport;
    supportedDecisionFidelities?: readonly ProviderDecisionFidelity[];
    supportedDecisionTransports: readonly ProviderDecisionTransport[];
    supportsBackgroundJobs: boolean;
    supportsPauseResume: boolean;
    supportsResumableStream: boolean;
    supportsNativeWebSearch: boolean;
    supportsWebhookCompletion: boolean;
}
export declare function getProviderFamily(kind: ProviderKind): ProviderFamily | undefined;
export declare function isOpenAiCompatibleProviderKind(kind: ProviderKind): boolean;
export declare function getProviderCapabilities(config: ProviderConfig): ProviderCapabilities;
export declare function normalizeProviderConfig(config: ProviderConfig): ProviderConfig;
export declare function resolveProviderDecisionTransport(config: ProviderConfig): ProviderDecisionTransport;
export declare function resolveOpenAiCompatibleMode(config: ProviderConfig): "compatible" | "native";
//# sourceMappingURL=provider-metadata.d.ts.map