import "./index-ChIfeWzk.js";
import "./ItemsInputNormalizer-CFkfNMLt.js";
import { i as AppPersistenceConfig } from "./CodemationAppContext-K51b7oXe.js";
import "./CodemationWhitelabelConfig-Ca2mCUeC.js";
import "./CodemationConfigNormalizer-B4rDYC9h.js";
import { n as PrismaDatabaseClient, t as AppConfigFactory } from "./AppConfigFactory-DncmwCD1.js";
import { t as PrismaMigrationDeployer } from "./PrismaMigrationDeployer-DdEcXXVi.js";
import { t as CodemationPostgresPrismaClientFactory } from "./CodemationPostgresPrismaClientFactory-CTNTPnDr.js";

//#region src/infrastructure/persistence/CodemationDatabaseUrlParser.d.ts

/**
 * Parses `CODEMATION_DATABASE_URL` into an {@link AppPersistenceConfig}.
 *
 * Supported schemes (case-insensitive):
 *   - `sqlite://relative/path/to/file.db`    → resolved relative to consumerRoot
 *   - `sqlite:///absolute/path/to/file.db`   → leading slash = POSIX absolute
 *   - `sqlite://C:/path/file.db`             → Windows-style absolute (path.isAbsolute()
 *                                              returns true for these)
 *   - `pgsql://user:pass@host:5432/dbname`   → normalised to postgresql://
 *   - `postgresql://user:pass@host:5432/db`  → pass-through (Prisma's expected scheme)
 *   - `postgres://user:pass@host:5432/db`    → pass-through (common alias)
 *
 * Throws on any other scheme. Empty / whitespace input is also an error — callers
 * should default before calling parse().
 */
declare class CodemationDatabaseUrlParser {
  parse(url: string, consumerRoot: string): AppPersistenceConfig;
}
//#endregion
export { AppConfigFactory, type AppPersistenceConfig, CodemationDatabaseUrlParser, CodemationPostgresPrismaClientFactory, type PrismaDatabaseClient as PrismaClient, PrismaMigrationDeployer };
//# sourceMappingURL=persistenceServer.d.ts.map