import React from "react";
import type { ButtonProps } from "./Button.types";
import { ButtonIcon, ButtonLabel } from "./ButtonInternals";
type ButtonElement = HTMLAnchorElement | HTMLButtonElement;
type ButtonRuntimeProps = ButtonProps & Pick<React.HTMLAttributes<ButtonElement>, "aria-controls" | "aria-haspopup" | "aria-expanded" | "aria-label" | "onKeyDown" | "onKeyUp" | "onFocus" | "onBlur" | "onPointerDown" | "onPointerUp" | "onPointerEnter" | "onPointerLeave" | "onMouseEnter" | "onMouseLeave" | "onTouchStart" | "onTouchEnd" | "onContextMenu" | "tabIndex" | "title"> & {
    readonly className?: string;
    readonly ref?: React.Ref<ButtonElement>;
    readonly style?: React.CSSProperties;
    readonly [key: `data-${string}`]: unknown;
};
declare function Button(props: ButtonRuntimeProps): React.JSX.Element;
declare namespace Button {
    var Label: typeof ButtonLabel;
    var Icon: typeof ButtonIcon;
}
export type { ButtonProps };
export { Button };
