web.d.ts 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. interface AbortSignal extends EventTarget {}
  2. export interface EventOptions {
  3. bubbles?: boolean
  4. cancelable?: boolean
  5. composed?: boolean
  6. }
  7. export interface Event {
  8. readonly type: string
  9. readonly target: EventTarget | null
  10. readonly currentTarget: EventTarget | null
  11. readonly bubbles: boolean
  12. readonly cancelable: boolean
  13. readonly composed: boolean
  14. readonly defaultPrevented: boolean
  15. readonly isTrusted: boolean
  16. preventDefault(): void
  17. stopPropagation(): void
  18. stopImmediatePropagation(): void
  19. }
  20. export class Event {
  21. constructor(type: string, options?: EventOptions)
  22. }
  23. export interface CustomEventOptions<T = any> extends EventOptions {
  24. detail?: T
  25. }
  26. export interface CustomEvent<T = any> extends Event {
  27. readonly detail: T
  28. }
  29. export class CustomEvent<T = any> {
  30. constructor(type: string, options?: CustomEventOptions<T>)
  31. }
  32. export interface AddEventListenerOptions {
  33. capture?: boolean
  34. passive?: boolean
  35. once?: boolean
  36. signal?: AbortSignal | null
  37. }
  38. export interface RemoveEventListenerOptions {
  39. capture?: boolean
  40. }
  41. export interface EventTarget {
  42. addEventListener(
  43. type: string,
  44. callback: EventListener,
  45. options?: AddEventListenerOptions | boolean
  46. ): void
  47. removeEventListener(
  48. type: string,
  49. callback: EventListener,
  50. options?: RemoveEventListenerOptions | boolean
  51. ): void
  52. dispatchEvent(event: Event): boolean
  53. }
  54. export class EventTarget {
  55. constructor()
  56. }
  57. export type EventListener = EventCallback | EventHandler
  58. export interface EventCallback {
  59. (event: Event): void
  60. }
  61. export interface EventHandler {
  62. handleEvent(event: Event): void
  63. }