import { BigNumber } from 'ethers'; import { SyncProvider } from './provider-interface'; import * as types from './types'; import { Network } from './types'; export declare function getDefaultRestProvider(network: types.Network, pollIntervalMilliSecs?: number): Promise; export interface Request { network: types.Network; apiVersion: 'v02'; resource: string; args: any; timestamp: string; } export interface Error { errorType: string; code: number; message: string; } export interface Response { request: Request; status: 'success' | 'error'; error?: Error; result?: T; } export declare class RESTError extends Error { restError: Error; constructor(message: string, restError: Error); } export declare class RestProvider extends SyncProvider { address: string; static readonly MAX_LIMIT = 100; private constructor(); static newProvider(address?: string, pollIntervalMilliSecs?: number, network?: Network): Promise; parseResponse(response: Response): T; get(url: string): Promise>; post(url: string, body: any): Promise>; accountInfoDetailed(idOrAddress: number | types.Address, infoType: 'committed' | 'finalized'): Promise>; accountInfo(idOrAddress: number | types.Address, infoType: 'committed' | 'finalized'): Promise; toggle2FADetailed(data: types.Toggle2FARequest): Promise>; toggle2FA(data: types.Toggle2FARequest): Promise; accountFullInfoDetailed(idOrAddress: number | types.Address): Promise>; accountFullInfo(idOrAddress: number | types.Address): Promise; accountTxsDetailed(idOrAddress: number | types.Address, paginationQuery: types.PaginationQuery, token?: types.TokenLike, secondIdOrAddress?: number | types.Address): Promise>>; accountTxs(idOrAddress: number | types.Address, paginationQuery: types.PaginationQuery, token?: types.TokenLike, secondIdOrAddress?: number | types.Address): Promise>; accountPendingTxsDetailed(idOrAddress: number | types.Address, paginationQuery: types.PaginationQuery): Promise>>; accountPendingTxs(idOrAddress: number | types.Address, paginationQuery: types.PaginationQuery): Promise>; blockPaginationDetailed(paginationQuery: types.PaginationQuery): Promise>>; blockPagination(paginationQuery: types.PaginationQuery): Promise>; blockByPositionDetailed(blockPosition: types.BlockPosition): Promise>; blockByPosition(blockPosition: types.BlockPosition): Promise; blockTransactionsDetailed(blockPosition: types.BlockPosition, paginationQuery: types.PaginationQuery): Promise>>; blockTransactions(blockPosition: types.BlockPosition, paginationQuery: types.PaginationQuery): Promise>; configDetailed(): Promise>; config(): Promise; getTransactionFeeDetailed(txType: types.IncomingTxFeeType, address: types.Address, tokenLike: types.TokenLike): Promise>; getTransactionFee(txType: types.IncomingTxFeeType, address: types.Address, tokenLike: types.TokenLike): Promise; getBatchFullFeeDetailed(transactions: { txType: types.IncomingTxFeeType; address: types.Address; }[], tokenLike: types.TokenLike): Promise>; getBatchFullFee(transactions: { txType: types.IncomingTxFeeType; address: types.Address; }[], tokenLike: types.TokenLike): Promise; networkStatusDetailed(): Promise>; networkStatus(): Promise; tokenPaginationDetailed(paginationQuery: types.PaginationQuery): Promise>>; tokenPagination(paginationQuery: types.PaginationQuery): Promise>; tokenInfoDetailed(tokenLike: types.TokenLike): Promise>; tokenInfo(tokenLike: types.TokenLike): Promise; tokenPriceInfoDetailed(tokenLike: types.TokenLike, tokenIdOrUsd: number | 'usd'): Promise>; tokenPriceInfo(tokenLike: types.TokenLike, tokenIdOrUsd: number | 'usd'): Promise; submitTxNewDetailed(tx: types.L2Tx, signature?: types.TxEthSignatureVariant): Promise>; submitTxNew(tx: types.L2Tx, signature?: types.TxEthSignatureVariant): Promise; /** * @deprecated Use submitTxNew method instead */ submitTx(tx: any, signature?: types.TxEthSignatureVariant, fastProcessing?: boolean): Promise; txStatusDetailed(txHash: string): Promise>; txStatus(txHash: string): Promise; txDataDetailed(txHash: string): Promise>; txData(txHash: string): Promise; submitTxsBatchNewDetailed(txs: { tx: any; signature?: types.TxEthSignatureVariant; }[], signature?: types.TxEthSignature | types.TxEthSignature[]): Promise>; submitTxsBatchNew(txs: { tx: any; signature?: types.TxEthSignatureVariant; }[], signature?: types.TxEthSignature | types.TxEthSignature[]): Promise; /** * @deprecated Use submitTxsBatchNew method instead. */ submitTxsBatch(transactions: { tx: any; signature?: types.TxEthSignatureVariant; }[], ethSignatures?: types.TxEthSignature | types.TxEthSignature[]): Promise; getBatchDetailed(batchHash: string): Promise>; getBatch(batchHash: string): Promise; getNFTDetailed(id: number): Promise>; getNFT(id: number): Promise; getNFTOwnerDetailed(id: number): Promise>; getNFTOwner(id: number): Promise; getNFTIdByTxHashDetailed(txHash: string): Promise>; getNFTIdByTxHash(txHash: string): Promise; notifyAnyTransaction(hash: string, action: 'COMMIT' | 'VERIFY'): Promise; notifyTransaction(hash: string, action: 'COMMIT' | 'VERIFY'): Promise; notifyPriorityOp(hash: string, action: 'COMMIT' | 'VERIFY'): Promise; getContractAddress(): Promise; getTokens(limit?: number): Promise; getState(address: types.Address): Promise; getConfirmationsForEthOpAmount(): Promise; getTransactionsBatchFee(txTypes: types.IncomingTxFeeType[], addresses: types.Address[], tokenLike: types.TokenLike): Promise; getTokenPrice(tokenLike: types.TokenLike): Promise; getTxReceipt(txHash: string): Promise; getPriorityOpStatus(hash: string): Promise; getEthTxForWithdrawal(withdrawalHash: string): Promise; }