1 | import * as React from 'react';
|
2 |
|
3 | export type Easing =
|
4 | 'easeInSine' |
|
5 | 'easeOutSine' |
|
6 | 'easeInOutSine' |
|
7 | 'easeInCirc' |
|
8 | 'easeOutCirc' |
|
9 | 'easeInOutCirc' |
|
10 | 'easeInElastic' |
|
11 | 'easeOutElastic' |
|
12 | 'easeInOutElastic' |
|
13 | 'easeInBack' |
|
14 | 'easeOutBack' |
|
15 | 'easeInOutBack' |
|
16 | 'easeInBounce' |
|
17 | 'easeOutBounce' |
|
18 | 'easeInOutBounce' |
|
19 | 'easeInQuad' |
|
20 | 'easeOutQuad' |
|
21 | 'easeInOutQuad' |
|
22 | 'easeInCubic' |
|
23 | 'easeOutCubic' |
|
24 | 'easeInOutCubic' |
|
25 | 'easeInQuart' |
|
26 | 'easeOutQuart' |
|
27 | 'easeInOutQuart' |
|
28 | 'easeInQuint' |
|
29 | 'easeOutQuint' |
|
30 | 'easeInOutQuint' |
|
31 | 'easeInExpo' |
|
32 | 'easeOutExpo' |
|
33 | 'easeInOutExpo' |
|
34 | 'linear' |
|
35 | [number, number, number, number];
|
36 |
|
37 | export type AnimeValue =
|
38 | {
|
39 | value: string | number,
|
40 | delay: ((el: Element, index?: number, len?: number) => number) | number,
|
41 | duration?: ((el: Element, index?: number, len?: number) => number) | number,
|
42 | easing?: Easing
|
43 | } |
|
44 | string |
|
45 | number |
|
46 | ((el: Element, index?: number) => string | number);
|
47 |
|
48 | export type AnimeProps = {
|
49 | children: any[],
|
50 | delay?: ((el: Element, index?: number, len?: number) => number) | number,
|
51 | duration?: ((el: Element, index?: number, len?: number) => number) | number,
|
52 | autoplay?: boolean,
|
53 | loop?: number | boolean,
|
54 | direction?: 'normal' | 'reverse' | 'alternate';
|
55 | easing?: Easing,
|
56 | elasticity?: number,
|
57 | round?: number | boolean,
|
58 | begin?: Function,
|
59 | update?: Function,
|
60 | complete?: Function,
|
61 |
|
62 | // DOM
|
63 | value: AnimeValue | AnimeValue[],
|
64 |
|
65 |
|
66 | // Transformations
|
67 | translateX: AnimeValue | AnimeValue[],
|
68 | translateY: AnimeValue | AnimeValue[],
|
69 | rotate: AnimeValue | AnimeValue[],
|
70 | scale: AnimeValue | AnimeValue[],
|
71 |
|
72 | // CSS
|
73 | opacity: AnimeValue | AnimeValue[],
|
74 | color: AnimeValue | AnimeValue[],
|
75 | backgroundColor: AnimeValue | AnimeValue[],
|
76 |
|
77 | //SVG
|
78 | points: AnimeValue | AnimeValue[],
|
79 | strokeDashoffset: AnimeValue | AnimeValue[],
|
80 |
|
81 | // Custom Props
|
82 | [prop: string]: any
|
83 |
|
84 | }
|
85 |
|
86 | declare class Anime extends React.Component<AnimeProps, any> { }
|
87 |
|
88 | export default Anime;
|
89 |
|
\ | No newline at end of file |