import { ButtonHTMLAttributes, ReactNode } from 'react';
import { icons } from 'lucide-react';
import { Placement } from '@floating-ui/react';
export type IconName = keyof typeof icons;
export interface IconButtonProps extends ButtonHTMLAttributes {
icon: IconName;
/**
* Visual size of the button. Defaults to `md`.
*/
size?: 'sm' | 'md';
/**
* Pixel size for the Lucide icon. If not provided, derived from `size`.
*/
iconSize?: number;
/**
* Tooltip content to display on hover. If provided, the button will be wrapped in a Tooltip.
*/
tooltip?: ReactNode;
/**
* Placement of the tooltip. Only used if `tooltip` is provided.
*/
tooltipPlacement?: Placement;
}
declare const IconButton: ({ icon, size, iconSize, type, className, tooltip, tooltipPlacement, ...rest }: IconButtonProps) => import("react/jsx-runtime").JSX.Element;
export default IconButton;
//# sourceMappingURL=IconButton.d.ts.map