UNPKG

@lucidcms/core

Version:

The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.

28 lines (27 loc) 1.55 kB
import DatabaseAdapter from "./adapter-base.mjs"; import { EnvironmentVariables, RuntimeArtifactProvider } from "../runtime/types.mjs"; //#region src/libs/db/adapter-factory.d.ts type DatabaseAdapterOptionsFactory<TOptions> = (env: EnvironmentVariables) => TOptions | Promise<TOptions>; type DatabaseAdapterFactory<TAdapter extends DatabaseAdapter = DatabaseAdapter> = { adapter: string; resolve: (env: EnvironmentVariables) => TAdapter | Promise<TAdapter>; hooks?: { runtime?: RuntimeArtifactProvider; }; }; type DatabaseAdapterCreator<TAdapter extends DatabaseAdapter = DatabaseAdapter> = DatabaseAdapterFactory<TAdapter> & { __lucidDatabaseAdapterCreator: true; }; declare const createDatabaseAdapterFactory: <TAdapter extends DatabaseAdapter = DatabaseAdapter>(props: { adapter: string; resolve: (env: EnvironmentVariables) => TAdapter | Promise<TAdapter>; hooks?: DatabaseAdapterFactory<TAdapter>["hooks"]; }) => DatabaseAdapterFactory<TAdapter>; declare const createDatabaseAdapterCreator: <TCreator extends (...args: any[]) => unknown, TAdapter extends DatabaseAdapter = DatabaseAdapter>(creator: TCreator, props: { adapter: string; resolve: (env: EnvironmentVariables) => TAdapter | Promise<TAdapter>; hooks?: DatabaseAdapterFactory<TAdapter>["hooks"]; }) => TCreator & DatabaseAdapterCreator<TAdapter>; //#endregion export { DatabaseAdapterCreator, DatabaseAdapterFactory, DatabaseAdapterOptionsFactory, createDatabaseAdapterCreator, createDatabaseAdapterFactory }; //# sourceMappingURL=adapter-factory.d.mts.map