import { VariantProps } from 'class-variance-authority';
import { ButtonColorTypes, ButtonRoundedTypes, ButtonSizeTypes, ButtonVariantTypes } from '../../../types/button-types';

import * as React from "react";
declare const iconButtonVariants: (props?: ({
    variant?: "link" | "transparent" | "dashed" | "contained" | "outlined" | "soft" | null | undefined;
    color?: "dark" | "light" | "primary" | "secondary" | "success" | "danger" | "warning" | "info" | null | undefined;
    size?: "sm" | "md" | "lg" | null | undefined;
    rounded?: "sm" | "md" | "lg" | "none" | "full" | null | undefined;
    isIcon?: boolean | null | undefined;
    fullWidth?: boolean | null | undefined;
} & import('class-variance-authority/dist/types').ClassProp) | undefined) => string;
export interface IconButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof iconButtonVariants> {
    variant: ButtonVariantTypes;
    size?: ButtonSizeTypes;
    children: React.ReactNode;
    rounded?: ButtonRoundedTypes;
    href?: string;
    color?: ButtonColorTypes;
    isLoading?: boolean;
    id?: string;
    [key: string]: any;
}
declare const IconButton: React.ForwardRefExoticComponent<Omit<IconButtonProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
export default IconButton;
