import type { TaskStoreDocument } from "../types.js";
import type { TaskStateEventV1 } from "./event-payloads.js";
import type { TaskStateApplierError, TaskStateProjectionV1, TaskStateReplayResultV1 } from "./projection-types.js";
export declare function createEmptyTaskStateProjection(lastUpdated?: string): TaskStateProjectionV1;
/** Apply one validated event to an in-memory projection (pure, no I/O). */
export declare function applyTaskStateEvent(projection: TaskStateProjectionV1, event: TaskStateEventV1, options?: {
    enforceSequence?: boolean;
}): {
    ok: true;
    projection: TaskStateProjectionV1;
} | {
    ok: false;
    error: TaskStateApplierError;
};
/** Replay a fixture or canonical stream into a stable store-shaped document. */
export declare function replayTaskStateEvents(events: TaskStateEventV1[], options?: {
    enforceSequence?: boolean;
}): {
    ok: true;
    result: TaskStateReplayResultV1;
} | {
    ok: false;
    error: TaskStateApplierError;
};
/** Stable task row ordering aligned with list-tasks pagination. */
export declare function materializeTaskStoreDocument(projection: TaskStateProjectionV1): TaskStoreDocument;
