import type { GatewayProviderContext, GatewayStreamRequest } from "@cline/shared"; import type { ProviderOptionsPatch } from "./utils"; export type AiSdkProviderOptionsTarget = "cline" | "openai" | "openai-compatible" | "anthropic" | "google" | "vertex" | "bedrock" | "mistral" | "claude-code" | "openai-codex" | "opencode" | "dify" | "ollama" | "sapaicore"; export type ProviderOptionSuppression = { genericThinking?: boolean; genericFanout?: boolean; }; export type ProviderOptionMatchInput = { request: GatewayStreamRequest; context: GatewayProviderContext; providerOptionsKey: string; target: AiSdkProviderOptionsTarget; }; export type ProviderOptionBuildInput = ProviderOptionMatchInput & { compatibleOptions: Record; anthropicOptions: Record; suppressions: ProviderOptionSuppression; }; export type ProviderOptionRule = { id: string; phase: "adapter" | "provider" | "provider-fanout" | "provider-reasoning" | "model-family" | "model-overlay"; description: string; applies(input: ProviderOptionMatchInput): boolean; suppresses?: ProviderOptionSuppression; build(input: ProviderOptionBuildInput): ProviderOptionsPatch | undefined; }; export type MatchedProviderOptionRule = { rule: ProviderOptionRule; }; export declare function inferProviderOptionsTarget(providerId: string): AiSdkProviderOptionsTarget; //# sourceMappingURL=provider-options-types.d.ts.map