FederatedEvent.d.ts 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. import type { EventService } from '../services';
  2. import { Point } from '../shapes/Point';
  3. import type { IEventTarget } from './interfaces';
  4. export declare function isFederatedEvent(value: any): value is FederatedEvent;
  5. /**
  6. * An DOM-compatible synthetic event implementation that is "forwarded" on behalf of an original
  7. * FederatedEvent or native {@link https://dom.spec.whatwg.org/#event Event}.
  8. */
  9. export declare class FederatedEvent<N extends Event = Event, T = any> {
  10. /**
  11. * The type of event, supports the following:
  12. * * pointerdown
  13. * * touchstart
  14. * * mousedown
  15. * * rightdown
  16. * * ...
  17. */
  18. type: string;
  19. /**
  20. * @deprecated
  21. */
  22. get name(): string;
  23. /**
  24. * The propagation phase.
  25. * @see https://developer.mozilla.org/en-US/docs/Web/API/Event/eventPhase
  26. */
  27. eventPhase: number;
  28. /**
  29. * can be used to implement event delegation
  30. * @see https://developer.mozilla.org/zh-CN/docs/Web/API/Event/target
  31. */
  32. target: IEventTarget | null;
  33. /**
  34. * @see https://developer.mozilla.org/zh-CN/docs/Web/API/Event/bubbles
  35. */
  36. bubbles: boolean;
  37. /**
  38. * @see https://developer.mozilla.org/zh-CN/docs/Web/API/Event/cancelBubble
  39. */
  40. cancelBubble: boolean;
  41. /**
  42. * @see https://developer.mozilla.org/en-US/docs/Web/API/Event/cancelable
  43. */
  44. readonly cancelable = false;
  45. /** the event target when listeners binded */
  46. currentTarget: IEventTarget | null;
  47. /** Flags whether the default response of the user agent was prevent through this event. */
  48. defaultPrevented: boolean;
  49. /**
  50. * timestamp when the event created
  51. * @see https://developer.mozilla.org/zh-CN/docs/Web/API/Event/timeStamp
  52. */
  53. timeStamp: number;
  54. /**
  55. * the original event.
  56. */
  57. nativeEvent: N;
  58. /** The original event that caused this event, if any. */
  59. originalEvent: FederatedEvent<N>;
  60. /** Flags whether propagation was stopped. */
  61. propagationStopped: boolean;
  62. /** Flags whether propagation was immediately stopped. */
  63. propagationImmediatelyStopped: boolean;
  64. manager: EventService | null;
  65. /** Event-specific detail */
  66. detail: T;
  67. /**
  68. * The coordinates of the evnet relative to the nearest DOM layer.
  69. * This is a non-standard property.
  70. */
  71. layer: Point;
  72. get layerX(): number;
  73. get layerY(): number;
  74. /**
  75. * The coordinates of the event relative to the DOM document.
  76. * This is a non-standard property.
  77. * relative to the DOM document.
  78. * @see https://developer.mozilla.org/zh-CN/docs/Web/API/MouseEvent/pageX
  79. */
  80. page: Point;
  81. get pageX(): number;
  82. get pageY(): number;
  83. /**
  84. * relative to Canvas, origin is left-top
  85. */
  86. canvas: Point;
  87. get x(): number;
  88. get y(): number;
  89. get canvasX(): number;
  90. get canvasY(): number;
  91. /**
  92. * relative to Viewport, account for Camera
  93. */
  94. viewport: Point;
  95. get viewportX(): number;
  96. get viewportY(): number;
  97. /**
  98. * The event boundary which manages this event. Propagation can only occur
  99. * within the boundary's jurisdiction.
  100. */
  101. constructor(manager: EventService | null);
  102. path: IEventTarget[];
  103. /**
  104. * The propagation path for this event
  105. * @see https://developer.mozilla.org/zh-CN/docs/Web/API/Event/composedPath
  106. *
  107. * So composedPath()[0] represents the original target.
  108. * @see https://polymer-library.polymer-project.org/3.0/docs/devguide/events#retargeting
  109. */
  110. composedPath(): IEventTarget[];
  111. /**
  112. * @deprecated
  113. */
  114. get propagationPath(): IEventTarget[];
  115. /**
  116. * @see https://developer.mozilla.org/zh-CN/docs/Web/API/Event/preventDefault
  117. */
  118. preventDefault(): void;
  119. /**
  120. * @see https://developer.mozilla.org/zh-CN/docs/Web/API/Event/stopImmediatePropagation
  121. */
  122. stopImmediatePropagation(): void;
  123. /**
  124. * @see https://developer.mozilla.org/zh-CN/docs/Web/API/Event/stopPropagation
  125. */
  126. stopPropagation(): void;
  127. /**
  128. * @see https://developer.mozilla.org/en-US/docs/Web/API/UIEvent/view
  129. */
  130. view: any;
  131. /**
  132. * added for compatibility with DOM Event,
  133. * deprecated props and methods
  134. */
  135. initEvent(): void;
  136. initUIEvent(): void;
  137. which: number;
  138. returnValue: boolean;
  139. srcElement: IEventTarget;
  140. readonly composed = false;
  141. isTrusted: boolean;
  142. clone(): void;
  143. NONE: number;
  144. CAPTURING_PHASE: number;
  145. AT_TARGET: number;
  146. BUBBLING_PHASE: number;
  147. }
  148. //# sourceMappingURL=FederatedEvent.d.ts.map