import BigNumber from 'bignumber.js'; import { EvmBasicTransactionOptions } from "../../../../../../core/blockchain/web3-private-service/web3-private/evm-web3-private/models/evm-basic-transaction-options"; import { EvmEncodeConfig } from "../../../../../../core/blockchain/web3-pure/typed-web3-pure/evm-web3-pure/models/evm-encode-config"; import { EncodeTransactionOptions } from "../../../../../common/models/encode-transaction-options"; import { TransactionReceipt } from 'web3-eth'; import { OnChainTradeType } from '../../common/models/on-chain-trade-type'; import { AggregatorEvmOnChainTrade } from '../../common/on-chain-aggregator/aggregator-evm-on-chain-trade-abstract'; import { EvmEncodedConfigAndToAmount } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types'; import { OkuSwapSupportedBlockchain } from './models/okuswap-on-chain-supported-chains'; import { OkuSwapOnChainTradeStruct } from './models/okuswap-trade-types'; export declare class OkuSwapOnChainTrade extends AggregatorEvmOnChainTrade { readonly type: OnChainTradeType; private readonly okuSubProvider; private readonly quoteReqBody; private readonly swapReqBody; protected readonly providerGateway: string; protected get spenderAddress(): string; protected get fromBlockchain(): OkuSwapSupportedBlockchain; get dexContractAddress(): string; constructor(tradeStruct: OkuSwapOnChainTradeStruct, providerAddress: string, providerGateway: string); /** * Sends approve and if needed permit2Approve on UniswapV3Like-contract */ approve(options: EvmBasicTransactionOptions, checkNeedApprove?: boolean, amount?: BigNumber | 'infinity'): Promise; needApprove(fromAddress?: string): Promise; private needPermit2Approve; encode(options: EncodeTransactionOptions): Promise; protected getTransactionConfigAndAmount(_options: EncodeTransactionOptions): Promise; }