import { ExternalModule, PossibleRunTime } from '../../utils/constant/config/index';
import type { DependencyModule } from './types';
export declare class BlazeConfig {
    readonly runTime: PossibleRunTime;
    readonly modules: DependencyModule;
    constructor();
    private getRunTime;
    private loadModule;
    module<T extends ExternalModule, U extends DependencyModule[T], V extends U extends null ? never : U>(module: T): V;
    /**
     * Load necessary module directly that will be used in the app. Recommended if you want to bundle the app with Bun
     * @example
     * ```ts
     * import *  as nodeAdapter from '@hono/node-server'
     *
     * app.setModule(ExternalModule.NodeAdapter, nodeAdapter)
     * ```
     */
    setModule<T extends ExternalModule>(id: T, module: DependencyModule[T]): void;
}
