import { type Address, type FullContractState, type ProviderRpcClient } from 'everscale-inpage-provider';
export interface TvmSolEventNativeVoteData {
    eventData: string;
    eventTimestamp: number;
    eventTransactionLt: string;
}
export interface TvmSolEventNativeDecodedData {
    amount: string;
    decimals: number;
    name: string;
    proxyAddress: Address;
    recipientAddress: string;
    remainingGasTo: Address;
    solanaPayload: string;
    symbol: string;
    tokenAddress: Address;
    tokenWalletAddress: Address;
}
export interface TvmSolEventNativeEventInitData {
    configuration: Address;
    staking: Address;
    voteData: TvmSolEventNativeVoteData;
}
export interface TvmSolEventNativeDetails {
    balance: string;
    confirms: string[];
    empty: string[];
    eventInitData: TvmSolEventNativeEventInitData;
    initializer: Address;
    meta: string;
    rejects: string[];
    requiredVotes: string;
    status: string;
}
export declare abstract class TvmSolEventNativeUtils {
    static getEventInitData(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<TvmSolEventNativeEventInitData>;
    static getDecodedData(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<TvmSolEventNativeDecodedData>;
    static getDetails(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<TvmSolEventNativeDetails>;
    static sender(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<Address>;
    static nonce(connection: ProviderRpcClient, eventAddress: Address | string, cachedState?: FullContractState): Promise<string>;
}
