import type { Transaction } from "@platform-modules/db";
import type { ApplicationTransaction, UnitOfWork } from "@awp/application";
import type { schema } from "./schema.js";
type Tx = Transaction<typeof schema>;
interface Database {
    transaction<T>(work: (tx: Tx) => Promise<T>): Promise<T>;
}
export declare class PostgresUnitOfWork implements UnitOfWork {
    private readonly db;
    constructor(db: Database);
    transaction<T>(work: (tx: ApplicationTransaction) => Promise<T>): Promise<T>;
}
export {};
//# sourceMappingURL=unit-of-work.d.ts.map