docs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10
Design a Nest module that configures a MongoDB connection using asynchronous option providers so different dependency injection patterns can build the connection settings at runtime.
mongodb://user:pass@host:port/db connection string while passing through any extra driver options returned. @testexport interface AsyncDbConfig {
uri: string;
user?: string;
pass?: string;
tls?: boolean;
appName?: string;
}
export type ConfigSource =
| { kind: "factory"; useFactory: (...deps: any[]) => Promise<AsyncDbConfig> | AsyncDbConfig; inject?: any[] }
| { kind: "class"; useClass: new (...deps: any[]) => { createConfig(): Promise<AsyncDbConfig> | AsyncDbConfig }; inject?: any[] }
| { kind: "existing"; useExisting: any };
export interface AsyncConnectionModuleOptions {
config: ConfigSource;
connectionName?: string;
}
export class AsyncConnectionModule {
static registerAsync(options: AsyncConnectionModuleOptions): DynamicModule;
}Integrates the Nest application with MongoDB connections and models.