import type { ActionComponentHealthStatus, ActionSystemState, ComponentHealth, DslComponentHealthStatus, DslSystemState, RiskComponentHealthStatus, RiskSystemState, RuntimeHealthStatus, RuntimeSystemState, ScannerComponentHealthStatus, ScannerSystemState, StateStatusProvider } from "./types.js"; export type { ActionComponentHealthStatus, ActionRegistrationHealth, ActionRegistrationSystemState, ActionSystemState, ComponentHealth, ComponentHealthStatus, ComponentSystemState, DslComponentHealthStatus, DslSystemState, RiskComponentHealthStatus, RiskSystemState, RuntimeHealthStatus, RuntimeLogLevel, RuntimeSystemState, ScannerComponentHealthStatus, ScannerRegistrationSystemState, ScannerSystemState, StateStatusProvider, } from "./types.js"; export { RISK_GATE_NAMES, } from "./types.js"; type HealthProviderMap = { scanners: StateStatusProvider; dsl?: StateStatusProvider; actions?: StateStatusProvider; risk?: StateStatusProvider; }; export interface CreateHealthStateModuleOptions { runtimeId?: string; runtimeName: string; stateDir: string; startedAt?: number; providers: HealthProviderMap; } export interface HealthStateModule { getHealthStatus(): Promise; getSystemState(): Promise; registerProvider(name: Name, provider: HealthProviderMap[Name]): void; } export declare function createHealthStateModule(options: CreateHealthStateModuleOptions): HealthStateModule; export declare function deriveRuntimeHealth(healths: Array): ComponentHealth; /** * Legacy hook-based health initializer retained for compatibility. * Runtime health/state aggregation is now handled by createHealthStateModule(). */ export declare function initHealth(_bus: { emit: (e: string, p?: unknown) => void; on: (e: string, h: (p?: unknown) => void) => void; }): void; //# sourceMappingURL=index.d.ts.map