import type { ExecutionContext, TypedExecutionContext } from '../../types/core';
import type { ASTNode, ExpressionNode } from '../../types/base-types';
import type { ExpressionEvaluator } from '../../core/expression-evaluator';
import { type DecoratedCommand, type CommandMetadata } from '../decorators';
export interface TransitionCommandInput {
    target?: string | HTMLElement;
    property: string;
    value: string | number;
    duration?: number | string;
    timingFunction?: string;
}
export interface TransitionCommandOutput {
    element: HTMLElement;
    property: string;
    fromValue: string;
    toValue: string;
    duration: number;
    completed: boolean;
}
export declare class TransitionCommand implements DecoratedCommand {
    readonly name: string;
    readonly metadata: CommandMetadata;
    parseInput(raw: {
        args: ASTNode[];
        modifiers: Record<string, ExpressionNode>;
    }, evaluator: ExpressionEvaluator, context: ExecutionContext): Promise<TransitionCommandInput>;
    execute(input: TransitionCommandInput, context: TypedExecutionContext): Promise<TransitionCommandOutput>;
}
export declare const createTransitionCommand: () => TransitionCommand;
export default TransitionCommand;
//# sourceMappingURL=transition.d.ts.map