@emigrate/cli
Version:
Emigrate is a tool for managing database migrations. It is designed to be simple yet support advanced setups, modular and extensible.
22 lines • 1.21 kB
TypeScript
import { type EmigrateReporter, type MigrationMetadata, type MigrationMetadataFinished, type Storage, type FailedMigrationMetadata, type SuccessfulMigrationMetadata } from '@emigrate/types';
type MigrationRunnerParameters<T extends MigrationMetadata | MigrationMetadataFinished> = {
dry: boolean;
lock?: boolean;
limit?: number;
name?: string;
from?: string;
to?: string;
abortSignal?: AbortSignal;
abortRespite?: number;
reporter: EmigrateReporter;
storage: Storage;
migrations: AsyncIterable<T>;
migrationFilter?: (migration: T) => boolean;
validate: (migration: T) => Promise<void>;
execute: (migration: T) => Promise<void>;
onSuccess: (migration: SuccessfulMigrationMetadata) => Promise<void>;
onError: (migration: FailedMigrationMetadata, error: Error) => Promise<void>;
};
export declare const migrationRunner: <T extends MigrationMetadata | MigrationMetadataFinished>({ dry, lock, limit, name, from, to, abortSignal, abortRespite, reporter, storage, migrations, validate, execute, onSuccess, onError, migrationFilter, }: MigrationRunnerParameters<T>) => Promise<Error | undefined>;
export {};
//# sourceMappingURL=migration-runner.d.ts.map