import React, { ButtonHTMLAttributes } from 'react';
import { Loader } from '../loader/Loader.component';
import { Props as TooltipProps } from '../tooltip/Tooltip.component';
export type Props = Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'size' | 'label'> & {
    variant?: 'primary' | 'secondary' | 'danger' | 'outline';
    size?: 'default' | 'inline';
    disabled?: boolean;
    onClick?: (event: React.MouseEvent<HTMLButtonElement>) => void;
    icon?: React.ReactNode;
    label?: React.ReactNode;
    tooltip?: Omit<TooltipProps, 'children'>;
    isLoading?: boolean;
};
export declare const ButtonStyled: import("styled-components").StyledComponent<"button", import("styled-components").DefaultTheme, Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "label" | "size"> & {
    variant?: "outline" | "danger" | "primary" | "secondary" | undefined;
    size?: "default" | "inline" | undefined;
    disabled?: boolean | undefined;
    onClick?: ((event: React.MouseEvent<HTMLButtonElement>) => void) | undefined;
    icon?: React.ReactNode;
    label?: React.ReactNode;
    tooltip?: Omit<TooltipProps, "children"> | undefined;
    isLoading?: boolean | undefined;
}, never>;
export declare const ButtonLabel: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, {}, never>;
export declare const ButtonIcon: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, {
    label: React.ReactNode;
}, never>;
export declare const ButtonLoader: import("styled-components").StyledComponent<typeof Loader, import("styled-components").DefaultTheme, {
    label: any;
    variant: any;
}, never>;
declare function Button({ variant, size, disabled, label, icon, onClick, tooltip, isLoading, ...rest }: Props): JSX.Element;
export { Button };
//# sourceMappingURL=Buttonv2.component.d.ts.map