import React from 'react'; interface BaseProps { /** * Optional icon. */ icon?: React.ReactElement; /** * Click event handler. */ onClick?: (event: React.SyntheticEvent) => void; /** * Key down event handler. */ onKeyDown?: (event: React.KeyboardEvent) => void; /** * Custom css class applied to the root. */ className?: string; /** * @default "button" */ component?: React.ElementType; /** * @default 0 */ tabIndex?: number; /** * Optional props override for the root element. Useful if you've changed * the root element. * @default {} */ RootProps?: React.ComponentProps<'button'>; /** * Optional additional icon style overrides. */ iconClassName?: string; /** * Disable actions. */ isDisabled?: boolean; } interface ButtonProps extends BaseProps { /** * Descriptive button text. */ children: React.ReactNode; errorMessage?: never; errorCTA?: never; } interface ErrorProps extends BaseProps { /** * Error message. If provided, button renders in an error state. */ errorMessage?: string; /** * Secondary message to provide a CTA on error. Only displays when `errorMessage` is provided. */ errorCTA?: string; children?: React.ReactNode; } declare type Props = ButtonProps | ErrorProps; /** * Button for initial note CTAs, like "add message." */ declare const NoteAreaButton: ({ children, errorMessage, errorCTA, onClick, onKeyDown, icon, className, component: ComponentProp, tabIndex, RootProps, iconClassName, isDisabled }: Props) => React.ReactElement; export default NoteAreaButton;