UNPKG

@0xsplits/splits-sdk

Version:

SDK for the 0xSplits protocol

987 lines (986 loc) 37.4 kB
import { Address, GetContractReturnType, Hash, Hex, Log, TypedDataDomain } from 'viem'; import { warehouseAbi } from '../constants/abi/warehouse'; import { BaseClientMixin, BaseGasEstimatesMixin, BaseTransactions } from './base'; import { CallData, ReadContractArgs, SplitsClientConfig, TransactionConfig, TransactionFormat, WarehouseApproveBySig, WarehouseApproveBySigConfig, WarehouseApproveConfig, WarehouseBatchDepositConfig, WarehouseBatchTransferConfig, WarehouseBatchWithdrawConfig, WarehouseDepositConfig, WarehouseInvalidateNonceConfig, WarehouseSetOperatorConfig, WarehouseSetWithdrawConfig, WarehouseTemporaryApproveAndCallBySig, WarehouseTemporaryApproveAndCallBySigConfig, WarehouseTemporaryApproveAndCallConfig, WarehouseTransferConfig, WarehouseTransferFromConfig, WarehouseWithdrawConfig } from '../types'; import { SplitsPublicClient } from '../types'; type WarehouseAbiType = typeof warehouseAbi; declare class WarehouseTransactions extends BaseTransactions { protected readonly _warehouseAbi: readonly [{ readonly type: "constructor"; readonly inputs: readonly [{ readonly name: "_native_token_name"; readonly type: "string"; readonly internalType: "string"; }, { readonly name: "_native_token_symbol"; readonly type: "string"; readonly internalType: "string"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "APPROVE_AND_CALL_TYPE_HASH"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: ""; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "DOMAIN_SEPARATOR"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: ""; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "NATIVE_TOKEN"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "NATIVE_TOKEN_ID"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "PERCENTAGE_SCALE"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "allowance"; readonly inputs: readonly [{ readonly name: "owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "spender"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "tokenId"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly [{ readonly name: "amount"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "approve"; readonly inputs: readonly [{ readonly name: "_spender"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_id"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "_amount"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "approveBySig"; readonly inputs: readonly [{ readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_spender"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_operator"; readonly type: "bool"; readonly internalType: "bool"; }, { readonly name: "_id"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "_amount"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "_nonce"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "_deadline"; readonly type: "uint48"; readonly internalType: "uint48"; }, { readonly name: "_signature"; readonly type: "bytes"; readonly internalType: "bytes"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "balanceOf"; readonly inputs: readonly [{ readonly name: "owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "id"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly [{ readonly name: "amount"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "batchDeposit"; readonly inputs: readonly [{ readonly name: "_receivers"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "_token"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_amounts"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }]; readonly outputs: readonly []; readonly stateMutability: "payable"; }, { readonly type: "function"; readonly name: "batchTransfer"; readonly inputs: readonly [{ readonly name: "_receivers"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "_token"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_amounts"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "decimals"; readonly inputs: readonly [{ readonly name: "id"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "uint8"; readonly internalType: "uint8"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "deposit"; readonly inputs: readonly [{ readonly name: "_receiver"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_token"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_amount"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly []; readonly stateMutability: "payable"; }, { readonly type: "function"; readonly name: "eip712Domain"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: "fields"; readonly type: "bytes1"; readonly internalType: "bytes1"; }, { readonly name: "name"; readonly type: "string"; readonly internalType: "string"; }, { readonly name: "version"; readonly type: "string"; readonly internalType: "string"; }, { readonly name: "chainId"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "verifyingContract"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }, { readonly name: "extensions"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "invalidateNonce"; readonly inputs: readonly [{ readonly name: "_nonce"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "isOperator"; readonly inputs: readonly [{ readonly name: "owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "operator"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly [{ readonly name: "approved"; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "isValidNonce"; readonly inputs: readonly [{ readonly name: "_from"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_nonce"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "name"; readonly inputs: readonly [{ readonly name: "id"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "string"; readonly internalType: "string"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "nonceBitMap"; readonly inputs: readonly [{ readonly name: "account"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "word"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly [{ readonly name: "bitMap"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "setOperator"; readonly inputs: readonly [{ readonly name: "_operator"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_approved"; readonly type: "bool"; readonly internalType: "bool"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "setWithdrawConfig"; readonly inputs: readonly [{ readonly name: "_config"; readonly type: "tuple"; readonly internalType: "struct SplitsWarehouse.WithdrawConfig"; readonly components: readonly [{ readonly name: "incentive"; readonly type: "uint16"; readonly internalType: "uint16"; }, { readonly name: "paused"; readonly type: "bool"; readonly internalType: "bool"; }]; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "supportsInterface"; readonly inputs: readonly [{ readonly name: "_interfaceId"; readonly type: "bytes4"; readonly internalType: "bytes4"; }]; readonly outputs: readonly [{ readonly name: "supported"; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "symbol"; readonly inputs: readonly [{ readonly name: "id"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "string"; readonly internalType: "string"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "temporaryApproveAndCall"; readonly inputs: readonly [{ readonly name: "_spender"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_operator"; readonly type: "bool"; readonly internalType: "bool"; }, { readonly name: "_id"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "_amount"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "_target"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_data"; readonly type: "bytes"; readonly internalType: "bytes"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "temporaryApproveAndCallBySig"; readonly inputs: readonly [{ readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_spender"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_operator"; readonly type: "bool"; readonly internalType: "bool"; }, { readonly name: "_id"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "_amount"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "_target"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_data"; readonly type: "bytes"; readonly internalType: "bytes"; }, { readonly name: "_nonce"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "_deadline"; readonly type: "uint48"; readonly internalType: "uint48"; }, { readonly name: "_signature"; readonly type: "bytes"; readonly internalType: "bytes"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "transfer"; readonly inputs: readonly [{ readonly name: "_receiver"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_id"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "_amount"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "transferFrom"; readonly inputs: readonly [{ readonly name: "_sender"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_receiver"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_id"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "_amount"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "withdraw"; readonly inputs: readonly [{ readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_tokens"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "_amounts"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "_withdrawer"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "withdraw"; readonly inputs: readonly [{ readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_token"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "withdrawConfig"; readonly inputs: readonly [{ readonly name: "owner"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly [{ readonly name: "incentive"; readonly type: "uint16"; readonly internalType: "uint16"; }, { readonly name: "paused"; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "event"; readonly name: "Approval"; readonly inputs: readonly [{ readonly name: "owner"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "spender"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "id"; readonly type: "uint256"; readonly indexed: true; readonly internalType: "uint256"; }, { readonly name: "amount"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256"; }]; readonly anonymous: false; }, { readonly type: "event"; readonly name: "EIP712DomainChanged"; readonly inputs: readonly []; readonly anonymous: false; }, { readonly type: "event"; readonly name: "NonceInvalidation"; readonly inputs: readonly [{ readonly name: "owner"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "nonce"; readonly type: "uint256"; readonly indexed: true; readonly internalType: "uint256"; }]; readonly anonymous: false; }, { readonly type: "event"; readonly name: "OperatorSet"; readonly inputs: readonly [{ readonly name: "owner"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "spender"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "approved"; readonly type: "bool"; readonly indexed: false; readonly internalType: "bool"; }]; readonly anonymous: false; }, { readonly type: "event"; readonly name: "Transfer"; readonly inputs: readonly [{ readonly name: "caller"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }, { readonly name: "sender"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "receiver"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "id"; readonly type: "uint256"; readonly indexed: true; readonly internalType: "uint256"; }, { readonly name: "amount"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256"; }]; readonly anonymous: false; }, { readonly type: "event"; readonly name: "Withdraw"; readonly inputs: readonly [{ readonly name: "owner"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "token"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "withdrawer"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "amount"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256"; }, { readonly name: "reward"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256"; }]; readonly anonymous: false; }, { readonly type: "event"; readonly name: "WithdrawConfigUpdated"; readonly inputs: readonly [{ readonly name: "owner"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "config"; readonly type: "tuple"; readonly indexed: false; readonly internalType: "struct SplitsWarehouse.WithdrawConfig"; readonly components: readonly [{ readonly name: "incentive"; readonly type: "uint16"; readonly internalType: "uint16"; }, { readonly name: "paused"; readonly type: "bool"; readonly internalType: "bool"; }]; }]; readonly anonymous: false; }, { readonly type: "error"; readonly name: "ExpiredSignature"; readonly inputs: readonly [{ readonly name: "deadline"; readonly type: "uint48"; readonly internalType: "uint48"; }]; }, { readonly type: "error"; readonly name: "InvalidAck"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "InvalidAmount"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "InvalidNonce"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "InvalidPermitParams"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "InvalidShortString"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "InvalidSigner"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "LengthMismatch"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "Overflow"; readonly inputs: readonly []; }, { readonly type: "error"; readonly name: "StringTooLong"; readonly inputs: readonly [{ readonly name: "str"; readonly type: "string"; readonly internalType: "string"; }]; }, { readonly type: "error"; readonly name: "WithdrawalPaused"; readonly inputs: readonly [{ readonly name: "owner"; readonly type: "address"; readonly internalType: "address"; }]; }, { readonly type: "error"; readonly name: "ZeroOwner"; readonly inputs: readonly []; }]; constructor(transactionClientArgs: SplitsClientConfig & TransactionConfig); protected _getWarehouseContract(chainId: number): GetContractReturnType<WarehouseAbiType, SplitsPublicClient>; protected _transfer({ receiverAddress: receiver, tokenAddress: token, amount, transactionOverrides, }: WarehouseTransferConfig): Promise<TransactionFormat>; protected _transferFrom({ senderAddress: sender, receiverAddress: receiver, tokenAddress: token, amount, transactionOverrides, }: WarehouseTransferFromConfig): Promise<TransactionFormat>; protected _approve({ spenderAddress: spender, tokenAddress: token, amount, transactionOverrides, }: WarehouseApproveConfig): Promise<TransactionFormat>; protected _setOperator({ operatorAddress: operator, approved, transactionOverrides, }: WarehouseSetOperatorConfig): Promise<TransactionFormat>; protected _invalidateNonce({ nonce, transactionOverrides, }: WarehouseInvalidateNonceConfig): Promise<TransactionFormat>; protected _temporaryApproveAndCall({ spenderAddress: spender, operator: operator, tokenAddress: token, amount, targetAddress: target, data, transactionOverrides, }: WarehouseTemporaryApproveAndCallConfig): Promise<TransactionFormat>; protected _temporaryApproveAndCallBySig({ ownerAddress: owner, spenderAddress: spender, operator, tokenAddress: token, amount, targetAddress: target, data, nonce, deadline, signature, transactionOverrides, }: WarehouseTemporaryApproveAndCallBySigConfig): Promise<TransactionFormat>; protected _approveBySig({ ownerAddress: owner, spenderAddress: spender, operator, tokenAddress: token, amount, nonce, deadline, signature, transactionOverrides, }: WarehouseApproveBySigConfig): Promise<TransactionFormat>; protected _deposit({ receiverAddress: receiver, tokenAddress: token, amount, transactionOverrides, }: WarehouseDepositConfig): Promise<TransactionFormat>; protected _batchDeposit({ receiversAddresses: receivers, tokenAddress: token, amounts, transactionOverrides, }: WarehouseBatchDepositConfig): Promise<TransactionFormat>; protected _withdraw({ ownerAddress: owner, tokenAddress: token, transactionOverrides, }: WarehouseWithdrawConfig): Promise<TransactionFormat>; protected _batchWithdraw({ ownerAddress: owner, tokensAddresses: tokens, amounts, withdrawerAddress: withdrawer, transactionOverrides, }: WarehouseBatchWithdrawConfig): Promise<TransactionFormat>; protected _batchTransfer({ receiversAddresses: receivers, tokenAddress: token, amounts, transactionOverrides, }: WarehouseBatchTransferConfig): Promise<TransactionFormat>; protected _setWithdrawConfig({ incentivePercent: incentive, paused, transactionOverrides, }: WarehouseSetWithdrawConfig): Promise<TransactionFormat>; protected _eip712Domain(chainId: number): Promise<{ domain: TypedDataDomain; }>; } export declare class WarehouseClient extends WarehouseTransactions { readonly eventTopics: { [key: string]: Hex[]; }; readonly callData: WarehouseCallData; readonly estimateGas: WarehouseGasEstimates; readonly sign: WarehouseSignature; constructor(clientArgs: SplitsClientConfig); getName({ tokenAddress, chainId, }: ReadContractArgs & { tokenAddress: Address; }): Promise<{ name: string; }>; getSymbol({ tokenAddress, chainId, }: ReadContractArgs & { tokenAddress: Address; }): Promise<{ symbol: string; }>; getDecimals({ tokenAddress, chainId, }: ReadContractArgs & { tokenAddress: Address; }): Promise<{ decimals: number; }>; getWithdrawConfig({ userAddress, chainId, }: ReadContractArgs & { userAddress: Address; }): Promise<{ withdrawConfig: { incentive: number; paused: boolean; }; }>; isValidNonce({ userAddress, userNonce, chainId, }: ReadContractArgs & { userAddress: Address; userNonce: bigint; }): Promise<{ isValidNonce: boolean; }>; eip712Domain(args?: ReadContractArgs): Promise<{ domain: TypedDataDomain; }>; isOperator({ ownerAddress, operatorAddress, chainId, }: ReadContractArgs & { ownerAddress: Address; operatorAddress: Address; }): Promise<{ isOperator: boolean; }>; balanceOf({ ownerAddress, tokenAddress, chainId, }: ReadContractArgs & { ownerAddress: Address; tokenAddress: Address; }): Promise<{ balance: bigint; }>; allowance({ ownerAddress, spenderAddress, tokenAddress, chainId, }: ReadContractArgs & { ownerAddress: Address; spenderAddress: Address; tokenAddress: Address; }): Promise<{ allowance: bigint; }>; transfer(transferArgs: WarehouseTransferConfig): Promise<{ event: Log; }>; transferFrom(transferFromArgs: WarehouseTransferFromConfig): Promise<{ event: Log; }>; approve(approveArgs: WarehouseApproveConfig): Promise<{ event: Log; }>; setOperator(setOperatorArgs: WarehouseSetOperatorConfig): Promise<{ event: Log; }>; invalidateNonce(invalidateNonceArgs: WarehouseInvalidateNonceConfig): Promise<{ event: Log; }>; temporaryApproveAndCall(temporaryApproveAndCallArgs: WarehouseTemporaryApproveAndCallConfig): Promise<{ txHash: Hex; }>; temporaryApproveAndCallBySig(temporaryApproveAndCallBySigArgs: WarehouseTemporaryApproveAndCallBySigConfig): Promise<{ txHash: Hex; }>; approveBySig(approveBySigArgs: WarehouseApproveBySigConfig): Promise<{ event: Log; }>; deposit(depositArgs: WarehouseDepositConfig): Promise<{ event: Log; }>; batchDeposit(batchDepositArgs: WarehouseBatchDepositConfig): Promise<{ events: Log[]; }>; _submitWithdrawTransaction(withdrawArgs: WarehouseWithdrawConfig): Promise<{ txHash: Hash; }>; withdraw(withdrawArgs: WarehouseWithdrawConfig): Promise<{ event: Log; }>; _submitBatchWithdrawTransaction(batchWithdrawArgs: WarehouseBatchWithdrawConfig): Promise<{ txHash: Hash; }>; batchWithdraw(batchWithdrawArgs: WarehouseBatchWithdrawConfig): Promise<{ events: Log[]; }>; batchTransfer(batchTransferArgs: WarehouseBatchTransferConfig): Promise<{ events: Log[]; }>; setWithdrawConfig(setConfigArgs: WarehouseSetWithdrawConfig): Promise<{ event: Log; }>; } export interface WarehouseClient extends BaseClientMixin { } declare class WarehouseGasEstimates extends WarehouseTransactions { constructor(clientArgs: SplitsClientConfig); transfer(transferArgs: WarehouseTransferConfig): Promise<bigint>; transferFrom(transferFromArgs: WarehouseTransferFromConfig): Promise<bigint>; approve(approveArgs: WarehouseApproveConfig): Promise<bigint>; setOperator(setOperatorArgs: WarehouseSetOperatorConfig): Promise<bigint>; invalidateNonce(invalidateNonceArgs: WarehouseInvalidateNonceConfig): Promise<bigint>; temporaryApproveAndCall(temporaryApproveAndCallArgs: WarehouseTemporaryApproveAndCallConfig): Promise<bigint>; temporaryApproveAndCallBySig(temporaryApproveAndCallBySigArgs: WarehouseTemporaryApproveAndCallBySigConfig): Promise<bigint>; approveBySig(approveBySigArgs: WarehouseApproveBySigConfig): Promise<bigint>; deposit(depositArgs: WarehouseDepositConfig): Promise<bigint>; batchDeposit(batchDepositArgs: WarehouseBatchDepositConfig): Promise<bigint>; withdraw(withdrawArgs: WarehouseWithdrawConfig): Promise<bigint>; batchWithdraw(batchWithdrawArgs: WarehouseBatchWithdrawConfig): Promise<bigint>; batchTransfer(batchTransferArgs: WarehouseBatchTransferConfig): Promise<bigint>; setWithdrawConfig(setConfigArgs: WarehouseSetWithdrawConfig): Promise<bigint>; } interface WarehouseGasEstimates extends BaseGasEstimatesMixin { } declare class WarehouseCallData extends WarehouseTransactions { constructor(clientArgs: SplitsClientConfig); transfer(transferArgs: WarehouseTransferConfig): Promise<CallData>; transferFrom(transferFromArgs: WarehouseTransferFromConfig): Promise<CallData>; approve(approveArgs: WarehouseApproveConfig): Promise<CallData>; setOperator(setOperatorArgs: WarehouseSetOperatorConfig): Promise<CallData>; invalidateNonce(invalidateNonceArgs: WarehouseInvalidateNonceConfig): Promise<CallData>; temporaryApproveAndCall(temporaryApproveAndCallArgs: WarehouseTemporaryApproveAndCallConfig): Promise<CallData>; temporaryApproveAndCallBySig(temporaryApproveAndCallBySigArgs: WarehouseTemporaryApproveAndCallBySigConfig): Promise<CallData>; approveBySig(approveBySigArgs: WarehouseApproveBySigConfig): Promise<CallData>; deposit(depositArgs: WarehouseDepositConfig): Promise<CallData>; batchDeposit(batchDepositArgs: WarehouseBatchDepositConfig): Promise<CallData>; withdraw(withdrawArgs: WarehouseWithdrawConfig): Promise<CallData>; batchWithdraw(withdrawArgs: WarehouseWithdrawConfig): Promise<CallData>; batchTransfer(batchTransferArgs: WarehouseBatchTransferConfig): Promise<CallData>; setWithdrawConfig(setConfigArgs: WarehouseSetWithdrawConfig): Promise<CallData>; } declare class WarehouseSignature extends WarehouseTransactions { constructor(clientArgs: SplitsClientConfig); approveBySig(approveBySigArgs: WarehouseApproveBySig): Promise<WarehouseApproveBySigConfig>; temporaryApproveAndCallBySig(temporaryApproveAndCallBySigArgs: WarehouseTemporaryApproveAndCallBySig): Promise<WarehouseApproveBySigConfig>; } export {};