import { AccountBalances } from './data/classes/account-balances.js';
import { Transaction } from './data/classes/transaction.js';
import { NftList } from './data/classes/nft-list.js';
import { ExchangeOffer } from './data/classes/exchange-offer.js';
import { AdvanceRoutesLiFi } from './data/classes/advance-routes-lifi.js';
import { StepTransactions } from './data/classes/step-transactions-lifi.js';
import { RateData } from './data/classes/rate-data.js';
import { TokenListToken } from './data/classes/token-list-token.js';
import { TokenList } from './data/classes/token-list.js';
import { PaginatedTokens } from './data/classes/paginated-tokens.js';
import { Transactions } from './data/classes/transactions.js';
import { Token } from './data/classes/token.js';
import { QuoteTransactionsResponse } from './data/classes/quote.js';
import { TransactionStatus } from './data/classes/transaction-status.js';
import { GetAccountBalancesDto } from './dto/get-account-balances.dto.js';
import { GetTransactionDto } from './dto/get-transaction.dto.js';
import { GetNftListDto } from './dto/get-nft-list.dto.js';
import { GetExchangeOffersDto } from './dto/get-exchange-offers.dto.js';
import { GetAdvanceRoutesLiFiDto } from './dto/advance-routes-lifi.dto.js';
import { GetStepTransactionsLiFiDto } from './dto/get-step-transactions-lifi.dto.js';
import { FetchExchangeRatesDto } from './dto/fetch-exchange-rates.dto.js';
import { GetTokenListDto } from './dto/get-token-list.dto.js';
import { GetExchangeSupportedAssetsDto } from './dto/get-exchange-supported-assets.dto.js';
import { GetTokenListsDto } from './dto/get-token-lists.dto.js';
import { GetTransactionsDto } from './dto/get-transactions.dto.js';
import { GetSupportedAssetsDto } from './dto/get-supported-assets.dto.js';
import { GetQuotesDto } from './dto/get-quotes.dto.js';
import { GetTransactionStatusDto } from './dto/get-transaction-status.dto.js';
import './data/classes/account-balance.js';
import 'ethers';
import './data/constants.js';
import './data/classes/transaction-asset.js';
import './data/classes/transaction-batch.js';
import './data/classes/transaction-log.js';
import './data/classes/transaction-log-decoded.js';
import './data/classes/decoded-log-param.js';
import './data/classes/internal-transaction.js';
import './common/classes/pagination-result.js';
import './data/classes/nft-collection.js';
import './common/classes/base-class.js';
import './data/classes/nft.js';
import './data/classes/transaction-data.js';
import '@lifi/sdk';
import './data/classes/rate-info.js';
import './common/types/bignumber.js';
import './dto/pagination.dto.js';

declare class DataUtils {
    private dataModule;
    private readonly defaultDataApiKey;
    constructor(apiKey?: string);
    getAccountBalances(dto: GetAccountBalancesDto): Promise<AccountBalances>;
    getTransaction(dto: GetTransactionDto): Promise<Transaction>;
    getTransactions(dto: GetTransactionsDto): Promise<Transactions>;
    getNftList(dto: GetNftListDto): Promise<NftList>;
    getAdvanceRoutesLiFi(dto: GetAdvanceRoutesLiFiDto): Promise<AdvanceRoutesLiFi>;
    getStepTransaction(dto: GetStepTransactionsLiFiDto): Promise<StepTransactions>;
    getExchangeSupportedAssets(dto: GetExchangeSupportedAssetsDto): Promise<PaginatedTokens>;
    getExchangeOffers(dto: GetExchangeOffersDto): Promise<ExchangeOffer[]>;
    getTokenLists(dto: GetTokenListsDto): Promise<TokenList[]>;
    getTokenListTokens(dto: GetTokenListDto): Promise<TokenListToken[]>;
    fetchExchangeRates(dto: FetchExchangeRatesDto): Promise<RateData>;
    getSupportedAssets(dto: GetSupportedAssetsDto): Promise<Token[]>;
    getQuotes(dto: GetQuotesDto): Promise<QuoteTransactionsResponse>;
    getTransactionStatus(dto: GetTransactionStatusDto): Promise<TransactionStatus>;
}

export { DataUtils };
