import mongoose, { Connection, Document } from "mongoose"; import * as migrate from "migrate"; export declare enum ETenantIdpType { KEYCLOAK = "keycloak" } export declare enum EConnectionType { FAST = "fast", SLOW = "slow", TRANSACTION = "transaction" } export interface IConnectionMap { [EConnectionType.FAST]: Connection; [EConnectionType.SLOW]: Connection; [EConnectionType.TRANSACTION]: Connection; } export interface IUseDBOptions { useCache: boolean; noListener: boolean; } export type TVirtualFunc = (this: Document) => number; export interface IVirtualObject { name: string; func: TVirtualFunc; } export interface IMongooseSelector { [key: string]: 1 | 0; } export declare enum EMongooseSelectorViewLevels { FULL = "full", INTERMEDIATE = "intermediate", SUMMARY = "summary" } export interface IStore { lastRun?: string; migrations: Pick[]; } export type TClientSession = { session: mongoose.ClientSession; connection: mongoose.Connection; }; export declare const migrationSchema: mongoose.Schema, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, { [path: string]: mongoose.SchemaDefinitionProperty; }, mongoose.Document; }>> & mongoose.FlatRecord<{ [path: string]: mongoose.SchemaDefinitionProperty; }> & Required<{ _id: unknown; }>>; //# sourceMappingURL=interfaces.d.ts.map