import { Skeleton } from '../data/Skeleton';
import { SkeletonPose } from '../data/SkeletonPose';
import { SkeletonClipNode } from '../nodes/SkeletonClipNode';
import { AnimationClipState } from './AnimationClipState';
import { ISkeletonAnimationState } from './ISkeletonAnimationState';
import { AnimatorBase } from '../AnimatorBase';
/**
 *
 */
export declare class SkeletonClipState extends AnimationClipState implements ISkeletonAnimationState {
    private _rootPos;
    private _frames;
    private _skeletonClipNode;
    private _skeletonPose;
    private _skeletonPoseDirty;
    private _currentPose;
    private _nextPose;
    /**
     * Returns the current skeleton pose frame of animation in the clip based on the internal playhead position.
     */
    get currentPose(): SkeletonPose;
    /**
     * Returns the next skeleton pose frame of animation in the clip based on the internal playhead position.
     */
    get nextPose(): SkeletonPose;
    constructor(animator: AnimatorBase, skeletonClipNode: SkeletonClipNode);
    /**
     * Returns the current skeleton pose of the animation in the clip based on the internal playhead position.
     */
    getSkeletonPose(skeleton: Skeleton): SkeletonPose;
    /**
     * @inheritDoc
     */
    _pUpdateTime(time: number): void;
    /**
     * @inheritDoc
     */
    _pUpdateFrames(): void;
    /**
     * Updates the output skeleton pose of the node based on the internal playhead position.
     *
     * @param skeleton The skeleton used by the animator requesting the ouput pose.
     */
    private updateSkeletonPose;
    /**
     * @inheritDoc
     */
    _pUpdatePositionDelta(): void;
}
//# sourceMappingURL=SkeletonClipState.d.ts.map