import { SeederCollection, DeepPartial } from './common'; import { SeederDatabaseConfig } from './database'; import { MongoClientOptions } from 'mongodb'; import { EJSON } from 'bson'; /** * Defines configuration for database seeding. */ export interface SeederConfig { database: SeederDatabaseConfig; databaseReconnectTimeout: number; dropDatabase: boolean; dropCollections: boolean; removeAllDocuments: boolean; mongoClientOptions?: MongoClientOptions; } /** * Stores default configuration for database seeding. */ export declare const defaultSeederConfig: SeederConfig; /** * Merges configuration for database seeding. * * @param partial Partial config object. If not specified, returns a default config object. * @param previous Previous config object. If not specified, uses a default config object as a base. */ export declare const mergeSeederConfig: (partial?: DeepPartial, previous?: SeederConfig) => SeederConfig; /** * Defines collection reading configuration. */ export interface SeederCollectionReadingOptions { extensions: string[]; ejsonParseOptions?: EJSON.Options; transformers: Array<(collection: SeederCollection) => SeederCollection>; } /** * Stores default collection reading configuration values. */ export declare const defaultCollectionReadingOptions: SeederCollectionReadingOptions; /** * Merges configuration for collection reading. * * @param partial Partial config object. If not specified, returns a default config object. * @param previous Previous config object. If not specified, uses a default config object as a base. */ export declare const mergeCollectionReadingOptions: (partial?: DeepPartial, previous?: SeederCollectionReadingOptions) => SeederCollectionReadingOptions;