import * as react from 'react'; import { ReactNode } from 'react'; import * as tailwind_variants from 'tailwind-variants'; import * as _nextui_org_system from '@nextui-org/system'; import { HTMLNextUIProps, PropGetter } from '@nextui-org/system'; import { SlotsToClasses, UserSlots } from '@nextui-org/theme'; import { AvatarProps } from '@nextui-org/avatar'; import { ReactRef } from '@nextui-org/react-utils'; interface Props { /** * Ref to the DOM node. */ ref?: ReactRef; /** * The user name. */ name: ReactNode | string; /** * The user information, like email, phone, etc. */ description?: ReactNode | string; /** * Whether the user can be focused. * @default false */ isFocusable?: boolean; /** * The user avatar props * @see https://nextui.org/docs/components/avatar */ avatarProps?: Partial; /** * Classname or List of classes to change the classNames of the avatar. * if `className` is passed, it will be added to the base slot. * * @example * ```ts * * ``` */ classNames?: SlotsToClasses; } type UseUserProps = Props & Omit, "children">; declare function useUser(props: UseUserProps): { Component: _nextui_org_system.As; className: string | undefined; slots: { base: (slotProps?: ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({} & tailwind_variants.ClassProp) | undefined) => string; wrapper: (slotProps?: ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({} & tailwind_variants.ClassProp) | undefined) => string; name: (slotProps?: ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({} & tailwind_variants.ClassProp) | undefined) => string; description: (slotProps?: ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({} & tailwind_variants.ClassProp) | undefined) => string; } & { base: (slotProps?: ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({} & tailwind_variants.ClassProp) | undefined) => string; wrapper: (slotProps?: ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({} & tailwind_variants.ClassProp) | undefined) => string; name: (slotProps?: ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({} & tailwind_variants.ClassProp) | undefined) => string; description: (slotProps?: ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({ [x: string]: string | number | undefined; [x: number]: string | number | undefined; } & tailwind_variants.ClassProp) | ({} & tailwind_variants.ClassProp) | undefined) => string; } & {}; name: ReactNode; description: ReactNode; classNames: SlotsToClasses<"base" | "description" | "name" | "wrapper"> | undefined; baseStyles: string; avatarProps: { ref?: ReactRef | undefined; imgRef?: ReactRef | undefined; name?: string | undefined; src?: string | undefined; alt?: string | undefined; icon?: ReactNode; isFocusable: boolean; ignoreFallback?: boolean | undefined; showFallback?: boolean | undefined; getInitials?: ((name: string) => string) | undefined; fallback?: ReactNode; onError?: (() => void) | undefined; ImgComponent?: react.ElementType | undefined; imgProps?: react.ImgHTMLAttributes | undefined; classNames?: SlotsToClasses<"base" | "img" | "name" | "icon" | "fallback"> | undefined; style?: react.CSSProperties | undefined; title?: string | undefined; as?: _nextui_org_system.As | undefined; key?: react.Key | null | undefined; children?: ReactNode; id?: string | undefined; role?: react.AriaRole | undefined; tabIndex?: number | undefined; accessKey?: string | undefined; autoFocus?: boolean | undefined; className?: string | undefined; content?: string | undefined; contentEditable?: (boolean | "true" | "false") | "inherit" | undefined; contextMenu?: string | undefined; dir?: string | undefined; draggable?: (boolean | "true" | "false") | undefined; hidden?: boolean | undefined; inputMode?: "text" | "none" | "search" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined; itemProp?: string | undefined; itemRef?: string | undefined; itemScope?: boolean | undefined; itemType?: string | undefined; lang?: string | undefined; placeholder?: string | undefined; radioGroup?: string | undefined; rel?: string | undefined; spellCheck?: (boolean | "true" | "false") | undefined; translate?: "yes" | "no" | undefined; onCopy?: react.ClipboardEventHandler | undefined; onCut?: react.ClipboardEventHandler | undefined; onPaste?: react.ClipboardEventHandler | undefined; onLoad?: react.ReactEventHandler | undefined; onWheel?: react.WheelEventHandler | undefined; onScroll?: react.UIEventHandler | undefined; onCompositionEnd?: react.CompositionEventHandler | undefined; onCompositionStart?: react.CompositionEventHandler | undefined; onCompositionUpdate?: react.CompositionEventHandler | undefined; onKeyDown?: react.KeyboardEventHandler | undefined; onKeyPress?: react.KeyboardEventHandler | undefined; onKeyUp?: react.KeyboardEventHandler | undefined; onFocus?: react.FocusEventHandler | undefined; onBlur?: react.FocusEventHandler | undefined; onChange?: react.FormEventHandler | undefined; onInput?: react.FormEventHandler | undefined; onSubmit?: react.FormEventHandler | undefined; onClick?: react.MouseEventHandler | undefined; onContextMenu?: react.MouseEventHandler | undefined; onDoubleClick?: react.MouseEventHandler | undefined; onDrag?: react.DragEventHandler | undefined; onDragEnd?: react.DragEventHandler | undefined; onDragEnter?: react.DragEventHandler | undefined; onDragExit?: react.DragEventHandler | undefined; onDragLeave?: react.DragEventHandler | undefined; onDragOver?: react.DragEventHandler | undefined; onDragStart?: react.DragEventHandler | undefined; onDrop?: react.DragEventHandler | undefined; onMouseDown?: react.MouseEventHandler | undefined; onMouseEnter?: react.MouseEventHandler | undefined; onMouseLeave?: react.MouseEventHandler | undefined; onMouseMove?: react.MouseEventHandler | undefined; onMouseOut?: react.MouseEventHandler | undefined; onMouseOver?: react.MouseEventHandler | undefined; onMouseUp?: react.MouseEventHandler | undefined; onPointerDown?: react.PointerEventHandler | undefined; onPointerEnter?: react.PointerEventHandler | undefined; onPointerLeave?: react.PointerEventHandler | undefined; onPointerUp?: react.PointerEventHandler | undefined; onSelect?: react.ReactEventHandler | undefined; onTouchCancel?: react.TouchEventHandler | undefined; onTouchEnd?: react.TouchEventHandler | undefined; onTouchMove?: react.TouchEventHandler | undefined; onTouchStart?: react.TouchEventHandler | undefined; onAnimationStart?: react.AnimationEventHandler | undefined; onAnimationEnd?: react.AnimationEventHandler | undefined; onAnimationIteration?: react.AnimationEventHandler | undefined; onTransitionEnd?: react.TransitionEventHandler | undefined; 'aria-label'?: string | undefined; 'aria-labelledby'?: string | undefined; 'aria-describedby'?: string | undefined; 'aria-details'?: string | undefined; 'aria-activedescendant'?: string | undefined; 'aria-atomic'?: (boolean | "true" | "false") | undefined; 'aria-autocomplete'?: "list" | "none" | "inline" | "both" | undefined; 'aria-busy'?: (boolean | "true" | "false") | undefined; 'aria-checked'?: boolean | "true" | "false" | "mixed" | undefined; 'aria-colcount'?: number | undefined; 'aria-colindex'?: number | undefined; 'aria-colspan'?: number | undefined; 'aria-controls'?: string | undefined; 'aria-current'?: boolean | "time" | "true" | "false" | "step" | "page" | "location" | "date" | undefined; 'aria-disabled'?: (boolean | "true" | "false") | undefined; 'aria-dropeffect'?: "link" | "none" | "copy" | "execute" | "move" | "popup" | undefined; 'aria-errormessage'?: string | undefined; 'aria-expanded'?: (boolean | "true" | "false") | undefined; 'aria-flowto'?: string | undefined; 'aria-grabbed'?: (boolean | "true" | "false") | undefined; 'aria-haspopup'?: boolean | "dialog" | "menu" | "grid" | "listbox" | "tree" | "true" | "false" | undefined; 'aria-hidden'?: (boolean | "true" | "false") | undefined; 'aria-invalid'?: boolean | "true" | "false" | "grammar" | "spelling" | undefined; 'aria-keyshortcuts'?: string | undefined; 'aria-level'?: number | undefined; 'aria-live'?: "off" | "assertive" | "polite" | undefined; 'aria-modal'?: (boolean | "true" | "false") | undefined; 'aria-multiline'?: (boolean | "true" | "false") | undefined; 'aria-multiselectable'?: (boolean | "true" | "false") | undefined; 'aria-orientation'?: "horizontal" | "vertical" | undefined; 'aria-owns'?: string | undefined; 'aria-placeholder'?: string | undefined; 'aria-posinset'?: number | undefined; 'aria-pressed'?: boolean | "true" | "false" | "mixed" | undefined; 'aria-readonly'?: (boolean | "true" | "false") | undefined; 'aria-relevant'?: "text" | "all" | "additions" | "additions removals" | "additions text" | "removals" | "removals additions" | "removals text" | "text additions" | "text removals" | undefined; 'aria-required'?: (boolean | "true" | "false") | undefined; 'aria-roledescription'?: string | undefined; 'aria-rowcount'?: number | undefined; 'aria-rowindex'?: number | undefined; 'aria-rowspan'?: number | undefined; 'aria-selected'?: (boolean | "true" | "false") | undefined; 'aria-setsize'?: number | undefined; 'aria-sort'?: "none" | "ascending" | "descending" | "other" | undefined; 'aria-valuemax'?: number | undefined; 'aria-valuemin'?: number | undefined; 'aria-valuenow'?: number | undefined; 'aria-valuetext'?: string | undefined; dangerouslySetInnerHTML?: { __html: string | TrustedHTML; } | undefined; onCopyCapture?: react.ClipboardEventHandler | undefined; onCutCapture?: react.ClipboardEventHandler | undefined; onPasteCapture?: react.ClipboardEventHandler | undefined; onCompositionEndCapture?: react.CompositionEventHandler | undefined; onCompositionStartCapture?: react.CompositionEventHandler | undefined; onCompositionUpdateCapture?: react.CompositionEventHandler | undefined; onFocusCapture?: react.FocusEventHandler | undefined; onBlurCapture?: react.FocusEventHandler | undefined; onChangeCapture?: react.FormEventHandler | undefined; onBeforeInput?: react.FormEventHandler | undefined; onBeforeInputCapture?: react.FormEventHandler | undefined; onInputCapture?: react.FormEventHandler | undefined; onReset?: react.FormEventHandler | undefined; onResetCapture?: react.FormEventHandler | undefined; onSubmitCapture?: react.FormEventHandler | undefined; onInvalid?: react.FormEventHandler | undefined; onInvalidCapture?: react.FormEventHandler | undefined; onLoadCapture?: react.ReactEventHandler | undefined; onErrorCapture?: react.ReactEventHandler | undefined; onKeyDownCapture?: react.KeyboardEventHandler | undefined; onKeyPressCapture?: react.KeyboardEventHandler | undefined; onKeyUpCapture?: react.KeyboardEventHandler | undefined; onAbort?: react.ReactEventHandler | undefined; onAbortCapture?: react.ReactEventHandler | undefined; onCanPlay?: react.ReactEventHandler | undefined; onCanPlayCapture?: react.ReactEventHandler | undefined; onCanPlayThrough?: react.ReactEventHandler | undefined; onCanPlayThroughCapture?: react.ReactEventHandler | undefined; onDurationChange?: react.ReactEventHandler | undefined; onDurationChangeCapture?: react.ReactEventHandler | undefined; onEmptied?: react.ReactEventHandler | undefined; onEmptiedCapture?: react.ReactEventHandler | undefined; onEncrypted?: react.ReactEventHandler | undefined; onEncryptedCapture?: react.ReactEventHandler | undefined; onEnded?: react.ReactEventHandler | undefined; onEndedCapture?: react.ReactEventHandler | undefined; onLoadedData?: react.ReactEventHandler | undefined; onLoadedDataCapture?: react.ReactEventHandler | undefined; onLoadedMetadata?: react.ReactEventHandler | undefined; onLoadedMetadataCapture?: react.ReactEventHandler | undefined; onLoadStart?: react.ReactEventHandler | undefined; onLoadStartCapture?: react.ReactEventHandler | undefined; onPause?: react.ReactEventHandler | undefined; onPauseCapture?: react.ReactEventHandler | undefined; onPlay?: react.ReactEventHandler | undefined; onPlayCapture?: react.ReactEventHandler | undefined; onPlaying?: react.ReactEventHandler | undefined; onPlayingCapture?: react.ReactEventHandler | undefined; onProgress?: react.ReactEventHandler | undefined; onProgressCapture?: react.ReactEventHandler | undefined; onRateChange?: react.ReactEventHandler | undefined; onRateChangeCapture?: react.ReactEventHandler | undefined; onResize?: react.ReactEventHandler | undefined; onResizeCapture?: react.ReactEventHandler | undefined; onSeeked?: react.ReactEventHandler | undefined; onSeekedCapture?: react.ReactEventHandler | undefined; onSeeking?: react.ReactEventHandler | undefined; onSeekingCapture?: react.ReactEventHandler | undefined; onStalled?: react.ReactEventHandler | undefined; onStalledCapture?: react.ReactEventHandler | undefined; onSuspend?: react.ReactEventHandler | undefined; onSuspendCapture?: react.ReactEventHandler | undefined; onTimeUpdate?: react.ReactEventHandler | undefined; onTimeUpdateCapture?: react.ReactEventHandler | undefined; onVolumeChange?: react.ReactEventHandler | undefined; onVolumeChangeCapture?: react.ReactEventHandler | undefined; onWaiting?: react.ReactEventHandler | undefined; onWaitingCapture?: react.ReactEventHandler | undefined; onAuxClick?: react.MouseEventHandler | undefined; onAuxClickCapture?: react.MouseEventHandler | undefined; onClickCapture?: react.MouseEventHandler | undefined; onContextMenuCapture?: react.MouseEventHandler | undefined; onDoubleClickCapture?: react.MouseEventHandler | undefined; onDragCapture?: react.DragEventHandler | undefined; onDragEndCapture?: react.DragEventHandler | undefined; onDragEnterCapture?: react.DragEventHandler | undefined; onDragExitCapture?: react.DragEventHandler | undefined; onDragLeaveCapture?: react.DragEventHandler | undefined; onDragOverCapture?: react.DragEventHandler | undefined; onDragStartCapture?: react.DragEventHandler | undefined; onDropCapture?: react.DragEventHandler | undefined; onMouseDownCapture?: react.MouseEventHandler | undefined; onMouseMoveCapture?: react.MouseEventHandler | undefined; onMouseOutCapture?: react.MouseEventHandler | undefined; onMouseOverCapture?: react.MouseEventHandler | undefined; onMouseUpCapture?: react.MouseEventHandler | undefined; onSelectCapture?: react.ReactEventHandler | undefined; onTouchCancelCapture?: react.TouchEventHandler | undefined; onTouchEndCapture?: react.TouchEventHandler | undefined; onTouchMoveCapture?: react.TouchEventHandler | undefined; onTouchStartCapture?: react.TouchEventHandler | undefined; onPointerDownCapture?: react.PointerEventHandler | undefined; onPointerMove?: react.PointerEventHandler | undefined; onPointerMoveCapture?: react.PointerEventHandler | undefined; onPointerUpCapture?: react.PointerEventHandler | undefined; onPointerCancel?: react.PointerEventHandler | undefined; onPointerCancelCapture?: react.PointerEventHandler | undefined; onPointerEnterCapture?: react.PointerEventHandler | undefined; onPointerLeaveCapture?: react.PointerEventHandler | undefined; onPointerOver?: react.PointerEventHandler | undefined; onPointerOverCapture?: react.PointerEventHandler | undefined; onPointerOut?: react.PointerEventHandler | undefined; onPointerOutCapture?: react.PointerEventHandler | undefined; onGotPointerCapture?: react.PointerEventHandler | undefined; onGotPointerCaptureCapture?: react.PointerEventHandler | undefined; onLostPointerCapture?: react.PointerEventHandler | undefined; onLostPointerCaptureCapture?: react.PointerEventHandler | undefined; onScrollCapture?: react.UIEventHandler | undefined; onWheelCapture?: react.WheelEventHandler | undefined; onAnimationStartCapture?: react.AnimationEventHandler | undefined; onAnimationEndCapture?: react.AnimationEventHandler | undefined; onAnimationIterationCapture?: react.AnimationEventHandler | undefined; onTransitionEndCapture?: react.TransitionEventHandler | undefined; nonce?: string | undefined; prefix?: string | undefined; suppressContentEditableWarning?: boolean | undefined; suppressHydrationWarning?: boolean | undefined; about?: string | undefined; datatype?: string | undefined; inlist?: any; property?: string | undefined; resource?: string | undefined; rev?: string | undefined; typeof?: string | undefined; vocab?: string | undefined; autoCapitalize?: string | undefined; autoCorrect?: string | undefined; autoSave?: string | undefined; itemID?: string | undefined; results?: number | undefined; security?: string | undefined; unselectable?: "on" | "off" | undefined; is?: string | undefined; color?: "default" | "primary" | "secondary" | "success" | "warning" | "danger" | undefined; size?: "sm" | "md" | "lg" | undefined; disableAnimation?: boolean | undefined; radius?: "none" | "sm" | "md" | "lg" | "full" | undefined; isBordered?: boolean | undefined; isDisabled?: boolean | undefined; }; getUserProps: PropGetter, _nextui_org_system.DOMAttributes<_nextui_org_system.DOMElement>>; }; type UseUserReturn = ReturnType; export { UseUserProps, UseUserReturn, useUser };