import { Environment } from '@imtbl/config';
import { ExecuteTransactionStep } from '../types';
export declare enum TransactionMethod {
    APPROVE = "approve(address spender,uint256 amount)",
    EXECUTE = "execute(address multicallSigner, bytes32 reference, address[] targets, bytes[] data, uint256 deadline, bytes signature)"
}
type TransactionRiveAnimationsConfig = {
    url: string;
    stateMachine: string;
    input: string;
    inputValues: Record<string, StateMachineInput>;
};
export declare const getRiveAnimationName: (transactionMethod: TransactionMethod) => "" | "/access_coins.riv" | "/purchasing_items.riv";
export declare enum StateMachineInput {
    START = 0,
    WAITING = 1,
    PROCESSING = 2,
    COMPLETED = 3,
    ERROR = 4
}
export declare const transactionRiveAnimations: Record<TransactionMethod, TransactionRiveAnimationsConfig>;
export declare function useHandoverSteps(environment: Environment): {
    onTxnStepExecuteNextTransaction: (method: string, step: ExecuteTransactionStep) => void;
    onTxnStepExecuteAll: (method: string, step: ExecuteTransactionStep) => void;
};
export {};
