import { ModuleMetadata, InjectionToken, OptionalFactoryDependency, Type, DynamicModule, OnApplicationBootstrap, OnApplicationShutdown } from '@nestjs/common'; import CacheMongoose, { CacheOptions } from '../index.mjs'; import 'mongoose'; import 'ioredis'; type CacheModuleOptions = CacheOptions; interface CacheOptionsFactory { createCacheOptions(): CacheModuleOptions | Promise; } interface CacheModuleAsyncOptions extends Pick { isGlobal?: boolean; inject?: (InjectionToken | OptionalFactoryDependency)[]; useClass?: Type; useExisting?: Type; useFactory?: (...args: any[]) => CacheModuleOptions | Promise; } declare class CacheModule { static forRoot(options: CacheModuleOptions & { isGlobal?: boolean; }): DynamicModule; static forRootAsync(options: CacheModuleAsyncOptions): DynamicModule; private static createAsyncProviders; } declare const CACHE_OPTIONS: unique symbol; declare class CacheService implements OnApplicationBootstrap, OnApplicationShutdown { private readonly logger; private readonly options; private cacheMongoose; constructor(options: CacheModuleOptions); get instance(): CacheMongoose; onApplicationBootstrap(): Promise; onApplicationShutdown(): Promise; clear(customKey?: string): Promise; } export { CACHE_OPTIONS, CacheModule, CacheService }; export type { CacheModuleAsyncOptions, CacheModuleOptions, CacheOptionsFactory }; //# sourceMappingURL=index.d.mts.map