import { OpenAICompatibleModelProvider } from './model.js'; export interface AIGatewayOptions { /** OpenAI-compatible Chat Completions base URL (e.g. `https://my-gateway.example.com/v1`). */ baseUrl: string; /** Bearer token. */ apiKey: string; /** Default model id. Set when not specifying `init({ model: ... })` per-call. */ defaultModel?: string; /** Provider name for telemetry. Defaults to `'ai-gateway'`. */ name?: string; /** Extra headers — observability tags, team/project scoping, etc. */ headers?: Record; } /** * Generic OpenAI-compatible AI gateway helper. Use for **any** gateway that * speaks the OpenAI Chat Completions request/response shape: * Helicone, Portkey, LiteLLM (self-hosted), Cloudflare AI Gateway, * internal corp proxies, etc. * * ```ts * import { aiGateway, init } from '@fabric-harness/sdk'; * * // Helicone * const fabric = await init({ * modelProvider: aiGateway({ * baseUrl: 'https://oai.helicone.ai/v1', * apiKey: process.env.OPENAI_API_KEY!, * headers: { 'Helicone-Auth': `Bearer ${process.env.HELICONE_API_KEY}` }, * defaultModel: 'gpt-4o', * name: 'helicone', * }), * }); * * // Self-hosted LiteLLM * const fabric = await init({ * modelProvider: aiGateway({ * baseUrl: 'http://litellm.internal:4000/v1', * apiKey: process.env.LITELLM_KEY!, * defaultModel: 'azure/gpt-4o', * }), * }); * ``` * * For Vercel AI Gateway, prefer the {@link vercelAIGateway} preset — same * factory under the hood with the gateway URL pre-baked. */ export declare function aiGateway(options: AIGatewayOptions): OpenAICompatibleModelProvider; //# sourceMappingURL=ai-gateway.d.ts.map