import type { RuntimeCapacitySchedulerEvent, RuntimeCapacityScope, RuntimeLease, RuntimeQuotaPolicy, RuntimeScheduleDecision, RuntimeScheduleReasonCode, RuntimeScheduleRequest } from "./types.js"; export interface RuntimeCapacityQueuedRequest { queueId: string; request: RuntimeScheduleRequest; enqueuedAt: number; } export declare function normalizeCapacityRequest({ request, defaultScope, tenantPolicy, }: { request: RuntimeScheduleRequest; defaultScope: RuntimeCapacityScope; tenantPolicy: RuntimeQuotaPolicy; }): RuntimeScheduleRequest; export declare function sortQueuedRuntimeRequests(queue: RuntimeCapacityQueuedRequest[]): void; export declare function optionalExpiresAt(request: RuntimeScheduleRequest): { expiresAt: string; } | Record; export declare function reasonForCode(reasonCode: RuntimeScheduleReasonCode): string; export declare function createRuntimeScheduleDecision({ decisionId, status, request, reasonCode, userSafeReason, workerId, lease, queue, }: { decisionId: string; status: RuntimeScheduleDecision["status"]; request: RuntimeScheduleRequest; reasonCode: RuntimeScheduleReasonCode; userSafeReason: string; workerId?: string; lease?: RuntimeLease; queue?: RuntimeScheduleDecision["queue"]; }): { decision: RuntimeScheduleDecision; event: RuntimeCapacitySchedulerEvent; }; export declare function createRuntimeReleaseEvent({ decisionId, lease, leaseDurationMs, }: { decisionId: string; lease: RuntimeLease; leaseDurationMs: number; }): RuntimeCapacitySchedulerEvent; export declare function createRuntimePromotedEvent({ decisionId, request, workerId, queueLatencyMs, }: { decisionId: string; request: RuntimeScheduleRequest; workerId: string; queueLatencyMs: number; }): RuntimeCapacitySchedulerEvent;