import type { IDatabase } from '../Database';
import type { MigrationRecord, MigrationRecordStatus, MigrationScope } from '../../migrations/types';
export declare const MigrationStore: Readonly<{
    ensureTable(db: IDatabase): Promise<void>;
    getLastCompletedBatch(db: IDatabase, scope?: MigrationScope, service?: string): Promise<number>;
    getAppliedMap(db: IDatabase, scope: MigrationScope, service: string): Promise<Map<string, MigrationRecord>>;
    insertRunning(db: IDatabase, params: {
        name: string;
        scope: MigrationScope;
        service: string;
        batch: number;
    }): Promise<void>;
    markStatus(db: IDatabase, params: {
        name: string;
        scope: MigrationScope;
        service: string;
        status: MigrationRecordStatus;
        appliedAt?: string | null;
    }): Promise<void>;
    listCompletedInBatchesGte(db: IDatabase, params: {
        scope: MigrationScope;
        service: string;
        minBatch: number;
    }): Promise<Array<{
        name: string;
        batch: number;
    }>>;
    listAllCompletedNames(db: IDatabase, params: {
        scope: MigrationScope;
        service: string;
    }): Promise<string[]>;
    deleteRecord(db: IDatabase, params: {
        name: string;
        scope: MigrationScope;
        service: string;
    }): Promise<void>;
}>;
//# sourceMappingURL=MigrationStore.d.ts.map