import { type Address, type FullContractState, type ProviderRpcClient } from 'everscale-inpage-provider';
export interface TvmEvmEventNativeVoteData {
    eventData: string;
    eventTimestamp: number;
    eventTransactionLt: string;
}
export interface TvmEvmEventNativeDecodedData {
    amount: string;
    callback: {
        payload: string;
        recipient: string;
        strict: boolean;
    };
    chainId: string;
    decimals: number;
    name: string;
    proxyAddress: Address;
    recipientAddress: string;
    remainingGasTo: Address;
    symbol: string;
    tokenAddress: Address;
    tokenWalletAddress: Address;
}
export interface TvmEvmEventNativeEventInitData {
    configuration: Address;
    staking: Address;
    voteData: TvmEvmEventNativeVoteData;
}
export interface TvmEvmEventNativeDetails {
    balance: string;
    confirms: string[];
    empty: string[];
    eventInitData: TvmEvmEventNativeEventInitData;
    initializer: Address;
    meta: string;
    rejects: string[];
    requiredVotes: string;
    signatures: string[];
    status: string;
}
export declare abstract class TvmEvmEventNativeUtils {
    static getEventInitData(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<TvmEvmEventNativeEventInitData>;
    static getDecodedData(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<TvmEvmEventNativeDecodedData>;
    static getDetails(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<TvmEvmEventNativeDetails>;
    static sender(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<Address>;
    static nonce(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<string>;
}
