import { HTMLAttributes, ReactNode } from 'react';
export interface ButtonContentProps extends HTMLAttributes<HTMLSpanElement> {
    /** Icon element placed before the label. */
    icon?: ReactNode;
    /** Text label. */
    label: string;
    /**
     * Position of the icon relative to the label.
     * Defaults to `"start"`.
     */
    iconPosition?: "start" | "end";
}
/**
 * Icon + label layout helper for buttons that contain both an icon and text.
 *
 * Pass as the `children` of a `Button` to get the correct Adwaita spacing
 * between the icon and label (4 px gap, icon centred vertically with the text).
 *
 * Mirrors `AdwButtonContent`.
 *
 * @example
 * ```tsx
 * <Button>
 *   <ButtonContent icon={<Icon name="document-save-symbolic" />} label="Save" />
 * </Button>
 * ```
 *
 * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.ButtonContent.html
 */
export declare function ButtonContent({ icon, label, iconPosition, className, ...props }: ButtonContentProps): import("react/jsx-runtime").JSX.Element;
