Interface: StandardButtonProperties
Defined in: shared/types/componentProps.ts:361
Button-specific properties combining common patterns.
Remarksโ
This interface combines the most common props needed for button components, serving as a standard template.
Hierarchyโ
Extendsโ
AccessibilityProperties.CoreComponentProperties.DataAttributeProperties.DomIdentityProperties.IconProperties.StateProperties.StylingProperties
Indexableโ
[key: `data-${string}`]: string | number | boolean | undefined
Propertiesโ
children?โ
readonly optional children?: ReactNode;
Defined in: shared/types/componentProps.ts:36
Component content (text, elements, or other components)
Inherited fromโ
CoreComponentProperties.children
className?โ
readonly optional className?: string;
Defined in: shared/types/componentProps.ts:38
Additional CSS classes for styling customization
Inherited fromโ
CoreComponentProperties.className
disabled?โ
readonly optional disabled?: boolean;
Defined in: shared/types/componentProps.ts:40
Whether the component is disabled and non-interactive
Inherited fromโ
CoreComponentProperties.disabled
id?โ
readonly optional id?: string;
Defined in: shared/types/componentProps.ts:54
Optional DOM id forwarded to the underlying element.
Inherited fromโ
aria-describedby?โ
readonly optional aria-describedby?: string;
Defined in: shared/types/componentProps.ts:89
ARIA described-by reference for additional descriptions
Inherited fromโ
AccessibilityProperties.aria-describedby
aria-disabled?โ
readonly optional aria-disabled?: boolean;
Defined in: shared/types/componentProps.ts:91
ARIA disabled state for interactive controls that are visually disabled
Inherited fromโ
AccessibilityProperties.aria-disabled
aria-label?โ
readonly optional aria-label?: string;
Defined in: shared/types/componentProps.ts:93
ARIA label for screen readers
Inherited fromโ
AccessibilityProperties.aria-label
aria-labelledby?โ
readonly optional aria-labelledby?: string;
Defined in: shared/types/componentProps.ts:95
ARIA labelledby reference for complex labeling
Inherited fromโ
AccessibilityProperties.aria-labelledby
aria-level?โ
readonly optional aria-level?: number;
Defined in: shared/types/componentProps.ts:97
ARIA heading level for elements using role="heading"
Inherited fromโ
AccessibilityProperties.aria-level
role?โ
readonly optional role?: string;
Defined in: shared/types/componentProps.ts:99
Role attribute for semantic meaning
Inherited fromโ
tabIndex?โ
readonly optional tabIndex?: number;
Defined in: shared/types/componentProps.ts:101
Tab index for keyboard navigation
Inherited fromโ
AccessibilityProperties.tabIndex
fullWidth?โ
readonly optional fullWidth?: boolean;
Defined in: shared/types/componentProps.ts:143
Whether component should take full width of its container
Inherited fromโ
size?โ
readonly optional size?: ComponentSize;
Defined in: shared/types/componentProps.ts:145
Size variant for the component
Inherited fromโ
style?โ
readonly optional style?: CSSProperties;
Defined in: shared/types/componentProps.ts:147
Inline styles to apply (use sparingly)
Inherited fromโ
variant?โ
readonly optional variant?: ComponentVariant;
Defined in: shared/types/componentProps.ts:149
Visual variant for component theming
Inherited fromโ
active?โ
readonly optional active?: boolean;
Defined in: shared/types/componentProps.ts:163
Whether the component is in an active state
Inherited fromโ
loading?โ
readonly optional loading?: boolean;
Defined in: shared/types/componentProps.ts:165
Whether the component is in a loading state
Inherited fromโ
selected?โ
readonly optional selected?: boolean;
Defined in: shared/types/componentProps.ts:167
Whether the component is selected
Inherited fromโ
icon?โ
readonly optional icon?: ReactNode;
Defined in: shared/types/componentProps.ts:205
Icon element to display
Inherited fromโ
iconColor?โ
readonly optional iconColor?: string;
Defined in: shared/types/componentProps.ts:207
Color theme for the icon
Inherited fromโ
iconOnly?โ
readonly optional iconOnly?: boolean;
Defined in: shared/types/componentProps.ts:209
Whether to show only the icon (hide text content)
Inherited fromโ
iconPosition?โ
readonly optional iconPosition?: "left" | "right";
Defined in: shared/types/componentProps.ts:211
Position of the icon relative to content
Inherited fromโ
form?โ
readonly optional form?: string;
Defined in: shared/types/componentProps.ts:377
Optional form id to associate the button with an external <form>.
Remarksโ
This enables submit/reset buttons to live outside the form element (e.g. in a dialog footer) while still triggering form submission.
onClick?โ
readonly optional onClick?: ClickFlexibleHandler<HTMLButtonElement>;
Defined in: shared/types/componentProps.ts:379
Click handler for button interactions.
onKeyDown?โ
readonly optional onKeyDown?: KeyPressHandler<HTMLButtonElement>;
Defined in: shared/types/componentProps.ts:385
Key down handler for keyboard interactions (e.g., arrow-key tab navigation).
title?โ
readonly optional title?: string;
Defined in: shared/types/componentProps.ts:387
Tooltip text for hover states
type?โ
readonly optional type?: "button" | "reset" | "submit";
Defined in: shared/types/componentProps.ts:389
HTML button type
value?โ
readonly optional value?: string;
Defined in: shared/types/componentProps.ts:400
Optional string value assigned to the underlying HTML button.
Remarksโ
This is useful when a shared click handler needs to identify which button
was clicked without relying on data-* attributes.