import { OnApplicationBootstrap } from '@nestjs/common';
import { DiscoveryService, MetadataScanner, ModuleRef, Reflector } from '@nestjs/core';
import { ModelMetadataHelperService } from '../helpers/model-metadata-helper.service';
import { ModelMetadataRepository } from '../repository/model-metadata.repository';
import { InstanceWrapper } from '@nestjs/core/injector/instance-wrapper';
import { SolidRegistry } from '../helpers/solid-registry';
import { AuditSubscriber } from '../subscribers/audit.subscriber';
import { ComputedEntityFieldSubscriber } from '../subscribers/computed-entity-field.subscriber';
import { CreatedByUpdatedBySubscriber } from '../subscribers/created-by-updated-by.subscriber';
import { SoftDeleteAwareEventSubscriber } from '../subscribers/soft-delete-aware-event.subscriber';
import { CRUDService } from './crud.service';
import { SettingService } from '../services/setting.service';
export declare const coreSubscriberClasses: (typeof AuditSubscriber | typeof ComputedEntityFieldSubscriber | typeof CreatedByUpdatedBySubscriber | typeof SoftDeleteAwareEventSubscriber)[];
export declare class SolidIntrospectService implements OnApplicationBootstrap {
    private readonly discoveryService;
    private readonly reflector;
    private readonly metadataScanner;
    private readonly solidRegistry;
    private readonly moduleRef;
    private readonly settingService;
    private readonly modelMetadataRepo;
    private readonly modelMetadataHelperService;
    constructor(discoveryService: DiscoveryService, reflector: Reflector, metadataScanner: MetadataScanner, solidRegistry: SolidRegistry, moduleRef: ModuleRef, settingService: SettingService, modelMetadataRepo: ModelMetadataRepository, modelMetadataHelperService: ModelMetadataHelperService);
    private readonly logger;
    onApplicationBootstrap(): Promise<void>;
    private cacheAuditableModels;
    bootstrapCoreTypeOrmSubscribers(dbModules: Array<InstanceWrapper<any>>): Promise<void>;
    isDashboardQuestionDataProvider(providerWrapper: InstanceWrapper<any>): boolean;
    private isSeeder;
    private isErrorCodeProvider;
    private isSelectionProvider;
    private isExtensionUserCreationProvider;
    private isSettingsProvider;
    private isDashboardVariableSelectionProvider;
    private isComputedFieldProvider;
    private isScheduledJobProvider;
    private isSolidDatabaseModule;
    private isMailProvider;
    private isWhatsappProvider;
    private isSmsProvider;
    private isSecurityRuleConfigProvider;
    private isModule;
    getCRUDService(modelSingularName: string): CRUDService<any>;
    getProvider(providerName: string): InstanceWrapper<any>;
}
//# sourceMappingURL=solid-introspect.service.d.ts.map