fewer
Version:
A minimal ORM for Node.js.
27 lines (26 loc) • 1.74 kB
TypeScript
import { Adapter } from '../Adapter';
import { MigrationBuilder } from './';
declare type ChangeMigrationDefinition<DBAdapter extends Adapter> = {
change: (m: MigrationBuilder<DBAdapter>, t: DBAdapter['ColumnTypes']) => MigrationBuilder<any, false>;
};
export declare type ChangeMigrationShorthand<DBAdapter extends Adapter> = (m: MigrationBuilder<DBAdapter>, t: DBAdapter['ColumnTypes']) => MigrationBuilder<any, false>;
declare type UpDownMigrationDefinition<DBAdapter extends Adapter> = {
up: (m: MigrationBuilder<DBAdapter>, t: DBAdapter['ColumnTypes']) => MigrationBuilder;
down: (m: MigrationBuilder<DBAdapter>, t: DBAdapter['ColumnTypes']) => MigrationBuilder;
};
declare type IrreversibleMigrationDefinition<DBAdapter extends Adapter> = {
up: (m: MigrationBuilder<DBAdapter>, t: DBAdapter['ColumnTypes']) => MigrationBuilder;
irreversible: true;
};
declare type TaggedChangeMigrationDefinition<DBAdapter extends Adapter> = ChangeMigrationDefinition<DBAdapter> & {
type: 'change';
};
declare type TaggedUpDownMigrationDefinition<DBAdapter extends Adapter> = UpDownMigrationDefinition<DBAdapter> & {
type: 'updown';
};
declare type TaggedIrreversibleMigrationDefinition<DBAdapter extends Adapter> = IrreversibleMigrationDefinition<DBAdapter> & {
type: 'irreversible';
};
export declare type MigrationDefinition<DBAdapter extends Adapter = any> = ChangeMigrationDefinition<DBAdapter> | UpDownMigrationDefinition<DBAdapter> | IrreversibleMigrationDefinition<DBAdapter>;
export declare type TaggedMigrationDefinition<DBAdapter extends Adapter = any> = TaggedChangeMigrationDefinition<DBAdapter> | TaggedUpDownMigrationDefinition<DBAdapter> | TaggedIrreversibleMigrationDefinition<DBAdapter>;
export {};