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;
}