Hierarchy

Constructors

Methods

  • Parameters

    • __namedParameters: {
          collectionContractAddress: `0x${string}`;
          tokenId: bigint;
          price: bigint;
          expirationTime: bigint;
      }
      • collectionContractAddress: `0x${string}`
      • tokenId: bigint
      • price: bigint
      • expirationTime: bigint

    Returns Promise<{
        parameters: SeaportOrderParameter;
        signature: `0x${string}`;
    }>

  • Parameters

    Returns Promise<{
        txHash: `0x${string}`;
        waitTxInBlock: (() => Promise<{
            orderHash: `0x${string}`;
            offerer: `0x${string}`;
            zone: `0x${string}`;
        }>);
    }>

Properties

abi: readonly [{
    inputs: readonly [{
        internalType: "address";
        name: "conduitController";
        type: "address";
    }];
    stateMutability: "nonpayable";
    type: "constructor";
}, {
    inputs: readonly [];
    name: "BadContractSignature";
    type: "error";
}, {
    inputs: readonly [];
    name: "BadFraction";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "token";
        type: "address";
    }, {
        internalType: "address";
        name: "from";
        type: "address";
    }, {
        internalType: "address";
        name: "to";
        type: "address";
    }, {
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "BadReturnValueFromERC20OnTransfer";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "uint8";
        name: "v";
        type: "uint8";
    }];
    name: "BadSignatureV";
    type: "error";
}, {
    inputs: readonly [];
    name: "CannotCancelOrder";
    type: "error";
}, {
    inputs: readonly [];
    name: "ConsiderationCriteriaResolverOutOfRange";
    type: "error";
}, {
    inputs: readonly [];
    name: "ConsiderationLengthNotEqualToTotalOriginal";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "orderIndex";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "considerationIndex";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "shortfallAmount";
        type: "uint256";
    }];
    name: "ConsiderationNotMet";
    type: "error";
}, {
    inputs: readonly [];
    name: "CriteriaNotEnabledForItem";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "token";
        type: "address";
    }, {
        internalType: "address";
        name: "from";
        type: "address";
    }, {
        internalType: "address";
        name: "to";
        type: "address";
    }, {
        internalType: "uint256[]";
        name: "identifiers";
        type: "uint256[]";
    }, {
        internalType: "uint256[]";
        name: "amounts";
        type: "uint256[]";
    }];
    name: "ERC1155BatchTransferGenericFailure";
    type: "error";
}, {
    inputs: readonly [];
    name: "InexactFraction";
    type: "error";
}, {
    inputs: readonly [];
    name: "InsufficientNativeTokensSupplied";
    type: "error";
}, {
    inputs: readonly [];
    name: "Invalid1155BatchTransferEncoding";
    type: "error";
}, {
    inputs: readonly [];
    name: "InvalidBasicOrderParameterEncoding";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "conduit";
        type: "address";
    }];
    name: "InvalidCallToConduit";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "conduitKey";
        type: "bytes32";
    }, {
        internalType: "address";
        name: "conduit";
        type: "address";
    }];
    name: "InvalidConduit";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "orderHash";
        type: "bytes32";
    }];
    name: "InvalidContractOrder";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "InvalidERC721TransferAmount";
    type: "error";
}, {
    inputs: readonly [];
    name: "InvalidFulfillmentComponentData";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "value";
        type: "uint256";
    }];
    name: "InvalidMsgValue";
    type: "error";
}, {
    inputs: readonly [];
    name: "InvalidNativeOfferItem";
    type: "error";
}, {
    inputs: readonly [];
    name: "InvalidProof";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "orderHash";
        type: "bytes32";
    }];
    name: "InvalidRestrictedOrder";
    type: "error";
}, {
    inputs: readonly [];
    name: "InvalidSignature";
    type: "error";
}, {
    inputs: readonly [];
    name: "InvalidSigner";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "startTime";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "endTime";
        type: "uint256";
    }];
    name: "InvalidTime";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "fulfillmentIndex";
        type: "uint256";
    }];
    name: "MismatchedFulfillmentOfferAndConsiderationComponents";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "enum Side";
        name: "side";
        type: "uint8";
    }];
    name: "MissingFulfillmentComponentOnAggregation";
    type: "error";
}, {
    inputs: readonly [];
    name: "MissingItemAmount";
    type: "error";
}, {
    inputs: readonly [];
    name: "MissingOriginalConsiderationItems";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "account";
        type: "address";
    }, {
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "NativeTokenTransferGenericFailure";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "account";
        type: "address";
    }];
    name: "NoContract";
    type: "error";
}, {
    inputs: readonly [];
    name: "NoReentrantCalls";
    type: "error";
}, {
    inputs: readonly [];
    name: "NoSpecifiedOrdersAvailable";
    type: "error";
}, {
    inputs: readonly [];
    name: "OfferAndConsiderationRequiredOnFulfillment";
    type: "error";
}, {
    inputs: readonly [];
    name: "OfferCriteriaResolverOutOfRange";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "orderHash";
        type: "bytes32";
    }];
    name: "OrderAlreadyFilled";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "enum Side";
        name: "side";
        type: "uint8";
    }];
    name: "OrderCriteriaResolverOutOfRange";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "orderHash";
        type: "bytes32";
    }];
    name: "OrderIsCancelled";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "orderHash";
        type: "bytes32";
    }];
    name: "OrderPartiallyFilled";
    type: "error";
}, {
    inputs: readonly [];
    name: "PartialFillsNotEnabledForOrder";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "token";
        type: "address";
    }, {
        internalType: "address";
        name: "from";
        type: "address";
    }, {
        internalType: "address";
        name: "to";
        type: "address";
    }, {
        internalType: "uint256";
        name: "identifier";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "amount";
        type: "uint256";
    }];
    name: "TokenTransferGenericFailure";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "orderIndex";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "considerationIndex";
        type: "uint256";
    }];
    name: "UnresolvedConsiderationCriteria";
    type: "error";
}, {
    inputs: readonly [{
        internalType: "uint256";
        name: "orderIndex";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "offerIndex";
        type: "uint256";
    }];
    name: "UnresolvedOfferCriteria";
    type: "error";
}, {
    inputs: readonly [];
    name: "UnusedItemParameters";
    type: "error";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "uint256";
        name: "newCounter";
        type: "uint256";
    }, {
        indexed: true;
        internalType: "address";
        name: "offerer";
        type: "address";
    }];
    name: "CounterIncremented";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "bytes32";
        name: "orderHash";
        type: "bytes32";
    }, {
        indexed: true;
        internalType: "address";
        name: "offerer";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "zone";
        type: "address";
    }];
    name: "OrderCancelled";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "bytes32";
        name: "orderHash";
        type: "bytes32";
    }, {
        indexed: true;
        internalType: "address";
        name: "offerer";
        type: "address";
    }, {
        indexed: true;
        internalType: "address";
        name: "zone";
        type: "address";
    }, {
        indexed: false;
        internalType: "address";
        name: "recipient";
        type: "address";
    }, {
        components: readonly [{
            internalType: "enum ItemType";
            name: "itemType";
            type: "uint8";
        }, {
            internalType: "address";
            name: "token";
            type: "address";
        }, {
            internalType: "uint256";
            name: "identifier";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "amount";
            type: "uint256";
        }];
        indexed: false;
        internalType: "struct SpentItem[]";
        name: "offer";
        type: "tuple[]";
    }, {
        components: readonly [{
            internalType: "enum ItemType";
            name: "itemType";
            type: "uint8";
        }, {
            internalType: "address";
            name: "token";
            type: "address";
        }, {
            internalType: "uint256";
            name: "identifier";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "amount";
            type: "uint256";
        }, {
            internalType: "address payable";
            name: "recipient";
            type: "address";
        }];
        indexed: false;
        internalType: "struct ReceivedItem[]";
        name: "consideration";
        type: "tuple[]";
    }];
    name: "OrderFulfilled";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "bytes32";
        name: "orderHash";
        type: "bytes32";
    }, {
        components: readonly [{
            internalType: "address";
            name: "offerer";
            type: "address";
        }, {
            internalType: "address";
            name: "zone";
            type: "address";
        }, {
            components: readonly [{
                internalType: "enum ItemType";
                name: "itemType";
                type: "uint8";
            }, {
                internalType: "address";
                name: "token";
                type: "address";
            }, {
                internalType: "uint256";
                name: "identifierOrCriteria";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "startAmount";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endAmount";
                type: "uint256";
            }];
            internalType: "struct OfferItem[]";
            name: "offer";
            type: "tuple[]";
        }, {
            components: readonly [{
                internalType: "enum ItemType";
                name: "itemType";
                type: "uint8";
            }, {
                internalType: "address";
                name: "token";
                type: "address";
            }, {
                internalType: "uint256";
                name: "identifierOrCriteria";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "startAmount";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endAmount";
                type: "uint256";
            }, {
                internalType: "address payable";
                name: "recipient";
                type: "address";
            }];
            internalType: "struct ConsiderationItem[]";
            name: "consideration";
            type: "tuple[]";
        }, {
            internalType: "enum OrderType";
            name: "orderType";
            type: "uint8";
        }, {
            internalType: "uint256";
            name: "startTime";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "endTime";
            type: "uint256";
        }, {
            internalType: "bytes32";
            name: "zoneHash";
            type: "bytes32";
        }, {
            internalType: "uint256";
            name: "salt";
            type: "uint256";
        }, {
            internalType: "bytes32";
            name: "conduitKey";
            type: "bytes32";
        }, {
            internalType: "uint256";
            name: "totalOriginalConsiderationItems";
            type: "uint256";
        }];
        indexed: false;
        internalType: "struct OrderParameters";
        name: "orderParameters";
        type: "tuple";
    }];
    name: "OrderValidated";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "bytes32[]";
        name: "orderHashes";
        type: "bytes32[]";
    }];
    name: "OrdersMatched";
    type: "event";
}, {
    inputs: readonly [{
        components: readonly [{
            internalType: "address";
            name: "offerer";
            type: "address";
        }, {
            internalType: "address";
            name: "zone";
            type: "address";
        }, {
            components: readonly [{
                internalType: "enum ItemType";
                name: "itemType";
                type: "uint8";
            }, {
                internalType: "address";
                name: "token";
                type: "address";
            }, {
                internalType: "uint256";
                name: "identifierOrCriteria";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "startAmount";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endAmount";
                type: "uint256";
            }];
            internalType: "struct OfferItem[]";
            name: "offer";
            type: "tuple[]";
        }, {
            components: readonly [{
                internalType: "enum ItemType";
                name: "itemType";
                type: "uint8";
            }, {
                internalType: "address";
                name: "token";
                type: "address";
            }, {
                internalType: "uint256";
                name: "identifierOrCriteria";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "startAmount";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endAmount";
                type: "uint256";
            }, {
                internalType: "address payable";
                name: "recipient";
                type: "address";
            }];
            internalType: "struct ConsiderationItem[]";
            name: "consideration";
            type: "tuple[]";
        }, {
            internalType: "enum OrderType";
            name: "orderType";
            type: "uint8";
        }, {
            internalType: "uint256";
            name: "startTime";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "endTime";
            type: "uint256";
        }, {
            internalType: "bytes32";
            name: "zoneHash";
            type: "bytes32";
        }, {
            internalType: "uint256";
            name: "salt";
            type: "uint256";
        }, {
            internalType: "bytes32";
            name: "conduitKey";
            type: "bytes32";
        }, {
            internalType: "uint256";
            name: "counter";
            type: "uint256";
        }];
        internalType: "struct OrderComponents[]";
        name: "orders";
        type: "tuple[]";
    }];
    name: "cancel";
    outputs: readonly [{
        internalType: "bool";
        name: "cancelled";
        type: "bool";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            components: readonly [{
                internalType: "address";
                name: "offerer";
                type: "address";
            }, {
                internalType: "address";
                name: "zone";
                type: "address";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }];
                internalType: "struct OfferItem[]";
                name: "offer";
                type: "tuple[]";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }, {
                    internalType: "address payable";
                    name: "recipient";
                    type: "address";
                }];
                internalType: "struct ConsiderationItem[]";
                name: "consideration";
                type: "tuple[]";
            }, {
                internalType: "enum OrderType";
                name: "orderType";
                type: "uint8";
            }, {
                internalType: "uint256";
                name: "startTime";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endTime";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "zoneHash";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "salt";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "conduitKey";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "totalOriginalConsiderationItems";
                type: "uint256";
            }];
            internalType: "struct OrderParameters";
            name: "parameters";
            type: "tuple";
        }, {
            internalType: "uint120";
            name: "numerator";
            type: "uint120";
        }, {
            internalType: "uint120";
            name: "denominator";
            type: "uint120";
        }, {
            internalType: "bytes";
            name: "signature";
            type: "bytes";
        }, {
            internalType: "bytes";
            name: "extraData";
            type: "bytes";
        }];
        internalType: "struct AdvancedOrder";
        name: "";
        type: "tuple";
    }, {
        components: readonly [{
            internalType: "uint256";
            name: "orderIndex";
            type: "uint256";
        }, {
            internalType: "enum Side";
            name: "side";
            type: "uint8";
        }, {
            internalType: "uint256";
            name: "index";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "identifier";
            type: "uint256";
        }, {
            internalType: "bytes32[]";
            name: "criteriaProof";
            type: "bytes32[]";
        }];
        internalType: "struct CriteriaResolver[]";
        name: "";
        type: "tuple[]";
    }, {
        internalType: "bytes32";
        name: "fulfillerConduitKey";
        type: "bytes32";
    }, {
        internalType: "address";
        name: "recipient";
        type: "address";
    }];
    name: "fulfillAdvancedOrder";
    outputs: readonly [{
        internalType: "bool";
        name: "fulfilled";
        type: "bool";
    }];
    stateMutability: "payable";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            components: readonly [{
                internalType: "address";
                name: "offerer";
                type: "address";
            }, {
                internalType: "address";
                name: "zone";
                type: "address";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }];
                internalType: "struct OfferItem[]";
                name: "offer";
                type: "tuple[]";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }, {
                    internalType: "address payable";
                    name: "recipient";
                    type: "address";
                }];
                internalType: "struct ConsiderationItem[]";
                name: "consideration";
                type: "tuple[]";
            }, {
                internalType: "enum OrderType";
                name: "orderType";
                type: "uint8";
            }, {
                internalType: "uint256";
                name: "startTime";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endTime";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "zoneHash";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "salt";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "conduitKey";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "totalOriginalConsiderationItems";
                type: "uint256";
            }];
            internalType: "struct OrderParameters";
            name: "parameters";
            type: "tuple";
        }, {
            internalType: "uint120";
            name: "numerator";
            type: "uint120";
        }, {
            internalType: "uint120";
            name: "denominator";
            type: "uint120";
        }, {
            internalType: "bytes";
            name: "signature";
            type: "bytes";
        }, {
            internalType: "bytes";
            name: "extraData";
            type: "bytes";
        }];
        internalType: "struct AdvancedOrder[]";
        name: "";
        type: "tuple[]";
    }, {
        components: readonly [{
            internalType: "uint256";
            name: "orderIndex";
            type: "uint256";
        }, {
            internalType: "enum Side";
            name: "side";
            type: "uint8";
        }, {
            internalType: "uint256";
            name: "index";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "identifier";
            type: "uint256";
        }, {
            internalType: "bytes32[]";
            name: "criteriaProof";
            type: "bytes32[]";
        }];
        internalType: "struct CriteriaResolver[]";
        name: "";
        type: "tuple[]";
    }, {
        components: readonly [{
            internalType: "uint256";
            name: "orderIndex";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "itemIndex";
            type: "uint256";
        }];
        internalType: "struct FulfillmentComponent[][]";
        name: "";
        type: "tuple[][]";
    }, {
        components: readonly [{
            internalType: "uint256";
            name: "orderIndex";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "itemIndex";
            type: "uint256";
        }];
        internalType: "struct FulfillmentComponent[][]";
        name: "";
        type: "tuple[][]";
    }, {
        internalType: "bytes32";
        name: "fulfillerConduitKey";
        type: "bytes32";
    }, {
        internalType: "address";
        name: "recipient";
        type: "address";
    }, {
        internalType: "uint256";
        name: "maximumFulfilled";
        type: "uint256";
    }];
    name: "fulfillAvailableAdvancedOrders";
    outputs: readonly [{
        internalType: "bool[]";
        name: "";
        type: "bool[]";
    }, {
        components: readonly [{
            components: readonly [{
                internalType: "enum ItemType";
                name: "itemType";
                type: "uint8";
            }, {
                internalType: "address";
                name: "token";
                type: "address";
            }, {
                internalType: "uint256";
                name: "identifier";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "amount";
                type: "uint256";
            }, {
                internalType: "address payable";
                name: "recipient";
                type: "address";
            }];
            internalType: "struct ReceivedItem";
            name: "item";
            type: "tuple";
        }, {
            internalType: "address";
            name: "offerer";
            type: "address";
        }, {
            internalType: "bytes32";
            name: "conduitKey";
            type: "bytes32";
        }];
        internalType: "struct Execution[]";
        name: "";
        type: "tuple[]";
    }];
    stateMutability: "payable";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            components: readonly [{
                internalType: "address";
                name: "offerer";
                type: "address";
            }, {
                internalType: "address";
                name: "zone";
                type: "address";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }];
                internalType: "struct OfferItem[]";
                name: "offer";
                type: "tuple[]";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }, {
                    internalType: "address payable";
                    name: "recipient";
                    type: "address";
                }];
                internalType: "struct ConsiderationItem[]";
                name: "consideration";
                type: "tuple[]";
            }, {
                internalType: "enum OrderType";
                name: "orderType";
                type: "uint8";
            }, {
                internalType: "uint256";
                name: "startTime";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endTime";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "zoneHash";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "salt";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "conduitKey";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "totalOriginalConsiderationItems";
                type: "uint256";
            }];
            internalType: "struct OrderParameters";
            name: "parameters";
            type: "tuple";
        }, {
            internalType: "bytes";
            name: "signature";
            type: "bytes";
        }];
        internalType: "struct Order[]";
        name: "";
        type: "tuple[]";
    }, {
        components: readonly [{
            internalType: "uint256";
            name: "orderIndex";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "itemIndex";
            type: "uint256";
        }];
        internalType: "struct FulfillmentComponent[][]";
        name: "";
        type: "tuple[][]";
    }, {
        components: readonly [{
            internalType: "uint256";
            name: "orderIndex";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "itemIndex";
            type: "uint256";
        }];
        internalType: "struct FulfillmentComponent[][]";
        name: "";
        type: "tuple[][]";
    }, {
        internalType: "bytes32";
        name: "fulfillerConduitKey";
        type: "bytes32";
    }, {
        internalType: "uint256";
        name: "maximumFulfilled";
        type: "uint256";
    }];
    name: "fulfillAvailableOrders";
    outputs: readonly [{
        internalType: "bool[]";
        name: "";
        type: "bool[]";
    }, {
        components: readonly [{
            components: readonly [{
                internalType: "enum ItemType";
                name: "itemType";
                type: "uint8";
            }, {
                internalType: "address";
                name: "token";
                type: "address";
            }, {
                internalType: "uint256";
                name: "identifier";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "amount";
                type: "uint256";
            }, {
                internalType: "address payable";
                name: "recipient";
                type: "address";
            }];
            internalType: "struct ReceivedItem";
            name: "item";
            type: "tuple";
        }, {
            internalType: "address";
            name: "offerer";
            type: "address";
        }, {
            internalType: "bytes32";
            name: "conduitKey";
            type: "bytes32";
        }];
        internalType: "struct Execution[]";
        name: "";
        type: "tuple[]";
    }];
    stateMutability: "payable";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            internalType: "address";
            name: "considerationToken";
            type: "address";
        }, {
            internalType: "uint256";
            name: "considerationIdentifier";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "considerationAmount";
            type: "uint256";
        }, {
            internalType: "address payable";
            name: "offerer";
            type: "address";
        }, {
            internalType: "address";
            name: "zone";
            type: "address";
        }, {
            internalType: "address";
            name: "offerToken";
            type: "address";
        }, {
            internalType: "uint256";
            name: "offerIdentifier";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "offerAmount";
            type: "uint256";
        }, {
            internalType: "enum BasicOrderType";
            name: "basicOrderType";
            type: "uint8";
        }, {
            internalType: "uint256";
            name: "startTime";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "endTime";
            type: "uint256";
        }, {
            internalType: "bytes32";
            name: "zoneHash";
            type: "bytes32";
        }, {
            internalType: "uint256";
            name: "salt";
            type: "uint256";
        }, {
            internalType: "bytes32";
            name: "offererConduitKey";
            type: "bytes32";
        }, {
            internalType: "bytes32";
            name: "fulfillerConduitKey";
            type: "bytes32";
        }, {
            internalType: "uint256";
            name: "totalOriginalAdditionalRecipients";
            type: "uint256";
        }, {
            components: readonly [{
                internalType: "uint256";
                name: "amount";
                type: "uint256";
            }, {
                internalType: "address payable";
                name: "recipient";
                type: "address";
            }];
            internalType: "struct AdditionalRecipient[]";
            name: "additionalRecipients";
            type: "tuple[]";
        }, {
            internalType: "bytes";
            name: "signature";
            type: "bytes";
        }];
        internalType: "struct BasicOrderParameters";
        name: "parameters";
        type: "tuple";
    }];
    name: "fulfillBasicOrder";
    outputs: readonly [{
        internalType: "bool";
        name: "fulfilled";
        type: "bool";
    }];
    stateMutability: "payable";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            internalType: "address";
            name: "considerationToken";
            type: "address";
        }, {
            internalType: "uint256";
            name: "considerationIdentifier";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "considerationAmount";
            type: "uint256";
        }, {
            internalType: "address payable";
            name: "offerer";
            type: "address";
        }, {
            internalType: "address";
            name: "zone";
            type: "address";
        }, {
            internalType: "address";
            name: "offerToken";
            type: "address";
        }, {
            internalType: "uint256";
            name: "offerIdentifier";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "offerAmount";
            type: "uint256";
        }, {
            internalType: "enum BasicOrderType";
            name: "basicOrderType";
            type: "uint8";
        }, {
            internalType: "uint256";
            name: "startTime";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "endTime";
            type: "uint256";
        }, {
            internalType: "bytes32";
            name: "zoneHash";
            type: "bytes32";
        }, {
            internalType: "uint256";
            name: "salt";
            type: "uint256";
        }, {
            internalType: "bytes32";
            name: "offererConduitKey";
            type: "bytes32";
        }, {
            internalType: "bytes32";
            name: "fulfillerConduitKey";
            type: "bytes32";
        }, {
            internalType: "uint256";
            name: "totalOriginalAdditionalRecipients";
            type: "uint256";
        }, {
            components: readonly [{
                internalType: "uint256";
                name: "amount";
                type: "uint256";
            }, {
                internalType: "address payable";
                name: "recipient";
                type: "address";
            }];
            internalType: "struct AdditionalRecipient[]";
            name: "additionalRecipients";
            type: "tuple[]";
        }, {
            internalType: "bytes";
            name: "signature";
            type: "bytes";
        }];
        internalType: "struct BasicOrderParameters";
        name: "parameters";
        type: "tuple";
    }];
    name: "fulfillBasicOrder_efficient_6GL6yc";
    outputs: readonly [{
        internalType: "bool";
        name: "fulfilled";
        type: "bool";
    }];
    stateMutability: "payable";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            components: readonly [{
                internalType: "address";
                name: "offerer";
                type: "address";
            }, {
                internalType: "address";
                name: "zone";
                type: "address";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }];
                internalType: "struct OfferItem[]";
                name: "offer";
                type: "tuple[]";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }, {
                    internalType: "address payable";
                    name: "recipient";
                    type: "address";
                }];
                internalType: "struct ConsiderationItem[]";
                name: "consideration";
                type: "tuple[]";
            }, {
                internalType: "enum OrderType";
                name: "orderType";
                type: "uint8";
            }, {
                internalType: "uint256";
                name: "startTime";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endTime";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "zoneHash";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "salt";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "conduitKey";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "totalOriginalConsiderationItems";
                type: "uint256";
            }];
            internalType: "struct OrderParameters";
            name: "parameters";
            type: "tuple";
        }, {
            internalType: "bytes";
            name: "signature";
            type: "bytes";
        }];
        internalType: "struct Order";
        name: "";
        type: "tuple";
    }, {
        internalType: "bytes32";
        name: "fulfillerConduitKey";
        type: "bytes32";
    }];
    name: "fulfillOrder";
    outputs: readonly [{
        internalType: "bool";
        name: "fulfilled";
        type: "bool";
    }];
    stateMutability: "payable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "contractOfferer";
        type: "address";
    }];
    name: "getContractOffererNonce";
    outputs: readonly [{
        internalType: "uint256";
        name: "nonce";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "offerer";
        type: "address";
    }];
    name: "getCounter";
    outputs: readonly [{
        internalType: "uint256";
        name: "counter";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            internalType: "address";
            name: "offerer";
            type: "address";
        }, {
            internalType: "address";
            name: "zone";
            type: "address";
        }, {
            components: readonly [{
                internalType: "enum ItemType";
                name: "itemType";
                type: "uint8";
            }, {
                internalType: "address";
                name: "token";
                type: "address";
            }, {
                internalType: "uint256";
                name: "identifierOrCriteria";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "startAmount";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endAmount";
                type: "uint256";
            }];
            internalType: "struct OfferItem[]";
            name: "offer";
            type: "tuple[]";
        }, {
            components: readonly [{
                internalType: "enum ItemType";
                name: "itemType";
                type: "uint8";
            }, {
                internalType: "address";
                name: "token";
                type: "address";
            }, {
                internalType: "uint256";
                name: "identifierOrCriteria";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "startAmount";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endAmount";
                type: "uint256";
            }, {
                internalType: "address payable";
                name: "recipient";
                type: "address";
            }];
            internalType: "struct ConsiderationItem[]";
            name: "consideration";
            type: "tuple[]";
        }, {
            internalType: "enum OrderType";
            name: "orderType";
            type: "uint8";
        }, {
            internalType: "uint256";
            name: "startTime";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "endTime";
            type: "uint256";
        }, {
            internalType: "bytes32";
            name: "zoneHash";
            type: "bytes32";
        }, {
            internalType: "uint256";
            name: "salt";
            type: "uint256";
        }, {
            internalType: "bytes32";
            name: "conduitKey";
            type: "bytes32";
        }, {
            internalType: "uint256";
            name: "counter";
            type: "uint256";
        }];
        internalType: "struct OrderComponents";
        name: "";
        type: "tuple";
    }];
    name: "getOrderHash";
    outputs: readonly [{
        internalType: "bytes32";
        name: "orderHash";
        type: "bytes32";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "bytes32";
        name: "orderHash";
        type: "bytes32";
    }];
    name: "getOrderStatus";
    outputs: readonly [{
        internalType: "bool";
        name: "isValidated";
        type: "bool";
    }, {
        internalType: "bool";
        name: "isCancelled";
        type: "bool";
    }, {
        internalType: "uint256";
        name: "totalFilled";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "totalSize";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "incrementCounter";
    outputs: readonly [{
        internalType: "uint256";
        name: "newCounter";
        type: "uint256";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [];
    name: "information";
    outputs: readonly [{
        internalType: "string";
        name: "version";
        type: "string";
    }, {
        internalType: "bytes32";
        name: "domainSeparator";
        type: "bytes32";
    }, {
        internalType: "address";
        name: "conduitController";
        type: "address";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            components: readonly [{
                internalType: "address";
                name: "offerer";
                type: "address";
            }, {
                internalType: "address";
                name: "zone";
                type: "address";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }];
                internalType: "struct OfferItem[]";
                name: "offer";
                type: "tuple[]";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }, {
                    internalType: "address payable";
                    name: "recipient";
                    type: "address";
                }];
                internalType: "struct ConsiderationItem[]";
                name: "consideration";
                type: "tuple[]";
            }, {
                internalType: "enum OrderType";
                name: "orderType";
                type: "uint8";
            }, {
                internalType: "uint256";
                name: "startTime";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endTime";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "zoneHash";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "salt";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "conduitKey";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "totalOriginalConsiderationItems";
                type: "uint256";
            }];
            internalType: "struct OrderParameters";
            name: "parameters";
            type: "tuple";
        }, {
            internalType: "uint120";
            name: "numerator";
            type: "uint120";
        }, {
            internalType: "uint120";
            name: "denominator";
            type: "uint120";
        }, {
            internalType: "bytes";
            name: "signature";
            type: "bytes";
        }, {
            internalType: "bytes";
            name: "extraData";
            type: "bytes";
        }];
        internalType: "struct AdvancedOrder[]";
        name: "";
        type: "tuple[]";
    }, {
        components: readonly [{
            internalType: "uint256";
            name: "orderIndex";
            type: "uint256";
        }, {
            internalType: "enum Side";
            name: "side";
            type: "uint8";
        }, {
            internalType: "uint256";
            name: "index";
            type: "uint256";
        }, {
            internalType: "uint256";
            name: "identifier";
            type: "uint256";
        }, {
            internalType: "bytes32[]";
            name: "criteriaProof";
            type: "bytes32[]";
        }];
        internalType: "struct CriteriaResolver[]";
        name: "";
        type: "tuple[]";
    }, {
        components: readonly [{
            components: readonly [{
                internalType: "uint256";
                name: "orderIndex";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "itemIndex";
                type: "uint256";
            }];
            internalType: "struct FulfillmentComponent[]";
            name: "offerComponents";
            type: "tuple[]";
        }, {
            components: readonly [{
                internalType: "uint256";
                name: "orderIndex";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "itemIndex";
                type: "uint256";
            }];
            internalType: "struct FulfillmentComponent[]";
            name: "considerationComponents";
            type: "tuple[]";
        }];
        internalType: "struct Fulfillment[]";
        name: "";
        type: "tuple[]";
    }, {
        internalType: "address";
        name: "recipient";
        type: "address";
    }];
    name: "matchAdvancedOrders";
    outputs: readonly [{
        components: readonly [{
            components: readonly [{
                internalType: "enum ItemType";
                name: "itemType";
                type: "uint8";
            }, {
                internalType: "address";
                name: "token";
                type: "address";
            }, {
                internalType: "uint256";
                name: "identifier";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "amount";
                type: "uint256";
            }, {
                internalType: "address payable";
                name: "recipient";
                type: "address";
            }];
            internalType: "struct ReceivedItem";
            name: "item";
            type: "tuple";
        }, {
            internalType: "address";
            name: "offerer";
            type: "address";
        }, {
            internalType: "bytes32";
            name: "conduitKey";
            type: "bytes32";
        }];
        internalType: "struct Execution[]";
        name: "";
        type: "tuple[]";
    }];
    stateMutability: "payable";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            components: readonly [{
                internalType: "address";
                name: "offerer";
                type: "address";
            }, {
                internalType: "address";
                name: "zone";
                type: "address";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }];
                internalType: "struct OfferItem[]";
                name: "offer";
                type: "tuple[]";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }, {
                    internalType: "address payable";
                    name: "recipient";
                    type: "address";
                }];
                internalType: "struct ConsiderationItem[]";
                name: "consideration";
                type: "tuple[]";
            }, {
                internalType: "enum OrderType";
                name: "orderType";
                type: "uint8";
            }, {
                internalType: "uint256";
                name: "startTime";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endTime";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "zoneHash";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "salt";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "conduitKey";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "totalOriginalConsiderationItems";
                type: "uint256";
            }];
            internalType: "struct OrderParameters";
            name: "parameters";
            type: "tuple";
        }, {
            internalType: "bytes";
            name: "signature";
            type: "bytes";
        }];
        internalType: "struct Order[]";
        name: "";
        type: "tuple[]";
    }, {
        components: readonly [{
            components: readonly [{
                internalType: "uint256";
                name: "orderIndex";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "itemIndex";
                type: "uint256";
            }];
            internalType: "struct FulfillmentComponent[]";
            name: "offerComponents";
            type: "tuple[]";
        }, {
            components: readonly [{
                internalType: "uint256";
                name: "orderIndex";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "itemIndex";
                type: "uint256";
            }];
            internalType: "struct FulfillmentComponent[]";
            name: "considerationComponents";
            type: "tuple[]";
        }];
        internalType: "struct Fulfillment[]";
        name: "";
        type: "tuple[]";
    }];
    name: "matchOrders";
    outputs: readonly [{
        components: readonly [{
            components: readonly [{
                internalType: "enum ItemType";
                name: "itemType";
                type: "uint8";
            }, {
                internalType: "address";
                name: "token";
                type: "address";
            }, {
                internalType: "uint256";
                name: "identifier";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "amount";
                type: "uint256";
            }, {
                internalType: "address payable";
                name: "recipient";
                type: "address";
            }];
            internalType: "struct ReceivedItem";
            name: "item";
            type: "tuple";
        }, {
            internalType: "address";
            name: "offerer";
            type: "address";
        }, {
            internalType: "bytes32";
            name: "conduitKey";
            type: "bytes32";
        }];
        internalType: "struct Execution[]";
        name: "";
        type: "tuple[]";
    }];
    stateMutability: "payable";
    type: "function";
}, {
    inputs: readonly [];
    name: "name";
    outputs: readonly [{
        internalType: "string";
        name: "";
        type: "string";
    }];
    stateMutability: "pure";
    type: "function";
}, {
    inputs: readonly [{
        components: readonly [{
            components: readonly [{
                internalType: "address";
                name: "offerer";
                type: "address";
            }, {
                internalType: "address";
                name: "zone";
                type: "address";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }];
                internalType: "struct OfferItem[]";
                name: "offer";
                type: "tuple[]";
            }, {
                components: readonly [{
                    internalType: "enum ItemType";
                    name: "itemType";
                    type: "uint8";
                }, {
                    internalType: "address";
                    name: "token";
                    type: "address";
                }, {
                    internalType: "uint256";
                    name: "identifierOrCriteria";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "startAmount";
                    type: "uint256";
                }, {
                    internalType: "uint256";
                    name: "endAmount";
                    type: "uint256";
                }, {
                    internalType: "address payable";
                    name: "recipient";
                    type: "address";
                }];
                internalType: "struct ConsiderationItem[]";
                name: "consideration";
                type: "tuple[]";
            }, {
                internalType: "enum OrderType";
                name: "orderType";
                type: "uint8";
            }, {
                internalType: "uint256";
                name: "startTime";
                type: "uint256";
            }, {
                internalType: "uint256";
                name: "endTime";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "zoneHash";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "salt";
                type: "uint256";
            }, {
                internalType: "bytes32";
                name: "conduitKey";
                type: "bytes32";
            }, {
                internalType: "uint256";
                name: "totalOriginalConsiderationItems";
                type: "uint256";
            }];
            internalType: "struct OrderParameters";
            name: "parameters";
            type: "tuple";
        }, {
            internalType: "bytes";
            name: "signature";
            type: "bytes";
        }];
        internalType: "struct Order[]";
        name: "";
        type: "tuple[]";
    }];
    name: "validate";
    outputs: readonly [{
        internalType: "bool";
        name: "";
        type: "bool";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    stateMutability: "payable";
    type: "receive";
}]
address: `0x${string}`
bcClient: {}

