/** @jsx jsx */
import React from 'react';
import type { ButtonProps } from '@atlaskit/button/types';
import type { PositionType } from '@atlaskit/tooltip';
import { TOOLBAR_ACTION_SUBJECT_ID } from '../../analytics';
import type { MenuItem } from '../DropdownMenu';
export declare const TOOLBAR_BUTTON: typeof TOOLBAR_ACTION_SUBJECT_ID;
export type Props = {
    buttonId?: TOOLBAR_ACTION_SUBJECT_ID;
    className?: string;
    disabled?: boolean;
    hideTooltip?: boolean;
    href?: string;
    iconAfter?: React.ReactElement<any>;
    iconBefore?: React.ReactElement<any>;
    onClick?: (event: React.MouseEvent<HTMLElement>) => void;
    onItemClick?: (item: MenuItem) => void;
    onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;
    selected?: boolean;
    spacing?: 'default' | 'compact' | 'none';
    target?: string;
    title?: React.ReactNode;
    titlePosition?: PositionType;
    item?: MenuItem;
    testId?: string;
    'aria-label'?: React.AriaAttributes['aria-label'];
    'aria-expanded'?: React.AriaAttributes['aria-expanded'];
    'aria-haspopup'?: React.AriaAttributes['aria-haspopup'];
    'aria-pressed'?: React.AriaAttributes['aria-pressed'];
    'aria-keyshortcuts'?: React.AriaAttributes['aria-keyshortcuts'];
} & Pick<ButtonProps, 'aria-label' | 'children'>;
export type ToolbarButtonRef = HTMLElement;
declare const ToolbarButton: React.ForwardRefExoticComponent<{
    buttonId?: TOOLBAR_ACTION_SUBJECT_ID | undefined;
    className?: string | undefined;
    disabled?: boolean | undefined;
    hideTooltip?: boolean | undefined;
    href?: string | undefined;
    iconAfter?: React.ReactElement<any, string | React.JSXElementConstructor<any>> | undefined;
    iconBefore?: React.ReactElement<any, string | React.JSXElementConstructor<any>> | undefined;
    onClick?: ((event: React.MouseEvent<HTMLElement>) => void) | undefined;
    onItemClick?: ((item: MenuItem) => void) | undefined;
    onKeyDown?: ((event: React.KeyboardEvent<HTMLElement>) => void) | undefined;
    selected?: boolean | undefined;
    spacing?: "none" | "default" | "compact" | undefined;
    target?: string | undefined;
    title?: React.ReactNode;
    titlePosition?: PositionType | undefined;
    item?: MenuItem | undefined;
    testId?: string | undefined;
    'aria-label'?: React.AriaAttributes['aria-label'];
    'aria-expanded'?: React.AriaAttributes['aria-expanded'];
    'aria-haspopup'?: React.AriaAttributes['aria-haspopup'];
    'aria-pressed'?: React.AriaAttributes['aria-pressed'];
    'aria-keyshortcuts'?: React.AriaAttributes['aria-keyshortcuts'];
} & Pick<ButtonProps, "children" | "aria-label"> & React.RefAttributes<HTMLElement>>;
export default ToolbarButton;
