import { type Address, type FullContractState, type ProviderRpcClient } from 'everscale-inpage-provider';
export interface TokenTransferEvmTvmEventVoteData {
    eventBlock: number;
    eventBlockNumber: number;
    eventData: string;
    eventIndex: number;
    eventTransaction: string;
}
export interface TokenTransferEvmTvmEventDecodedData {
    addr: string;
    ownerAddress: Address;
    tokens: string;
    wid: string;
}
export interface TokenTransferEvmTvmEventEventInitData {
    chainId: string;
    configuration: Address;
    staking: Address;
    voteData: TokenTransferEvmTvmEventVoteData;
}
export declare enum TokenTransferEvmTvmStatus {
    Initializing = "0",
    Pending = "1",
    Confirmed = "2",
    Rejected = "3"
}
export interface TokenTransferEvmTvmDetails {
    balance: string;
    confirms: string[];
    empty: string[];
    eventInitData: TokenTransferEvmTvmEventEventInitData;
    initializer: Address;
    meta: string;
    rejects: string[];
    requiredVotes: number;
    status: TokenTransferEvmTvmStatus;
}
/**
 * @deprecated Use EvmTvmBaseEventUtils instead
 */
export declare abstract class TokenTransferEvmTvmEventUtils {
    static getEventInitData(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<TokenTransferEvmTvmEventEventInitData>;
    static getDecodedData(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<TokenTransferEvmTvmEventDecodedData>;
    static getDetails(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<TokenTransferEvmTvmDetails>;
    static roundNumber(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<number>;
}
