import { z } from "zod"; import type { SandboxNotice } from "../events/sandbox-notice.js"; export interface CacheClock { readonly at: number; readonly ttlMs: number; } export declare const keepWarmLeadMs: (ttlMs: number) => number; export declare const keepWarmRefreshes: (cache: CacheClock, until: number) => number; export declare const keepWarmHorizon: (cache: CacheClock, left: number) => number; export declare const keepWarmDueAt: (cache: CacheClock) => number; export declare const keepWarmCap: (cache: CacheClock, rollsAt: number | undefined, left: number) => number; export declare const KeepWarmEndSchema: z.ZodEnum<{ allowance: "allowance"; changed: "changed"; cold: "cold"; elapsed: "elapsed"; failed: "failed"; }>; export type KeepWarmEnd = z.infer; export declare const KeepWarmSchema: z.ZodObject<{ since: z.ZodNumber; until: z.ZodNumber; refreshes: z.ZodNumber; readTokens: z.ZodOptional; ended: z.ZodOptional; detail: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>; export type KeepWarm = z.infer; export declare const AgentKeepWarmSchema: z.ZodObject<{ id: z.ZodString; until: z.ZodNullable; }, z.core.$strip>; export type AgentKeepWarm = z.infer; export declare const PromptCacheOpeningSchema: z.ZodObject<{ readTokens: z.ZodNumber; writtenTokens: z.ZodNumber; kept: z.ZodOptional>; }, z.core.$strip>; export type PromptCacheOpening = z.infer; export declare const tokensLabel: (tokens: number) => string; export declare const keptWarmNotice: (opening: PromptCacheOpening) => Extract | undefined; export declare const keptWarmLine: (opening: PromptCacheOpening) => string | undefined; export declare const PromptFingerprintSchema: z.ZodObject<{ hash: z.ZodString; parts: z.ZodRecord; }, z.core.$strip>; export type PromptFingerprint = z.infer; export declare const changedParts: (before: PromptFingerprint, after: PromptFingerprint) => string[]; export declare const KeepWarmSettingsSchema: z.ZodObject<{ auto: z.ZodDefault; hours: z.ZodDefault; minTokens: z.ZodDefault; reserve: z.ZodDefault; }, z.core.$strip>; export type KeepWarmSettings = z.infer; //# sourceMappingURL=keep-warm.d.ts.map