import { ConnectionFactory } from '@neoskop/adamant'; import { DynamicModule, Provider, Type } from '@nestjs/common'; import { ModuleMetadata } from '@nestjs/common/interfaces'; export interface AdamantOptions { factory: ConnectionFactory; designDocs?: Type[]; providers?: any[]; viewWarmup?: 'sync' | 'async' | 'none' | false | null; } export interface AdamantAsyncOptions extends Pick { providers?: any[]; designDocs?: Type[]; viewWarmup?: 'sync' | 'async' | 'none' | false | null; useExisting?: Type; useClass?: Type; useFactory?: (...args: any[]) => Promise | ConnectionFactory; inject?: any[]; } export interface AdamantConnectionFactoryFactory { createAdamantConnection(): Promise | ConnectionFactory; } export declare const ADAMANT_PROVIDERS = "ADAMANT_PROVIDERS"; export declare const ADAMANT_DESIGN_DOCS = "ADAMANT_DESIGN_DOCS"; export declare const ADAMANT_PROVIDER_VALUES = "ADAMANT_PROVIDER_VALUES"; export declare const ADAMANT_VIEW_WARMUP = "ADAMANT_VIEW_WARMUP"; export declare function designDocFactory(...designDocs: any[]): Promise; export declare class AdamantModule { static forRoot(options: AdamantOptions): DynamicModule; static forRootAsync(options: AdamantAsyncOptions): DynamicModule; protected static createAsyncProviders(options: AdamantAsyncOptions): Provider[]; protected static createAsyncOptionsProvider(options: AdamantAsyncOptions): Provider; }