import type { ObservationMetricKey, ObservationMetricScope, ObservationReviewState, ObservationReviewStateEntry, ObservationReviewStateUpdate, ObservationReviewTargetType, ObservationReviewVerdict } from '../types/index.js';
export type { ObservationMetricKey, ObservationMetricScope, ObservationReviewState, ObservationReviewStateEntry, ObservationReviewStateUpdate, ObservationReviewTargetType, ObservationReviewVerdict, };
export declare function observationReviewStateKey(targetType: ObservationReviewTargetType, targetId: string): string;
export declare function observationMetricScopeFor(metricKey: ObservationMetricKey): ObservationMetricScope;
export declare function observationMetricAnnotationTargetId(ref: {
    id?: string;
    sourceTrace?: string;
    sessionId?: string;
    messageIndex?: number;
    messageUuid?: string;
    toolUseId?: string;
    metricScopeId?: string;
}, metricKey: ObservationMetricKey): string;
export declare function observationMetricAnnotationVerdict(state: ObservationReviewState | undefined, ref: Parameters<typeof observationMetricAnnotationTargetId>[0], metricKey: ObservationMetricKey): 'confirmed' | 'rejected' | undefined;
export declare function observationReviewStatePath(observationsDir: string): string;
export declare function emptyObservationReviewState(now?: string): ObservationReviewState;
export declare function loadObservationReviewState(observationsDir: string): ObservationReviewState;
export declare function updateObservationReviewState(observationsDir: string, update: ObservationReviewStateUpdate, now?: string): ObservationReviewState;
export declare function deleteObservationReviewState(observationsDir: string, targetType: ObservationReviewTargetType, targetId: string, now?: string): ObservationReviewState;
//# sourceMappingURL=review-state.d.ts.map