# Button reference: [https://flowbite.com/docs/components/buttons/](https://flowbite.com/docs/components/buttons/) ## Prop - color ```typescript type ButtonVariant = 'default' | 'alternative' | 'dark' | 'light' | 'green' | 'red' | 'yellow' | 'purple' defineProps({ color: { type: String as PropType, default: 'default', }, }) ``` ```vue ``` ## Prop - size ```typescript type ButtonSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' defineProps({ size: { type: String as PropType, default: 'md', }, }) ``` ```vue ``` ## Prop - pill ```typescript defineProps({ pill: { type: Boolean, default: false, }, }) ``` ```vue ``` ## Prop - gradient (monochrome) ```typescript type ButtonMonochromeGradient = 'blue' | 'green' | 'cyan' | 'teal' | 'lime' | 'red' | 'pink' | 'purple' type ButtonDuotoneGradient = 'purple-blue' | 'cyan-blue' | 'green-blue' | 'purple-pink' | 'pink-orange' | 'teal-lime' | 'red-yellow' type ButtonGradient = ButtonDuotoneGradient | ButtonMonochromeGradient defineProps({ gradient: { type: [String, null] as PropType, default: null, }, }) ``` ```vue ``` ## Prop - gradient (duotone) ```vue ``` ## Prop - outline (color) ```typescript defineProps({ outline: { type: Boolean, default: false, }, }) ``` ```vue ``` ## Slot - prefix ```vue ``` ## Slot - suffix ```vue ```