/** * SQLite registry/allowlist operations for the sync provider. * * The local registry is the source of truth used to choose a provider range. * A caller cannot turn an arbitrary tab name into a sync target by merely * passing it to the provider client. */ import type { RegisterSyncSheetInput, RegisterSyncSheetResult, RegisteredSyncSheet } from "../../../contracts/storage/syncRegistry.js"; export type { RegisterSyncSheetInput, RegisterSyncSheetResult, RegisteredProjection, RegisteredSyncSheet, } from "../../../contracts/storage/syncRegistry.js"; import type { SqlExecutor, SqlStorageAdapter } from "../../../contracts/storage/sql.js"; import { type FencingContext } from "@hikoutei/ikisaki"; /** * Registers one logical sheet/projection pair through an active async SQL context. * * Call this from the same MikroORM transaction as any related setup state. The * registration and its writer-fence check use the same transaction boundary. */ export declare function registerSyncSheetWithSql(sql: SqlExecutor, fence: FencingContext, input: RegisterSyncSheetInput): Promise; /** Registers one projection in an adapter-owned MikroORM transaction. */ export declare function registerSyncSheetWithAdapter(storage: SqlStorageAdapter, fence: FencingContext, input: RegisterSyncSheetInput): Promise; /** Reads one enabled physical registry entry through an active async SQL context. */ export declare function requireRegisteredSyncSheetWithSql(sql: SqlExecutor, physicalSheetId: string): Promise; /** Reads one enabled physical registry entry through a fresh adapter read context. */ export declare function requireRegisteredSyncSheetWithAdapter(storage: SqlStorageAdapter, physicalSheetId: string): Promise; //# sourceMappingURL=syncRegistry.d.ts.map