import type { RuntimeEventBus } from '../events/index.js';
import type { ForensicsRegistry } from '@pellux/goodvibes-sdk/platform/runtime/forensics/registry';
export declare class ForensicsCollector {
    private readonly _bus;
    private readonly _registry;
    private readonly _unsubs;
    /** Active turn trackers keyed by turnId. */
    private readonly _turns;
    /** Active task trackers keyed by taskId. */
    private readonly _tasks;
    /** Correlation map from tool call id to owning turn id. */
    private readonly _callToTurn;
    constructor(bus: RuntimeEventBus, registry: ForensicsRegistry);
    private _start;
    private _handleTurnEnvelope;
    private _handleTaskEnvelope;
    private _handleToolEnvelope;
    private _handlePermissionEnvelope;
    private _handleCompactionEnvelope;
    private _finalise_turn;
    private _finalise_task;
    private _transitionPhase;
    private _closePhase;
    private _addCausal;
    /** Derive a short human-readable report ID from a trace ID. */
    private _shortId;
    /** Dispose all event bus subscriptions. */
    dispose(): void;
}
//# sourceMappingURL=collector.d.ts.map