UNPKG

@patternfly/react-core

Version:

This library provides a set of common React components for use with the PatternFly reference implementation.

94 lines 3.89 kB
/// <reference types="react" /> import { OUIAProps } from '../../helpers/OUIA/ouia'; export declare enum ButtonVariant { primary = "primary", secondary = "secondary", tertiary = "tertiary", danger = "danger", warning = "warning", link = "link", plain = "plain", control = "control", stateful = "stateful" } export declare enum ButtonType { button = "button", submit = "submit", reset = "reset" } export declare enum ButtonSize { default = "default", sm = "sm", lg = "lg" } export declare enum ButtonState { read = "read", unread = "unread", attention = "attention" } export interface BadgeCountObject { /** Adds styling to the badge to indicate it has been read */ isRead?: boolean; /** Adds count number right of button */ count?: number; /** Additional classes added to the badge count */ className?: string; } export interface ButtonProps extends Omit<React.HTMLProps<HTMLButtonElement>, 'ref' | 'size'>, OUIAProps { /** Content rendered inside the button */ children?: React.ReactNode; /** Additional classes added to the button */ className?: string; /** Sets the base component to render. defaults to button */ component?: React.ElementType<any> | React.ComponentType<any>; /** Adds clicked styling to button. */ isClicked?: boolean; /** Adds block styling to button */ isBlock?: boolean; /** Adds disabled styling and disables the button using the disabled html attribute */ isDisabled?: boolean; /** Adds disabled styling and communicates that the button is disabled using the aria-disabled html attribute */ isAriaDisabled?: boolean; /** Adds progress styling to button */ isLoading?: boolean; /** Text describing that current loading status or progress */ spinnerAriaValueText?: string; /** Accessible label for the spinner to describe what is loading */ spinnerAriaLabel?: string; /** Id of element which describes what is being loaded */ spinnerAriaLabelledBy?: string; /** Events to prevent when the button is in an aria-disabled state */ inoperableEvents?: string[]; /** Adds inline styling to a link button */ isInline?: boolean; /** Adds styling which affects the size of the button */ size?: 'default' | 'sm' | 'lg'; /** Sets button type */ type?: 'button' | 'submit' | 'reset'; /** Adds button variant styles */ variant?: 'primary' | 'secondary' | 'tertiary' | 'danger' | 'warning' | 'link' | 'plain' | 'control' | 'stateful'; /** Sets state of the stateful button variant. Default is "unread" */ state?: 'read' | 'unread' | 'attention'; /** Applies no padding on a plain button variant. Use when plain button is placed inline with text */ hasNoPadding?: boolean; /** Sets position of the icon. Note: "left" and "right" are deprecated. Use "start" and "end" instead */ iconPosition?: 'start' | 'end' | 'left' | 'right'; /** Adds accessible text to the button. */ 'aria-label'?: string; /** Icon for the button. */ icon?: React.ReactNode | null; /** Sets the button tabindex. */ tabIndex?: number; /** Adds danger styling to secondary or link button variants */ isDanger?: boolean; /** @hide Forwarded ref */ innerRef?: React.Ref<any>; /** Adds count number to button */ countOptions?: BadgeCountObject; /** Value to overwrite the randomly generated data-ouia-component-id.*/ ouiaId?: number | string; /** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */ ouiaSafe?: boolean; } export declare const Button: import("react").ForwardRefExoticComponent<ButtonProps & import("react").RefAttributes<any>>; //# sourceMappingURL=Button.d.ts.map