import type { Resolver } from 'umzug'; import type { Knex } from 'knex'; import type { Database } from '..'; export interface UserMigrationProvider { shouldRun(): Promise; up(): Promise; down(): Promise; } export interface InternalMigrationProvider { register(migration: Migration): void; shouldRun(): Promise; up(): Promise; down(): Promise; } export interface MigrationProvider { providers: { internal: InternalMigrationProvider; }; shouldRun(): Promise; up(): Promise; down(): Promise; } export type Context = { db: Database; }; export type MigrationResolver = Resolver; export type MigrationFn = (knex: Knex.Transaction, db: Database) => Promise; export type Migration = { name: string; up: MigrationFn; down: MigrationFn; }; export declare const wrapTransaction: (db: Database) => (fn: MigrationFn) => () => Promise>; //# sourceMappingURL=common.d.ts.map