import { Language } from './import/base';
export interface ImportSpec {
    readonly moduleNamePrefix?: string;
    readonly source: string;
}
export interface ValidationConfig {
    readonly package: string;
    readonly version: string;
    readonly class: string;
    readonly installEnv?: {
        [key: string]: any;
    };
    readonly properties?: {
        [key: string]: any;
    };
}
export declare enum SynthesisFormat {
    PLAIN = "plain",
    HELM = "helm"
}
export declare enum HelmChartApiVersion {
    V1 = "v1",
    V2 = "v2"
}
export interface SynthConfig {
    readonly format?: SynthesisFormat;
    readonly chartApiVersion?: HelmChartApiVersion;
    readonly chartVersion?: string;
}
export interface Config {
    readonly app?: string;
    readonly language?: Language;
    readonly output?: string;
    readonly importDirectory?: string;
    readonly imports?: string[];
    readonly pluginsDirectory?: string;
    readonly validations?: string | ValidationConfig[];
    readonly synthConfig?: SynthConfig;
}
export declare function readConfigSync(): Config | undefined;
export declare function addImportToConfig(source: string): Promise<void>;
