import './Button.css';
import React from 'react';
import { IconProps, IconPropSize } from '../../icons/Icon/Icon';
export declare const buttonPropSize: readonly ["m", "xs", "s", "l", "xl", "3xxl"];
export declare type ButtonPropSize = typeof buttonPropSize[number];
export declare const buttonPropSizeDefault: ButtonPropSize;
export declare const buttonPropView: readonly ["primary", "secondary", "outlined", "black", "ghost", "transparent", "link-secondary", "link-primary"];
export declare type ButtonPropView = typeof buttonPropView[number];
export declare const buttonPropViewDefault: ButtonPropView;
export declare const buttonPropForm: readonly ["default", "circle"];
export declare type ButtonPropForm = typeof buttonPropForm[number];
export declare const buttonPropFormDefault: ButtonPropForm;
export declare const buttonPropWidth: readonly ["default", "full"];
export declare type ButtonPropWidth = typeof buttonPropWidth[number];
export declare const buttonPropWidthDefault: ButtonPropWidth;
export declare type Props = {
    size?: ButtonPropSize;
    view?: ButtonPropView;
    width?: ButtonPropWidth;
    form?: ButtonPropForm;
    color?: string;
    tabIndex?: number;
    disabled?: boolean;
    loading?: boolean;
    label?: string | number;
    onClick?: React.EventHandler<React.MouseEvent>;
    iconLeft?: React.FC<IconProps>;
    iconRight?: React.FC<IconProps>;
    onlyIcon?: boolean;
    iconSize?: IconPropSize;
    title?: string;
    children?: never;
    showOnHover?: boolean;
    isLink?: boolean;
    align?: string;
    decorBorder?: string;
    badge?: any;
    inline?: boolean;
    icon?: any;
    active?: boolean;
    to?: any;
    inverted?: boolean;
    type?: string;
    target?: string;
};
export declare const cnButton: import("@bem-react/classname").ClassNameFormatter;
export declare const Button: import("../../utils/types/PropsWithAsAttributes").ComponentWithAs<Props, "div">;
