import { HTMLAttributes, Ref, VNodeProps } from 'vue'; import { Data, MergeAll } from '../types/index.js'; /** * Extension of `useAttrs` which splits root attributes from other properties. * As root properties are considered: `style` and `class`. * * Make sure to call `defineOptions({ inheritAttrs: false });`. * * @example * ```vue * * */ export declare const useRootAttrs: >() => { /** * Contains the `class` and `style` fall-through attributes, if set. */ rootAttrs: import('vue').ComputedRef>; /** * Contains all fall-through attributes except `class` and `style`. */ restAttrs: import('vue').ComputedRef>; }; type VProps = Data & VNodeProps; type MergeVuePropsResult = MergeAll extends { ref: NonNullable; } ? MergeAll<[...T, { ref: Ref; }]> : MergeAll; /** * Extends the Vue's `mergeProp` function, so that it * - doesn't complain about nullish parameters * - is also able to merge `ref` properties */ export declare const mergeVueProps: (...args: T | []) => MergeVuePropsResult; export {};