import { GatewayError, type GatewayModelTarget } from "./types.js"; export declare class GatewayAdmissionError extends GatewayError { constructor(); } export interface GatewayAdmissionLease { release(actualTokens?: number): void | Promise; } /** Remote implementations must reserve atomically, honor abort, and expire abandoned leases. */ export interface GatewayAdmissionController { acquire(input: { target: GatewayModelTarget; tokens?: number; signal?: AbortSignal; }): Promise; } export interface GatewayAdmissionOptions { maxConcurrent: number; requestsPerMinute?: number; tokensPerMinute?: number; maxQueue?: number; queueTimeoutMs?: number; maxTargets?: number; now?: () => number; } export declare const createGatewayAdmissionController: (options: GatewayAdmissionOptions) => GatewayAdmissionController; //# sourceMappingURL=admission.d.ts.map