获取函数参数类型
type FuncType = Parameters<typeof func>
获取函数返回值类型
type FuncReturnTyp = ReturnType<typeof func>
设置只读
type DeepReadonly<T> = {
readonly [key in keyof T]: T[key] extends object ? DeepReadonly<T[key]> : T[key]
}
vue获取组件类型
type ComponentType = InstanceType<typeof Component>