import { ModuleConfig } from '../../types';
import { LoggerModule } from '../logger';
import { Constructor, ModuleRegistry } from './registry';
export declare class BaseModule {
    protected config: ModuleConfig;
    protected logger: LoggerModule;
    protected cwd: string;
    protected registry: Constructor | undefined;
    protected autoInstallDeps: boolean;
    get name(): string;
    setCWD(cwd: string): void;
    setRegistry(registry: ModuleRegistry): void;
    isInstalled(): Promise<boolean>;
    setup(): Promise<void>;
    installDeps(): Promise<void>;
}
