/// <reference types="node" />
/// <reference types="mocha" />
/// <reference types="node" />
/// <reference types="node" />
import { ConfigExtender, PolarRuntimeEnvironment } from '../types';
import { ExtenderManager } from './core/config/extenders';
import { TasksDSL } from './core/tasks/dsl';
export declare type GlobalWithPolarContext = NodeJS.Global & {
    __polarContext: PolarContext;
};
export declare class PolarContext {
    static isCreated(): boolean;
    static createPolarContext(): PolarContext;
    static getPolarContext(): PolarContext;
    static deletePolarContext(): void;
    readonly tasksDSL: TasksDSL;
    readonly extendersManager: ExtenderManager;
    readonly loadedPlugins: string[];
    environment?: PolarRuntimeEnvironment;
    readonly configExtenders: ConfigExtender[];
    setRuntimeEnv(env: PolarRuntimeEnvironment): void;
    getRuntimeEnv(): PolarRuntimeEnvironment;
    setPluginAsLoaded(pluginName: string): void;
}
