import { type AvatarProps, type MenuProps } from '@mui/material';
import { type FunctionComponent, type PropsWithChildren, type ReactNode } from 'react';
import type { WithoutEmotionSpecific } from '../types';
export type ProfileMenuItemData = {
icon: ReactNode;
title: ReactNode;
onClick?: () => void;
/**
* @example
* const renderItem: ProfileMenuItemData['render'] = ({ title, icon }) => (
*
* );
*/
render?: FunctionComponent>;
};
export type ProfileProps = {
/**
* Имя профиля
*/
displayName: string;
/**
* Дополнительная информация (например email или username)
*/
annotation?: string;
/**
* Аватарка профиля
*/
avatar?: AvatarProps;
/**
* Кастомный рендер menu. Перекрывает menuList и exitButton
*/
menu?: (props: PropsWithChildren>) => JSX.Element;
/**
* Рендер menu через массив данных. Перекрывает menu и может использоваться с exitButton
*/
menuList?: ProfileMenuItemData[];
/**
* Отображение кнопки выхода и действие на нее
*/
exitButton?: {
onClick: () => void;
};
/**
* Скрытие персональных данных от инструментов мониторинга
*/
isHidePersonalData?: boolean;
};
export declare const Profile: import("react").ForwardRefExoticComponent>;
export default Profile;