import { createRegistry as coreCreate, type Registry } from '@dbmole/core' import { type ConnectionConfig, connectionConfigSchema } from './schema.js' import { readConfigFile, readEnvConnections } from './sources.js' import { readStore, writeStore } from './store.js' export type EsRegistry = Registry export type RegistryOptions = { storePath: string; configPath?: string; env?: NodeJS.ProcessEnv } export const createRegistry = (options: RegistryOptions): EsRegistry => { const env = options.env ?? process.env return coreCreate({ schema: connectionConfigSchema, readStore: () => readStore(options.storePath), writeStore: (configs) => writeStore(options.storePath, configs), readConfigFile: () => readConfigFile(options.configPath), readEnvConnections: () => readEnvConnections(env) }) }