import { AnnotationKind, EventType, RecorderPhase, type FlowAnchor, type FlowFile, type FlowStep } from '@reticlehq/core'; export declare const RECORDER_EMPTY_MSG = "recorded 0 steps"; interface RecorderDeps { emit: (type: EventType, data: Record) => void; now: () => number; defaultName?: string; } export interface RecorderHandle { mount(): void; destroy(): void; phase(): RecorderPhase; steps(): FlowStep[]; } export interface Annotation { kind: AnnotationKind; anchor: FlowAnchor; signal?: string; } export declare function anchorFor(el: Element): { anchor: FlowAnchor; degraded: boolean; }; export declare function compileRecording(name: string, steps: FlowStep[], annotations: Annotation[], createdAt: number, startPath?: string): FlowFile; export declare function installRecorder(deps: RecorderDeps): RecorderHandle; export {};