import type { CanonicalStateEventV1 } from "./canonical-state-events.js";
import { type PlanningSyncApplyOptions } from "./planning-event-applier.js";
import type { PlanningStateProjectionV1 } from "./planning-projection-types.js";
import type { TaskStateProjectionV1 } from "./projection-types.js";
export type CanonicalReplayResultV1 = {
    taskProjection: TaskStateProjectionV1;
    planningProjection: PlanningStateProjectionV1;
    lastEventSequence: number;
};
export declare function replayCanonicalStateEvents(events: CanonicalStateEventV1[], options?: PlanningSyncApplyOptions): {
    ok: true;
    result: CanonicalReplayResultV1;
} | {
    ok: false;
    code: string;
    message: string;
    eventId?: string;
};
/** Convenience: replay task-only subset (existing callers). */
export declare function replayTaskEventsFromCanonical(events: CanonicalStateEventV1[]): {
    ok: true;
    result: import("./projection-types.js").TaskStateReplayResultV1;
} | {
    ok: false;
    error: import("./projection-types.js").TaskStateApplierError;
};
/** Convenience: replay planning-only subset. */
export declare function replayPlanningEventsFromCanonical(events: CanonicalStateEventV1[], options?: PlanningSyncApplyOptions): {
    ok: true;
    projection: PlanningStateProjectionV1;
} | {
    ok: false;
    error: import("./planning-projection-types.js").PlanningStateApplierError;
};
