import { SolcConfig, SolcUserConfig } from 'hardhat/types';
export interface SolcConfigData {
    compiler: SolcConfig;
    file?: string;
}
export interface SolcUserConfigNormalizer {
    suituble(_solcUserConfig: SolcUserConfig[] | Map<string, SolcUserConfig>, _file?: string): boolean;
    normalize(_compiler: SolcConfig, _zkSolcConfig: any, _latestEraVersion: string, _solcUserConfig: SolcUserConfig[] | Map<string, SolcUserConfig>, _file?: string): string;
}
export declare class OverrideCompilerSolcUserConfigNormalizer implements SolcUserConfigNormalizer {
    suituble(_solcUserConfig: SolcUserConfig[] | Map<string, SolcUserConfig>, _file?: string): boolean;
    normalize(_compiler: SolcConfig, _zkSolcConfig: any, _latestEraVersion: string, _userConfigCompilers: Map<string, SolcUserConfig>, _file: string): string;
}
export declare class CompilerSolcUserConfigNormalizer implements SolcUserConfigNormalizer {
    suituble(solcUserConfig: SolcUserConfig[] | Map<string, SolcUserConfig>, _file?: string): boolean;
    normalize(_compiler: SolcConfig, _zkSolcConfig: any, _latestEraVersion: string, _userConfigCompilers: SolcUserConfig[], _file?: string): string;
}
//# sourceMappingURL=config-normalizer.d.ts.map