import { HTMLAttributes, ReactNode, Ref } from 'react'; import { ButtonProps } from '../Button/Button.interface'; import { IComponentBaseProps } from '../types'; export declare const FAB = "fab"; export declare const FAB_FLOWER = "fab-flower"; export declare const FAB_CLOSE = "fab-close"; export declare const FAB_MAIN_ACTION = "fab-main-action"; export declare const FAB_MAP: { flower: string; close: string; mainAction: string; }; export interface FabProps extends Omit, "children">, IComponentBaseProps { ref?: Ref; /** Main floating trigger content. Rendered inside a div with role="button" for Safari focus support. */ trigger: ReactNode; triggerColor?: ButtonProps["color"]; triggerSize?: ButtonProps["size"]; triggerShape?: ButtonProps["shape"]; triggerClassName?: string; /** Optional primary action shown when the FAB expands (replaces trigger visually). */ mainAction?: ReactNode; /** Optional close button shown when the FAB expands. Mutually exclusive with mainAction. */ closeButton?: ReactNode; /** Quarter-circle radial layout (1–4 children recommended). */ flower?: boolean; /** Speed-dial buttons (or label-wrapped buttons). */ children?: ReactNode; }