import { IConfigParser } from "./i-config-parser";
import { IConfigParserOptions } from "./i-config-parser-options";
import { IFoveaCliConfig } from "../../fovea-cli-config/i-fovea-cli-config";
import { IBuildConfig } from "../../build-config/i-build-config";
import { NormalizeFunction } from "../../normalize/normalize-function";
import { IRollupService } from "../../rollup/rollup-service/i-rollup-service";
import { IRollupServiceGenerateWithResultResult } from "../../rollup/rollup-service/i-rollup-service-generate-with-result-result";
/**
 * A class that helps with parsing a fovea-cli.config file
 */
export declare class ConfigParser implements IConfigParser {
    private readonly config;
    private readonly rollupService;
    private readonly normalizeFunction;
    constructor(config: IBuildConfig, rollupService: IRollupService, normalizeFunction: NormalizeFunction<IFoveaCliConfig>);
    /**
     * Parses the config matched by the given options and returns an IFoveaCliConfig
     * @param {string} root
     * @param {string} path
     * @param {IPackageJson} packageJson
     * @param {RollupCache} [cache]
     * @returns {Promise<IRollupServiceGenerateWithResultResult<IFoveaCliConfig>>}
     */
    parse({root, path, packageJson, cache}: IConfigParserOptions): Promise<IRollupServiceGenerateWithResultResult<IFoveaCliConfig>>;
}
