Animation.d.ts 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. import type { IAnimation } from '@antv/g-lite';
  2. import type { AnimationTimeline } from './AnimationTimeline';
  3. import type { KeyframeEffect } from './KeyframeEffect';
  4. /**
  5. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/Animation
  6. */
  7. export declare class Animation implements IAnimation {
  8. /**
  9. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/effect
  10. */
  11. effect: KeyframeEffect;
  12. /**
  13. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/timeline
  14. */
  15. timeline: AnimationTimeline;
  16. /**
  17. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/id
  18. */
  19. id: string;
  20. /**
  21. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/pending
  22. */
  23. get pending(): boolean;
  24. private currentTimePending;
  25. /**
  26. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/playState
  27. */
  28. private _idle;
  29. private _paused;
  30. private _finishedFlag;
  31. get playState(): AnimationPlayState;
  32. /**
  33. * record previos state
  34. */
  35. private oldPlayState;
  36. private _holdTime;
  37. private readyPromise;
  38. private finishedPromise;
  39. private resolveReadyPromise;
  40. private rejectReadyPromise;
  41. private resolveFinishedPromise;
  42. private rejectFinishedPromise;
  43. /**
  44. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/ready
  45. * @example
  46. animation.pause();
  47. animation.ready.then(function() {
  48. // Displays 'running'
  49. alert(animation.playState);
  50. });
  51. animation.play();
  52. */
  53. get ready(): Promise<any>;
  54. /**
  55. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/finished
  56. * @example
  57. Promise.all(
  58. elem.getAnimations().map(
  59. function(animation) {
  60. return animation.finished
  61. }
  62. )
  63. ).then(
  64. function() {
  65. return elem.remove();
  66. }
  67. );
  68. */
  69. get finished(): Promise<any>;
  70. /**
  71. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/onfinish
  72. */
  73. onfinish: ((this: Animation, ev: AnimationPlaybackEvent) => any) | null;
  74. /**
  75. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/oncancel
  76. */
  77. oncancel: ((this: Animation, ev: AnimationPlaybackEvent) => any) | null;
  78. /**
  79. * get called after each frame when running
  80. */
  81. onframe: ((this: Animation, ev: AnimationPlaybackEvent) => any) | null;
  82. /**
  83. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/currentTime
  84. */
  85. private _currentTime;
  86. get currentTime(): number | null;
  87. set currentTime(newTime: number | null);
  88. /**
  89. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/startTime
  90. */
  91. private _startTime;
  92. get startTime(): number | null;
  93. set startTime(newTime: number | null);
  94. private _playbackRate;
  95. get playbackRate(): number;
  96. set playbackRate(value: number);
  97. get _isFinished(): boolean;
  98. _totalDuration: number;
  99. get totalDuration(): number;
  100. _inEffect: boolean;
  101. _inTimeline: boolean;
  102. get _needsTick(): boolean;
  103. constructor(effect: KeyframeEffect, timeline: AnimationTimeline);
  104. /**
  105. * state machine,
  106. * resolve/reject ready/finished Promise according to current state
  107. */
  108. updatePromises(): Promise<any>;
  109. play(): void;
  110. pause(): void;
  111. finish(): void;
  112. cancel(): void;
  113. reverse(): void;
  114. /**
  115. * @see https://developer.mozilla.org/en-US/docs/Web/API/Animation/updatePlaybackRate
  116. */
  117. updatePlaybackRate(playbackRate: number): void;
  118. targetAnimations(): IAnimation[];
  119. markTarget(): void;
  120. unmarkTarget(): void;
  121. tick(timelineTime: number, isAnimationFrame: boolean): void;
  122. private rewind;
  123. persist(): void;
  124. addEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: Animation, ev: AnimationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
  125. addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
  126. removeEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: Animation, ev: AnimationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
  127. removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
  128. dispatchEvent(event: Event): boolean;
  129. onremove: ((this: Animation, ev: Event) => any) | null;
  130. commitStyles(): void;
  131. private ensureAlive;
  132. private tickCurrentTime;
  133. private fireEvents;
  134. }
  135. //# sourceMappingURL=Animation.d.ts.map