/** * Merges a slot prop object on top of base props with correct ordering for the * slot-prop pattern used across the library (`labelProps`, `titleProps`, * `bodyProps`, `valueLabelProps`, `tickLabelProps`, `descriptionProps`, etc.). * * Rules: * 1. Non-style props from `slot` win over `base` (so `slot.weight = '700'` * overrides a `base.weight = '500'` default). * 2. `style` becomes an array `[baseStyle, slotStyle]` where the slot style * is applied last — RN flattens the array left-to-right with later entries * overriding earlier ones, so user-passed style wins on conflicts. * * This helper exists because hand-rolling the merge is error-prone: * historically several components (Notice, Toast, Tabs) shipped subtle bugs * where a hardcoded `fontWeight` in the base style array silently overrode a * user's slot `weight` prop. Centralizing the merge order makes that mistake * impossible. * * @example * * {label} * */ export declare function mergeSlotProps, S extends Record | undefined>(base: B, slot?: S): B & (S extends undefined ? unknown : Partial);