declare const AtomicQueueAbi: readonly [{ readonly type: "function"; readonly name: "getUserAtomicRequest"; readonly inputs: readonly [{ readonly name: "user"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "offer"; readonly type: "address"; readonly internalType: "contract ERC20"; }, { readonly name: "want"; readonly type: "address"; readonly internalType: "contract ERC20"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "tuple"; readonly internalType: "struct AtomicQueue.AtomicRequest"; readonly components: readonly [{ readonly name: "deadline"; readonly type: "uint64"; readonly internalType: "uint64"; }, { readonly name: "atomicPrice"; readonly type: "uint88"; readonly internalType: "uint88"; }, { readonly name: "offerAmount"; readonly type: "uint96"; readonly internalType: "uint96"; }, { readonly name: "inSolve"; readonly type: "bool"; readonly internalType: "bool"; }]; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "isAtomicRequestValid"; readonly inputs: readonly [{ readonly name: "offer"; readonly type: "address"; readonly internalType: "contract ERC20"; }, { readonly name: "user"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "userRequest"; readonly type: "tuple"; readonly internalType: "struct AtomicQueue.AtomicRequest"; readonly components: readonly [{ readonly name: "deadline"; readonly type: "uint64"; readonly internalType: "uint64"; }, { readonly name: "atomicPrice"; readonly type: "uint88"; readonly internalType: "uint88"; }, { readonly name: "offerAmount"; readonly type: "uint96"; readonly internalType: "uint96"; }, { readonly name: "inSolve"; readonly type: "bool"; readonly internalType: "bool"; }]; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "solve"; readonly inputs: readonly [{ readonly name: "offer"; readonly type: "address"; readonly internalType: "contract ERC20"; }, { readonly name: "want"; readonly type: "address"; readonly internalType: "contract ERC20"; }, { readonly name: "users"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "runData"; readonly type: "bytes"; readonly internalType: "bytes"; }, { readonly name: "solver"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "updateAtomicRequest"; readonly inputs: readonly [{ readonly name: "offer"; readonly type: "address"; readonly internalType: "contract ERC20"; }, { readonly name: "want"; readonly type: "address"; readonly internalType: "contract ERC20"; }, { readonly name: "userRequest"; readonly type: "tuple"; readonly internalType: "struct AtomicQueue.AtomicRequest"; readonly components: readonly [{ readonly name: "deadline"; readonly type: "uint64"; readonly internalType: "uint64"; }, { readonly name: "atomicPrice"; readonly type: "uint88"; readonly internalType: "uint88"; }, { readonly name: "offerAmount"; readonly type: "uint96"; readonly internalType: "uint96"; }, { readonly name: "inSolve"; readonly type: "bool"; readonly internalType: "bool"; }]; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "userAtomicRequest"; readonly inputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }, { readonly name: ""; readonly type: "address"; readonly internalType: "contract ERC20"; }, { readonly name: ""; readonly type: "address"; readonly internalType: "contract ERC20"; }]; readonly outputs: readonly [{ readonly name: "deadline"; readonly type: "uint64"; readonly internalType: "uint64"; }, { readonly name: "atomicPrice"; readonly type: "uint88"; readonly internalType: "uint88"; }, { readonly name: "offerAmount"; readonly type: "uint96"; readonly internalType: "uint96"; }, { readonly name: "inSolve"; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "viewSolveMetaData"; readonly inputs: readonly [{ readonly name: "offer"; readonly type: "address"; readonly internalType: "contract ERC20"; }, { readonly name: "want"; readonly type: "address"; readonly internalType: "contract ERC20"; }, { readonly name: "users"; readonly type: "address[]"; readonly internalType: "address[]"; }]; readonly outputs: readonly [{ readonly name: "metaData"; readonly type: "tuple[]"; readonly internalType: "struct AtomicQueue.SolveMetaData[]"; readonly components: readonly [{ readonly name: "user"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "flags"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "assetsToOffer"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "assetsForWant"; readonly type: "uint256"; readonly internalType: "uint256"; }]; }, { readonly name: "totalAssetsForWant"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "totalAssetsToOffer"; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "event"; readonly name: "AtomicRequestFulfilled"; readonly inputs: readonly [{ readonly name: "user"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }, { readonly name: "offerToken"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }, { readonly name: "wantToken"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }, { readonly name: "offerAmountSpent"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256"; }, { readonly name: "wantAmountReceived"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256"; }, { readonly name: "timestamp"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256"; }]; readonly anonymous: false; }, { readonly type: "event"; readonly name: "AtomicRequestUpdated"; readonly inputs: readonly [{ readonly name: "user"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }, { readonly name: "offerToken"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }, { readonly name: "wantToken"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }, { readonly name: "amount"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256"; }, { readonly name: "deadline"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256"; }, { readonly name: "minPrice"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256"; }, { readonly name: "timestamp"; readonly type: "uint256"; readonly indexed: false; readonly internalType: "uint256"; }]; readonly anonymous: false; }, { readonly type: "error"; readonly name: "AtomicQueue__RequestDeadlineExceeded"; readonly inputs: readonly [{ readonly name: "user"; readonly type: "address"; readonly internalType: "address"; }]; }, { readonly type: "error"; readonly name: "AtomicQueue__UserNotInSolve"; readonly inputs: readonly [{ readonly name: "user"; readonly type: "address"; readonly internalType: "address"; }]; }, { readonly type: "error"; readonly name: "AtomicQueue__UserRepeated"; readonly inputs: readonly [{ readonly name: "user"; readonly type: "address"; readonly internalType: "address"; }]; }, { readonly type: "error"; readonly name: "AtomicQueue__ZeroOfferAmount"; readonly inputs: readonly [{ readonly name: "user"; readonly type: "address"; readonly internalType: "address"; }]; }]; export { AtomicQueueAbi };