1
0
mirror of synced 2025-12-11 08:38:08 +08:00
Files
vxe-table/types/component.d.ts
2023-06-03 01:05:36 +08:00

32 lines
689 B
TypeScript

import { App, VNode } from 'vue'
export type SizeType = null | '' | 'medium' | 'small' | 'mini'
export type ValueOf<T> = T extends any[] ? T[number] : T[keyof T]
export type VXEComponent<
P = { [key: string]: any },
E = { [key: string]: any },
S = { [key: string]: (...args: any[]) => any }
> = ({
new (): {
$props: P & E,
$slots: S
}
} & {
install(app: App): void
})
export interface VxeComponentBase {
xID: string
}
export interface VxeEvent {
$event: Event
[key: string]: any
}
export type VNodeStyle = Record<string, string | number>
export type VNodeClassName = Record<string, boolean>
export type SlotVNodeType = JSX.Element | VNode | string | number