/** * Builtin {@link ProviderDef} set — the SEED SOURCE for the `providers` table. * * M3 Provider SSoT (epic T11667 · task T11703). The DECLARATIVE provider definitions * are DERIVED from the existing runtime {@link ProviderProfile} builtins (the in-process * registry SSoT) rather than re-declared — so the two never drift and there is one * place to add a provider (the profile). `toProviderDef` projects a `ProviderProfile` * (which bundles non-serializable hook closures) down to the serializable `ProviderDef` * shape (DATA only): identity + aliases + auth + endpoint(s) + catalog key + headers + * env vars + OAuth placeholder + the declarative request quirks. * * ## Why this lives under `provider-registry/` * * The builtin profiles are model-data SSoT (the LLM-chokepoint lint exempts this * directory for model-id literals). This module reads their declarative DATA and * never constructs a transport/client — it carries no model-id literals of its own. * * @module llm/provider-registry/provider-defs * @task T11703 * @epic T11667 * @see @cleocode/contracts — {@link ProviderDef} (the declarative contract, T11702) * @see ./index.ts — the in-process {@link ProviderProfile} registry (runtime SSoT) * @see ./provider-seed.ts — the seeder that upserts these rows into `providers` */ import type { ProviderDef, ProviderProfile } from '@cleocode/contracts'; /** * Project a runtime {@link ProviderProfile} down to the serializable * {@link ProviderDef} (DATA only — drops the hook closures, keeps their declarative * {@link RequestQuirk} kinds). Pure + deterministic. * * @param profile - The runtime profile (in-process registry SSoT). * @returns The declarative provider definition. * @task T11703 */ export declare function toProviderDef(profile: ProviderProfile): ProviderDef; /** * The builtin {@link ProviderDef} set — DERIVED from the runtime * {@link ProviderProfile} builtins. The SSoT-seed source for the `providers` * table (T11703) and the input to the pure alias resolver (T11704). * * @returns Builtin provider definitions (one per provider id; xai collapsed to one). * @task T11703 */ export declare function builtinProviderDefs(): ReadonlyArray; //# sourceMappingURL=provider-defs.d.ts.map