import type { Generated, Selectable } from "kysely";
import type { LixEngine } from "../../engine/boot.js";
export type StateWithTombstonesView = {
    entity_id: string;
    schema_key: string;
    file_id: string;
    plugin_key: string;
    snapshot_content: Record<string, any> | null;
    schema_version: string;
    version_id: string;
    created_at: Generated<string>;
    updated_at: Generated<string>;
    inherited_from_version_id: string | null;
    change_id: Generated<string>;
    untracked: Generated<boolean>;
    commit_id: Generated<string>;
    writer_key: string | null;
    metadata: Generated<Record<string, any> | null>;
};
export type StateWithTombstonesRow = Selectable<StateWithTombstonesView>;
/**
 * Creates a read-only view that exposes tracked deletions as tombstones.
 *
 * This view reads from the materialized state which includes both live rows
 * and deletion tombstones (NULL snapshot_content). It intentionally does NOT
 * filter out tombstones, unlike the resolved-state or public state_by_version views.
 *
 * We restrict to non-inherited rows (inherited_from_version_id IS NULL) so that
 * each version only reports its own direct state or tombstones.
 */
export declare function applyStateWithTombstonesView(args: {
    engine: Pick<LixEngine, "sqlite">;
}): void;
//# sourceMappingURL=state-with-tombstones.d.ts.map