import type { Props as WAccordionProps } from './components/Accordion/Accordion.astro'
import type { Props as WAlertProps } from './components/Alert/Alert.astro'
import type { Props as WAspectRatioProps } from './components/AspectRatio/AspectRatio.astro'
import type { Props as WAvatarProps } from './components/Avatar/Avatar.astro'
import type { Props as WBadgeProps } from './components/Badge/Badge.astro'
import type { Props as WBannerProps } from './components/Banner/Banner.astro'
import type { Props as WBottomNavigationProps } from './components/BottomNavigation/BottomNavigation.astro'
import type { Props as WBreadcrumbProps } from './components/Breadcrumb/Breadcrumb.astro'
import type { Props as WButtonProps } from './components/Button/Button.astro'
import type { Props as WCardProps } from './components/Card/Card.astro'
import type { Props as WCarouselProps } from './components/Carousel/Carousel.astro'
import type { Props as WCarouselItemProps } from './components/CarouselItem/CarouselItem.astro'
import type { Props as WCheckboxProps } from './components/Checkbox/Checkbox.astro'
import type { Props as WCollapsibleProps } from './components/Collapsible/Collapsible.astro'
import type { Props as WConditionalWrapperProps } from './components/ConditionalWrapper/ConditionalWrapper.astro'
import type { Props as WContextMenuProps } from './components/ContextMenu/ContextMenu.astro'
import type { Props as WCopyProps } from './components/Copy/Copy.astro'
import type { Props as WCounterProps } from './components/Counter/Counter.astro'
import type { Props as WDataTableProps } from './components/DataTable/DataTable.astro'
import type { Props as WFlexProps } from './components/Flex/Flex.astro'
import type { Props as WFooterProps } from './components/Footer/Footer.astro'
import type { Props as WGridProps } from './components/Grid/Grid.astro'
import type { Props as WGroupProps } from './components/Group/Group.astro'
import type { Props as WIconProps } from './components/Icon/Icon.astro'
import type { Props as WImageProps } from './components/Image/Image.astro'
import type { Props as WImageLoaderProps } from './components/ImageLoader/ImageLoader.astro'
import type { Props as WInputProps } from './components/Input/Input.astro'
import type { Props as WKbdProps } from './components/Kbd/Kbd.astro'
import type { Props as WListProps } from './components/List/List.astro'
import type { Props as WMasonryProps } from './components/Masonry/Masonry.astro'
import type { Props as WMenuProps } from './components/Menu/Menu.astro'
import type { Props as WModalProps } from './components/Modal/Modal.astro'
import type { Props as WOTPInputProps } from './components/OTPInput/OTPInput.astro'
import type { Props as WPaginationProps } from './components/Pagination/Pagination.astro'
import type { Props as WPopoverProps } from './components/Popover/Popover.astro'
import type { Props as WProgressProps } from './components/Progress/Progress.astro'
import type { Props as WRadioProps } from './components/Radio/Radio.astro'
import type { Props as WRangeSliderProps } from './components/RangeSlider/RangeSlider.astro'
import type { Props as WRatingProps } from './components/Rating/Rating.astro'
import type { Props as WRibbonProps } from './components/Ribbon/Ribbon.astro'
import type { Props as WSelectProps } from './components/Select/Select.astro'
import type { Props as WSheetProps } from './components/Sheet/Sheet.astro'
import type { Props as WSidebarProps } from './components/Sidebar/Sidebar.astro'
import type { Props as WSkeletonProps } from './components/Skeleton/Skeleton.astro'
import type { Props as WSliderProps } from './components/Slider/Slider.astro'
import type { Props as WSpeedDialProps } from './components/SpeedDial/SpeedDial.astro'
import type { Props as WSpinnerProps } from './components/Spinner/Spinner.astro'
import type { Props as WSpoilerProps } from './components/Spoiler/Spoiler.astro'
import type { Props as WStepperProps } from './components/Stepper/Stepper.astro'
import type { Props as WSwitchProps } from './components/Switch/Switch.astro'
import type { Props as WTabProps } from './components/Tab/Tab.astro'
import type { Props as WTableProps } from './components/Table/Table.astro'
import type { Props as WTabsProps } from './components/Tabs/Tabs.astro'
import type { Props as WTextareaProps } from './components/Textarea/Textarea.astro'
import type { Props as WThemeSwitcherProps } from './components/ThemeSwitcher/ThemeSwitcher.astro'
import type { Props as WTimelineProps } from './components/Timeline/Timeline.astro'
import type { Props as WTimelineItemProps } from './components/TimelineItem/TimelineItem.astro'
import type { Props as WToastProps } from './components/Toast/Toast.astro'

import type { DataTableEventType as WDataTableEventType, HeadingObject as WHeadingObject } from './components/DataTable/datatable.ts'
import type { ListEventType as WListEventType } from './components/List/list.ts'
import type { PaginationEventType as WPaginationEventType } from './components/Pagination/pagination.ts'
import type { RangeSliderEventType as WRangeSliderEventType } from './components/RangeSlider/rangeslider.ts'
import type { SelectEventType as WSelectEventType } from './components/Select/select.ts'

