UNPKG

iagate-querykit

Version:

QueryKit: lightweight TypeScript query toolkit with models, views, triggers, events, scheduler and adapters (better-sqlite3).

34 lines 1.19 kB
import type { DatabaseExecutor } from './types'; import { QueryBuilder } from './query-builder'; export type MigrationStep = string | string[] | ((ctx: MigrationContext) => Promise<void> | void); export type MigrationSpec = { id: string; up: MigrationStep; down?: MigrationStep; tags?: string[]; }; export type MigrationContext = { exec: DatabaseExecutor; dialect?: DatabaseExecutor['dialect']; query: (sql: string, bindings?: any[]) => Promise<void>; runSync: (sql: string, bindings?: any[]) => void; qb: <T = any>(tableName: string) => QueryBuilder<T>; }; export declare function listAppliedMigrations(executor?: DatabaseExecutor): Promise<string[]>; export declare function migrateUp(migrations: MigrationSpec[], opts?: { to?: string; executor?: DatabaseExecutor; }): Promise<{ applied: string[]; }>; export declare function migrateDown(migrations: MigrationSpec[], opts?: { to?: string; steps?: number; executor?: DatabaseExecutor; }): Promise<{ reverted: string[]; }>; export declare function resetMigrations(opts?: { executor?: DatabaseExecutor; }): Promise<void>; //# sourceMappingURL=migration-manager.d.ts.map