import { Base, Type } from "./type";
import { KeyFrameAnimationTimeline } from "./KeyFrameAnimationTimeline";
import { DomRenderer } from "./dom";
import { ITickProvider } from "./ITickProvider";
import { IExecutionContext } from "./IExecutionContext";
import { IKeyFrameAnimation } from "./IKeyFrameAnimation";
import { AnimationKeyFrameEffect } from "./AnimationKeyFrameEffect";
/**
 * @hidden
 */
export declare abstract class KeyFrameAnimationFactory extends Base {
    static $t: Type;
    private static e;
    static get f(): KeyFrameAnimationFactory;
    static h: DomRenderer;
    private a;
    c(a: AnimationKeyFrameEffect): IKeyFrameAnimation;
    g: KeyFrameAnimationTimeline;
    abstract get d(): ITickProvider;
    abstract get b(): IExecutionContext;
}
/**
 * @hidden
 */
export declare class PlatformKeyFrameAnimationFactory extends KeyFrameAnimationFactory {
    static $t: Type;
    constructor(a: DomRenderer);
    private j;
    protected get_d(): ITickProvider;
    get d(): ITickProvider;
    private i;
    protected get_b(): IExecutionContext;
    get b(): IExecutionContext;
}
