import { Harmony } from '@teambit/harmony';
import { CompilerMain } from '@teambit/compiler';
import { DependencyResolverMain } from '@teambit/dependency-resolver';
import { DocsMain } from '@teambit/docs';
import { LoggerMain } from '@teambit/logger';
import { WorkerMain } from '@teambit/worker';
import { EnvsMain } from '@teambit/envs';
import { MultiCompilerMain } from '@teambit/multi-compiler';
import { ReactMain } from '@teambit/react';
import { GeneratorMain } from '@teambit/generator';
import { MDXCompilerOpts } from './mdx.compiler';
import { MdxEnv } from './mdx.env';
export type MDXConfig = {
    /**
     * list of file extensions to consider as MDX files.
     */
    extensions: string[];
};
export declare class MDXMain {
    icon(): string;
    /**
     * create an instance of the MDX compiler.
     */
    createCompiler(opts?: MDXCompilerOpts): import("./mdx.compiler").MDXCompiler;
    _mdxEnv: MdxEnv;
    get mdxEnv(): MdxEnv;
    private set mdxEnv(value);
    static runtime: import("@teambit/harmony").RuntimeDefinition;
    static dependencies: import("@teambit/harmony").Aspect[];
    static defaultConfig: {
        extensions: string[];
    };
    static provider([docs, depResolver, react, envs, multiCompiler, compiler, generator, loggerAspect, workerMain]: [
        DocsMain,
        DependencyResolverMain,
        ReactMain,
        EnvsMain,
        MultiCompilerMain,
        CompilerMain,
        GeneratorMain,
        LoggerMain,
        WorkerMain
    ], config: MDXConfig, slots: any, harmony: Harmony): Promise<MDXMain>;
}
