15 lines
364 B
TypeScript
15 lines
364 B
TypeScript
export default abstract class Migration {
|
|
public readonly version: number;
|
|
|
|
constructor(version: number) {
|
|
this.version = version;
|
|
}
|
|
|
|
async shouldRun(currentVersion: number): Promise<boolean> {
|
|
return this.version > currentVersion;
|
|
}
|
|
|
|
abstract async install(): Promise<void>;
|
|
|
|
abstract async rollback(): Promise<void>;
|
|
} |