import type { Budget, BudgetStatus, MeterConfig, SpendSummary } from "./types.js"; export declare const WARN_RATIO = 0.8; /** * Build budget statuses from a summary. Session scope is only included when a session spend * is supplied (the summary alone doesn't know which session is "current"). */ export declare function budgetStatuses(summary: SpendSummary, budget?: Budget, opts?: { sessionSpent?: number; }): BudgetStatus[]; /** True when any scope has been exceeded. */ export declare function isOverLimit(statuses: BudgetStatus[]): boolean; export declare function shouldDownshift(statuses: BudgetStatus[]): boolean; /** Resolve the cheaper model for an over-budget model from config.downshift (exact then prefix). */ export declare function resolveDownshift(model: string, config?: MeterConfig): string | undefined;