import { Constructor, Logger } from '@medishn/toolkit';
import { DynamicModule } from '@glandjs/common';
import { ModulesContainer } from '../container';
export declare class DependenciesScanner {
    private readonly container;
    private logger?;
    constructor(logger?: Logger);
    get modules(): ModulesContainer;
    scan(rootModule: Constructor | DynamicModule): Promise<void>;
    private scanForModules;
    private scanModulesForDependencies;
    private scanModuleDependencies;
    private getModuleByToken;
    private extractModuleMetadata;
    private getModuleType;
    private getModuleToken;
    private scanModuleImports;
    private scanControllers;
    private scanChannels;
}
