import { DummyLimitOrderProvider, IDexHelper } from '../dex-helper'; import { PricingHelper } from '../pricing-helper'; import { DexAdapterService } from '../dex'; import { Address, OptimalRate, Token, TransferFeeParams, TxObject } from '../types'; import { ContractMethod } from '../constants'; import { SwapSide } from '@paraswap/core/build/constants'; import { GenericSwapTransactionBuilder } from '../generic-swap-transaction-builder'; import { AddressOrSymbol } from '@paraswap/sdk'; import { TransactionBuilder } from '../transaction-builder'; export interface IParaSwapSDK { getPrices(from: Token, to: Token, amount: bigint, side: SwapSide, contractMethod: ContractMethod, _poolIdentifiers?: { [key: string]: string[] | null; } | null, transferFees?: TransferFeeParams, forceRoute?: AddressOrSymbol[]): Promise; buildTransaction(priceRoute: OptimalRate, minMaxAmount: BigInt, userAddress: Address): Promise; initializePricing?(): Promise; releaseResources?(): Promise; dexHelper?: IDexHelper & { replaceProviderWithRPC?: (rpcUrl: string) => void; }; } export declare class LocalParaswapSDK implements IParaSwapSDK { protected network: number; dexHelper: IDexHelper; dexAdapterService: DexAdapterService; pricingHelper: PricingHelper; dexKeys: string[]; transactionBuilder: GenericSwapTransactionBuilder; transactionBuilderV5: TransactionBuilder; constructor(network: number, dexKeys: string | string[], rpcUrl: string, limitOrderProvider?: DummyLimitOrderProvider); initializePricing(): Promise; releaseResources(): Promise; getPrices(from: Token, to: Token, amount: bigint, side: SwapSide, contractMethod: ContractMethod, _poolIdentifiers?: { [key: string]: string[] | null; } | null, transferFees?: TransferFeeParams, forceRoute?: AddressOrSymbol[]): Promise; buildTransaction(priceRoute: OptimalRate, minMaxAmount: BigInt, userAddress: Address): Promise; }