vite-env.d.ts 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  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. interface ImportMetaEnv {
  8. readonly VITE_LASER_HOST: string
  9. readonly VITE_LASER_OSS: string
  10. readonly VITE_PANO_OSS: string
  11. }
  12. declare const offline: boolean
  13. type ToChangeAPI<T extends Record<string, any>> = {
  14. [key in keyof T as `change${Capitalize<key & string>}`]: (prop: T[key]) => void
  15. }
  16. type SceneLocalPos = { x: number, y: number, z: number }
  17. type ScreenLocalPos = { x: number, y: number }
  18. type Rotation = { x: number, y: number, z: number, w: number }
  19. type LocalFile = { url: string, blob: Blob }
  20. type LocalMode<T, K> = T extends any[]
  21. ? LocalMode<T[number], K>[]
  22. : T extends {}
  23. ? K extends keyof T
  24. ? T[K] extends string
  25. ? Omit<T, K> & { [key in K]: string | LocalFile }
  26. : T[K] extends string[]
  27. ? Omit<T, K> & { [key in K]: (string | LocalFile)[] }
  28. : T
  29. : T
  30. : T
  31. type PartialProps<T, U extends keyof T = keyof T> = {
  32. [P in keyof Omit<T, U>]: T[P];
  33. } & {
  34. [P in U]?: T[P];
  35. }