import { PolyEngine } from '../../../Poly';
import { ModuleName } from './Common';
import { BaseModule } from './_BaseModule';
export interface ModuleRegisterOptions {
    printWarnings?: boolean;
}
export declare class BaseModulesRegister {
    private poly;
    private _moduleByName;
    constructor(poly: PolyEngine);
    register<K extends ModuleName>(moduleName: K, module: BaseModule<K>, options?: ModuleRegisterOptions): void;
    moduleNames(): ModuleName[];
}
