/** * @verevoir/llm — bundled fallback price snapshot. * * `createPriceBook` (see `src/pricing.ts`) uses this as its DEFAULT * fallback table — in effect only until the first successful live * fetch replaces it. `refresh()` only ever assigns the table on * success, so once a live fetch has succeeded once, a later failed * refresh keeps that last good LIVE table rather than falling back to * this snapshot again — unless the caller injects its own * `PriceBookOptions.snapshot`. `payload` is a TRIMMED * LiteLLM `model_prices_and_context_window.json`: model key → only the * fields `src/pricing.ts`'s parser reads, in their original snake_case * shape, so the exact same parser that reads a live fetch's body reads * this too. * * Generated OUTSIDE the belt (the belt cannot reach the network): the * upstream file was fetched, trimmed to the anthropic, openai, gemini, * deepseek, mistral and sambanova providers and to the six fields above, * and written here with its `asOf`, `sourceUrl` and the `sha256` of the * raw upstream bytes. `sourceUrl` is pinned to the upstream commit, so * `curl -sL | shasum -a 256` reproduces `sha256`. Do not * hand-edit prices into it; regenerate it. */ export interface PricingSnapshot { /** When this snapshot was generated, as an ISO 8601 UTC timestamp. */ asOf: string; /** Where `payload` was trimmed from. */ sourceUrl: string; /** sha256 of the raw upstream JSON this snapshot was trimmed from — * of the raw upstream bytes. */ sha256: string; /** Model key → only the fields `src/pricing.ts`'s parser reads * (`input_cost_per_token`, `output_cost_per_token`, * `cache_creation_input_token_cost`, * `cache_creation_input_token_cost_above_1hr`, * `cache_read_input_token_cost`, `litellm_provider`), untouched * snake_case — the same shape a live fetch's JSON body is in. */ payload: Record>; } export declare const PRICING_SNAPSHOT: PricingSnapshot; //# sourceMappingURL=pricing-snapshot.d.ts.map