import { type OutboxStore } from "../outbox/store.js"; import { type QuotaObservationStore, type QuotaStatus } from "../runtime/quota.js"; import { type SessionRegistry, type SessionState } from "../sessions/registry.js"; import { type TicketQueueStore } from "../tickets/store.js"; import type { TicketState } from "../queue/model.js"; import type { LinuxProcessIdentity } from "../runtime/process-identity.js"; import { type WorkerActivity, type WorkerHealth, type WorkerRegistry } from "../workers/registry.js"; import { type ConductorActivity, type ConductorActivityStore, type ConductorHealth } from "../conductor/activity.js"; export interface HudSnapshot { readonly release: "not_stable"; readonly tickets: Readonly>; readonly sessions: Readonly>; readonly quota: Readonly>; readonly workers: { readonly activity: Readonly>; readonly health: Readonly>; }; readonly conductor: { readonly activity: Readonly>; readonly health: Readonly>; }; readonly outbox: { readonly total_events: number; readonly stalled_internal_deliveries: number; readonly pending_slack_requests: number; }; } export declare function createHudSnapshot(options: { queue: TicketQueueStore; sessions: SessionRegistry; quota: QuotaObservationStore; outbox: OutboxStore; workers: WorkerRegistry; conductorActivity: ConductorActivityStore; conductorProcessIsLive: (identity: LinuxProcessIdentity) => boolean; }): HudSnapshot; export declare function renderHud(snapshot: HudSnapshot): string;