import { Driver } from "./DriverTypes"; import { Logger } from "./Logger"; import { ExecutionInformation } from "./ExecutionTracker"; export declare type ScriptContext = { getDriver: >(name: string) => Promise; getDriversUsed: () => Array; getConfigValue: (key: string) => string; cleanupDrivers: (log: Logger) => Promise>; }; export declare type MigrationExecutor = (context: ScriptContext, log: Logger) => Promise; export default interface MigrationScript { description?: string; up: MigrationExecutor; down?: MigrationExecutor; hasRun?: MigrationExecutor; } export interface InitializedMigrationScript { name: string; description?: string; up: () => Promise; down: () => Promise; hasRun: boolean; executionInformation?: ExecutionInformation; }