@teamhive/lottie-player
Version:
Lottie animation web component.
131 lines (130 loc) • 2.95 kB
TypeScript
import { EventEmitter } from '../../stencil.core';
import { PlayerState } from '../../utils/player-state';
import { PlayMode } from '../../utils/player-mode';
export declare class LottiePlayer {
container: HTMLElement;
/**
* Play mode.
*/
mode: PlayMode;
/**
* Autoplay animation on load
*/
autoplay: boolean;
/**
* Background color.
*/
background?: string;
/**
* Show controls.
*/
controls: boolean;
/**
* Number of times to loop animation.
*/
count?: number;
/**
* Direction of animation
*/
direction: number;
/**
* Whether to play on mouse hover
*/
hover: boolean;
/**
* Whether to loop animation
*/
loop: boolean;
/**
* Renderer to use.
*/
renderer: 'svg';
/**
* Animation speed.
*/
speed: number;
/**
* Bodymovin JSON data or URL to json.
*/
src?: string;
/**
* Player state.
*/
currentState: PlayerState;
seeker: any;
intermission: number;
error: EventEmitter;
frame: EventEmitter;
complete: EventEmitter;
looped: EventEmitter;
ready: EventEmitter;
loaded: EventEmitter;
playing: EventEmitter;
paused: EventEmitter;
stopped: EventEmitter;
freezed: EventEmitter;
private _io?;
private _lottie?;
private _prevState?;
private _counter;
componentDidLoad(): void;
load(src: string | object): void;
/**
* Start playing animation.
*/
play(): Promise<void>;
/**
* Stop playing animation.
*/
pause(): Promise<void>;
/**
* Stops animation play.
*/
stop(): Promise<void>;
/**
* Seek to a given frame.
*/
seek(value: number | string): Promise<void>;
/**
* Freeze animation play.
* This internal state pauses animation and is used to differentiate between
* user requested pauses and component instigated pauses.
*/
freeze(): void;
getLottie(): Promise<any>;
/**
* Sets animation play speed
* @param value Playback speed.
*/
setSpeed(value?: number): Promise<void>;
/**
* Animation play direction.
* @param value Direction values.
*/
setDirection(value: number): Promise<void>;
/**
* Sets the looping of the animation.
*
* @param value Whether to enable looping. Boolean true enables looping.
*/
setLooping(value: boolean): Promise<void>;
/**
* Toggle playing state.
*/
togglePlay(): Promise<void>;
/**
* Toggles animation looping.
*/
toggleLooping(): Promise<void>;
renderButtonIcon(isPlaying: any): any;
renderControls(): any;
render(): any;
/**
* Handle visibility change events.
*/
private onVisibilityChange;
/**
* Handles click and drag actions on the progress track.
*/
private handleSeekChange;
}