type PartialLocale = {
    language: string;
    locale?: string;
};
export type Locale = {
    language: string;
    locale: string;
};
type SourceLocaleConfig = {
    source?: string | PartialLocale;
    sourceLanguage?: string;
    sourceLanguageLocale?: string;
};
export declare function resolveSource(config: SourceLocaleConfig, args: SourceLocaleConfig): Locale;
type TargetLocaleConfig = {
    target?: string | PartialLocale | (string | PartialLocale)[];
    targetLanguage?: string | string[];
    targetLanguageLocale?: string | string[];
};
export declare function resolveTargets(config: TargetLocaleConfig, args: TargetLocaleConfig): Locale[];
export declare function resolveFiles(input: string, files: string | string[] | null, include: string[], exclude: string[], lang: string | null, exts: string[], tocEntries?: string[] | null): [string[], [string, string][]];
export declare function resolveVars(config: {
    vars?: Hash;
}, args: {
    vars?: Hash;
}): Hash<any>;
export declare function configDefaults(): {
    dryRun: boolean;
    varsPreset: string;
    ignore: never[];
    ignoreStage: never[];
    vars: {};
    rawAddMeta: boolean;
    addSystemMeta: boolean;
    addResourcesMeta: boolean;
    addMetadataMeta: boolean;
    addAlternateMeta: boolean;
    template: {
        enabled: boolean;
        keepNotVar: boolean;
        legacyConditions: boolean;
        features: {
            conditions: "strict";
            substitutions: boolean;
        };
        scopes: {
            code: boolean;
            text: boolean;
        };
    };
    removeHiddenTocItems: boolean;
    removeEmptyTocItems: boolean;
    outputFormat: "html" | "md";
    allowHtml: boolean;
    sanitizeHtml: boolean;
    lang: string;
    langs: string[];
    vcsPath: {
        enabled: boolean;
    };
};
export type ConfigDefaults = ReturnType<typeof configDefaults>;
export {};
