import type { ComponentConfig } from '../types.js';
import type { DiagnosticFilter } from '../types.js';
import type { OpsInterventionReason, OpsEvent } from '../../../../events/ops.js';
import type { UiEventFeed } from '../../ui-events.js';
/**
 * Immutable audit record for a single operator intervention.
 */
export interface OpsAuditEntry {
    /** Monotonic sequence number. */
    readonly seq: number;
    /** Epoch ms when the intervention was recorded. */
    readonly ts: number;
    /** The action taken (e.g. 'task.cancel', 'agent.cancel'). */
    readonly action: string;
    /** The target task or agent ID. */
    readonly targetId: string;
    /** Whether this intervention targeted a task or an agent. */
    readonly targetKind: 'task' | 'agent';
    /** The reason code for the intervention. */
    readonly reason: OpsInterventionReason;
    /** Optional operator note. */
    readonly note?: string | undefined;
    /** Outcome of the intervention. */
    readonly outcome: 'success' | 'rejected' | 'error';
    /** Error message if outcome is not success. */
    readonly errorMessage?: string | undefined;
    /** Trace identifier from the event envelope. */
    readonly traceId: string;
    /** Session identifier from the event envelope. */
    readonly sessionId: string;
}
export declare class OpsPanel {
    private readonly _config;
    private readonly _events;
    private readonly _audit;
    private _seq;
    private readonly _subscribers;
    private _unsub;
    constructor(events: UiEventFeed<OpsEvent>, config?: ComponentConfig);
    private _start;
    private _handleAudit;
    /**
     * Returns a filtered snapshot of the audit log, most recent first.
     */
    getSnapshot(filter?: DiagnosticFilter): OpsAuditEntry[];
    /**
     * Subscribe to data changes. Returns an unsubscribe function.
     */
    subscribe(callback: () => void): () => void;
    /**
     * Dispose the panel, unsubscribing from the event bus.
     */
    dispose(): void;
    private _notify;
}
//# sourceMappingURL=ops.d.ts.map