UNPKG

@codemask-labs/nestjs-mongodb

Version:
22 lines (21 loc) 1.92 kB
import { IndexDescription, IndexDescriptionInfo } from 'mongodb'; import { Class, DataSourceOptions, EntityColumn, EntityColumnTypes, EntityColumnValidator, EntityIndex, EntityMetadata, MixedList, MongoJsonSchema } from './types'; import { BSONType } from './enums'; export declare const isDataSourceOptions: (object: any) => object is DataSourceOptions; export declare const isEmpty: (value: any) => boolean; export declare const getClientToken: (connectionName?: string) => string; export declare const getDataSourceToken: (connectionName?: string) => string; export declare const getCollectionToken: (entity: Class, connectionName?: string) => string; export declare const getEntityMetadata: <T>(entity: Class<T>) => EntityMetadata; export declare const getConnectionString: (options: DataSourceOptions) => string; export declare const getDefaultDataSourceOptions: (options: DataSourceOptions) => DataSourceOptions; export declare const getEntitiesFromMixedList: (mixedList?: MixedList<Class>) => Array<Class>; export declare const getBsonType: (type: EntityColumnTypes) => BSONType; export declare const getPropertyValidator: (column: EntityColumn) => EntityColumnValidator; export declare const getObjectValidator: (columns: Array<EntityColumn>) => EntityColumnValidator; export declare const getEntitySchemaValidator: (columns: Array<EntityColumn>) => MongoJsonSchema; export declare const getIndexNameFromKey: (key: string) => string; export declare const mergeObjectAndArray: (left: any, right: any) => any; export declare const getEntityIndexes: (metadata: EntityMetadata, stackedKeys?: Array<string>) => Record<string, EntityIndex>; export declare const getEntityIndexDescriptions: (entityIndexes: Record<string, EntityIndex>) => Array<IndexDescription>; export declare const getEntityDropIndexNames: (currentIndexDescriptions: Array<IndexDescriptionInfo>, entityIndexes: Record<string, EntityIndex>) => string[];