/** * Composition wiring for the plain local-only scalar runtime (P8-C). * * The exact wiring block previously owned by `createLocalTypedSheetsRuntime` * in `src/api/Hikoutei.ts`: it generates the MikroORM scalar entity runtime * for the declared entities, opens the dedicated SQLite storage, and binds * the scalar persistence provider. The public API factory calls this module * lazily (dynamic import), so importing the root package alone never loads * the MikroORM module graph — only opening a runtime does. Runtime behavior * is byte-identical: same generation, same storage options, same provider * construction, same construction order and failure propagation. */ import { type MikroOrmScalarEntityRuntimeDefinition } from "../persistence/providers/mikro-orm/engine/MikroOrmScalarEntityRuntime.js"; import type { ScalarEntityPersistenceProvider } from "../contracts/storage/scalar.js"; import type { HikouteiEntity } from "../sync-engine/api/entity.js"; import { type CreateTypedSheetsOptions, type Hikoutei } from "../sync-engine/api/hikouteiCore.js"; /** Lazily-loaded provider resources for one local runtime open. */ export interface LocalScalarRuntimeWiring { /** Generated MikroORM entity materialization (schemas + bindings). */ readonly generated: MikroOrmScalarEntityRuntimeDefinition; /** Opens the MikroORM-configured SQLite storage for the entity set. */ readonly initializeStorage: (dbName: string) => Promise; /** Binds the scalar persistence provider to the opened storage. */ readonly createPersistenceProvider: (storage: unknown) => ScalarEntityPersistenceProvider; } /** * Generates the concrete local runtime wiring for the declared entity tokens. * Called after the API resolved descriptors, only when a runtime is opened. */ export declare function createLocalScalarRuntimeWiring(entities: readonly HikouteiEntity[]): Promise; /** * Opens the plain local-only SQLite runtime with no sync service. * * Internal construction hook shared by `createTypedSheets()` (root package, * the sync auto-start bridge (env present but disabled). It deliberately loads * the current provider lazily so importing the root package alone never * requires MikroORM or the Google SDK module graph. Omitting `dbName` or * `entities` here applies the same defaults as `createTypedSheets()`. */ export declare function createLocalTypedSheetsRuntime(options: CreateTypedSheetsOptions): Promise; //# sourceMappingURL=localRuntime.d.ts.map