/** * Merges prop objects left to right. `style` objects are shallow-merged, `class` and `className` are concatenated with * `cn`, and functions are chained so every handler for a key runs in argument order. All other keys are overwritten by * the rightmost value. * * @param props Prop objects to merge. * @returns Merged props. * * @example * ```ts * mergeProps({ class: 'p-button', onClick: onOuter }, { class: 'p-button-sm', onClick: onInner }); * // { class: 'p-button p-button-sm', onClick: (...args) => { onOuter(...args); onInner(...args); } } * ``` */ declare function mergeProps(...props: unknown[]): Record; /** * Same as `mergeProps`, but `undefined` values are skipped instead of overwriting an earlier value. Use when later * objects carry optional overrides that should not clear defaults. An explicit `null` still overwrites. * * @param props Prop objects to merge. * @returns Merged props. */ declare function mergeDefaultProps(...props: unknown[]): Record; export { mergeDefaultProps, mergeProps };