vite-env.d.ts 977 B

12345678910111213141516171819202122232425262728293031323334
  1. /// <reference types="vite/client" />
  2. declare module '*.vue' {
  3. import type { DefineComponent } from 'vue'
  4. const component: DefineComponent<{}, {}, any>
  5. export default component
  6. }
  7. type ToChangeAPI<T extends Record<string, any>> = {
  8. [key in keyof T as `change${Capitalize<key & string>}`]: (prop: T[key]) => void
  9. }
  10. type SceneLocalPos = { x: number, y: number, z: number }
  11. type ScreenLocalPos = { x: number, y: number }
  12. type Rotation = { x: number, y: number, z: number, w: number }
  13. type LocalFile = { url: string, blob: Blob }
  14. type LocalMode<T, K> = T extends any[]
  15. ? LocalMode<T[number], K>[]
  16. : T extends {}
  17. ? K extends keyof T
  18. ? T[K] extends string
  19. ? Omit<T, K> & { [key in K]: string | LocalFile }
  20. : T[K] extends string[]
  21. ? Omit<T, K> & { [key in K]: (string | LocalFile)[] }
  22. : T
  23. : T
  24. : T
  25. type PartialProps<T, U extends keyof T = keyof T> = {
  26. [P in keyof Omit<T, U>]: T[P];
  27. } & {
  28. [P in U]?: T[P];
  29. }