ts-migrate-mongoose
Version:
A migration framework for Mongoose, built with TypeScript.
42 lines (37 loc) • 1.72 kB
text/typescript
import { ModuleMetadata, InjectionToken, OptionalFactoryDependency, Type, DynamicModule, OnApplicationBootstrap, OnApplicationShutdown } from '@nestjs/common';
import { MigratorOptions, Migrator } from '../index.cjs';
import 'mongoose';
interface MigrationModuleOptions extends MigratorOptions {
onBootstrap?: (migrator: Migrator) => Promise<void>;
}
interface MigrationOptionsFactory {
createMigrationOptions(): MigrationModuleOptions | Promise<MigrationModuleOptions>;
}
interface MigrationModuleAsyncOptions extends Pick<ModuleMetadata, 'imports'> {
isGlobal?: boolean;
inject?: (InjectionToken | OptionalFactoryDependency)[];
useClass?: Type<MigrationOptionsFactory>;
useExisting?: Type<MigrationOptionsFactory>;
useFactory?: (...args: any[]) => MigrationModuleOptions | Promise<MigrationModuleOptions>;
}
declare class MigrationModule {
static forRoot(options: MigrationModuleOptions & {
isGlobal?: boolean;
}): DynamicModule;
static forRootAsync(options: MigrationModuleAsyncOptions): DynamicModule;
private static createAsyncProviders;
}
declare const MIGRATION_OPTIONS: unique symbol;
declare class MigrationService implements OnApplicationBootstrap, OnApplicationShutdown {
private readonly logger;
private readonly options;
private migrator;
constructor(options: MigrationModuleOptions);
get instance(): Migrator;
onApplicationBootstrap(): Promise<void>;
onApplicationShutdown(): Promise<void>;
private runDefaultMigrations;
}
export { MIGRATION_OPTIONS, MigrationModule, MigrationService };
export type { MigrationModuleAsyncOptions, MigrationModuleOptions, MigrationOptionsFactory };
//# sourceMappingURL=index.d.cts.map