import { type AsyncDirectiveArgs, AsyncDirectiveBase } from '../../Controls/Directives/Abstracts/AsyncDirectiveBase';
import type { IAnimateOptions } from './IAnimateOptions';
export interface IAnimationRef {
    play: (options: IAnimateOptions) => Promise<AnimationPlaybackEvent>;
}
export declare function isAnimationRef(value: any): value is IAnimationRef;
/**
 * The `AnimateDirective` class.
 *
 * @public
 */
export declare class AnimationRefDirective extends AsyncDirectiveBase {
    private readonly _animationPlayer;
    /**
     * Constructs a new instance of the `AnimateDirective` class.
     *
     * @public
     */
    constructor(args: AsyncDirectiveArgs);
    render(cb: (ref: IAnimationRef) => void): unknown;
}
export declare const animationRef: (...values: Parameters<AnimationRefDirective["render"]>) => any;
//# sourceMappingURL=AnimationRefDirective.d.ts.map