/** * Claude Fable and GPT Astra models are never assigned or routed. * * One decision function shared by every place that chooses, resolves, lists * or validates a model: org role models and tiers, `agent exec|test --model`, * `agent models`, MCP agent tools, subagent launches. There is deliberately no * override: a model that must not be routed is refused wherever it appears. * * `.claude/helpers/handlers/model-guard.cjs` carries the same two patterns for * the interactive PreToolUse hook, which runs outside this package; a test * keeps the two in step. */ export declare class ModelBlockedError extends Error { constructor(model: string, where?: string); } export declare function isBlockedModel(model: unknown): boolean; /** Throws ModelBlockedError when `model` is blocked; `where` says what asked for it. */ export declare function assertModelAllowed(model: unknown, where?: string): void; /** Drops listing entries whose id, alias, resolved model or label is blocked. */ export declare function withoutBlockedModels(list: readonly T[]): T[]; //# sourceMappingURL=model-guard.d.ts.map