import { SuiCoinBalance } from "../../core/types/sui";
export declare class SuiRpcClient {
    /**
     * Native Sui coin object type in long format.
     * This is the format used by the Squid UI and API
     */
    private suiNativeCoinObjectTypeLong;
    /**
     * Native Sui coin object type in short format.
     * This is the format used by RPC providers
     */
    private suiNativeCoinObjectTypeShort;
    private rpcUrl;
    constructor(rpcUrl: string);
    /**
     * Fetches the balance of a single Sui token for a given address.
     */
    getBalance(userAddress: string, tokenAddress: string): Promise<SuiCoinBalance>;
    /**
     * Fetches all Sui coin balances for a given address.
     */
    getAllBalances(userAddress: string): Promise<SuiCoinBalance[]>;
    private call;
    /**
     * Parse native coin object type from the long format to the short format.
     */
    private toShortCoinObjectType;
    /**
     * Parse native coin object type from the short format to the long format.
     */
    private toLongCoinObjectType;
}
