import type { ConfigData, BundlerOptions } from '../types/config-data.js';
export declare function normalizeBundlerOptions(configData: ConfigData): BundlerOptions;
/**
 * Shallow merge with deep-merge of `output`, `transform`, and `resolve`. The
 * second argument wins on conflicts, matching `merge(target, ...sources)`
 * semantics from `@gjsify/rolldown-plugin-gjsify/utils/merge`.
 *
 * `base` is typically the Rolldown-generic shape returned by the orchestrator;
 * `overrides` is the user's `BundlerOptions` from `.gjsifyrc.js` plus CLI
 * flag merges. Single-output assumption matches `BundlerOptions['output']`.
 *
 * The orchestrator-side `input` is authoritative — it's the post-glob-expansion
 * value. Overriding it with the user's raw glob string would re-introduce
 * unresolved glob patterns into the final Rolldown call. Same for `external`,
 * which the orchestrator concatenates with platform defaults already.
 */
export declare function mergeBundlerOptions(base: BundlerOptions, overrides: BundlerOptions): BundlerOptions;
