@payfit/unity-components
Version:
26 lines (25 loc) • 1.45 kB
TypeScript
import { ReactElement, ReactNode } from 'react';
import { MenuTriggerProps } from 'react-aria-components/Menu';
import { PopoverProps } from 'react-aria-components/Popover';
import { AvatarPairProps } from '../avatar/parts/AvatarPair.js';
export type AppProfileMenuButtonProps = {
avatar?: string;
avatarPair?: ReactElement<AvatarPairProps>;
title?: string;
description?: ReactNode;
badgeLabel?: string;
children?: ReactNode;
/** Use this to provide custom screen-reader context for the menu trigger. */
menuTriggerDescription?: string;
uploadAvatarCallback?: () => void;
/** Defaults to "Press enter to change profile picture". */
uploadAvatarDescription?: string;
/** Defaults to "Change profile picture". */
uploadAvatarLabel?: string;
/** Trigger treatment for application-shell surfaces. */
variant?: 'small' | 'large';
/** Defaults to square to preserve AppMenuFooter compatibility. */
avatarVariant?: 'circle' | 'square';
placement?: PopoverProps['placement'];
} & Pick<MenuTriggerProps, 'defaultOpen' | 'isOpen' | 'onOpenChange'>;
export declare const AppProfileMenuButton: ({ avatar, avatarPair, avatarVariant, badgeLabel, children, defaultOpen, description, isOpen, menuTriggerDescription, onOpenChange, placement, title, uploadAvatarCallback, uploadAvatarDescription, uploadAvatarLabel, variant, }: AppProfileMenuButtonProps) => import("react/jsx-runtime").JSX.Element;