import React from 'react';
import { AvatarProps } from '@bigbinary/neetoui';

type LinkType = {
  onClick?: React.MouseEventHandler<HTMLButtonElement>;
  label?: React.ReactNode;
  icon?: any;
} & React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>;
interface ProfileInfo {
  name?: string;
  email?: string;
  imageUrl?: string;
}
interface PopoverProps {
  description?: React.ReactNode;
  helpLinkProps?: ButtonProps;
  title?: string;
}
interface ProfilePopoverProps {
  preferredDateFormat?: PopoverProps;
  preferredTimeFormat?: PopoverProps;
  timeZone?: PopoverProps;
}
type FloatingActionMenuProps = {
  profileInfoOverrides?: ProfileInfo & AvatarProps;
  showProductSwitcher?: boolean;
  topLinks?: LinkType[];
  bottomLinks?: LinkType[];
  customContent?: React.ReactNode;
  isThemeSwitcherEnabled?: boolean;
  isOrganizationSwitcherEnabled?: boolean;
  profilePopoverProps?: ProfilePopoverProps;
  isConsumer?: boolean;
};
/**
 *
 * The FloatingActionMenu component provides access to options such as
 *
 * notifications, profile, app navigation links, what's new, product switcher and
 *
 * help center from anywhere in the app. The Product switcher UI & Engage display
 *
 * UI are all implemented internally in this component.
 *
 * ![Screenshot](https://github.com/bigbinary/neeto-molecules/assets/12969853/07e3bcd1-ee9a-44cd-9230-017251627815|height=200|width=300)
 *
 * @example 
 *
 * import FloatingActionMenu from "@bigbinary/neeto-molecules/FloatingActionMenu";
 * 
 * const FloatingActionMenuContainer = ({ children }) => {
 *   // custom app logic
 *   return (
 *     <div>
 *       <FloatingActionMenu />
 *       {children}
 *     </div>
 *   );
 * };
 * @endexample
*/
declare const FloatingActionMenu: React.FC<FloatingActionMenuProps>;

export { FloatingActionMenu as default };
