diff --git a/cli/templates.mjs b/cli/templates.mjs
index bad13252..53e6c679 100644
--- a/cli/templates.mjs
+++ b/cli/templates.mjs
@@ -50,7 +50,7 @@ export interface ${upperName}Props {
}
export interface ${upperName}Slots {
- default(props?: any): any
+ default(props?: {}): any
}
diff --git a/eslint.config.mjs b/eslint.config.mjs
index 94bc43cb..d6ef65b4 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -13,5 +13,6 @@ export default createConfigForNuxt({
'import/order': 'off',
'vue/multi-word-component-names': 'off',
'vue/max-attributes-per-line': ['error', { singleline: 5 }],
- '@typescript-eslint/no-explicit-any': 'off'
+ '@typescript-eslint/no-explicit-any': 'off',
+ '@typescript-eslint/ban-types': 'off'
})
diff --git a/src/runtime/components/Alert.vue b/src/runtime/components/Alert.vue
index 6452be02..3bfb2960 100644
--- a/src/runtime/components/Alert.vue
+++ b/src/runtime/components/Alert.vue
@@ -50,10 +50,10 @@ export interface AlertEmits {
}
export interface AlertSlots {
- leading(props?: any): any
- title(props?: any): any
- description(props?: any): any
- actions(props?: any): any
+ leading(props?: {}): any
+ title(props?: {}): any
+ description(props?: {}): any
+ actions(props?: {}): any
close(props: { class: string }): any
}
diff --git a/src/runtime/components/App.vue b/src/runtime/components/App.vue
index e9facd06..e4b445db 100644
--- a/src/runtime/components/App.vue
+++ b/src/runtime/components/App.vue
@@ -6,6 +6,10 @@ export interface ProviderProps extends ConfigProviderProps {
tooltip?: TooltipProviderProps
toaster?: ToasterProps | null
}
+
+export interface ProviderSlors {
+ default(props?: {}): any
+}
diff --git a/src/runtime/components/Badge.vue b/src/runtime/components/Badge.vue
index 9d65db55..293f5e8c 100644
--- a/src/runtime/components/Badge.vue
+++ b/src/runtime/components/Badge.vue
@@ -24,7 +24,7 @@ export interface BadgeProps {
}
export interface BadgeSlots {
- default(props?: any): any
+ default(props?: {}): any
}
diff --git a/src/runtime/components/Breadcrumb.vue b/src/runtime/components/Breadcrumb.vue
index b214d89e..4d7d8234 100644
--- a/src/runtime/components/Breadcrumb.vue
+++ b/src/runtime/components/Breadcrumb.vue
@@ -40,7 +40,7 @@ export type BreadcrumbSlots = {
'item-leading': SlotProps
'item-label': SlotProps
'item-trailing': SlotProps
- 'separator'(props?: any): any
+ 'separator'(props?: {}): any
} & DynamicSlots>
diff --git a/src/runtime/components/Button.vue b/src/runtime/components/Button.vue
index aba072e9..4840da83 100644
--- a/src/runtime/components/Button.vue
+++ b/src/runtime/components/Button.vue
@@ -26,9 +26,9 @@ export interface ButtonProps extends UseComponentIconsProps, Omit
diff --git a/src/runtime/components/ButtonGroup.vue b/src/runtime/components/ButtonGroup.vue
index acc8ca02..8f949c8b 100644
--- a/src/runtime/components/ButtonGroup.vue
+++ b/src/runtime/components/ButtonGroup.vue
@@ -27,7 +27,7 @@ export interface ButtonGroupProps {
}
export interface ButtonGroupSlots {
- default(props?: any): any
+ default(props?: {}): any
}
diff --git a/src/runtime/components/Card.vue b/src/runtime/components/Card.vue
index d7786811..bcbc8cf4 100644
--- a/src/runtime/components/Card.vue
+++ b/src/runtime/components/Card.vue
@@ -19,9 +19,9 @@ export interface CardProps {
}
export interface CardSlots {
- header(props?: any): any
- default(props?: any): any
- footer(props?: any): any
+ header(props?: {}): any
+ default(props?: {}): any
+ footer(props?: {}): any
}
diff --git a/src/runtime/components/Chip.vue b/src/runtime/components/Chip.vue
index 9a28ee2e..b8eb4b99 100644
--- a/src/runtime/components/Chip.vue
+++ b/src/runtime/components/Chip.vue
@@ -30,8 +30,8 @@ export interface ChipProps {
}
export interface ChipSlots {
- default(props?: any): any
- content(props?: any): any
+ default(props?: {}): any
+ content(props?: {}): any
}
export interface ChipEmits {
diff --git a/src/runtime/components/Collapsible.vue b/src/runtime/components/Collapsible.vue
index 47ff0ea1..44f4ddc9 100644
--- a/src/runtime/components/Collapsible.vue
+++ b/src/runtime/components/Collapsible.vue
@@ -23,7 +23,7 @@ export interface CollapsibleEmits extends CollapsibleRootEmits {}
export interface CollapsibleSlots {
default(props: { open: boolean }): any
- content(props?: any): any
+ content(props?: {}): any
}
diff --git a/src/runtime/components/CommandPalette.vue b/src/runtime/components/CommandPalette.vue
index ff38bcbc..501ad246 100644
--- a/src/runtime/components/CommandPalette.vue
+++ b/src/runtime/components/CommandPalette.vue
@@ -79,7 +79,7 @@ type SlotProps = (props: { item: T, index: number }) => any
export type CommandPaletteSlots = {
'empty'(props: { searchTerm?: string }): any
- 'close'(props?: any): any
+ 'close'(props?: {}): any
'item': SlotProps
'item-leading': SlotProps
'item-label': SlotProps
diff --git a/src/runtime/components/Container.vue b/src/runtime/components/Container.vue
index 3956d61e..cf64a720 100644
--- a/src/runtime/components/Container.vue
+++ b/src/runtime/components/Container.vue
@@ -18,7 +18,7 @@ export interface ContainerProps {
}
export interface ContainerSlots {
- default(props?: any): any
+ default(props?: {}): any
}
diff --git a/src/runtime/components/ContextMenu.vue b/src/runtime/components/ContextMenu.vue
index 64689479..50b49dd4 100644
--- a/src/runtime/components/ContextMenu.vue
+++ b/src/runtime/components/ContextMenu.vue
@@ -47,7 +47,7 @@ export interface ContextMenuEmits extends ContextMenuRootEmits {}
type SlotProps = (props: { item: T, active?: boolean, index: number }) => any
export type ContextMenuSlots = {
- 'default'(props?: any): any
+ 'default'(props?: {}): any
'item': SlotProps
'item-leading': SlotProps
'item-label': SlotProps
diff --git a/src/runtime/components/Drawer.vue b/src/runtime/components/Drawer.vue
index 713e7a97..7e58c840 100644
--- a/src/runtime/components/Drawer.vue
+++ b/src/runtime/components/Drawer.vue
@@ -33,14 +33,14 @@ export interface DrawerProps extends Pick
diff --git a/src/runtime/components/DropdownMenuContent.vue b/src/runtime/components/DropdownMenuContent.vue
index c6b3c013..c9510e45 100644
--- a/src/runtime/components/DropdownMenuContent.vue
+++ b/src/runtime/components/DropdownMenuContent.vue
@@ -17,7 +17,7 @@ interface DropdownMenuContentProps extends Omit = Omit, 'default'> & {
- default(props?: any): any
+ default(props?: {}): any
}
diff --git a/src/runtime/components/Form.vue b/src/runtime/components/Form.vue
index 8b9799f9..fb82d4b1 100644
--- a/src/runtime/components/Form.vue
+++ b/src/runtime/components/Form.vue
@@ -29,7 +29,7 @@ export interface FormEmits {
}
export interface FormSlots {
- default(props?: any): any
+ default(props?: {}): any
}
diff --git a/src/runtime/components/Input.vue b/src/runtime/components/Input.vue
index 5e9da266..408fc6c9 100644
--- a/src/runtime/components/Input.vue
+++ b/src/runtime/components/Input.vue
@@ -36,9 +36,9 @@ export interface InputEmits {
}
export interface InputSlots {
- leading(props?: any): any
- default(props?: any): any
- trailing(props?: any): any
+ leading(props?: {}): any
+ default(props?: {}): any
+ trailing(props?: {}): any
}
diff --git a/src/runtime/components/Kbd.vue b/src/runtime/components/Kbd.vue
index b38ac2bc..2ded0115 100644
--- a/src/runtime/components/Kbd.vue
+++ b/src/runtime/components/Kbd.vue
@@ -24,7 +24,7 @@ export interface KbdProps {
}
export interface KbdSlots {
- default(props?: any): any
+ default(props?: {}): any
}
diff --git a/src/runtime/components/Modal.vue b/src/runtime/components/Modal.vue
index 13595f94..33668e5a 100644
--- a/src/runtime/components/Modal.vue
+++ b/src/runtime/components/Modal.vue
@@ -44,13 +44,13 @@ export interface ModalEmits extends DialogRootEmits {}
export interface ModalSlots {
default(props: { open: boolean }): any
- content(props?: any): any
- header(props?: any): any
- title(props?: any): any
- description(props?: any): any
+ content(props?: {}): any
+ header(props?: {}): any
+ title(props?: {}): any
+ description(props?: {}): any
close(props: { class: string }): any
- body(props?: any): any
- footer(props?: any): any
+ body(props?: {}): any
+ footer(props?: {}): any
}
diff --git a/src/runtime/components/Pagination.vue b/src/runtime/components/Pagination.vue
index 5cfb1c03..ce00d1e7 100644
--- a/src/runtime/components/Pagination.vue
+++ b/src/runtime/components/Pagination.vue
@@ -80,11 +80,11 @@ export interface PaginationProps extends Pick
diff --git a/src/runtime/components/RadioGroup.vue b/src/runtime/components/RadioGroup.vue
index 99b8f4e6..d1d40833 100644
--- a/src/runtime/components/RadioGroup.vue
+++ b/src/runtime/components/RadioGroup.vue
@@ -41,7 +41,7 @@ export interface RadioGroupEmits extends RadioGroupRootEmits {}
type SlotProps = (props: { item: T, modelValue?: string }) => any
export interface RadioGroupSlots {
- legend(props?: any): any
+ legend(props?: {}): any
label: SlotProps
description: SlotProps
}
diff --git a/src/runtime/components/Separator.vue b/src/runtime/components/Separator.vue
index 58a4a1b1..6880d583 100644
--- a/src/runtime/components/Separator.vue
+++ b/src/runtime/components/Separator.vue
@@ -37,7 +37,7 @@ export interface SeparatorProps extends Pick<_SeparatorProps, 'decorative'> {
}
export interface SeparatorSlots {
- default(props?: any): any
+ default(props?: {}): any
}
diff --git a/src/runtime/components/Slideover.vue b/src/runtime/components/Slideover.vue
index 240d0f30..c776a390 100644
--- a/src/runtime/components/Slideover.vue
+++ b/src/runtime/components/Slideover.vue
@@ -54,13 +54,13 @@ export interface SlideoverEmits extends DialogRootEmits {}
export interface SlideoverSlots {
default(props: { open: boolean }): any
- content(props?: any): any
- header(props?: any): any
- title(props?: any): any
- description(props?: any): any
+ content(props?: {}): any
+ header(props?: {}): any
+ title(props?: {}): any
+ description(props?: {}): any
close(props: { class: string }): any
- body(props?: any): any
- footer(props?: any): any
+ body(props?: {}): any
+ footer(props?: {}): any
}
diff --git a/src/runtime/components/Textarea.vue b/src/runtime/components/Textarea.vue
index 9c2751e8..b76f0b3d 100644
--- a/src/runtime/components/Textarea.vue
+++ b/src/runtime/components/Textarea.vue
@@ -36,7 +36,7 @@ export interface TextareaEmits {
}
export interface TextareaSlots {
- default(props?: any): any
+ default(props?: {}): any
}
diff --git a/src/runtime/components/Toast.vue b/src/runtime/components/Toast.vue
index a4e21cf9..6d3c18b0 100644
--- a/src/runtime/components/Toast.vue
+++ b/src/runtime/components/Toast.vue
@@ -47,10 +47,10 @@ export interface ToastProps extends Pick
diff --git a/src/runtime/components/Toaster.vue b/src/runtime/components/Toaster.vue
index 2f6d755b..8942646b 100644
--- a/src/runtime/components/Toaster.vue
+++ b/src/runtime/components/Toaster.vue
@@ -24,7 +24,7 @@ export interface ToasterProps extends Omit
}
export interface ToasterSlots {
- default(props?: any): any
+ default(props?: {}): any
}
export type ToasterContext = ComputedRef<{
diff --git a/src/runtime/components/Tooltip.vue b/src/runtime/components/Tooltip.vue
index d5462e0b..1c1a9aab 100644
--- a/src/runtime/components/Tooltip.vue
+++ b/src/runtime/components/Tooltip.vue
@@ -38,7 +38,7 @@ export interface TooltipEmits extends TooltipRootEmits {}
export interface TooltipSlots {
default(props: { open: boolean }): any
- content(props?: any): any
+ content(props?: {}): any
}