import * as PIXI from 'pixi.js'; declare type Erp = (start: T, end: T, t: number, into?: T) => T; /** * Holds the information needed to perform a tweening operation. It is used internally * by `PUXI.tween.TweenManager`. * * @memberof PUXI.tween * @class * @template T */ declare class TweenContext extends PIXI.utils.EventEmitter { startValue: T; endValue: T; erp: Erp; startTime: DOMHighResTimeStamp; endTime: DOMHighResTimeStamp; key: number; observedValue: T; constructor(key?: number, startValue?: T, endValue?: T, erp?: Erp, observedValue?: T, startTime?: DOMHighResTimeStamp, endTime?: DOMHighResTimeStamp); /** * Updates the observed value. * * @param {DOMHighResTimeStamp} t - current time */ update(t?: DOMHighResTimeStamp): void; /** * Fired whenever the observed value is updated. * @event update * @param {T} observedValue * @param {number} key */ /** * Fired when tween has finished. References to this tween should be removed. * @event complete * @param {TweenContext} cxt */ /** * Used for pooling. * @member {Array} * @static */ static pool: Array>; } /** * @memberof PUXI.tween * @class */ export declare class TweenManager { tweenMap: Map>; private isRunning; constructor(autoStart?: boolean); addTween(startValue: T, endValue: T, erp: Erp, startTime: DOMHighResTimeStamp, endTime: DOMHighResTimeStamp): TweenContext; start(): void; stop(): void; onUpdate(): void; protected onTweenComplete(cxt: TweenContext): void; } export { }