import { ButtonProps, TypographyProps, InputProps } from '@bigbinary/neetoui';
import React from 'react';

/**
 *
 * The Rename component is used to rename a resource on the page, It can be used as
 *
 * the title in the Header component and provides props for additional actions with
 *
 * the dropdown.
 *
 * @example 
 *
 * import Rename from "@bigbinary/neeto-molecules/Rename";
 * 
 * const App = () => {
 *   const [value, setValue] = useState("Name");
 *   return (
 *     <Rename
 *       value={value}
 *       placeholder="Enter a name"
 *       secondaryInfo="Nickname here"
 *       dropdownItems={[
 *         {
 *           label: "Clone",
 *           onClick: () => alert("Clicked on clone"),
 *         },
 *       ]}
 *       onRename={value => setValue(name)}
 *       breadcrumbs={[
 *         {
 *           label: "Home",
 *           link: "home",
 *         },
 *         {
 *           label: "Contacts",
 *           link: "contacts",
 *         },
 *       ]}
 *     />
 *   );
 * };
 * @endexample
*/
declare const Rename: React.FC<{
  className?: string;
  isOpen?: boolean;
  allowEmptySubmission: boolean;
  defaultName: string;
  value: string;
  onRename?: (newName: string) => void;
  onClone?: () => void;
  onArchiveStatusToggle?: () => void;
  onDelete?: () => void;
  isArchived?: boolean;
  isUpdating?: boolean;
  placeholder?: string;
  hideMenu?: boolean;
  disabled?: boolean;
  dropdownItems?: ButtonProps[];
  submitButtonProps?: ButtonProps;
  cancelButtonProps?: ButtonProps;
  textProps?: TypographyProps;
  inputProps?: InputProps;
  breadcrumbs?: {
    text: string;
    link: string;
  }[];
  formatText?: (value: string) => string;
  dropdownButtonProps: ButtonProps;
  dropdownProps: DropdownProps;
  secondaryInfo?: string;
}>;

export { Rename as default };
