/** * @license Angular v19.2.13 * (c) 2010-2025 Google LLC. https://angular.io/ * License: MIT */ import * as i0 from '@angular/core'; import { RendererFactory2 } from '@angular/core'; import { AnimationMetadata, AnimationOptions, AnimationPlayer } from './animation_player.d-Dv9iW4uh.js'; export { AUTO_STYLE, AnimateChildOptions, AnimateTimings, AnimationAnimateChildMetadata, AnimationAnimateMetadata, AnimationAnimateRefMetadata, AnimationGroupMetadata, AnimationKeyframesSequenceMetadata, AnimationMetadataType, AnimationQueryMetadata, AnimationQueryOptions, AnimationReferenceMetadata, AnimationSequenceMetadata, AnimationStaggerMetadata, AnimationStateMetadata, AnimationStyleMetadata, AnimationTransitionMetadata, AnimationTriggerMetadata, NoopAnimationPlayer, animate, animateChild, animation, group, keyframes, query, sequence, stagger, state, style, transition, trigger, useAnimation, ɵStyleData, ɵStyleDataMap } from './animation_player.d-Dv9iW4uh.js'; /** * An injectable service that produces an animation sequence programmatically within an * Angular component or directive. * Provided by the `BrowserAnimationsModule` or `NoopAnimationsModule`. * * @usageNotes * * To use this service, add it to your component or directive as a dependency. * The service is instantiated along with your component. * * Apps do not typically need to create their own animation players, but if you * do need to, follow these steps: * * 1. Use the [AnimationBuilder.build](api/animations/AnimationBuilder#build)() method * to create a programmatic animation. The method returns an `AnimationFactory` instance. * * 2. Use the factory object to create an `AnimationPlayer` and attach it to a DOM element. * * 3. Use the player object to control the animation programmatically. * * For example: * * ```ts * // import the service from BrowserAnimationsModule * import {AnimationBuilder} from '@angular/animations'; * // require the service as a dependency * class MyCmp { * constructor(private _builder: AnimationBuilder) {} * * makeAnimation(element: any) { * // first define a reusable animation * const myAnimation = this._builder.build([ * style({ width: 0 }), * animate(1000, style({ width: '100px' })) * ]); * * // use the returned factory object to create a player * const player = myAnimation.create(element); * * player.play(); * } * } * ``` * * @publicApi */ declare abstract class AnimationBuilder { /** * Builds a factory for producing a defined animation. * @param animation A reusable animation definition. * @returns A factory object that can create a player for the defined animation. * @see {@link animate} */ abstract build(animation: AnimationMetadata | AnimationMetadata[]): AnimationFactory; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * A factory object returned from the * [AnimationBuilder.build](api/animations/AnimationBuilder#build)() * method. * * @publicApi */ declare abstract class AnimationFactory { /** * Creates an `AnimationPlayer` instance for the reusable animation defined by * the [AnimationBuilder.build](api/animations/AnimationBuilder#build)() * method that created this factory and attaches the new player a DOM element. * * @param element The DOM element to which to attach the player. * @param options A set of options that can include a time delay and * additional developer-defined parameters. */ abstract create(element: any, options?: AnimationOptions): AnimationPlayer; } declare class BrowserAnimationBuilder extends AnimationBuilder { private animationModuleType; private _nextAnimationId; private _renderer; constructor(rootRenderer: RendererFactory2, doc: Document); build(animation: AnimationMetadata | AnimationMetadata[]): AnimationFactory; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * An instance of this class is returned as an event parameter when an animation * callback is captured for an animation either during the start or done phase. * * ```ts * @Component({ * host: { * '[@myAnimationTrigger]': 'someExpression', * '(@myAnimationTrigger.start)': 'captureStartEvent($event)', * '(@myAnimationTrigger.done)': 'captureDoneEvent($event)', * }, * animations: [ * trigger("myAnimationTrigger", [ * // ... * ]) * ] * }) * class MyComponent { * someExpression: any = false; * captureStartEvent(event: AnimationEvent) { * // the toState, fromState and totalTime data is accessible from the event variable * } * * captureDoneEvent(event: AnimationEvent) { * // the toState, fromState and totalTime data is accessible from the event variable * } * } * ``` * * @publicApi */ interface AnimationEvent { /** * The name of the state from which the animation is triggered. */ fromState: string; /** * The name of the state in which the animation completes. */ toState: string; /** * The time it takes the animation to complete, in milliseconds. */ totalTime: number; /** * The animation phase in which the callback was invoked, one of * "start" or "done". */ phaseName: string; /** * The element to which the animation is attached. */ element: any; /** * Internal. */ triggerName: string; /** * Internal. */ disabled: boolean; } /** * The list of error codes used in runtime code of the `animations` package. * Reserved error code range: 3000-3999. */ declare const enum RuntimeErrorCode { INVALID_TIMING_VALUE = 3000, INVALID_STYLE_PARAMS = 3001, INVALID_STYLE_VALUE = 3002, INVALID_PARAM_VALUE = 3003, INVALID_NODE_TYPE = 3004, INVALID_CSS_UNIT_VALUE = 3005, INVALID_TRIGGER = 3006, INVALID_DEFINITION = 3007, INVALID_STATE = 3008, INVALID_PROPERTY = 3009, INVALID_PARALLEL_ANIMATION = 3010, INVALID_KEYFRAMES = 3011, INVALID_OFFSET = 3012, INVALID_STAGGER = 3013, INVALID_QUERY = 3014, INVALID_EXPRESSION = 3015, INVALID_TRANSITION_ALIAS = 3016, NEGATIVE_STEP_VALUE = 3100, NEGATIVE_DELAY_VALUE = 3101, KEYFRAME_OFFSETS_OUT_OF_ORDER = 3200, KEYFRAMES_MISSING_OFFSETS = 3202, MISSING_OR_DESTROYED_ANIMATION = 3300, MISSING_PLAYER = 3301, MISSING_TRIGGER = 3302, MISSING_EVENT = 3303, UNSUPPORTED_TRIGGER_EVENT = 3400, UNREGISTERED_TRIGGER = 3401, TRIGGER_TRANSITIONS_FAILED = 3402, TRIGGER_PARSING_FAILED = 3403, TRIGGER_BUILD_FAILED = 3404, VALIDATION_FAILED = 3500, BUILDING_FAILED = 3501, ANIMATION_FAILED = 3502, REGISTRATION_FAILED = 3503, CREATE_ANIMATION_FAILED = 3504, TRANSITION_FAILED = 3505, BROWSER_ANIMATION_BUILDER_INJECTED_WITHOUT_ANIMATIONS = 3600 } /** * A programmatic controller for a group of reusable animations. * Used internally to control animations. * * @see {@link AnimationPlayer} * @see {@link animations/group group} * */ declare class AnimationGroupPlayer implements AnimationPlayer { private _onDoneFns; private _onStartFns; private _finished; private _started; private _destroyed; private _onDestroyFns; parentPlayer: AnimationPlayer | null; totalTime: number; readonly players: AnimationPlayer[]; constructor(_players: AnimationPlayer[]); private _onFinish; init(): void; onStart(fn: () => void): void; private _onStart; onDone(fn: () => void): void; onDestroy(fn: () => void): void; hasStarted(): boolean; play(): void; pause(): void; restart(): void; finish(): void; destroy(): void; private _onDestroy; reset(): void; setPosition(p: number): void; getPosition(): number; beforeDestroy(): void; } declare const ɵPRE_STYLE = "!"; export { AnimationBuilder, AnimationFactory, AnimationMetadata, AnimationOptions, AnimationPlayer, AnimationGroupPlayer as ɵAnimationGroupPlayer, BrowserAnimationBuilder as ɵBrowserAnimationBuilder, ɵPRE_STYLE, RuntimeErrorCode as ɵRuntimeErrorCode }; export type { AnimationEvent };