import type { CreatableName, CreatableStatus } from '@ariestools/sdk';
import type { SystemReadyState, SystemStatusGlobalTransitionMatch, SystemStatusRunner, SystemStatusSnapshot, SystemStatusTransitionListener, SystemStatusTransitionMatch } from '@xyo-network/xl1-protocol/protocol-lib';
import { LoggerStatusReporter } from './ServiceStatus.js';
/**
 * The process-wide status hub. Replaces the former `RuntimeStatusMonitor`:
 * it collects lifecycle reports (`report`) and readiness reports
 * (`reportReady`) from every actor/provider, computes the global status,
 * fires transition callbacks, and answers readiness / snapshot queries.
 *
 * It is a plain class (not a `CreatableProvider`) because it must be
 * constructed before the provider locator exists — it is wired into the
 * context as `statusReporter` so `AbstractCreatable` can report into it.
 */
export declare class SimpleSystemStatusRunner extends LoggerStatusReporter implements SystemStatusRunner {
    /** Moniker implemented by this provider instance. */
    readonly moniker: "SystemStatusRunner";
    private globalTransitions;
    private progressMap;
    private readinessMap;
    private reportErrorMap;
    private shuttingDown;
    private transitions;
    private updatedAtMap;
    /** Returns global status. */
    getGlobalStatus(): CreatableStatus;
    /** Returns status. */
    getStatus(name: CreatableName): CreatableStatus | undefined;
    /** Returns whether ready. */
    isReady(): boolean;
    /** Returns whether shutting down. */
    isShuttingDown(): boolean;
    /** Handles global transition notifications. */
    onGlobalTransition(match: SystemStatusGlobalTransitionMatch, handler: SystemStatusTransitionListener): void;
    /** Handles transition notifications. */
    onTransition(match: SystemStatusTransitionMatch, handler: SystemStatusTransitionListener): void;
    /** Updates report. */
    report(name: CreatableName, status: CreatableStatus, progress?: Error | number): void;
    /** Updates ready. */
    reportReady(name: CreatableName, readiness: SystemReadyState, error?: Error | string): void;
    /** Updates shutting down. */
    setShuttingDown(shuttingDown: boolean): void;
    /** Returns snapshot. */
    snapshot(): SystemStatusSnapshot;
    private runTransitions;
}
//# sourceMappingURL=SimpleSystemStatusRunner.d.ts.map