import { FontStyleTypeModel, ThemeTypesModel } from '../../Themes/theme_types'; type KindInteraction = 'mouse' | 'keyboard'; interface UserProfileMenuProps { userMenuItems?: MenuItemProps[]; username: string; userInfo: string; focusOutline?: boolean; width?: 'max' | 'fit'; maxHeight?: string; className?: string; theme?: ThemeTypesModel; border?: boolean; initials?: string; ariaLabel?: string; photoUrl?: string; isInverse?: boolean; menuClickCallback?: () => void; } interface MenuItemProps { label: string; value: string; counter?: string; isDisabled?: boolean; onSelectedItem?: () => void; } interface ContainerProps { isDisabled: boolean; } interface WrapperProps { dayTime: 'day' | 'night'; widthProp?: 'max' | 'fit'; maxHeightProp?: string; showBorder?: boolean; isInverse: boolean; styled: ModelView; } interface ButtonProps { focused: boolean; } interface UserInfoProps { styled: ModelView; isInverse: boolean; } interface ProfileContainerProps { isInverse: boolean; styled: ModelView; widthProp?: 'max' | 'fit'; } interface styleParams { backgroundColor: string; borderColor: string; fontColor: string; secondaryColor: string; } interface styleState { day: styleParams; night: styleParams; } interface ModelView { style: styleState; size: { font: FontStyleTypeModel; }; } export type { UserProfileMenuProps, MenuItemProps, KindInteraction, ContainerProps, ButtonProps, UserInfoProps, ModelView, WrapperProps, ProfileContainerProps, };