Type declaration

    wallet: {}

    Type declaration

      contract: GetContractReturnType<readonly [{
          inputs: readonly [{
              internalType: "address";
              name: "conduitController";
              type: "address";
          }];
          stateMutability: "nonpayable";
          type: "constructor";
      }, {
          inputs: readonly [];
          name: "BadContractSignature";
          type: "error";
      }, {
          inputs: readonly [];
          name: "BadFraction";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "token";
              type: "address";
          }, {
              internalType: "address";
              name: "from";
              type: "address";
          }, {
              internalType: "address";
              name: "to";
              type: "address";
          }, {
              internalType: "uint256";
              name: "amount";
              type: "uint256";
          }];
          name: "BadReturnValueFromERC20OnTransfer";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint8";
              name: "v";
              type: "uint8";
          }];
          name: "BadSignatureV";
          type: "error";
      }, {
          inputs: readonly [];
          name: "CannotCancelOrder";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ConsiderationCriteriaResolverOutOfRange";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ConsiderationLengthNotEqualToTotalOriginal";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "orderIndex";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "considerationIndex";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "shortfallAmount";
              type: "uint256";
          }];
          name: "ConsiderationNotMet";
          type: "error";
      }, {
          inputs: readonly [];
          name: "CriteriaNotEnabledForItem";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "token";
              type: "address";
          }, {
              internalType: "address";
              name: "from";
              type: "address";
          }, {
              internalType: "address";
              name: "to";
              type: "address";
          }, {
              internalType: "uint256[]";
              name: "identifiers";
              type: "uint256[]";
          }, {
              internalType: "uint256[]";
              name: "amounts";
              type: "uint256[]";
          }];
          name: "ERC1155BatchTransferGenericFailure";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InexactFraction";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InsufficientNativeTokensSupplied";
          type: "error";
      }, {
          inputs: readonly [];
          name: "Invalid1155BatchTransferEncoding";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidBasicOrderParameterEncoding";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "conduit";
              type: "address";
          }];
          name: "InvalidCallToConduit";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "conduitKey";
              type: "bytes32";
          }, {
              internalType: "address";
              name: "conduit";
              type: "address";
          }];
          name: "InvalidConduit";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "InvalidContractOrder";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "amount";
              type: "uint256";
          }];
          name: "InvalidERC721TransferAmount";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidFulfillmentComponentData";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "value";
              type: "uint256";
          }];
          name: "InvalidMsgValue";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidNativeOfferItem";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidProof";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "InvalidRestrictedOrder";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidSignature";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidSigner";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "startTime";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "endTime";
              type: "uint256";
          }];
          name: "InvalidTime";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "fulfillmentIndex";
              type: "uint256";
          }];
          name: "MismatchedFulfillmentOfferAndConsiderationComponents";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "enum Side";
              name: "side";
              type: "uint8";
          }];
          name: "MissingFulfillmentComponentOnAggregation";
          type: "error";
      }, {
          inputs: readonly [];
          name: "MissingItemAmount";
          type: "error";
      }, {
          inputs: readonly [];
          name: "MissingOriginalConsiderationItems";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "account";
              type: "address";
          }, {
              internalType: "uint256";
              name: "amount";
              type: "uint256";
          }];
          name: "NativeTokenTransferGenericFailure";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "account";
              type: "address";
          }];
          name: "NoContract";
          type: "error";
      }, {
          inputs: readonly [];
          name: "NoReentrantCalls";
          type: "error";
      }, {
          inputs: readonly [];
          name: "NoSpecifiedOrdersAvailable";
          type: "error";
      }, {
          inputs: readonly [];
          name: "OfferAndConsiderationRequiredOnFulfillment";
          type: "error";
      }, {
          inputs: readonly [];
          name: "OfferCriteriaResolverOutOfRange";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "OrderAlreadyFilled";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "enum Side";
              name: "side";
              type: "uint8";
          }];
          name: "OrderCriteriaResolverOutOfRange";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "OrderIsCancelled";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "OrderPartiallyFilled";
          type: "error";
      }, {
          inputs: readonly [];
          name: "PartialFillsNotEnabledForOrder";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "token";
              type: "address";
          }, {
              internalType: "address";
              name: "from";
              type: "address";
          }, {
              internalType: "address";
              name: "to";
              type: "address";
          }, {
              internalType: "uint256";
              name: "identifier";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "amount";
              type: "uint256";
          }];
          name: "TokenTransferGenericFailure";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "orderIndex";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "considerationIndex";
              type: "uint256";
          }];
          name: "UnresolvedConsiderationCriteria";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "orderIndex";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "offerIndex";
              type: "uint256";
          }];
          name: "UnresolvedOfferCriteria";
          type: "error";
      }, {
          inputs: readonly [];
          name: "UnusedItemParameters";
          type: "error";
      }, {
          anonymous: false;
          inputs: readonly [{
              indexed: false;
              internalType: "uint256";
              name: "newCounter";
              type: "uint256";
          }, {
              indexed: true;
              internalType: "address";
              name: "offerer";
              type: "address";
          }];
          name: "CounterIncremented";
          type: "event";
      }, {
          anonymous: false;
          inputs: readonly [{
              indexed: false;
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }, {
              indexed: true;
              internalType: "address";
              name: "offerer";
              type: "address";
          }, {
              indexed: true;
              internalType: "address";
              name: "zone";
              type: "address";
          }];
          name: "OrderCancelled";
          type: "event";
      }, {
          anonymous: false;
          inputs: readonly [{
              indexed: false;
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }, {
              indexed: true;
              internalType: "address";
              name: "offerer";
              type: "address";
          }, {
              indexed: true;
              internalType: "address";
              name: "zone";
              type: "address";
          }, {
              indexed: false;
              internalType: "address";
              name: "recipient";
              type: "address";
          }, {
              components: readonly [{
                  internalType: "enum ItemType";
                  name: "itemType";
                  type: "uint8";
              }, {
                  internalType: "address";
                  name: "token";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }];
              indexed: false;
              internalType: "struct SpentItem[]";
              name: "offer";
              type: "tuple[]";
          }, {
              components: readonly [{
                  internalType: "enum ItemType";
                  name: "itemType";
                  type: "uint8";
              }, {
                  internalType: "address";
                  name: "token";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }, {
                  internalType: "address payable";
                  name: "recipient";
                  type: "address";
              }];
              indexed: false;
              internalType: "struct ReceivedItem[]";
              name: "consideration";
              type: "tuple[]";
          }];
          name: "OrderFulfilled";
          type: "event";
      }, {
          anonymous: false;
          inputs: readonly [{
              indexed: false;
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }, {
              components: readonly [{
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }];
                  internalType: "struct OfferItem[]";
                  name: "offer";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ConsiderationItem[]";
                  name: "consideration";
                  type: "tuple[]";
              }, {
                  internalType: "enum OrderType";
                  name: "orderType";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "zoneHash";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "salt";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "totalOriginalConsiderationItems";
                  type: "uint256";
              }];
              indexed: false;
              internalType: "struct OrderParameters";
              name: "orderParameters";
              type: "tuple";
          }];
          name: "OrderValidated";
          type: "event";
      }, {
          anonymous: false;
          inputs: readonly [{
              indexed: false;
              internalType: "bytes32[]";
              name: "orderHashes";
              type: "bytes32[]";
          }];
          name: "OrdersMatched";
          type: "event";
      }, {
          inputs: readonly [{
              components: readonly [{
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }];
                  internalType: "struct OfferItem[]";
                  name: "offer";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ConsiderationItem[]";
                  name: "consideration";
                  type: "tuple[]";
              }, {
                  internalType: "enum OrderType";
                  name: "orderType";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "zoneHash";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "salt";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "counter";
                  type: "uint256";
              }];
              internalType: "struct OrderComponents[]";
              name: "orders";
              type: "tuple[]";
          }];
          name: "cancel";
          outputs: readonly [{
              internalType: "bool";
              name: "cancelled";
              type: "bool";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "uint120";
                  name: "numerator";
                  type: "uint120";
              }, {
                  internalType: "uint120";
                  name: "denominator";
                  type: "uint120";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }, {
                  internalType: "bytes";
                  name: "extraData";
                  type: "bytes";
              }];
              internalType: "struct AdvancedOrder";
              name: "";
              type: "tuple";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "enum Side";
                  name: "side";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "index";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "bytes32[]";
                  name: "criteriaProof";
                  type: "bytes32[]";
              }];
              internalType: "struct CriteriaResolver[]";
              name: "";
              type: "tuple[]";
          }, {
              internalType: "bytes32";
              name: "fulfillerConduitKey";
              type: "bytes32";
          }, {
              internalType: "address";
              name: "recipient";
              type: "address";
          }];
          name: "fulfillAdvancedOrder";
          outputs: readonly [{
              internalType: "bool";
              name: "fulfilled";
              type: "bool";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "uint120";
                  name: "numerator";
                  type: "uint120";
              }, {
                  internalType: "uint120";
                  name: "denominator";
                  type: "uint120";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }, {
                  internalType: "bytes";
                  name: "extraData";
                  type: "bytes";
              }];
              internalType: "struct AdvancedOrder[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "enum Side";
                  name: "side";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "index";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "bytes32[]";
                  name: "criteriaProof";
                  type: "bytes32[]";
              }];
              internalType: "struct CriteriaResolver[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "itemIndex";
                  type: "uint256";
              }];
              internalType: "struct FulfillmentComponent[][]";
              name: "";
              type: "tuple[][]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "itemIndex";
                  type: "uint256";
              }];
              internalType: "struct FulfillmentComponent[][]";
              name: "";
              type: "tuple[][]";
          }, {
              internalType: "bytes32";
              name: "fulfillerConduitKey";
              type: "bytes32";
          }, {
              internalType: "address";
              name: "recipient";
              type: "address";
          }, {
              internalType: "uint256";
              name: "maximumFulfilled";
              type: "uint256";
          }];
          name: "fulfillAvailableAdvancedOrders";
          outputs: readonly [{
              internalType: "bool[]";
              name: "";
              type: "bool[]";
          }, {
              components: readonly [{
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ReceivedItem";
                  name: "item";
                  type: "tuple";
              }, {
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }];
              internalType: "struct Execution[]";
              name: "";
              type: "tuple[]";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct Order[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "itemIndex";
                  type: "uint256";
              }];
              internalType: "struct FulfillmentComponent[][]";
              name: "";
              type: "tuple[][]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "itemIndex";
                  type: "uint256";
              }];
              internalType: "struct FulfillmentComponent[][]";
              name: "";
              type: "tuple[][]";
          }, {
              internalType: "bytes32";
              name: "fulfillerConduitKey";
              type: "bytes32";
          }, {
              internalType: "uint256";
              name: "maximumFulfilled";
              type: "uint256";
          }];
          name: "fulfillAvailableOrders";
          outputs: readonly [{
              internalType: "bool[]";
              name: "";
              type: "bool[]";
          }, {
              components: readonly [{
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ReceivedItem";
                  name: "item";
                  type: "tuple";
              }, {
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }];
              internalType: "struct Execution[]";
              name: "";
              type: "tuple[]";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  internalType: "address";
                  name: "considerationToken";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "considerationIdentifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "considerationAmount";
                  type: "uint256";
              }, {
                  internalType: "address payable";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "offerToken";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "offerIdentifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "offerAmount";
                  type: "uint256";
              }, {
                  internalType: "enum BasicOrderType";
                  name: "basicOrderType";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "zoneHash";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "salt";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "offererConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "totalOriginalAdditionalRecipients";
                  type: "uint256";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct AdditionalRecipient[]";
                  name: "additionalRecipients";
                  type: "tuple[]";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct BasicOrderParameters";
              name: "parameters";
              type: "tuple";
          }];
          name: "fulfillBasicOrder";
          outputs: readonly [{
              internalType: "bool";
              name: "fulfilled";
              type: "bool";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  internalType: "address";
                  name: "considerationToken";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "considerationIdentifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "considerationAmount";
                  type: "uint256";
              }, {
                  internalType: "address payable";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "offerToken";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "offerIdentifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "offerAmount";
                  type: "uint256";
              }, {
                  internalType: "enum BasicOrderType";
                  name: "basicOrderType";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "zoneHash";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "salt";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "offererConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "totalOriginalAdditionalRecipients";
                  type: "uint256";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct AdditionalRecipient[]";
                  name: "additionalRecipients";
                  type: "tuple[]";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct BasicOrderParameters";
              name: "parameters";
              type: "tuple";
          }];
          name: "fulfillBasicOrder_efficient_6GL6yc";
          outputs: readonly [{
              internalType: "bool";
              name: "fulfilled";
              type: "bool";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct Order";
              name: "";
              type: "tuple";
          }, {
              internalType: "bytes32";
              name: "fulfillerConduitKey";
              type: "bytes32";
          }];
          name: "fulfillOrder";
          outputs: readonly [{
              internalType: "bool";
              name: "fulfilled";
              type: "bool";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "contractOfferer";
              type: "address";
          }];
          name: "getContractOffererNonce";
          outputs: readonly [{
              internalType: "uint256";
              name: "nonce";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "offerer";
              type: "address";
          }];
          name: "getCounter";
          outputs: readonly [{
              internalType: "uint256";
              name: "counter";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }];
                  internalType: "struct OfferItem[]";
                  name: "offer";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ConsiderationItem[]";
                  name: "consideration";
                  type: "tuple[]";
              }, {
                  internalType: "enum OrderType";
                  name: "orderType";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "zoneHash";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "salt";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "counter";
                  type: "uint256";
              }];
              internalType: "struct OrderComponents";
              name: "";
              type: "tuple";
          }];
          name: "getOrderHash";
          outputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "getOrderStatus";
          outputs: readonly [{
              internalType: "bool";
              name: "isValidated";
              type: "bool";
          }, {
              internalType: "bool";
              name: "isCancelled";
              type: "bool";
          }, {
              internalType: "uint256";
              name: "totalFilled";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "totalSize";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "incrementCounter";
          outputs: readonly [{
              internalType: "uint256";
              name: "newCounter";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "information";
          outputs: readonly [{
              internalType: "string";
              name: "version";
              type: "string";
          }, {
              internalType: "bytes32";
              name: "domainSeparator";
              type: "bytes32";
          }, {
              internalType: "address";
              name: "conduitController";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "uint120";
                  name: "numerator";
                  type: "uint120";
              }, {
                  internalType: "uint120";
                  name: "denominator";
                  type: "uint120";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }, {
                  internalType: "bytes";
                  name: "extraData";
                  type: "bytes";
              }];
              internalType: "struct AdvancedOrder[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "enum Side";
                  name: "side";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "index";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "bytes32[]";
                  name: "criteriaProof";
                  type: "bytes32[]";
              }];
              internalType: "struct CriteriaResolver[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[]";
                  name: "offerComponents";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[]";
                  name: "considerationComponents";
                  type: "tuple[]";
              }];
              internalType: "struct Fulfillment[]";
              name: "";
              type: "tuple[]";
          }, {
              internalType: "address";
              name: "recipient";
              type: "address";
          }];
          name: "matchAdvancedOrders";
          outputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ReceivedItem";
                  name: "item";
                  type: "tuple";
              }, {
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }];
              internalType: "struct Execution[]";
              name: "";
              type: "tuple[]";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct Order[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[]";
                  name: "offerComponents";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[]";
                  name: "considerationComponents";
                  type: "tuple[]";
              }];
              internalType: "struct Fulfillment[]";
              name: "";
              type: "tuple[]";
          }];
          name: "matchOrders";
          outputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ReceivedItem";
                  name: "item";
                  type: "tuple";
              }, {
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }];
              internalType: "struct Execution[]";
              name: "";
              type: "tuple[]";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "name";
          outputs: readonly [{
              internalType: "string";
              name: "";
              type: "string";
          }];
          stateMutability: "pure";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct Order[]";
              name: "";
              type: "tuple[]";
          }];
          name: "validate";
          outputs: readonly [{
              internalType: "bool";
              name: "";
              type: "bool";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          stateMutability: "payable";
          type: "receive";
      }], {} | {}>
      safeContractWrite: {
          cancel: ((args, options?) => Promise<`0x${string}`>);
          fulfillAdvancedOrder: ((args, options?) => Promise<`0x${string}`>);
          fulfillAvailableAdvancedOrders: ((args, options?) => Promise<`0x${string}`>);
          fulfillAvailableOrders: ((args, options?) => Promise<`0x${string}`>);
          fulfillBasicOrder: ((args, options?) => Promise<`0x${string}`>);
          fulfillBasicOrder_efficient_6GL6yc: ((args, options?) => Promise<`0x${string}`>);
          fulfillOrder: ((args, options?) => Promise<`0x${string}`>);
          incrementCounter: ((args, options?) => Promise<`0x${string}`>);
          matchAdvancedOrders: ((args, options?) => Promise<`0x${string}`>);
          matchOrders: ((args, options?) => Promise<`0x${string}`>);
          validate: ((args, options?) => Promise<`0x${string}`>);
      }

      Type declaration

      • cancel: ((args, options?) => Promise<`0x${string}`>)
          • (args, options?): Promise<`0x${string}`>
          • Parameters

            • args: readonly [readonly {
                  offerer: `0x${string}`;
                  zone: `0x${string}`;
                  offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[];
                  consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[];
                  orderType: number;
                  startTime: bigint;
                  endTime: bigint;
                  zoneHash: `0x${string}`;
                  salt: bigint;
                  conduitKey: `0x${string}`;
                  counter: bigint;
              }[]] | readonly [readonly {
                  offerer: `0x${string}`;
                  zone: `0x${string}`;
                  offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[];
                  consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[];
                  orderType: number;
                  startTime: bigint;
                  endTime: bigint;
                  zoneHash: `0x${string}`;
                  salt: bigint;
                  conduitKey: `0x${string}`;
                  counter: bigint;
              }[]] & readonly [readonly {
                  offerer: `0x${string}`;
                  zone: `0x${string}`;
                  offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[];
                  consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[];
                  orderType: number;
                  startTime: bigint;
                  endTime: bigint;
                  zoneHash: `0x${string}`;
                  salt: bigint;
                  conduitKey: `0x${string}`;
                  counter: bigint;
              }[]]
            • Optional options: {
                  value?: bigint;
              }
              • Optional value?: bigint

            Returns Promise<`0x${string}`>

      • fulfillAdvancedOrder: ((args, options?) => Promise<`0x${string}`>)
          • (args, options?): Promise<`0x${string}`>
          • Parameters

            • args: readonly [{
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  numerator: bigint;
                  denominator: bigint;
                  signature: `0x${string}`;
                  extraData: `0x${string}`;
              }, readonly {
                  orderIndex: bigint;
                  side: number;
                  index: bigint;
                  identifier: bigint;
                  criteriaProof: readonly `0x${string}`[];
              }[], `0x${string}`, `0x${string}`] | readonly [{
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  numerator: bigint;
                  denominator: bigint;
                  signature: `0x${string}`;
                  extraData: `0x${string}`;
              }, readonly {
                  orderIndex: bigint;
                  side: number;
                  index: bigint;
                  identifier: bigint;
                  criteriaProof: readonly `0x${string}`[];
              }[], `0x${string}`, `0x${string}`] & readonly [{
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  numerator: bigint;
                  denominator: bigint;
                  signature: `0x${string}`;
                  extraData: `0x${string}`;
              }, readonly {
                  orderIndex: bigint;
                  side: number;
                  index: bigint;
                  identifier: bigint;
                  criteriaProof: readonly `0x${string}`[];
              }[], `0x${string}`, `0x${string}`]
            • Optional options: {
                  value?: bigint;
              }
              • Optional value?: bigint

            Returns Promise<`0x${string}`>

      • fulfillAvailableAdvancedOrders: ((args, options?) => Promise<`0x${string}`>)
          • (args, options?): Promise<`0x${string}`>
          • Parameters

            • args: readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  numerator: bigint;
                  denominator: bigint;
                  signature: `0x${string}`;
                  extraData: `0x${string}`;
              }[], readonly {
                  orderIndex: bigint;
                  side: number;
                  index: bigint;
                  identifier: bigint;
                  criteriaProof: readonly `0x${string}`[];
              }[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], `0x${string}`, `0x${string}`, bigint] | readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  numerator: bigint;
                  denominator: bigint;
                  signature: `0x${string}`;
                  extraData: `0x${string}`;
              }[], readonly {
                  orderIndex: bigint;
                  side: number;
                  index: bigint;
                  identifier: bigint;
                  criteriaProof: readonly `0x${string}`[];
              }[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], `0x${string}`, `0x${string}`, bigint] & readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  numerator: bigint;
                  denominator: bigint;
                  signature: `0x${string}`;
                  extraData: `0x${string}`;
              }[], readonly {
                  orderIndex: bigint;
                  side: number;
                  index: bigint;
                  identifier: bigint;
                  criteriaProof: readonly `0x${string}`[];
              }[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], `0x${string}`, `0x${string}`, bigint]
            • Optional options: {
                  value?: bigint;
              }
              • Optional value?: bigint

            Returns Promise<`0x${string}`>

      • fulfillAvailableOrders: ((args, options?) => Promise<`0x${string}`>)
          • (args, options?): Promise<`0x${string}`>
          • Parameters

            • args: readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], `0x${string}`, bigint] | readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], `0x${string}`, bigint] & readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], readonly (readonly { orderIndex: bigint; itemIndex: bigint; }[])[], `0x${string}`, bigint]
            • Optional options: {
                  value?: bigint;
              }
              • Optional value?: bigint

            Returns Promise<`0x${string}`>

      • fulfillBasicOrder: ((args, options?) => Promise<`0x${string}`>)
          • (args, options?): Promise<`0x${string}`>
          • Parameters

            • args: readonly [{
                  considerationToken: `0x${string}`;
                  considerationIdentifier: bigint;
                  considerationAmount: bigint;
                  offerer: `0x${string}`;
                  zone: `0x${string}`;
                  offerToken: `0x${string}`;
                  offerIdentifier: bigint;
                  offerAmount: bigint;
                  basicOrderType: number;
                  startTime: bigint;
                  endTime: bigint;
                  zoneHash: `0x${string}`;
                  salt: bigint;
                  offererConduitKey: `0x${string}`;
                  fulfillerConduitKey: `0x${string}`;
                  totalOriginalAdditionalRecipients: bigint;
                  additionalRecipients: readonly ({ amount: bigint; recipient: `0x${string}`; })[];
                  signature: `0x${string}`;
              }] | readonly [{
                  considerationToken: `0x${string}`;
                  considerationIdentifier: bigint;
                  considerationAmount: bigint;
                  offerer: `0x${string}`;
                  zone: `0x${string}`;
                  offerToken: `0x${string}`;
                  offerIdentifier: bigint;
                  offerAmount: bigint;
                  basicOrderType: number;
                  startTime: bigint;
                  endTime: bigint;
                  zoneHash: `0x${string}`;
                  salt: bigint;
                  offererConduitKey: `0x${string}`;
                  fulfillerConduitKey: `0x${string}`;
                  totalOriginalAdditionalRecipients: bigint;
                  additionalRecipients: readonly ({ amount: bigint; recipient: `0x${string}`; })[];
                  signature: `0x${string}`;
              }] & readonly [{
                  considerationToken: `0x${string}`;
                  considerationIdentifier: bigint;
                  considerationAmount: bigint;
                  offerer: `0x${string}`;
                  zone: `0x${string}`;
                  offerToken: `0x${string}`;
                  offerIdentifier: bigint;
                  offerAmount: bigint;
                  basicOrderType: number;
                  startTime: bigint;
                  endTime: bigint;
                  zoneHash: `0x${string}`;
                  salt: bigint;
                  offererConduitKey: `0x${string}`;
                  fulfillerConduitKey: `0x${string}`;
                  totalOriginalAdditionalRecipients: bigint;
                  additionalRecipients: readonly ({ amount: bigint; recipient: `0x${string}`; })[];
                  signature: `0x${string}`;
              }]
            • Optional options: {
                  value?: bigint;
              }
              • Optional value?: bigint

            Returns Promise<`0x${string}`>

      • fulfillBasicOrder_efficient_6GL6yc: ((args, options?) => Promise<`0x${string}`>)
          • (args, options?): Promise<`0x${string}`>
          • Parameters

            • args: readonly [{
                  considerationToken: `0x${string}`;
                  considerationIdentifier: bigint;
                  considerationAmount: bigint;
                  offerer: `0x${string}`;
                  zone: `0x${string}`;
                  offerToken: `0x${string}`;
                  offerIdentifier: bigint;
                  offerAmount: bigint;
                  basicOrderType: number;
                  startTime: bigint;
                  endTime: bigint;
                  zoneHash: `0x${string}`;
                  salt: bigint;
                  offererConduitKey: `0x${string}`;
                  fulfillerConduitKey: `0x${string}`;
                  totalOriginalAdditionalRecipients: bigint;
                  additionalRecipients: readonly ({ amount: bigint; recipient: `0x${string}`; })[];
                  signature: `0x${string}`;
              }] | readonly [{
                  considerationToken: `0x${string}`;
                  considerationIdentifier: bigint;
                  considerationAmount: bigint;
                  offerer: `0x${string}`;
                  zone: `0x${string}`;
                  offerToken: `0x${string}`;
                  offerIdentifier: bigint;
                  offerAmount: bigint;
                  basicOrderType: number;
                  startTime: bigint;
                  endTime: bigint;
                  zoneHash: `0x${string}`;
                  salt: bigint;
                  offererConduitKey: `0x${string}`;
                  fulfillerConduitKey: `0x${string}`;
                  totalOriginalAdditionalRecipients: bigint;
                  additionalRecipients: readonly ({ amount: bigint; recipient: `0x${string}`; })[];
                  signature: `0x${string}`;
              }] & readonly [{
                  considerationToken: `0x${string}`;
                  considerationIdentifier: bigint;
                  considerationAmount: bigint;
                  offerer: `0x${string}`;
                  zone: `0x${string}`;
                  offerToken: `0x${string}`;
                  offerIdentifier: bigint;
                  offerAmount: bigint;
                  basicOrderType: number;
                  startTime: bigint;
                  endTime: bigint;
                  zoneHash: `0x${string}`;
                  salt: bigint;
                  offererConduitKey: `0x${string}`;
                  fulfillerConduitKey: `0x${string}`;
                  totalOriginalAdditionalRecipients: bigint;
                  additionalRecipients: readonly ({ amount: bigint; recipient: `0x${string}`; })[];
                  signature: `0x${string}`;
              }]
            • Optional options: {
                  value?: bigint;
              }
              • Optional value?: bigint

            Returns Promise<`0x${string}`>

      • fulfillOrder: ((args, options?) => Promise<`0x${string}`>)
          • (args, options?): Promise<`0x${string}`>
          • Parameters

            • args: readonly [{
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }, `0x${string}`] | readonly [{
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }, `0x${string}`] & readonly [{
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }, `0x${string}`]
            • Optional options: {
                  value?: bigint;
              }
              • Optional value?: bigint

            Returns Promise<`0x${string}`>

      • incrementCounter: ((args, options?) => Promise<`0x${string}`>)
          • (args, options?): Promise<`0x${string}`>
          • Parameters

            • args: undefined | readonly []
            • Optional options: {
                  value?: bigint;
              }
              • Optional value?: bigint

            Returns Promise<`0x${string}`>

      • matchAdvancedOrders: ((args, options?) => Promise<`0x${string}`>)
          • (args, options?): Promise<`0x${string}`>
          • Parameters

            • args: readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  numerator: bigint;
                  denominator: bigint;
                  signature: `0x${string}`;
                  extraData: `0x${string}`;
              }[], readonly {
                  orderIndex: bigint;
                  side: number;
                  index: bigint;
                  identifier: bigint;
                  criteriaProof: readonly `0x${string}`[];
              }[], readonly {
                  offerComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
                  considerationComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
              }[], `0x${string}`] | readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  numerator: bigint;
                  denominator: bigint;
                  signature: `0x${string}`;
                  extraData: `0x${string}`;
              }[], readonly {
                  orderIndex: bigint;
                  side: number;
                  index: bigint;
                  identifier: bigint;
                  criteriaProof: readonly `0x${string}`[];
              }[], readonly {
                  offerComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
                  considerationComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
              }[], `0x${string}`] & readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  numerator: bigint;
                  denominator: bigint;
                  signature: `0x${string}`;
                  extraData: `0x${string}`;
              }[], readonly {
                  orderIndex: bigint;
                  side: number;
                  index: bigint;
                  identifier: bigint;
                  criteriaProof: readonly `0x${string}`[];
              }[], readonly {
                  offerComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
                  considerationComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
              }[], `0x${string}`]
            • Optional options: {
                  value?: bigint;
              }
              • Optional value?: bigint

            Returns Promise<`0x${string}`>

      • matchOrders: ((args, options?) => Promise<`0x${string}`>)
          • (args, options?): Promise<`0x${string}`>
          • Parameters

            • args: readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }[], readonly {
                  offerComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
                  considerationComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
              }[]] | readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }[], readonly {
                  offerComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
                  considerationComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
              }[]] & readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }[], readonly {
                  offerComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
                  considerationComponents: readonly { orderIndex: bigint; itemIndex: bigint; }[];
              }[]]
            • Optional options: {
                  value?: bigint;
              }
              • Optional value?: bigint

            Returns Promise<`0x${string}`>

      • validate: ((args, options?) => Promise<`0x${string}`>)
          • (args, options?): Promise<`0x${string}`>
          • Parameters

            • args: readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }[]] | readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }[]] & readonly [readonly {
                  parameters: { offerer: `0x${string}`; zone: `0x${string}`; offer: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; }[]; consideration: readonly { itemType: number; token: `0x${string}`; identifierOrCriteria: bigint; startAmount: bigint; endAmount: bigint; recipient: `0x${string}`; }[]; orderType: number; startTime: bigint; endTime: bigint; zoneHash: `0x${string}`; salt: bigint; conduitKey: `0x${string}`; totalOriginalConsiderationItems: bigint; };
                  signature: `0x${string}`;
              }[]]
            • Optional options: {
                  value?: bigint;
              }
              • Optional value?: bigint

            Returns Promise<`0x${string}`>

      parseEventLogs: (<TFunctionName>(eventName, logs) => ParseEventLogsReturnType<readonly [{
          inputs: readonly [{
              internalType: "address";
              name: "conduitController";
              type: "address";
          }];
          stateMutability: "nonpayable";
          type: "constructor";
      }, {
          inputs: readonly [];
          name: "BadContractSignature";
          type: "error";
      }, {
          inputs: readonly [];
          name: "BadFraction";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "token";
              type: "address";
          }, {
              internalType: "address";
              name: "from";
              type: "address";
          }, {
              internalType: "address";
              name: "to";
              type: "address";
          }, {
              internalType: "uint256";
              name: "amount";
              type: "uint256";
          }];
          name: "BadReturnValueFromERC20OnTransfer";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint8";
              name: "v";
              type: "uint8";
          }];
          name: "BadSignatureV";
          type: "error";
      }, {
          inputs: readonly [];
          name: "CannotCancelOrder";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ConsiderationCriteriaResolverOutOfRange";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ConsiderationLengthNotEqualToTotalOriginal";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "orderIndex";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "considerationIndex";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "shortfallAmount";
              type: "uint256";
          }];
          name: "ConsiderationNotMet";
          type: "error";
      }, {
          inputs: readonly [];
          name: "CriteriaNotEnabledForItem";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "token";
              type: "address";
          }, {
              internalType: "address";
              name: "from";
              type: "address";
          }, {
              internalType: "address";
              name: "to";
              type: "address";
          }, {
              internalType: "uint256[]";
              name: "identifiers";
              type: "uint256[]";
          }, {
              internalType: "uint256[]";
              name: "amounts";
              type: "uint256[]";
          }];
          name: "ERC1155BatchTransferGenericFailure";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InexactFraction";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InsufficientNativeTokensSupplied";
          type: "error";
      }, {
          inputs: readonly [];
          name: "Invalid1155BatchTransferEncoding";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidBasicOrderParameterEncoding";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "conduit";
              type: "address";
          }];
          name: "InvalidCallToConduit";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "conduitKey";
              type: "bytes32";
          }, {
              internalType: "address";
              name: "conduit";
              type: "address";
          }];
          name: "InvalidConduit";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "InvalidContractOrder";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "amount";
              type: "uint256";
          }];
          name: "InvalidERC721TransferAmount";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidFulfillmentComponentData";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "value";
              type: "uint256";
          }];
          name: "InvalidMsgValue";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidNativeOfferItem";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidProof";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "InvalidRestrictedOrder";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidSignature";
          type: "error";
      }, {
          inputs: readonly [];
          name: "InvalidSigner";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "startTime";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "endTime";
              type: "uint256";
          }];
          name: "InvalidTime";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "fulfillmentIndex";
              type: "uint256";
          }];
          name: "MismatchedFulfillmentOfferAndConsiderationComponents";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "enum Side";
              name: "side";
              type: "uint8";
          }];
          name: "MissingFulfillmentComponentOnAggregation";
          type: "error";
      }, {
          inputs: readonly [];
          name: "MissingItemAmount";
          type: "error";
      }, {
          inputs: readonly [];
          name: "MissingOriginalConsiderationItems";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "account";
              type: "address";
          }, {
              internalType: "uint256";
              name: "amount";
              type: "uint256";
          }];
          name: "NativeTokenTransferGenericFailure";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "account";
              type: "address";
          }];
          name: "NoContract";
          type: "error";
      }, {
          inputs: readonly [];
          name: "NoReentrantCalls";
          type: "error";
      }, {
          inputs: readonly [];
          name: "NoSpecifiedOrdersAvailable";
          type: "error";
      }, {
          inputs: readonly [];
          name: "OfferAndConsiderationRequiredOnFulfillment";
          type: "error";
      }, {
          inputs: readonly [];
          name: "OfferCriteriaResolverOutOfRange";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "OrderAlreadyFilled";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "enum Side";
              name: "side";
              type: "uint8";
          }];
          name: "OrderCriteriaResolverOutOfRange";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "OrderIsCancelled";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "OrderPartiallyFilled";
          type: "error";
      }, {
          inputs: readonly [];
          name: "PartialFillsNotEnabledForOrder";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "token";
              type: "address";
          }, {
              internalType: "address";
              name: "from";
              type: "address";
          }, {
              internalType: "address";
              name: "to";
              type: "address";
          }, {
              internalType: "uint256";
              name: "identifier";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "amount";
              type: "uint256";
          }];
          name: "TokenTransferGenericFailure";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "orderIndex";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "considerationIndex";
              type: "uint256";
          }];
          name: "UnresolvedConsiderationCriteria";
          type: "error";
      }, {
          inputs: readonly [{
              internalType: "uint256";
              name: "orderIndex";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "offerIndex";
              type: "uint256";
          }];
          name: "UnresolvedOfferCriteria";
          type: "error";
      }, {
          inputs: readonly [];
          name: "UnusedItemParameters";
          type: "error";
      }, {
          anonymous: false;
          inputs: readonly [{
              indexed: false;
              internalType: "uint256";
              name: "newCounter";
              type: "uint256";
          }, {
              indexed: true;
              internalType: "address";
              name: "offerer";
              type: "address";
          }];
          name: "CounterIncremented";
          type: "event";
      }, {
          anonymous: false;
          inputs: readonly [{
              indexed: false;
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }, {
              indexed: true;
              internalType: "address";
              name: "offerer";
              type: "address";
          }, {
              indexed: true;
              internalType: "address";
              name: "zone";
              type: "address";
          }];
          name: "OrderCancelled";
          type: "event";
      }, {
          anonymous: false;
          inputs: readonly [{
              indexed: false;
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }, {
              indexed: true;
              internalType: "address";
              name: "offerer";
              type: "address";
          }, {
              indexed: true;
              internalType: "address";
              name: "zone";
              type: "address";
          }, {
              indexed: false;
              internalType: "address";
              name: "recipient";
              type: "address";
          }, {
              components: readonly [{
                  internalType: "enum ItemType";
                  name: "itemType";
                  type: "uint8";
              }, {
                  internalType: "address";
                  name: "token";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }];
              indexed: false;
              internalType: "struct SpentItem[]";
              name: "offer";
              type: "tuple[]";
          }, {
              components: readonly [{
                  internalType: "enum ItemType";
                  name: "itemType";
                  type: "uint8";
              }, {
                  internalType: "address";
                  name: "token";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }, {
                  internalType: "address payable";
                  name: "recipient";
                  type: "address";
              }];
              indexed: false;
              internalType: "struct ReceivedItem[]";
              name: "consideration";
              type: "tuple[]";
          }];
          name: "OrderFulfilled";
          type: "event";
      }, {
          anonymous: false;
          inputs: readonly [{
              indexed: false;
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }, {
              components: readonly [{
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }];
                  internalType: "struct OfferItem[]";
                  name: "offer";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ConsiderationItem[]";
                  name: "consideration";
                  type: "tuple[]";
              }, {
                  internalType: "enum OrderType";
                  name: "orderType";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "zoneHash";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "salt";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "totalOriginalConsiderationItems";
                  type: "uint256";
              }];
              indexed: false;
              internalType: "struct OrderParameters";
              name: "orderParameters";
              type: "tuple";
          }];
          name: "OrderValidated";
          type: "event";
      }, {
          anonymous: false;
          inputs: readonly [{
              indexed: false;
              internalType: "bytes32[]";
              name: "orderHashes";
              type: "bytes32[]";
          }];
          name: "OrdersMatched";
          type: "event";
      }, {
          inputs: readonly [{
              components: readonly [{
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }];
                  internalType: "struct OfferItem[]";
                  name: "offer";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ConsiderationItem[]";
                  name: "consideration";
                  type: "tuple[]";
              }, {
                  internalType: "enum OrderType";
                  name: "orderType";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "zoneHash";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "salt";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "counter";
                  type: "uint256";
              }];
              internalType: "struct OrderComponents[]";
              name: "orders";
              type: "tuple[]";
          }];
          name: "cancel";
          outputs: readonly [{
              internalType: "bool";
              name: "cancelled";
              type: "bool";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "uint120";
                  name: "numerator";
                  type: "uint120";
              }, {
                  internalType: "uint120";
                  name: "denominator";
                  type: "uint120";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }, {
                  internalType: "bytes";
                  name: "extraData";
                  type: "bytes";
              }];
              internalType: "struct AdvancedOrder";
              name: "";
              type: "tuple";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "enum Side";
                  name: "side";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "index";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "bytes32[]";
                  name: "criteriaProof";
                  type: "bytes32[]";
              }];
              internalType: "struct CriteriaResolver[]";
              name: "";
              type: "tuple[]";
          }, {
              internalType: "bytes32";
              name: "fulfillerConduitKey";
              type: "bytes32";
          }, {
              internalType: "address";
              name: "recipient";
              type: "address";
          }];
          name: "fulfillAdvancedOrder";
          outputs: readonly [{
              internalType: "bool";
              name: "fulfilled";
              type: "bool";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "uint120";
                  name: "numerator";
                  type: "uint120";
              }, {
                  internalType: "uint120";
                  name: "denominator";
                  type: "uint120";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }, {
                  internalType: "bytes";
                  name: "extraData";
                  type: "bytes";
              }];
              internalType: "struct AdvancedOrder[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "enum Side";
                  name: "side";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "index";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "bytes32[]";
                  name: "criteriaProof";
                  type: "bytes32[]";
              }];
              internalType: "struct CriteriaResolver[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "itemIndex";
                  type: "uint256";
              }];
              internalType: "struct FulfillmentComponent[][]";
              name: "";
              type: "tuple[][]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "itemIndex";
                  type: "uint256";
              }];
              internalType: "struct FulfillmentComponent[][]";
              name: "";
              type: "tuple[][]";
          }, {
              internalType: "bytes32";
              name: "fulfillerConduitKey";
              type: "bytes32";
          }, {
              internalType: "address";
              name: "recipient";
              type: "address";
          }, {
              internalType: "uint256";
              name: "maximumFulfilled";
              type: "uint256";
          }];
          name: "fulfillAvailableAdvancedOrders";
          outputs: readonly [{
              internalType: "bool[]";
              name: "";
              type: "bool[]";
          }, {
              components: readonly [{
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ReceivedItem";
                  name: "item";
                  type: "tuple";
              }, {
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }];
              internalType: "struct Execution[]";
              name: "";
              type: "tuple[]";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct Order[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "itemIndex";
                  type: "uint256";
              }];
              internalType: "struct FulfillmentComponent[][]";
              name: "";
              type: "tuple[][]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "itemIndex";
                  type: "uint256";
              }];
              internalType: "struct FulfillmentComponent[][]";
              name: "";
              type: "tuple[][]";
          }, {
              internalType: "bytes32";
              name: "fulfillerConduitKey";
              type: "bytes32";
          }, {
              internalType: "uint256";
              name: "maximumFulfilled";
              type: "uint256";
          }];
          name: "fulfillAvailableOrders";
          outputs: readonly [{
              internalType: "bool[]";
              name: "";
              type: "bool[]";
          }, {
              components: readonly [{
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ReceivedItem";
                  name: "item";
                  type: "tuple";
              }, {
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }];
              internalType: "struct Execution[]";
              name: "";
              type: "tuple[]";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  internalType: "address";
                  name: "considerationToken";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "considerationIdentifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "considerationAmount";
                  type: "uint256";
              }, {
                  internalType: "address payable";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "offerToken";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "offerIdentifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "offerAmount";
                  type: "uint256";
              }, {
                  internalType: "enum BasicOrderType";
                  name: "basicOrderType";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "zoneHash";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "salt";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "offererConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "totalOriginalAdditionalRecipients";
                  type: "uint256";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct AdditionalRecipient[]";
                  name: "additionalRecipients";
                  type: "tuple[]";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct BasicOrderParameters";
              name: "parameters";
              type: "tuple";
          }];
          name: "fulfillBasicOrder";
          outputs: readonly [{
              internalType: "bool";
              name: "fulfilled";
              type: "bool";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  internalType: "address";
                  name: "considerationToken";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "considerationIdentifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "considerationAmount";
                  type: "uint256";
              }, {
                  internalType: "address payable";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "offerToken";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "offerIdentifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "offerAmount";
                  type: "uint256";
              }, {
                  internalType: "enum BasicOrderType";
                  name: "basicOrderType";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "zoneHash";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "salt";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "offererConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "totalOriginalAdditionalRecipients";
                  type: "uint256";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct AdditionalRecipient[]";
                  name: "additionalRecipients";
                  type: "tuple[]";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct BasicOrderParameters";
              name: "parameters";
              type: "tuple";
          }];
          name: "fulfillBasicOrder_efficient_6GL6yc";
          outputs: readonly [{
              internalType: "bool";
              name: "fulfilled";
              type: "bool";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct Order";
              name: "";
              type: "tuple";
          }, {
              internalType: "bytes32";
              name: "fulfillerConduitKey";
              type: "bytes32";
          }];
          name: "fulfillOrder";
          outputs: readonly [{
              internalType: "bool";
              name: "fulfilled";
              type: "bool";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "contractOfferer";
              type: "address";
          }];
          name: "getContractOffererNonce";
          outputs: readonly [{
              internalType: "uint256";
              name: "nonce";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              internalType: "address";
              name: "offerer";
              type: "address";
          }];
          name: "getCounter";
          outputs: readonly [{
              internalType: "uint256";
              name: "counter";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }];
                  internalType: "struct OfferItem[]";
                  name: "offer";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifierOrCriteria";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "startAmount";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endAmount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ConsiderationItem[]";
                  name: "consideration";
                  type: "tuple[]";
              }, {
                  internalType: "enum OrderType";
                  name: "orderType";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "zoneHash";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "salt";
                  type: "uint256";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "counter";
                  type: "uint256";
              }];
              internalType: "struct OrderComponents";
              name: "";
              type: "tuple";
          }];
          name: "getOrderHash";
          outputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              internalType: "bytes32";
              name: "orderHash";
              type: "bytes32";
          }];
          name: "getOrderStatus";
          outputs: readonly [{
              internalType: "bool";
              name: "isValidated";
              type: "bool";
          }, {
              internalType: "bool";
              name: "isCancelled";
              type: "bool";
          }, {
              internalType: "uint256";
              name: "totalFilled";
              type: "uint256";
          }, {
              internalType: "uint256";
              name: "totalSize";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "incrementCounter";
          outputs: readonly [{
              internalType: "uint256";
              name: "newCounter";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "information";
          outputs: readonly [{
              internalType: "string";
              name: "version";
              type: "string";
          }, {
              internalType: "bytes32";
              name: "domainSeparator";
              type: "bytes32";
          }, {
              internalType: "address";
              name: "conduitController";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "uint120";
                  name: "numerator";
                  type: "uint120";
              }, {
                  internalType: "uint120";
                  name: "denominator";
                  type: "uint120";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }, {
                  internalType: "bytes";
                  name: "extraData";
                  type: "bytes";
              }];
              internalType: "struct AdvancedOrder[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "enum Side";
                  name: "side";
                  type: "uint8";
              }, {
                  internalType: "uint256";
                  name: "index";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "bytes32[]";
                  name: "criteriaProof";
                  type: "bytes32[]";
              }];
              internalType: "struct CriteriaResolver[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[]";
                  name: "offerComponents";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[]";
                  name: "considerationComponents";
                  type: "tuple[]";
              }];
              internalType: "struct Fulfillment[]";
              name: "";
              type: "tuple[]";
          }, {
              internalType: "address";
              name: "recipient";
              type: "address";
          }];
          name: "matchAdvancedOrders";
          outputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ReceivedItem";
                  name: "item";
                  type: "tuple";
              }, {
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }];
              internalType: "struct Execution[]";
              name: "";
              type: "tuple[]";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct Order[]";
              name: "";
              type: "tuple[]";
          }, {
              components: readonly [{
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[]";
                  name: "offerComponents";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[]";
                  name: "considerationComponents";
                  type: "tuple[]";
              }];
              internalType: "struct Fulfillment[]";
              name: "";
              type: "tuple[]";
          }];
          name: "matchOrders";
          outputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  internalType: "struct ReceivedItem";
                  name: "item";
                  type: "tuple";
              }, {
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }];
              internalType: "struct Execution[]";
              name: "";
              type: "tuple[]";
          }];
          stateMutability: "payable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "name";
          outputs: readonly [{
              internalType: "string";
              name: "";
              type: "string";
          }];
          stateMutability: "pure";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  internalType: "struct OrderParameters";
                  name: "parameters";
                  type: "tuple";
              }, {
                  internalType: "bytes";
                  name: "signature";
                  type: "bytes";
              }];
              internalType: "struct Order[]";
              name: "";
              type: "tuple[]";
          }];
          name: "validate";
          outputs: readonly [{
              internalType: "bool";
              name: "";
              type: "bool";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          stateMutability: "payable";
          type: "receive";
      }], TFunctionName, true, TFunctionName extends ("CounterIncremented" | "OrderCancelled" | "OrderFulfilled" | "OrderValidated" | "OrdersMatched")[]
          ? TFunctionName[number]
          : TFunctionName>)

      Type declaration

        • <TFunctionName>(eventName, logs): ParseEventLogsReturnType<readonly [{
              inputs: readonly [{
                  internalType: "address";
                  name: "conduitController";
                  type: "address";
              }];
              stateMutability: "nonpayable";
              type: "constructor";
          }, {
              inputs: readonly [];
              name: "BadContractSignature";
              type: "error";
          }, {
              inputs: readonly [];
              name: "BadFraction";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "token";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "from";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "to";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }];
              name: "BadReturnValueFromERC20OnTransfer";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint8";
                  name: "v";
                  type: "uint8";
              }];
              name: "BadSignatureV";
              type: "error";
          }, {
              inputs: readonly [];
              name: "CannotCancelOrder";
              type: "error";
          }, {
              inputs: readonly [];
              name: "ConsiderationCriteriaResolverOutOfRange";
              type: "error";
          }, {
              inputs: readonly [];
              name: "ConsiderationLengthNotEqualToTotalOriginal";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "considerationIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "shortfallAmount";
                  type: "uint256";
              }];
              name: "ConsiderationNotMet";
              type: "error";
          }, {
              inputs: readonly [];
              name: "CriteriaNotEnabledForItem";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "token";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "from";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "to";
                  type: "address";
              }, {
                  internalType: "uint256[]";
                  name: "identifiers";
                  type: "uint256[]";
              }, {
                  internalType: "uint256[]";
                  name: "amounts";
                  type: "uint256[]";
              }];
              name: "ERC1155BatchTransferGenericFailure";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InexactFraction";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InsufficientNativeTokensSupplied";
              type: "error";
          }, {
              inputs: readonly [];
              name: "Invalid1155BatchTransferEncoding";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidBasicOrderParameterEncoding";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "conduit";
                  type: "address";
              }];
              name: "InvalidCallToConduit";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }, {
                  internalType: "address";
                  name: "conduit";
                  type: "address";
              }];
              name: "InvalidConduit";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "InvalidContractOrder";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }];
              name: "InvalidERC721TransferAmount";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidFulfillmentComponentData";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "value";
                  type: "uint256";
              }];
              name: "InvalidMsgValue";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidNativeOfferItem";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidProof";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "InvalidRestrictedOrder";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidSignature";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidSigner";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }];
              name: "InvalidTime";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "fulfillmentIndex";
                  type: "uint256";
              }];
              name: "MismatchedFulfillmentOfferAndConsiderationComponents";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "enum Side";
                  name: "side";
                  type: "uint8";
              }];
              name: "MissingFulfillmentComponentOnAggregation";
              type: "error";
          }, {
              inputs: readonly [];
              name: "MissingItemAmount";
              type: "error";
          }, {
              inputs: readonly [];
              name: "MissingOriginalConsiderationItems";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "account";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }];
              name: "NativeTokenTransferGenericFailure";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "account";
                  type: "address";
              }];
              name: "NoContract";
              type: "error";
          }, {
              inputs: readonly [];
              name: "NoReentrantCalls";
              type: "error";
          }, {
              inputs: readonly [];
              name: "NoSpecifiedOrdersAvailable";
              type: "error";
          }, {
              inputs: readonly [];
              name: "OfferAndConsiderationRequiredOnFulfillment";
              type: "error";
          }, {
              inputs: readonly [];
              name: "OfferCriteriaResolverOutOfRange";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "OrderAlreadyFilled";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "enum Side";
                  name: "side";
                  type: "uint8";
              }];
              name: "OrderCriteriaResolverOutOfRange";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "OrderIsCancelled";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "OrderPartiallyFilled";
              type: "error";
          }, {
              inputs: readonly [];
              name: "PartialFillsNotEnabledForOrder";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "token";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "from";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "to";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }];
              name: "TokenTransferGenericFailure";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "considerationIndex";
                  type: "uint256";
              }];
              name: "UnresolvedConsiderationCriteria";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "offerIndex";
                  type: "uint256";
              }];
              name: "UnresolvedOfferCriteria";
              type: "error";
          }, {
              inputs: readonly [];
              name: "UnusedItemParameters";
              type: "error";
          }, {
              anonymous: false;
              inputs: readonly [{
                  indexed: false;
                  internalType: "uint256";
                  name: "newCounter";
                  type: "uint256";
              }, {
                  indexed: true;
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }];
              name: "CounterIncremented";
              type: "event";
          }, {
              anonymous: false;
              inputs: readonly [{
                  indexed: false;
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }, {
                  indexed: true;
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  indexed: true;
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }];
              name: "OrderCancelled";
              type: "event";
          }, {
              anonymous: false;
              inputs: readonly [{
                  indexed: false;
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }, {
                  indexed: true;
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  indexed: true;
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  indexed: false;
                  internalType: "address";
                  name: "recipient";
                  type: "address";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }];
                  indexed: false;
                  internalType: "struct SpentItem[]";
                  name: "offer";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  indexed: false;
                  internalType: "struct ReceivedItem[]";
                  name: "consideration";
                  type: "tuple[]";
              }];
              name: "OrderFulfilled";
              type: "event";
          }, {
              anonymous: false;
              inputs: readonly [{
                  indexed: false;
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }, {
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  indexed: false;
                  internalType: "struct OrderParameters";
                  name: "orderParameters";
                  type: "tuple";
              }];
              name: "OrderValidated";
              type: "event";
          }, {
              anonymous: false;
              inputs: readonly [{
                  indexed: false;
                  internalType: "bytes32[]";
                  name: "orderHashes";
                  type: "bytes32[]";
              }];
              name: "OrdersMatched";
              type: "event";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "counter";
                      type: "uint256";
                  }];
                  internalType: "struct OrderComponents[]";
                  name: "orders";
                  type: "tuple[]";
              }];
              name: "cancel";
              outputs: readonly [{
                  internalType: "bool";
                  name: "cancelled";
                  type: "bool";
              }];
              stateMutability: "nonpayable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "uint120";
                      name: "numerator";
                      type: "uint120";
                  }, {
                      internalType: "uint120";
                      name: "denominator";
                      type: "uint120";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }, {
                      internalType: "bytes";
                      name: "extraData";
                      type: "bytes";
                  }];
                  internalType: "struct AdvancedOrder";
                  name: "";
                  type: "tuple";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "enum Side";
                      name: "side";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "index";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "bytes32[]";
                      name: "criteriaProof";
                      type: "bytes32[]";
                  }];
                  internalType: "struct CriteriaResolver[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "address";
                  name: "recipient";
                  type: "address";
              }];
              name: "fulfillAdvancedOrder";
              outputs: readonly [{
                  internalType: "bool";
                  name: "fulfilled";
                  type: "bool";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "uint120";
                      name: "numerator";
                      type: "uint120";
                  }, {
                      internalType: "uint120";
                      name: "denominator";
                      type: "uint120";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }, {
                      internalType: "bytes";
                      name: "extraData";
                      type: "bytes";
                  }];
                  internalType: "struct AdvancedOrder[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "enum Side";
                      name: "side";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "index";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "bytes32[]";
                      name: "criteriaProof";
                      type: "bytes32[]";
                  }];
                  internalType: "struct CriteriaResolver[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[][]";
                  name: "";
                  type: "tuple[][]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[][]";
                  name: "";
                  type: "tuple[][]";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "address";
                  name: "recipient";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "maximumFulfilled";
                  type: "uint256";
              }];
              name: "fulfillAvailableAdvancedOrders";
              outputs: readonly [{
                  internalType: "bool[]";
                  name: "";
                  type: "bool[]";
              }, {
                  components: readonly [{
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifier";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ReceivedItem";
                      name: "item";
                      type: "tuple";
                  }, {
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }];
                  internalType: "struct Execution[]";
                  name: "";
                  type: "tuple[]";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct Order[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[][]";
                  name: "";
                  type: "tuple[][]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[][]";
                  name: "";
                  type: "tuple[][]";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "maximumFulfilled";
                  type: "uint256";
              }];
              name: "fulfillAvailableOrders";
              outputs: readonly [{
                  internalType: "bool[]";
                  name: "";
                  type: "bool[]";
              }, {
                  components: readonly [{
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifier";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ReceivedItem";
                      name: "item";
                      type: "tuple";
                  }, {
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }];
                  internalType: "struct Execution[]";
                  name: "";
                  type: "tuple[]";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "considerationToken";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "considerationIdentifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "considerationAmount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "offerToken";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "offerIdentifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "offerAmount";
                      type: "uint256";
                  }, {
                      internalType: "enum BasicOrderType";
                      name: "basicOrderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "offererConduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "bytes32";
                      name: "fulfillerConduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalAdditionalRecipients";
                      type: "uint256";
                  }, {
                      components: readonly [{
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct AdditionalRecipient[]";
                      name: "additionalRecipients";
                      type: "tuple[]";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct BasicOrderParameters";
                  name: "parameters";
                  type: "tuple";
              }];
              name: "fulfillBasicOrder";
              outputs: readonly [{
                  internalType: "bool";
                  name: "fulfilled";
                  type: "bool";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "considerationToken";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "considerationIdentifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "considerationAmount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "offerToken";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "offerIdentifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "offerAmount";
                      type: "uint256";
                  }, {
                      internalType: "enum BasicOrderType";
                      name: "basicOrderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "offererConduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "bytes32";
                      name: "fulfillerConduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalAdditionalRecipients";
                      type: "uint256";
                  }, {
                      components: readonly [{
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct AdditionalRecipient[]";
                      name: "additionalRecipients";
                      type: "tuple[]";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct BasicOrderParameters";
                  name: "parameters";
                  type: "tuple";
              }];
              name: "fulfillBasicOrder_efficient_6GL6yc";
              outputs: readonly [{
                  internalType: "bool";
                  name: "fulfilled";
                  type: "bool";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct Order";
                  name: "";
                  type: "tuple";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }];
              name: "fulfillOrder";
              outputs: readonly [{
                  internalType: "bool";
                  name: "fulfilled";
                  type: "bool";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "contractOfferer";
                  type: "address";
              }];
              name: "getContractOffererNonce";
              outputs: readonly [{
                  internalType: "uint256";
                  name: "nonce";
                  type: "uint256";
              }];
              stateMutability: "view";
              type: "function";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }];
              name: "getCounter";
              outputs: readonly [{
                  internalType: "uint256";
                  name: "counter";
                  type: "uint256";
              }];
              stateMutability: "view";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "counter";
                      type: "uint256";
                  }];
                  internalType: "struct OrderComponents";
                  name: "";
                  type: "tuple";
              }];
              name: "getOrderHash";
              outputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              stateMutability: "view";
              type: "function";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "getOrderStatus";
              outputs: readonly [{
                  internalType: "bool";
                  name: "isValidated";
                  type: "bool";
              }, {
                  internalType: "bool";
                  name: "isCancelled";
                  type: "bool";
              }, {
                  internalType: "uint256";
                  name: "totalFilled";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "totalSize";
                  type: "uint256";
              }];
              stateMutability: "view";
              type: "function";
          }, {
              inputs: readonly [];
              name: "incrementCounter";
              outputs: readonly [{
                  internalType: "uint256";
                  name: "newCounter";
                  type: "uint256";
              }];
              stateMutability: "nonpayable";
              type: "function";
          }, {
              inputs: readonly [];
              name: "information";
              outputs: readonly [{
                  internalType: "string";
                  name: "version";
                  type: "string";
              }, {
                  internalType: "bytes32";
                  name: "domainSeparator";
                  type: "bytes32";
              }, {
                  internalType: "address";
                  name: "conduitController";
                  type: "address";
              }];
              stateMutability: "view";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "uint120";
                      name: "numerator";
                      type: "uint120";
                  }, {
                      internalType: "uint120";
                      name: "denominator";
                      type: "uint120";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }, {
                      internalType: "bytes";
                      name: "extraData";
                      type: "bytes";
                  }];
                  internalType: "struct AdvancedOrder[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "enum Side";
                      name: "side";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "index";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "bytes32[]";
                      name: "criteriaProof";
                      type: "bytes32[]";
                  }];
                  internalType: "struct CriteriaResolver[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      components: readonly [{
                          internalType: "uint256";
                          name: "orderIndex";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "itemIndex";
                          type: "uint256";
                      }];
                      internalType: "struct FulfillmentComponent[]";
                      name: "offerComponents";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "uint256";
                          name: "orderIndex";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "itemIndex";
                          type: "uint256";
                      }];
                      internalType: "struct FulfillmentComponent[]";
                      name: "considerationComponents";
                      type: "tuple[]";
                  }];
                  internalType: "struct Fulfillment[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  internalType: "address";
                  name: "recipient";
                  type: "address";
              }];
              name: "matchAdvancedOrders";
              outputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifier";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ReceivedItem";
                      name: "item";
                      type: "tuple";
                  }, {
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }];
                  internalType: "struct Execution[]";
                  name: "";
                  type: "tuple[]";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct Order[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      components: readonly [{
                          internalType: "uint256";
                          name: "orderIndex";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "itemIndex";
                          type: "uint256";
                      }];
                      internalType: "struct FulfillmentComponent[]";
                      name: "offerComponents";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "uint256";
                          name: "orderIndex";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "itemIndex";
                          type: "uint256";
                      }];
                      internalType: "struct FulfillmentComponent[]";
                      name: "considerationComponents";
                      type: "tuple[]";
                  }];
                  internalType: "struct Fulfillment[]";
                  name: "";
                  type: "tuple[]";
              }];
              name: "matchOrders";
              outputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifier";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ReceivedItem";
                      name: "item";
                      type: "tuple";
                  }, {
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }];
                  internalType: "struct Execution[]";
                  name: "";
                  type: "tuple[]";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [];
              name: "name";
              outputs: readonly [{
                  internalType: "string";
                  name: "";
                  type: "string";
              }];
              stateMutability: "pure";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct Order[]";
                  name: "";
                  type: "tuple[]";
              }];
              name: "validate";
              outputs: readonly [{
                  internalType: "bool";
                  name: "";
                  type: "bool";
              }];
              stateMutability: "nonpayable";
              type: "function";
          }, {
              stateMutability: "payable";
              type: "receive";
          }], TFunctionName, true, TFunctionName extends ("CounterIncremented" | "OrderCancelled" | "OrderFulfilled" | "OrderValidated" | "OrdersMatched")[]
              ? TFunctionName[number]
              : TFunctionName>
        • Type Parameters

          • TFunctionName extends "CounterIncremented" | "OrderCancelled" | "OrderFulfilled" | "OrderValidated" | "OrdersMatched"

          Parameters

          • eventName: TFunctionName
          • logs: Log<bigint, number, false>[]

          Returns ParseEventLogsReturnType<readonly [{
              inputs: readonly [{
                  internalType: "address";
                  name: "conduitController";
                  type: "address";
              }];
              stateMutability: "nonpayable";
              type: "constructor";
          }, {
              inputs: readonly [];
              name: "BadContractSignature";
              type: "error";
          }, {
              inputs: readonly [];
              name: "BadFraction";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "token";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "from";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "to";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }];
              name: "BadReturnValueFromERC20OnTransfer";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint8";
                  name: "v";
                  type: "uint8";
              }];
              name: "BadSignatureV";
              type: "error";
          }, {
              inputs: readonly [];
              name: "CannotCancelOrder";
              type: "error";
          }, {
              inputs: readonly [];
              name: "ConsiderationCriteriaResolverOutOfRange";
              type: "error";
          }, {
              inputs: readonly [];
              name: "ConsiderationLengthNotEqualToTotalOriginal";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "considerationIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "shortfallAmount";
                  type: "uint256";
              }];
              name: "ConsiderationNotMet";
              type: "error";
          }, {
              inputs: readonly [];
              name: "CriteriaNotEnabledForItem";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "token";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "from";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "to";
                  type: "address";
              }, {
                  internalType: "uint256[]";
                  name: "identifiers";
                  type: "uint256[]";
              }, {
                  internalType: "uint256[]";
                  name: "amounts";
                  type: "uint256[]";
              }];
              name: "ERC1155BatchTransferGenericFailure";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InexactFraction";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InsufficientNativeTokensSupplied";
              type: "error";
          }, {
              inputs: readonly [];
              name: "Invalid1155BatchTransferEncoding";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidBasicOrderParameterEncoding";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "conduit";
                  type: "address";
              }];
              name: "InvalidCallToConduit";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "conduitKey";
                  type: "bytes32";
              }, {
                  internalType: "address";
                  name: "conduit";
                  type: "address";
              }];
              name: "InvalidConduit";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "InvalidContractOrder";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }];
              name: "InvalidERC721TransferAmount";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidFulfillmentComponentData";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "value";
                  type: "uint256";
              }];
              name: "InvalidMsgValue";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidNativeOfferItem";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidProof";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "InvalidRestrictedOrder";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidSignature";
              type: "error";
          }, {
              inputs: readonly [];
              name: "InvalidSigner";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "startTime";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "endTime";
                  type: "uint256";
              }];
              name: "InvalidTime";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "fulfillmentIndex";
                  type: "uint256";
              }];
              name: "MismatchedFulfillmentOfferAndConsiderationComponents";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "enum Side";
                  name: "side";
                  type: "uint8";
              }];
              name: "MissingFulfillmentComponentOnAggregation";
              type: "error";
          }, {
              inputs: readonly [];
              name: "MissingItemAmount";
              type: "error";
          }, {
              inputs: readonly [];
              name: "MissingOriginalConsiderationItems";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "account";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }];
              name: "NativeTokenTransferGenericFailure";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "account";
                  type: "address";
              }];
              name: "NoContract";
              type: "error";
          }, {
              inputs: readonly [];
              name: "NoReentrantCalls";
              type: "error";
          }, {
              inputs: readonly [];
              name: "NoSpecifiedOrdersAvailable";
              type: "error";
          }, {
              inputs: readonly [];
              name: "OfferAndConsiderationRequiredOnFulfillment";
              type: "error";
          }, {
              inputs: readonly [];
              name: "OfferCriteriaResolverOutOfRange";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "OrderAlreadyFilled";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "enum Side";
                  name: "side";
                  type: "uint8";
              }];
              name: "OrderCriteriaResolverOutOfRange";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "OrderIsCancelled";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "OrderPartiallyFilled";
              type: "error";
          }, {
              inputs: readonly [];
              name: "PartialFillsNotEnabledForOrder";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "token";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "from";
                  type: "address";
              }, {
                  internalType: "address";
                  name: "to";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "identifier";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "amount";
                  type: "uint256";
              }];
              name: "TokenTransferGenericFailure";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "considerationIndex";
                  type: "uint256";
              }];
              name: "UnresolvedConsiderationCriteria";
              type: "error";
          }, {
              inputs: readonly [{
                  internalType: "uint256";
                  name: "orderIndex";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "offerIndex";
                  type: "uint256";
              }];
              name: "UnresolvedOfferCriteria";
              type: "error";
          }, {
              inputs: readonly [];
              name: "UnusedItemParameters";
              type: "error";
          }, {
              anonymous: false;
              inputs: readonly [{
                  indexed: false;
                  internalType: "uint256";
                  name: "newCounter";
                  type: "uint256";
              }, {
                  indexed: true;
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }];
              name: "CounterIncremented";
              type: "event";
          }, {
              anonymous: false;
              inputs: readonly [{
                  indexed: false;
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }, {
                  indexed: true;
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  indexed: true;
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }];
              name: "OrderCancelled";
              type: "event";
          }, {
              anonymous: false;
              inputs: readonly [{
                  indexed: false;
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }, {
                  indexed: true;
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }, {
                  indexed: true;
                  internalType: "address";
                  name: "zone";
                  type: "address";
              }, {
                  indexed: false;
                  internalType: "address";
                  name: "recipient";
                  type: "address";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }];
                  indexed: false;
                  internalType: "struct SpentItem[]";
                  name: "offer";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "enum ItemType";
                      name: "itemType";
                      type: "uint8";
                  }, {
                      internalType: "address";
                      name: "token";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "amount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "recipient";
                      type: "address";
                  }];
                  indexed: false;
                  internalType: "struct ReceivedItem[]";
                  name: "consideration";
                  type: "tuple[]";
              }];
              name: "OrderFulfilled";
              type: "event";
          }, {
              anonymous: false;
              inputs: readonly [{
                  indexed: false;
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }, {
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalConsiderationItems";
                      type: "uint256";
                  }];
                  indexed: false;
                  internalType: "struct OrderParameters";
                  name: "orderParameters";
                  type: "tuple";
              }];
              name: "OrderValidated";
              type: "event";
          }, {
              anonymous: false;
              inputs: readonly [{
                  indexed: false;
                  internalType: "bytes32[]";
                  name: "orderHashes";
                  type: "bytes32[]";
              }];
              name: "OrdersMatched";
              type: "event";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "counter";
                      type: "uint256";
                  }];
                  internalType: "struct OrderComponents[]";
                  name: "orders";
                  type: "tuple[]";
              }];
              name: "cancel";
              outputs: readonly [{
                  internalType: "bool";
                  name: "cancelled";
                  type: "bool";
              }];
              stateMutability: "nonpayable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "uint120";
                      name: "numerator";
                      type: "uint120";
                  }, {
                      internalType: "uint120";
                      name: "denominator";
                      type: "uint120";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }, {
                      internalType: "bytes";
                      name: "extraData";
                      type: "bytes";
                  }];
                  internalType: "struct AdvancedOrder";
                  name: "";
                  type: "tuple";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "enum Side";
                      name: "side";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "index";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "bytes32[]";
                      name: "criteriaProof";
                      type: "bytes32[]";
                  }];
                  internalType: "struct CriteriaResolver[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "address";
                  name: "recipient";
                  type: "address";
              }];
              name: "fulfillAdvancedOrder";
              outputs: readonly [{
                  internalType: "bool";
                  name: "fulfilled";
                  type: "bool";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "uint120";
                      name: "numerator";
                      type: "uint120";
                  }, {
                      internalType: "uint120";
                      name: "denominator";
                      type: "uint120";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }, {
                      internalType: "bytes";
                      name: "extraData";
                      type: "bytes";
                  }];
                  internalType: "struct AdvancedOrder[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "enum Side";
                      name: "side";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "index";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "bytes32[]";
                      name: "criteriaProof";
                      type: "bytes32[]";
                  }];
                  internalType: "struct CriteriaResolver[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[][]";
                  name: "";
                  type: "tuple[][]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[][]";
                  name: "";
                  type: "tuple[][]";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "address";
                  name: "recipient";
                  type: "address";
              }, {
                  internalType: "uint256";
                  name: "maximumFulfilled";
                  type: "uint256";
              }];
              name: "fulfillAvailableAdvancedOrders";
              outputs: readonly [{
                  internalType: "bool[]";
                  name: "";
                  type: "bool[]";
              }, {
                  components: readonly [{
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifier";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ReceivedItem";
                      name: "item";
                      type: "tuple";
                  }, {
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }];
                  internalType: "struct Execution[]";
                  name: "";
                  type: "tuple[]";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct Order[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[][]";
                  name: "";
                  type: "tuple[][]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "itemIndex";
                      type: "uint256";
                  }];
                  internalType: "struct FulfillmentComponent[][]";
                  name: "";
                  type: "tuple[][]";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }, {
                  internalType: "uint256";
                  name: "maximumFulfilled";
                  type: "uint256";
              }];
              name: "fulfillAvailableOrders";
              outputs: readonly [{
                  internalType: "bool[]";
                  name: "";
                  type: "bool[]";
              }, {
                  components: readonly [{
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifier";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ReceivedItem";
                      name: "item";
                      type: "tuple";
                  }, {
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }];
                  internalType: "struct Execution[]";
                  name: "";
                  type: "tuple[]";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "considerationToken";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "considerationIdentifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "considerationAmount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "offerToken";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "offerIdentifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "offerAmount";
                      type: "uint256";
                  }, {
                      internalType: "enum BasicOrderType";
                      name: "basicOrderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "offererConduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "bytes32";
                      name: "fulfillerConduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalAdditionalRecipients";
                      type: "uint256";
                  }, {
                      components: readonly [{
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct AdditionalRecipient[]";
                      name: "additionalRecipients";
                      type: "tuple[]";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct BasicOrderParameters";
                  name: "parameters";
                  type: "tuple";
              }];
              name: "fulfillBasicOrder";
              outputs: readonly [{
                  internalType: "bool";
                  name: "fulfilled";
                  type: "bool";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "considerationToken";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "considerationIdentifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "considerationAmount";
                      type: "uint256";
                  }, {
                      internalType: "address payable";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "offerToken";
                      type: "address";
                  }, {
                      internalType: "uint256";
                      name: "offerIdentifier";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "offerAmount";
                      type: "uint256";
                  }, {
                      internalType: "enum BasicOrderType";
                      name: "basicOrderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "offererConduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "bytes32";
                      name: "fulfillerConduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "totalOriginalAdditionalRecipients";
                      type: "uint256";
                  }, {
                      components: readonly [{
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct AdditionalRecipient[]";
                      name: "additionalRecipients";
                      type: "tuple[]";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct BasicOrderParameters";
                  name: "parameters";
                  type: "tuple";
              }];
              name: "fulfillBasicOrder_efficient_6GL6yc";
              outputs: readonly [{
                  internalType: "bool";
                  name: "fulfilled";
                  type: "bool";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct Order";
                  name: "";
                  type: "tuple";
              }, {
                  internalType: "bytes32";
                  name: "fulfillerConduitKey";
                  type: "bytes32";
              }];
              name: "fulfillOrder";
              outputs: readonly [{
                  internalType: "bool";
                  name: "fulfilled";
                  type: "bool";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "contractOfferer";
                  type: "address";
              }];
              name: "getContractOffererNonce";
              outputs: readonly [{
                  internalType: "uint256";
                  name: "nonce";
                  type: "uint256";
              }];
              stateMutability: "view";
              type: "function";
          }, {
              inputs: readonly [{
                  internalType: "address";
                  name: "offerer";
                  type: "address";
              }];
              name: "getCounter";
              outputs: readonly [{
                  internalType: "uint256";
                  name: "counter";
                  type: "uint256";
              }];
              stateMutability: "view";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "address";
                      name: "zone";
                      type: "address";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }];
                      internalType: "struct OfferItem[]";
                      name: "offer";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifierOrCriteria";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "startAmount";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endAmount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ConsiderationItem[]";
                      name: "consideration";
                      type: "tuple[]";
                  }, {
                      internalType: "enum OrderType";
                      name: "orderType";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "startTime";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "endTime";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "zoneHash";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "salt";
                      type: "uint256";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }, {
                      internalType: "uint256";
                      name: "counter";
                      type: "uint256";
                  }];
                  internalType: "struct OrderComponents";
                  name: "";
                  type: "tuple";
              }];
              name: "getOrderHash";
              outputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              stateMutability: "view";
              type: "function";
          }, {
              inputs: readonly [{
                  internalType: "bytes32";
                  name: "orderHash";
                  type: "bytes32";
              }];
              name: "getOrderStatus";
              outputs: readonly [{
                  internalType: "bool";
                  name: "isValidated";
                  type: "bool";
              }, {
                  internalType: "bool";
                  name: "isCancelled";
                  type: "bool";
              }, {
                  internalType: "uint256";
                  name: "totalFilled";
                  type: "uint256";
              }, {
                  internalType: "uint256";
                  name: "totalSize";
                  type: "uint256";
              }];
              stateMutability: "view";
              type: "function";
          }, {
              inputs: readonly [];
              name: "incrementCounter";
              outputs: readonly [{
                  internalType: "uint256";
                  name: "newCounter";
                  type: "uint256";
              }];
              stateMutability: "nonpayable";
              type: "function";
          }, {
              inputs: readonly [];
              name: "information";
              outputs: readonly [{
                  internalType: "string";
                  name: "version";
                  type: "string";
              }, {
                  internalType: "bytes32";
                  name: "domainSeparator";
                  type: "bytes32";
              }, {
                  internalType: "address";
                  name: "conduitController";
                  type: "address";
              }];
              stateMutability: "view";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "uint120";
                      name: "numerator";
                      type: "uint120";
                  }, {
                      internalType: "uint120";
                      name: "denominator";
                      type: "uint120";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }, {
                      internalType: "bytes";
                      name: "extraData";
                      type: "bytes";
                  }];
                  internalType: "struct AdvancedOrder[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      internalType: "uint256";
                      name: "orderIndex";
                      type: "uint256";
                  }, {
                      internalType: "enum Side";
                      name: "side";
                      type: "uint8";
                  }, {
                      internalType: "uint256";
                      name: "index";
                      type: "uint256";
                  }, {
                      internalType: "uint256";
                      name: "identifier";
                      type: "uint256";
                  }, {
                      internalType: "bytes32[]";
                      name: "criteriaProof";
                      type: "bytes32[]";
                  }];
                  internalType: "struct CriteriaResolver[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      components: readonly [{
                          internalType: "uint256";
                          name: "orderIndex";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "itemIndex";
                          type: "uint256";
                      }];
                      internalType: "struct FulfillmentComponent[]";
                      name: "offerComponents";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "uint256";
                          name: "orderIndex";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "itemIndex";
                          type: "uint256";
                      }];
                      internalType: "struct FulfillmentComponent[]";
                      name: "considerationComponents";
                      type: "tuple[]";
                  }];
                  internalType: "struct Fulfillment[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  internalType: "address";
                  name: "recipient";
                  type: "address";
              }];
              name: "matchAdvancedOrders";
              outputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifier";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ReceivedItem";
                      name: "item";
                      type: "tuple";
                  }, {
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }];
                  internalType: "struct Execution[]";
                  name: "";
                  type: "tuple[]";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct Order[]";
                  name: "";
                  type: "tuple[]";
              }, {
                  components: readonly [{
                      components: readonly [{
                          internalType: "uint256";
                          name: "orderIndex";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "itemIndex";
                          type: "uint256";
                      }];
                      internalType: "struct FulfillmentComponent[]";
                      name: "offerComponents";
                      type: "tuple[]";
                  }, {
                      components: readonly [{
                          internalType: "uint256";
                          name: "orderIndex";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "itemIndex";
                          type: "uint256";
                      }];
                      internalType: "struct FulfillmentComponent[]";
                      name: "considerationComponents";
                      type: "tuple[]";
                  }];
                  internalType: "struct Fulfillment[]";
                  name: "";
                  type: "tuple[]";
              }];
              name: "matchOrders";
              outputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "enum ItemType";
                          name: "itemType";
                          type: "uint8";
                      }, {
                          internalType: "address";
                          name: "token";
                          type: "address";
                      }, {
                          internalType: "uint256";
                          name: "identifier";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "amount";
                          type: "uint256";
                      }, {
                          internalType: "address payable";
                          name: "recipient";
                          type: "address";
                      }];
                      internalType: "struct ReceivedItem";
                      name: "item";
                      type: "tuple";
                  }, {
                      internalType: "address";
                      name: "offerer";
                      type: "address";
                  }, {
                      internalType: "bytes32";
                      name: "conduitKey";
                      type: "bytes32";
                  }];
                  internalType: "struct Execution[]";
                  name: "";
                  type: "tuple[]";
              }];
              stateMutability: "payable";
              type: "function";
          }, {
              inputs: readonly [];
              name: "name";
              outputs: readonly [{
                  internalType: "string";
                  name: "";
                  type: "string";
              }];
              stateMutability: "pure";
              type: "function";
          }, {
              inputs: readonly [{
                  components: readonly [{
                      components: readonly [{
                          internalType: "address";
                          name: "offerer";
                          type: "address";
                      }, {
                          internalType: "address";
                          name: "zone";
                          type: "address";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }];
                          internalType: "struct OfferItem[]";
                          name: "offer";
                          type: "tuple[]";
                      }, {
                          components: readonly [{
                              internalType: "enum ItemType";
                              name: "itemType";
                              type: "uint8";
                          }, {
                              internalType: "address";
                              name: "token";
                              type: "address";
                          }, {
                              internalType: "uint256";
                              name: "identifierOrCriteria";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "startAmount";
                              type: "uint256";
                          }, {
                              internalType: "uint256";
                              name: "endAmount";
                              type: "uint256";
                          }, {
                              internalType: "address payable";
                              name: "recipient";
                              type: "address";
                          }];
                          internalType: "struct ConsiderationItem[]";
                          name: "consideration";
                          type: "tuple[]";
                      }, {
                          internalType: "enum OrderType";
                          name: "orderType";
                          type: "uint8";
                      }, {
                          internalType: "uint256";
                          name: "startTime";
                          type: "uint256";
                      }, {
                          internalType: "uint256";
                          name: "endTime";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "zoneHash";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "salt";
                          type: "uint256";
                      }, {
                          internalType: "bytes32";
                          name: "conduitKey";
                          type: "bytes32";
                      }, {
                          internalType: "uint256";
                          name: "totalOriginalConsiderationItems";
                          type: "uint256";
                      }];
                      internalType: "struct OrderParameters";
                      name: "parameters";
                      type: "tuple";
                  }, {
                      internalType: "bytes";
                      name: "signature";
                      type: "bytes";
                  }];
                  internalType: "struct Order[]";
                  name: "";
                  type: "tuple[]";
              }];
              name: "validate";
              outputs: readonly [{
                  internalType: "bool";
                  name: "";
                  type: "bool";
              }];
              stateMutability: "nonpayable";
              type: "function";
          }, {
              stateMutability: "payable";
              type: "receive";
          }], TFunctionName, true, TFunctionName extends ("CounterIncremented" | "OrderCancelled" | "OrderFulfilled" | "OrderValidated" | "OrdersMatched")[]
              ? TFunctionName[number]
              : TFunctionName>