import { ReactNode } from 'react';
import { ButtonOrLinkElement, ButtonOrLinkProps } from '../atoms';
import { ComponentCSSPropType } from './tailwind';
export declare namespace ExperimentalButtonProps {
    interface BaseProps {
        /** @default "secondary" */
        variant?: ComponentCSSPropType<'button', 'variant', 'secondary'>;
        /** @default "medium" */
        size?: ComponentCSSPropType<'button', 'size', 'medium'>;
        /** @default false */
        hideLabel?: ComponentCSSPropType<'button', 'hideLabel', false>;
        iconBefore?: ReactNode;
        iconAfter?: ReactNode;
        /** @default false */
        loading?: boolean;
    }
    interface ButtonProps extends BaseProps, ButtonOrLinkProps.ButtonProps {
    }
    interface ExternalLinkProps extends BaseProps, ButtonOrLinkProps.ExternalLinkProps {
    }
    interface ClientLinkProps extends BaseProps, ButtonOrLinkProps.ClientLinkProps {
    }
}
export type ExperimentalButtonProps = ExperimentalButtonProps.ButtonProps | ExperimentalButtonProps.ExternalLinkProps | ExperimentalButtonProps.ClientLinkProps;
export declare const ExperimentalButton: import('react').ForwardRefExoticComponent<ExperimentalButtonProps & import('react').RefAttributes<ButtonOrLinkElement>>;
//# sourceMappingURL=Button.d.ts.map