declare module 'webcoreui/astro' {
    export function Accordion(_props: WAccordionProps): any
	export function Alert(_props: WAlertProps): any
	export function AspectRatio(_props: WAspectRatioProps): any
	export function Avatar(_props: WAvatarProps): any
	export function Badge(_props: WBadgeProps): any
	export function Banner(_props: WBannerProps): any
	export function BottomNavigation(_props: WBottomNavigationProps): any
	export function Breadcrumb(_props: WBreadcrumbProps): any
	export function Button(_props: WButtonProps): any
	export function Card(_props: WCardProps): any
	export function Carousel(_props: WCarouselProps): any
	export function CarouselItem(_props: WCarouselItemProps): any
	export function Checkbox(_props: WCheckboxProps): any
	export function Collapsible(_props: WCollapsibleProps): any
	export function ConditionalWrapper(_props: WConditionalWrapperProps): any
	export function ContextMenu(_props: WContextMenuProps): any
	export function Copy(_props: WCopyProps): any
	export function Counter(_props: WCounterProps): any
	export function DataTable(_props: WDataTableProps): any
	export function Flex(_props: WFlexProps): any
	export function Footer(_props: WFooterProps): any
	export function Grid(_props: WGridProps): any
	export function Group(_props: WGroupProps): any
	export function Icon(_props: WIconProps): any
	export function Image(_props: WImageProps): any
	export function ImageLoader(_props: WImageLoaderProps): any
	export function Input(_props: WInputProps): any
	export function Kbd(_props: WKbdProps): any
	export function List(_props: WListProps): any
	export function Masonry(_props: WMasonryProps): any
	export function Menu(_props: WMenuProps): any
	export function Modal(_props: WModalProps): any
	export function OTPInput(_props: WOTPInputProps): any
	export function Pagination(_props: WPaginationProps): any
	export function Popover(_props: WPopoverProps): any
	export function Progress(_props: WProgressProps): any
	export function Radio(_props: WRadioProps): any
	export function RangeSlider(_props: WRangeSliderProps): any
	export function Rating(_props: WRatingProps): any
	export function Ribbon(_props: WRibbonProps): any
	export function Select(_props: WSelectProps): any
	export function Sheet(_props: WSheetProps): any
	export function Sidebar(_props: WSidebarProps): any
	export function Skeleton(_props: WSkeletonProps): any
	export function Slider(_props: WSliderProps): any
	export function SpeedDial(_props: WSpeedDialProps): any
	export function Spinner(_props: WSpinnerProps): any
	export function Spoiler(_props: WSpoilerProps): any
	export function Stepper(_props: WStepperProps): any
	export function Switch(_props: WSwitchProps): any
	export function Tab(_props: WTabProps): any
	export function Table(_props: WTableProps): any
	export function Tabs(_props: WTabsProps): any
	export function Textarea(_props: WTextareaProps): any
	export function ThemeSwitcher(_props: WThemeSwitcherProps): any
	export function Timeline(_props: WTimelineProps): any
	export function TimelineItem(_props: WTimelineItemProps): any
	export function Toast(_props: WToastProps): any

    export type AccordionProps = WAccordionProps
	export type AlertProps = WAlertProps
	export type AspectRatioProps = WAspectRatioProps
	export type AvatarProps = WAvatarProps
	export type BadgeProps = WBadgeProps
	export type BannerProps = WBannerProps
	export type BottomNavigationProps = WBottomNavigationProps
	export type BreadcrumbProps = WBreadcrumbProps
	export type ButtonProps = WButtonProps
	export type CardProps = WCardProps
	export type CarouselProps = WCarouselProps
	export type CarouselItemProps = WCarouselItemProps
	export type CheckboxProps = WCheckboxProps
	export type CollapsibleProps = WCollapsibleProps
	export type ConditionalWrapperProps = WConditionalWrapperProps
	export type ContextMenuProps = WContextMenuProps
	export type CopyProps = WCopyProps
	export type CounterProps = WCounterProps
	export type DataTableProps = WDataTableProps
	export type FlexProps = WFlexProps
	export type FooterProps = WFooterProps
	export type GridProps = WGridProps
	export type GroupProps = WGroupProps
	export type IconProps = WIconProps
	export type ImageProps = WImageProps
	export type ImageLoaderProps = WImageLoaderProps
	export type InputProps = WInputProps
	export type KbdProps = WKbdProps
	export type ListProps = WListProps
	export type MasonryProps = WMasonryProps
	export type MenuProps = WMenuProps
	export type ModalProps = WModalProps
	export type OTPInputProps = WOTPInputProps
	export type PaginationProps = WPaginationProps
	export type PopoverProps = WPopoverProps
	export type ProgressProps = WProgressProps
	export type RadioProps = WRadioProps
	export type RangeSliderProps = WRangeSliderProps
	export type RatingProps = WRatingProps
	export type RibbonProps = WRibbonProps
	export type SelectProps = WSelectProps
	export type SheetProps = WSheetProps
	export type SidebarProps = WSidebarProps
	export type SkeletonProps = WSkeletonProps
	export type SliderProps = WSliderProps
	export type SpeedDialProps = WSpeedDialProps
	export type SpinnerProps = WSpinnerProps
	export type SpoilerProps = WSpoilerProps
	export type StepperProps = WStepperProps
	export type SwitchProps = WSwitchProps
	export type TabProps = WTabProps
	export type TableProps = WTableProps
	export type TabsProps = WTabsProps
	export type TextareaProps = WTextareaProps
	export type ThemeSwitcherProps = WThemeSwitcherProps
	export type TimelineProps = WTimelineProps
	export type TimelineItemProps = WTimelineItemProps
	export type ToastProps = WToastProps

    export type DataTableEventType = WDataTableEventType
	export type HeadingObject = WHeadingObject
	export type ListEventType = WListEventType
	export type PaginationEventType = WPaginationEventType
	export type RangeSliderEventType = WRangeSliderEventType
	export type SelectEventType = WSelectEventType
}