import BigNumber from 'bignumber.js';
import { JsonRPCRequest } from '../../../basic/request/json-rpc';
import { CoinInfo } from '../../../types/chain';
import { AddressInfo, ClientInfo, FeePricePerUnit, PartialTokenInfo, TransactionStatus } from '../../../types/provider';
import { BaseClient } from '../../abc';
declare class Solana extends BaseClient {
    readonly rpc: JsonRPCRequest;
    constructor(url: string);
    broadcastTransaction(rawTx: string, options?: any): Promise<string>;
    getInfo(): Promise<ClientInfo>;
    getAddresses(addresses: string[]): Promise<Array<AddressInfo | undefined>>;
    getBalances(requests: {
        address: string;
        coin: Partial<CoinInfo>;
    }[]): Promise<(BigNumber | undefined)[]>;
    getAccountInfo(address: string): Promise<{
        [key: string]: any;
    } | null>;
    getFeePricePerUnit(): Promise<FeePricePerUnit>;
    getFees(): Promise<[number, string]>;
    getTransactionStatuses(txids: string[]): Promise<Array<TransactionStatus | undefined>>;
    getTokenInfos(tokenAddresses: Array<string>): Promise<Array<PartialTokenInfo | undefined>>;
}
export { Solana };
