import type { AiConfig, BuildArgs, BuildConfig } from './types';
import type { ExtendedOption } from "../../core/config";
export declare enum OutputFormat {
    md = "md",
    html = "html"
}
/**
 * Default build config values.
 *
 * Extracted from the `@withConfigDefaults` decorator on the `Build` command so
 * that sibling commands (e.g. `content`) can reuse the exact same defaults
 * without duplicating them.
 */
export declare const buildConfigDefaults: () => Partial<BuildConfig>;
export declare function combineProps<C extends BuildConfig>(config: C, group: string, props: Array<string>, args: Hash<ExtendedOption>): Record<string, unknown>;
/**
 * Resolves the `ai` config group.
 *
 * `ai.openapiCompanions` is tri-state in config (`true | 'md' | false`), while the CLI flag is a
 * plain boolean override. The flag wins ONLY when it is explicitly passed; otherwise the `.yfm`
 * value is preserved as-is so it stays overridable from config (same approach as
 * `multilineTermDefinitions`, see run.ts). The default (`'md'`) is intentionally NOT applied
 * here — it is owned by the openapi extension (`DEFAULT_OPENAPI_COMPANIONS_MODE`), the single
 * place that consumes this value, keeping the default in one location.
 */
export declare function resolveAiConfig<C extends BuildConfig>(config: C, args: BuildArgs): AiConfig;
export declare function fileSizeConverter(opts: Hash): (input: string, defaultValue: string) => number | undefined;
export declare function normalize<C extends BuildConfig>(config: C, args: BuildArgs): C;
export declare function validate<C extends DeepFrozen<BuildConfig>>(config: C): void;
export declare const options: {
    input: (defaults?: string | Partial<import("../../core/config").OptionInfo>) => ExtendedOption;
    output: (defaults?: string | Partial<import("../../core/config").OptionInfo>) => ExtendedOption;
    config: (defaultConfig: string) => ExtendedOption;
    strict: ExtendedOption;
    originAsInput: ExtendedOption;
    copyOnWrite: ExtendedOption;
    workerMaxOldSpace: ExtendedOption;
    langs: ExtendedOption;
    outputFormat: ExtendedOption;
    varsPreset: ExtendedOption;
    vars: ExtendedOption;
    allowHtml: ExtendedOption;
    sanitizeHtml: ExtendedOption;
    addMapFile: ExtendedOption;
    staticContent: ExtendedOption;
    ignore: ExtendedOption;
    ignoreStage: ExtendedOption;
    addSystemMeta: ExtendedOption;
    vcs: ExtendedOption;
    vcsToken: ExtendedOption;
    interfaceToc: ExtendedOption;
    interfaceSearch: ExtendedOption;
    interfaceFeedback: ExtendedOption;
    feedbackUrl: ExtendedOption;
    pdfDebug: ExtendedOption;
    disableCsp: ExtendedOption;
    maxInlineSvgSize: ExtendedOption;
    maxHtmlSize: ExtendedOption;
    maxAssetSize: ExtendedOption;
    multilineTermDefinitions: ExtendedOption;
    addAlternateMeta: ExtendedOption;
    maxOpenapiIncludeSize: ExtendedOption;
    maxOpenapiIncludeInlineSize: ExtendedOption;
    aiOpenapiCompanions: ExtendedOption;
    idGenerator: ExtendedOption;
};
