types.d.ts 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. import { KrpanoActionProxy } from "./models";
  2. declare global {
  3. interface Window {
  4. krpanoJS?: {
  5. version: string;
  6. };
  7. embedpano?: (config: IKrpanoConfig) => void;
  8. removepano?: (target: string) => void;
  9. /**
  10. * 开启 dev 模式,在拖动热点时会调用此事件
  11. */
  12. draggbleHotspotEvent?: (ath: number, atv: number) => void;
  13. ReactKrpanoActionProxy?: KrpanoActionProxy;
  14. onVideoSceneReady: () => void;
  15. onVideoScenePlay: () => void;
  16. onVideoScenePaused: () => void;
  17. onVideoSceneComplete: () => void;
  18. onVideoSceneError: (err: string) => void;
  19. }
  20. interface EventMapper {
  21. "Event.videoScene.ready": undefined;
  22. "Event.videoScene.play": undefined;
  23. "Event.videoScene.pause": undefined;
  24. "Event.videoScene.complete": undefined;
  25. "Event.videoScene.error": string;
  26. }
  27. }
  28. export interface NativeKrpanoRendererObject {
  29. buildversion: string;
  30. get(key: string): any;
  31. call(action: string): void;
  32. }
  33. /**
  34. * @see https://krpano.com/docu/html/#wmode
  35. */
  36. export interface IKrpanoConfig {
  37. /**
  38. * 全景图xml路径。需要手动设置为null才不会加载。
  39. * @see https://krpano.com/docu/html/#xml
  40. */
  41. xml?: string | null;
  42. /** 挂载点id */
  43. target: string;
  44. swf?: string;
  45. id?: string;
  46. bgcolor?: string;
  47. /**
  48. * @see https://krpano.com/docu/html/#html5
  49. */
  50. html5?: string;
  51. flash?: string;
  52. wmode?: string;
  53. localfallback?: string;
  54. vars?: Record<string, unknown>;
  55. initvars?: Record<string, unknown>;
  56. consolelog?: boolean;
  57. basepath?: string;
  58. mwheel?: boolean;
  59. capturetouch?: boolean;
  60. focus?: boolean;
  61. webglsettings?: Record<string, unknown>;
  62. webxr?: string;
  63. mobilescale?: number;
  64. touchdevicemousesupport?: boolean;
  65. fakedevice?: string;
  66. passQueryParameters?: boolean;
  67. onready?: (renderer: NativeKrpanoRendererObject) => void;
  68. }
  69. export type EventCallback = (renderer: KrpanoActionProxy) => void;
  70. export interface XMLMeta {
  71. tag: string;
  72. attrs: Record<string, string | number | boolean>;
  73. children?: XMLMeta[];
  74. }
  75. /**
  76. * 旋转方位
  77. */
  78. export declare enum ROTATE_DIRECTION {
  79. UP = "up",
  80. DOWN = "down",
  81. LEFT = "left",
  82. RIGHT = "right"
  83. }
  84. /**
  85. * 缩放动作
  86. */
  87. export declare enum ZOOM_ACTION {
  88. IN = "in",
  89. OUT = "out"
  90. }
  91. //# sourceMappingURL=types.d.ts.map