import React from 'react'; import { TooltipCommonProps } from '../common'; export interface AddItemProps { /** Accepts any renderable node or a render function to display as the content. Text styles aren't applied to the output of a render function. */ children?: React.ReactNode | (() => React.ReactNode); /** Specifies whether the component is disabled. */ disabled?: boolean; /** Controls the visual style of the component. * @default 'dashes' */ skin?: AddItemSkin; /** Controls the visual style of the component. * @deprecated Use `skin` instead. */ theme?: AddItemSkin; /** Controls the horizontal alignment of the content. * @default 'center' */ alignItems?: AddItemAlignItems; /** Controls the size of the icon, text and spacing. * @default 'tiny' */ size?: AddItemSize; /** Defines a callback function which is called when the component is clicked. */ onClick?: React.MouseEventHandler; /** Applied as data-hook HTML attribute that can be used to create driver in testing. */ dataHook?: string; /** Specifies a CSS class name to be appended to the component's root element. * @internal */ className?: string; /** When provided, hovering displays a tooltip. */ tooltipContent?: React.ReactNode; /** Tooltip props. * @linkTypeTo Tooltip */ tooltipProps?: TooltipCommonProps; /** Displays the plus icon. * @default true */ showIcon?: boolean; /** Specifies whether to remove the padding around the content. * @default false */ removePadding?: boolean; /** Sets the `border-radius` CSS property of the button element. */ borderRadius?: React.CSSProperties['borderRadius']; /** Defines a string value that labels the add item element. */ ariaLabel?: string; /** Defines the ID of the element that labels the add item element. */ ariaLabelledBy?: string; /** Defines the ID of the element that describes the add item element. */ ariaDescribedBy?: string; /** Subtitle of the component. */ subtitle?: React.ReactNode; /** Sets whether the subtitle shows below or above the title. With `top`, the subtitle shows between the icon and the title, except at `tiny` size, where the icon sits beside the title and the subtitle shows directly above the title. * @default 'bottom' */ subtitlePlacement?: AddItemSubtitlePlacement; /** The illustration icon src or node. */ icon?: React.ReactNode; } export interface AddItemActions { blur: () => void; focus: () => void; } export type AddItemSkin = 'dashes' | 'plain' | 'filled' | 'image'; export type AddItemTheme = AddItemSkin; export type AddItemAlignItems = 'center' | 'right' | 'left'; export type AddItemSubtitlePlacement = 'top' | 'bottom'; export type AddItemSize = 'large' | 'medium' | 'small' | 'tiny'; //# sourceMappingURL=AddItem.types.d.ts.map