import type { LixEngine } from "../../engine/boot.js";
import type { LixSchemaDefinition } from "../../schema-definition/definition.js";
/**
 * Creates (or updates) a per-schema internal state cache table with core indexes.
 * Idempotent: safe to call multiple times and on existing tables.
 *
 * Core choices:
 * - STRICT + WITHOUT ROWID for compact storage and fast PK lookups
 * - PK(entity_id, file_id, version_id) to reflect logical identity
 * - Indexes to accelerate common access patterns used by views/benches
 * - Partial indexes for live/tombstone scans so SQLite can skip dead rows quickly
 */
/**
 * Ensures a schema-specific cache table exists and returns its physical name.
 *
 * The table contains a strict layout that mirrors materialized state rows and
 * creates core indexes optimised for read-heavy cache workloads. The function is
 * idempotent — callers may invoke it multiple times without side effects.
 *
 * @example
 *
 * ```ts
 * const tableName = createSchemaCacheTable({
 *   engine,
 *   schema: definition,
 * });
 * console.log(tableName); // "lix_internal_state_cache_v1_example"
 * ```
 */
export declare function createSchemaCacheTable(args: {
    engine: Pick<LixEngine, "executeSync">;
    schema: LixSchemaDefinition;
}): string;
/** Utility to sanitize a schema_key for use in a physical table name */
export declare function schemaKeyToCacheTableName(schema_key: string): string;
export declare function cacheTableNameToSchemaKey(tableName: string): string;
//# sourceMappingURL=create-schema-cache-table.d.ts.map