UNPKG

11.5 kBTypeScriptView Raw
1/**
2 * @license Angular v9.0.1
3 * (c) 2010-2020 Google LLC. https://angular.io/
4 * License: MIT
5 */
6
7import { AnimationMetadata } from '@angular/animations';
8import { AnimationOptions } from '@angular/animations';
9import { AnimationPlayer } from '@angular/animations';
10import { AnimationTriggerMetadata } from '@angular/animations';
11import { ɵStyleData } from '@angular/animations';
12
13/**
14 * @publicApi
15 */
16declare abstract class AnimationDriver {
17 static NOOP: AnimationDriver;
18 abstract validateStyleProperty(prop: string): boolean;
19 abstract matchesElement(element: any, selector: string): boolean;
20 abstract containsElement(elm1: any, elm2: any): boolean;
21 abstract query(element: any, selector: string, multi: boolean): any[];
22 abstract computeStyle(element: any, prop: string, defaultValue?: string): string;
23 abstract animate(element: any, keyframes: {
24 [key: string]: string | number;
25 }[], duration: number, delay: number, easing?: string | null, previousPlayers?: any[], scrubberAccessRequested?: boolean): any;
26}
27export { AnimationDriver }
28export { AnimationDriver as ɵAnimationDriver }
29
30declare interface AnimationEngineInstruction {
31 type: AnimationTransitionInstructionType;
32}
33
34declare interface AnimationTimelineInstruction extends AnimationEngineInstruction {
35 element: any;
36 keyframes: ɵStyleData[];
37 preStyleProps: string[];
38 postStyleProps: string[];
39 duration: number;
40 delay: number;
41 totalTime: number;
42 easing: string | null;
43 stretchStartingKeyframe?: boolean;
44 subTimeline: boolean;
45}
46
47
48declare const enum AnimationTransitionInstructionType {
49 TransitionAnimation = 0,
50 TimelineAnimation = 1
51}
52
53
54/**
55 * DOMAnimation represents the Animation Web API.
56 *
57 * It is an external API by the browser, and must thus use "declare interface",
58 * to prevent renaming by Closure Compiler.
59 *
60 * @see https://developer.mozilla.org/de/docs/Web/API/Animation
61 */
62declare interface DOMAnimation {
63 cancel(): void;
64 play(): void;
65 pause(): void;
66 finish(): void;
67 onfinish: Function;
68 position: number;
69 currentTime: number;
70 addEventListener(eventName: string, handler: (event: any) => any): any;
71 dispatchEvent(eventName: string): any;
72}
73
74declare class ElementInstructionMap {
75 private _map;
76 consume(element: any): AnimationTimelineInstruction[];
77 append(element: any, instructions: AnimationTimelineInstruction[]): void;
78 has(element: any): boolean;
79 clear(): void;
80}
81
82export declare function ɵallowPreviousPlayerStylesMerge(duration: number, delay: number): boolean;
83
84/**
85 * Designed to be executed during a keyframe-based animation to apply any special-cased styles.
86 *
87 * When started (when the `start()` method is run) then the provided `startStyles`
88 * will be applied. When finished (when the `finish()` method is called) the
89 * `endStyles` will be applied as well any any starting styles. Finally when
90 * `destroy()` is called then all styles will be removed.
91 */
92export declare class ɵangular_packages_animations_browser_browser_a {
93 private _element;
94 private _startStyles;
95 private _endStyles;
96 static initialStylesByElement: WeakMap<any, {
97 [key: string]: any;
98 }>;
99 private _state;
100 private _initialStyles;
101 constructor(_element: any, _startStyles: {
102 [key: string]: any;
103 } | null, _endStyles: {
104 [key: string]: any;
105 } | null);
106 start(): void;
107 finish(): void;
108 destroy(): void;
109}
110
111export declare class ɵAnimation {
112 private _driver;
113 private _animationAst;
114 constructor(_driver: AnimationDriver, input: AnimationMetadata | AnimationMetadata[]);
115 buildTimelines(element: any, startingStyles: ɵStyleData | ɵStyleData[], destinationStyles: ɵStyleData | ɵStyleData[], options: AnimationOptions, subInstructions?: ElementInstructionMap): AnimationTimelineInstruction[];
116}
117
118export declare class ɵAnimationEngine {
119 private bodyNode;
120 private _driver;
121 private _transitionEngine;
122 private _timelineEngine;
123 private _triggerCache;
124 onRemovalComplete: (element: any, context: any) => void;
125 constructor(bodyNode: any, _driver: AnimationDriver, normalizer: ɵAnimationStyleNormalizer);
126 registerTrigger(componentId: string, namespaceId: string, hostElement: any, name: string, metadata: AnimationTriggerMetadata): void;
127 register(namespaceId: string, hostElement: any): void;
128 destroy(namespaceId: string, context: any): void;
129 onInsert(namespaceId: string, element: any, parent: any, insertBefore: boolean): void;
130 onRemove(namespaceId: string, element: any, context: any, isHostElement?: boolean): void;
131 disableAnimations(element: any, disable: boolean): void;
132 process(namespaceId: string, element: any, property: string, value: any): void;
133 listen(namespaceId: string, element: any, eventName: string, eventPhase: string, callback: (event: any) => any): () => any;
134 flush(microtaskId?: number): void;
135 get players(): AnimationPlayer[];
136 whenRenderingDone(): Promise<any>;
137}
138
139
140/**
141 * @publicApi
142 */
143export declare abstract class ɵAnimationStyleNormalizer {
144 abstract normalizePropertyName(propertyName: string, errors: string[]): string;
145 abstract normalizeStyleValue(userProvidedProperty: string, normalizedProperty: string, value: string | number, errors: string[]): string;
146}
147
148export declare const ɵcontainsElement: (elm1: any, elm2: any) => boolean;
149
150export declare class ɵCssKeyframesDriver implements AnimationDriver {
151 private _count;
152 private readonly _head;
153 private _warningIssued;
154 validateStyleProperty(prop: string): boolean;
155 matchesElement(element: any, selector: string): boolean;
156 containsElement(elm1: any, elm2: any): boolean;
157 query(element: any, selector: string, multi: boolean): any[];
158 computeStyle(element: any, prop: string, defaultValue?: string): string;
159 buildKeyframeElement(element: any, name: string, keyframes: {
160 [key: string]: any;
161 }[]): any;
162 animate(element: any, keyframes: ɵStyleData[], duration: number, delay: number, easing: string, previousPlayers?: AnimationPlayer[], scrubberAccessRequested?: boolean): AnimationPlayer;
163 private _notifyFaultyScrubber;
164}
165
166export declare class ɵCssKeyframesPlayer implements AnimationPlayer {
167 readonly element: any;
168 readonly keyframes: {
169 [key: string]: string | number;
170 }[];
171 readonly animationName: string;
172 private readonly _duration;
173 private readonly _delay;
174 private readonly _finalStyles;
175 private readonly _specialStyles?;
176 private _onDoneFns;
177 private _onStartFns;
178 private _onDestroyFns;
179 private _started;
180 private _styler;
181 parentPlayer: AnimationPlayer;
182 readonly totalTime: number;
183 readonly easing: string;
184 currentSnapshot: {
185 [key: string]: string;
186 };
187 private _state;
188 constructor(element: any, keyframes: {
189 [key: string]: string | number;
190 }[], animationName: string, _duration: number, _delay: number, easing: string, _finalStyles: {
191 [key: string]: any;
192 }, _specialStyles?: ɵangular_packages_animations_browser_browser_a | null | undefined);
193 onStart(fn: () => void): void;
194 onDone(fn: () => void): void;
195 onDestroy(fn: () => void): void;
196 destroy(): void;
197 private _flushDoneFns;
198 private _flushStartFns;
199 finish(): void;
200 setPosition(value: number): void;
201 getPosition(): number;
202 hasStarted(): boolean;
203 init(): void;
204 play(): void;
205 pause(): void;
206 restart(): void;
207 reset(): void;
208 private _buildStyler;
209 beforeDestroy(): void;
210}
211
212export declare const ɵinvokeQuery: (element: any, selector: string, multi: boolean) => any[];
213
214export declare const ɵmatchesElement: (element: any, selector: string) => boolean;
215
216/**
217 * @publicApi
218 */
219export declare class ɵNoopAnimationDriver implements AnimationDriver {
220 validateStyleProperty(prop: string): boolean;
221 matchesElement(element: any, selector: string): boolean;
222 containsElement(elm1: any, elm2: any): boolean;
223 query(element: any, selector: string, multi: boolean): any[];
224 computeStyle(element: any, prop: string, defaultValue?: string): string;
225 animate(element: any, keyframes: {
226 [key: string]: string | number;
227 }[], duration: number, delay: number, easing: string, previousPlayers?: any[], scrubberAccessRequested?: boolean): AnimationPlayer;
228}
229
230/**
231 * @publicApi
232 */
233export declare class ɵNoopAnimationStyleNormalizer {
234 normalizePropertyName(propertyName: string, errors: string[]): string;
235 normalizeStyleValue(userProvidedProperty: string, normalizedProperty: string, value: string | number, errors: string[]): string;
236}
237
238export declare function ɵsupportsWebAnimations(): boolean;
239
240export declare function ɵvalidateStyleProperty(prop: string): boolean;
241
242export declare class ɵWebAnimationsDriver implements AnimationDriver {
243 private _isNativeImpl;
244 private _cssKeyframesDriver;
245 validateStyleProperty(prop: string): boolean;
246 matchesElement(element: any, selector: string): boolean;
247 containsElement(elm1: any, elm2: any): boolean;
248 query(element: any, selector: string, multi: boolean): any[];
249 computeStyle(element: any, prop: string, defaultValue?: string): string;
250 overrideWebAnimationsSupport(supported: boolean): void;
251 animate(element: any, keyframes: ɵStyleData[], duration: number, delay: number, easing: string, previousPlayers?: AnimationPlayer[], scrubberAccessRequested?: boolean): AnimationPlayer;
252}
253
254export declare class ɵWebAnimationsPlayer implements AnimationPlayer {
255 element: any;
256 keyframes: {
257 [key: string]: string | number;
258 }[];
259 options: {
260 [key: string]: string | number;
261 };
262 private _specialStyles?;
263 private _onDoneFns;
264 private _onStartFns;
265 private _onDestroyFns;
266 private _duration;
267 private _delay;
268 private _initialized;
269 private _finished;
270 private _started;
271 private _destroyed;
272 private _finalKeyframe;
273 readonly domPlayer: DOMAnimation;
274 time: number;
275 parentPlayer: AnimationPlayer | null;
276 currentSnapshot: {
277 [styleName: string]: string | number;
278 };
279 constructor(element: any, keyframes: {
280 [key: string]: string | number;
281 }[], options: {
282 [key: string]: string | number;
283 }, _specialStyles?: ɵangular_packages_animations_browser_browser_a | null | undefined);
284 private _onFinish;
285 init(): void;
286 private _buildPlayer;
287 private _preparePlayerBeforeStart;
288 onStart(fn: () => void): void;
289 onDone(fn: () => void): void;
290 onDestroy(fn: () => void): void;
291 play(): void;
292 pause(): void;
293 finish(): void;
294 reset(): void;
295 private _resetDomPlayerState;
296 restart(): void;
297 hasStarted(): boolean;
298 destroy(): void;
299 setPosition(p: number): void;
300 getPosition(): number;
301 get totalTime(): number;
302 beforeDestroy(): void;
303}
304
305export declare class ɵWebAnimationsStyleNormalizer extends ɵAnimationStyleNormalizer {
306 normalizePropertyName(propertyName: string, errors: string[]): string;
307 normalizeStyleValue(userProvidedProperty: string, normalizedProperty: string, value: string | number, errors: string[]): string;
308}
309
310export { }