<script setup lang="ts">
import Button from 'primevue/button'
import type { UiButtonType, UiSeverity } from '../adapter/contracts'

withDefaults(defineProps<{ label?: string; severity?: UiSeverity; type?: UiButtonType; disabled?: boolean; loading?: boolean }>(), {
  severity: 'primary', type: 'button', disabled: false, loading: false
})
const emit = defineEmits<{ click: [event: MouseEvent] }>()
</script>

<template>
  <Button v-bind="$props" class="ks-button" @click="emit('click', $event)"><slot /></Button>
</template>
