import type { Observation } from "../../../domain/sentinel/observation/observation.js"; import type { LoadedMonitor } from "./registry.js"; import type { SourceAdapterRegistry } from "./source-adapter.js"; import type { Signal } from "../../../domain/sentinel/signal/signal.js"; import type { ActionPlan } from "../../../domain/sentinel/action/action-plan.js"; export interface MonitorRunOutcome { readonly monitorId: string; readonly observations: readonly Observation[]; readonly signalsCreated: readonly Signal[]; readonly signalsUpdated: readonly Signal[]; readonly actionsProposed: readonly ActionPlan[]; readonly dedupedCount: number; readonly errors: readonly string[]; readonly skipped: boolean; readonly skipReason?: string; readonly durationMs: number; } export declare function defaultAdapterRegistry(): SourceAdapterRegistry; export interface OrchestratorOptions { readonly workspaceRoot: string; readonly monitors: readonly LoadedMonitor[]; readonly adapters?: SourceAdapterRegistry; } export declare class MonitorRunner { private readonly opts; private readonly adapters; private readonly observations; private readonly runs; private readonly ledger; private readonly correlator; private readonly planner; constructor(opts: OrchestratorOptions); runOnce(filter?: { readonly kind?: string; }): Promise; } //# sourceMappingURL=runner.d.ts.map