import type { Environment } from '@teambit/envs';
import type { ReactMain } from '@teambit/react';
import type { Logger } from '@teambit/logger';
import type { MultiCompilerMain } from '@teambit/multi-compiler';
import type { CompilerMain } from '@teambit/compiler';
import type { DocsMain } from '@teambit/docs';
import type { MDXCompilerOpts } from './mdx.compiler';
import { MDXCompiler } from './mdx.compiler';
export declare const MdxEnvType = "mdx";
export declare class MdxEnv implements Environment {
    private react;
    private logger;
    private multiCompiler;
    private compiler;
    private docs;
    constructor(react: ReactMain, logger: Logger, multiCompiler: MultiCompilerMain, compiler: CompilerMain, docs: DocsMain);
    getCompiler(): import("@teambit/multi-compiler").MultiCompiler;
    getBuildPipe(): (import("@teambit/compiler").CompilerTask | import("@teambit/builder").BuildTask)[];
    getDependencies(): Promise<{
        dependencies: {
            react: string;
            "react-dom": string;
            "core-js": string;
        };
        devDependencies: {
            react: string;
            "react-dom": string;
            "@types/mocha": string;
            "@types/node": string;
            "@types/react": string;
            "@types/react-dom": string;
            "@types/jest": string;
            "@babel/runtime": string;
            "@types/testing-library__jest-dom": string;
        };
        peerDependencies: {
            react: string;
            "react-dom": string;
        };
    } & {
        dependencies: {
            '@teambit/mdx.ui.mdx-scope-context': string;
            '@mdx-js/react': string;
        };
    }>;
    /**
     * create an instance of the MDX compiler.
     */
    createMdxCompiler(opts?: MDXCompilerOpts): MDXCompiler;
    __getDescriptor(): Promise<{
        type: string;
    }>;
}
