/** * Pure namespace resolution: pick the first non-empty source, then sanitize to * a valid Postgres identifier prefix. Exported for direct testing — the impure * {@link projectNamespace} wraps it with the actual env + package.json sources. */ export declare function resolveNamespace(envOverride: string | undefined, pkgName: string | undefined): string; /** This project's namespace token, resolved once per process. */ export declare function projectNamespace(): string; /** Prefix for this project's per-run test databases: `_test_`. */ export declare function testDbPrefix(): string; /** Prefix for this project's per-run runtime (app) roles: `_app_`. */ export declare function appRolePrefix(): string; /** * Prefix for this project's shared, content-keyed templates: `_tmpl_`. * * Templates sit in their own prefix rather than under `testDbPrefix()` because * they have a different lifecycle and a different reaping rule: a per-run clone * dies with its run, a template deliberately outlives every run that uses it * and is dropped only once no run wants it. Separate prefixes keep the reaper's * two passes from having to tell the names apart by shape. Issue #340. */ export declare function templateDbPrefix(): string; /** * `LIKE` pattern matching every per-run test database of THIS project, with the * prefix underscores escaped so they match literally. The reaper uses it to * scope its sweep to its own namespace and never another project's databases. */ export declare function testDbLikePattern(): string; /** `LIKE` pattern matching every shared template of THIS project. */ export declare function templateDbLikePattern(): string; //# sourceMappingURL=namespace.d.ts.map