import type { ModuleLifecycleContext } from "../../../contracts/module-contract.js";
import type { TaskStore } from "./store.js";
export type TasksCanonicalAuthority = "sqlite" | "git-event-log";
export declare function readTasksCanonicalAuthority(config?: Record<string, unknown> | null): TasksCanonicalAuthority;
export declare function isGitTaskStateCanonicalAuthority(ctx: ModuleLifecycleContext): boolean;
/** Monotonic per-task version used for optimistic concurrency (matches event applier bumps). */
export declare function taskVersionFromStore(store: TaskStore, taskId: string): number;
export declare function expectedTaskVersionsForTaskIds(store: TaskStore, taskIds: Iterable<string>): Record<string, number>;
export declare function readCanonicalPublishQueueMode(config?: Record<string, unknown> | null): boolean;
