import * as _heroui_system_src_types from '@heroui/system/src/types'; import * as tailwind_variants from 'tailwind-variants'; import * as react from 'react'; import { Ref } from 'react'; import { SlotsToClasses, SpinnerSlots, SpinnerVariantProps } from '@heroui/theme'; import { HTMLHeroUIProps, PropGetter } from '@heroui/system-rsc'; interface Props extends HTMLHeroUIProps<"div"> { /** * Ref to the DOM node. */ ref?: Ref; /** * Spinner label, in case you passed it will be used as `aria-label`. */ label?: string; /** * Classname or List of classes to change the classNames of the element. * if `className` is passed, it will be added to the base slot. * * @example * ```ts * * ``` */ classNames?: SlotsToClasses; } type UseSpinnerProps = Props & SpinnerVariantProps; declare function useSpinner(originalProps: UseSpinnerProps): { label: react.ReactNode; slots: { base: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; wrapper: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; label: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; circle1: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; circle2: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; dots: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; spinnerBars: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; } & { base: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; wrapper: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; label: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; circle1: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; circle2: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; dots: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; spinnerBars: (slotProps?: ({ size?: "md" | "sm" | "lg" | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "current" | "white" | undefined; variant?: "default" | "dots" | "gradient" | "wave" | "simple" | "spinner" | undefined; labelColor?: "primary" | "secondary" | "success" | "warning" | "danger" | "foreground" | undefined; } & tailwind_variants.ClassProp) | undefined) => string; } & {}; classNames: SlotsToClasses<"base" | "wrapper" | "label" | "circle1" | "circle2" | "dots" | "spinnerBars"> | undefined; variant: _heroui_system_src_types.SpinnerVariants; getSpinnerProps: PropGetter; }; type UseSpinnerReturn = ReturnType; export { type UseSpinnerProps, type UseSpinnerReturn, useSpinner };