label | string | - | Button text |
variant | string | "primary" | Style variant: primary, secondary, outline, ghost, danger |
size | string | "md" | Button size: sm, md, lg, xl |
color | string | - | Custom background color (overrides variant) |
textColor | string | - | Custom text color |
borderColor | string | - | Custom border color |
borderWidth | number | - | Custom border width |
radius | string | number | - | Border radius: none, sm, md, lg, xl, full, or number |
shadow | string | "none" | Shadow depth: none, sm, md, lg |
icon | string | - | Icon name on the left |
iconStart | string | - | Icon name on the left (alias) |
iconEnd | string | - | Icon name on the right |
iconRight | string | - | Icon name on the right (alias) |
disabled | boolean | false | Disabled state |
loading | boolean | false | Loading state with spinner |
fullWidth | boolean | false | Whether button fills available width |
block | boolean | false | Alias for fullWidth |
uniform | boolean | false | Square/circular button (equal width and height) |
pill | boolean | false | Fully rounded corners |
align | string | "auto" | Button alignment: auto, start, center, end, stretch |
action | object | - | Action to execute on click |
onClickAction | object | - | Alias for action |
message | string | - | Simple message to send on click |