import { type FinalTurnPreservation, type ProfileReplayScope, type ProfileTriState, type ProviderProfile, type ReasoningDisableForm, type ReasoningControlDialect, type ReasoningGeneration, type ReasoningOutputShape } from "./provider-profile.js"; import type { ReasoningStyle } from "./http.js"; import type { CachePolicyKind, LimitSource } from "./provider-profile.js"; import { customProfileLayer } from "./profile/custom-layer.js"; export { customProfileLayer }; export { validateCustomProviderProfile } from "./profile/spec-validation.js"; export type CustomAuthType = "bearer" | "custom-headers" | "none-keyless"; export interface CustomProviderProfileSpec { readonly authType?: CustomAuthType | undefined; readonly keyEnv?: string | undefined; readonly baseUrlEnv?: string | undefined; readonly headers?: Readonly> | undefined; readonly tools?: ProfileTriState | undefined; readonly images?: ProfileTriState | undefined; readonly structuredOutput?: ProfileTriState | undefined; readonly streamOptions?: ProfileTriState | undefined; readonly reasoning?: { readonly generation?: ReasoningGeneration | undefined; readonly controlDialect?: ReasoningControlDialect | undefined; readonly acceptedEfforts?: readonly string[] | undefined; readonly disable?: ProfileTriState | undefined; readonly disableForm?: ReasoningDisableForm | undefined; readonly outputShapes?: readonly ReasoningOutputShape[] | undefined; readonly replayScope?: ProfileReplayScope | undefined; readonly finalTurnPreservation?: FinalTurnPreservation | undefined; } | undefined; readonly limits?: { readonly contextTokens?: number | undefined; readonly outputTokens?: number | undefined; readonly source?: LimitSource | undefined; } | undefined; readonly cache?: { readonly kind?: CachePolicyKind | undefined; readonly affinityField?: string | undefined; readonly isolationField?: string | undefined; readonly cacheAffectingFields?: readonly string[] | undefined; } | undefined; readonly usage?: { readonly cachedInput?: readonly string[] | undefined; readonly uncachedInput?: readonly string[] | undefined; readonly cacheWrite?: readonly string[] | undefined; readonly reasoningOutput?: readonly string[] | undefined; } | undefined; readonly terminal?: { readonly naturalEofAccepted?: boolean | undefined; } | undefined; } export declare function endpointPrivacyHash(baseUrl: string): string; export declare function resolveCustomProviderProfile(input: { id: string; model: string; baseUrl: string; profile?: CustomProviderProfileSpec | undefined; }): ProviderProfile; export declare function customProviderProfileFor(input: { provider: string; model: string; baseUrl: string; }): ProviderProfile | undefined; export declare function customReasoningStyle(profile: CustomProviderProfileSpec | undefined): ReasoningStyle; export declare function resolveCustomHeaders(headers: Readonly> | undefined): Record | undefined;