@towns-protocol/generated
Version:
## How to generate contract types
393 lines (385 loc) • 25.3 kB
text/typescript
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
import type { Provider, TransactionRequest } from "@ethersproject/providers";
import type { PromiseOrValue } from "../common";
import type {
UserEntitlement,
UserEntitlementInterface,
} from "../UserEntitlement";
const _abi = [
{
type: "constructor",
inputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "SPACE_ADDRESS",
inputs: [],
outputs: [
{
name: "",
type: "address",
internalType: "address",
},
],
stateMutability: "view",
},
{
type: "function",
name: "UPGRADE_INTERFACE_VERSION",
inputs: [],
outputs: [
{
name: "",
type: "string",
internalType: "string",
},
],
stateMutability: "view",
},
{
type: "function",
name: "description",
inputs: [],
outputs: [
{
name: "",
type: "string",
internalType: "string",
},
],
stateMutability: "view",
},
{
type: "function",
name: "getEntitlementDataByRoleId",
inputs: [
{
name: "roleId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [
{
name: "",
type: "bytes",
internalType: "bytes",
},
],
stateMutability: "view",
},
{
type: "function",
name: "initialize",
inputs: [
{
name: "_space",
type: "address",
internalType: "address",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "isCrosschain",
inputs: [],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "pure",
},
{
type: "function",
name: "isEntitled",
inputs: [
{
name: "channelId",
type: "bytes32",
internalType: "bytes32",
},
{
name: "wallets",
type: "address[]",
internalType: "address[]",
},
{
name: "permission",
type: "bytes32",
internalType: "bytes32",
},
],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "moduleType",
inputs: [],
outputs: [
{
name: "",
type: "string",
internalType: "string",
},
],
stateMutability: "view",
},
{
type: "function",
name: "name",
inputs: [],
outputs: [
{
name: "",
type: "string",
internalType: "string",
},
],
stateMutability: "view",
},
{
type: "function",
name: "proxiableUUID",
inputs: [],
outputs: [
{
name: "",
type: "bytes32",
internalType: "bytes32",
},
],
stateMutability: "view",
},
{
type: "function",
name: "removeEntitlement",
inputs: [
{
name: "roleId",
type: "uint256",
internalType: "uint256",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "setEntitlement",
inputs: [
{
name: "roleId",
type: "uint256",
internalType: "uint256",
},
{
name: "entitlementData",
type: "bytes",
internalType: "bytes",
},
],
outputs: [],
stateMutability: "nonpayable",
},
{
type: "function",
name: "supportsInterface",
inputs: [
{
name: "interfaceId",
type: "bytes4",
internalType: "bytes4",
},
],
outputs: [
{
name: "",
type: "bool",
internalType: "bool",
},
],
stateMutability: "view",
},
{
type: "function",
name: "upgradeToAndCall",
inputs: [
{
name: "newImplementation",
type: "address",
internalType: "address",
},
{
name: "data",
type: "bytes",
internalType: "bytes",
},
],
outputs: [],
stateMutability: "payable",
},
{
type: "event",
name: "Initialized",
inputs: [
{
name: "version",
type: "uint64",
indexed: false,
internalType: "uint64",
},
],
anonymous: false,
},
{
type: "event",
name: "Upgraded",
inputs: [
{
name: "implementation",
type: "address",
indexed: true,
internalType: "address",
},
],
anonymous: false,
},
{
type: "error",
name: "AddressEmptyCode",
inputs: [
{
name: "target",
type: "address",
internalType: "address",
},
],
},
{
type: "error",
name: "ERC1967InvalidImplementation",
inputs: [
{
name: "implementation",
type: "address",
internalType: "address",
},
],
},
{
type: "error",
name: "ERC1967NonPayable",
inputs: [],
},
{
type: "error",
name: "Entitlement__InvalidValue",
inputs: [],
},
{
type: "error",
name: "Entitlement__NotAllowed",
inputs: [],
},
{
type: "error",
name: "Entitlement__NotMember",
inputs: [],
},
{
type: "error",
name: "Entitlement__ValueAlreadyExists",
inputs: [],
},
{
type: "error",
name: "FailedCall",
inputs: [],
},
{
type: "error",
name: "InvalidInitialization",
inputs: [],
},
{
type: "error",
name: "NotInitializing",
inputs: [],
},
{
type: "error",
name: "UUPSUnauthorizedCallContext",
inputs: [],
},
{
type: "error",
name: "UUPSUnsupportedProxiableUUID",
inputs: [
{
name: "slot",
type: "bytes32",
internalType: "bytes32",
},
],
},
] as const;
const _bytecode =
"0x60a060405230608052348015610013575f5ffd5b5061001c610021565b6100d3565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156100715760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100d05780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6080516121ad6100f95f395f8181610da801528181610dd1015261105501526121ad5ff3fe6080604052600436106100d9575f3560e01c806352d1902d1161007c578063ad3cb1cc11610057578063ad3cb1cc146102cd578063c4d66de814610315578063ef8be57414610334578063f0c111f914610353575f5ffd5b806352d1902d1461021b5780636465e69f1461023d5780637284e41614610285575f5ffd5b80631eee07b2116100b75780631eee07b2146101855780632e1b61e4146101a457806334322eff146101b65780634f1ef28614610206575f5ffd5b806301ffc9a7146100dd57806306fdde03146101115780630cf0b53314610166575b5f5ffd5b3480156100e8575f5ffd5b506100fc6100f73660046119e8565b610372565b60405190151581526020015b60405180910390f35b34801561011c575f5ffd5b506101596040518060400160405280601081526020017f5573657220456e7469746c656d656e740000000000000000000000000000000081525081565b6040516101089190611a73565b348015610171575f5ffd5b506100fc610180366004611be6565b61040a565b348015610190575f5ffd5b5061015961019f366004611c33565b610434565b3480156101af575f5ffd5b505f6100fc565b3480156101c1575f5ffd5b505f546101e19073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610108565b610219610214366004611c8f565b610470565b005b348015610226575f5ffd5b5061022f61048f565b604051908152602001610108565b348015610248575f5ffd5b506101596040518060400160405280600f81526020017f55736572456e7469746c656d656e74000000000000000000000000000000000081525081565b348015610290575f5ffd5b506101596040518060400160405280601581526020017f456e7469746c656d656e7420666f72207573657273000000000000000000000081525081565b3480156102d8575f5ffd5b506101596040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b348015610320575f5ffd5b5061021961032f366004611d15565b6104bd565b34801561033f575f5ffd5b5061021961034e366004611d2e565b610674565b34801561035e575f5ffd5b5061021961036d366004611c33565b6109ce565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167ff785968a00000000000000000000000000000000000000000000000000000000148061040457507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b5f83156104235761041c848484610bca565b905061042d565b61041c8383610d33565b9392505050565b606060015f8381526020019081526020015f2060020160405160200161045a9190611da5565b6040516020818303038152906040529050919050565b610478610d90565b61048182610e96565b61048b8282610eff565b5050565b5f61049861103d565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b5f6104c66110ac565b805490915060ff68010000000000000000820416159067ffffffffffffffff165f811580156104f25750825b90505f8267ffffffffffffffff16600114801561050e5750303b155b90508115801561051c575080155b15610553576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000016600117855583156105b45784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b6105bc6110d4565b6105c46110d4565b6105cc6110d4565b5f80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8816179055831561066c5784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146106da576040517f338e692c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6106e782840184611e00565b90505f5b815181101561077f575f82828151811061070757610707611e3a565b602002602001015190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610776576040517fe577901e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001016106eb565b505b5f848152600160205260409020600201541561086f575f8481526001602081905260408220600201805490916107b691611e94565b815481106107c6576107c6611e3a565b5f9182526020909120015473ffffffffffffffffffffffffffffffffffffffff1690506107f381866110dc565b5f85815260016020526040902060020180548061081257610812611ea7565b5f8281526020902081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff000000000000000000000000000000000000000016905501905550610781565b5f848152600160208190526040822080547fffffffffffffffffffffffff0000000000000000000000000000000000000000168155908101829055906108b86002830182611931565b505060405180606001604052806108cc3390565b73ffffffffffffffffffffffffffffffffffffffff90811682524260208084019190915260409283018590525f888152600180835290849020855181547fffffffffffffffffffffffff0000000000000000000000000000000000000000169416939093178355848201519083015591830151805191926109559260028501929091019061194c565b505f9150505b81518110156109c75760025f83838151811061097957610979611e3a565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff168252818101929092526040015f908120805460018181018355918352929091209091018690550161095b565b5050505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a34576040517f338e692c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8181526001602052604090205473ffffffffffffffffffffffffffffffffffffffff16610a8e576040517fe577901e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8181526001602052604090206002015415610b7c575f818152600160208190526040822060020180549091610ac391611e94565b81548110610ad357610ad3611e3a565b5f9182526020909120015473ffffffffffffffffffffffffffffffffffffffff169050610b0081836110dc565b5f828152600160205260409020600201805480610b1f57610b1f611ea7565b5f8281526020902081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff000000000000000000000000000000000000000016905501905550610a8e565b5f818152600160208190526040822080547fffffffffffffffffffffffff000000000000000000000000000000000000000016815590810182905590610bc56002830182611931565b505050565b5f80546040517f831c2b8200000000000000000000000000000000000000000000000000000000815260048101869052829173ffffffffffffffffffffffffffffffffffffffff169063831c2b82906024015f60405180830381865afa158015610c36573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610c7b9190810190611f21565b90505f610c8785611207565b90505f5b826060015151811015610d29575f83606001518281518110610caf57610caf611e3a565b602002602001015190505f5f90505b8351811015610d1f5781848281518110610cda57610cda611e3a565b6020026020010151148015610d0d5750610d0d848281518110610cff57610cff611e3a565b6020026020010151886114f0565b15610d1757600195505b600101610cbe565b5050600101610c8b565b5050509392505050565b5f5f610d3e84611207565b90505f5b8151811015610d8657610d6e828281518110610d6057610d60611e3a565b6020026020010151856114f0565b15610d7e57600192505050610404565b600101610d42565b505f949350505050565b3073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161480610e5d57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610e447f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614155b15610e94576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b5f5473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610efc576040517f338e692c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b8173ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610f84575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201909252610f8191810190612034565b60015b610fd7576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8114611033576040517faa1d49a400000000000000000000000000000000000000000000000000000000815260048101829052602401610fce565b610bc5838361161d565b3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614610e94576040517fe07c8dba00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00610404565b610e9461167f565b73ffffffffffffffffffffffffffffffffffffffff82165f908152600260205260408120905b81548110156111a4578282828154811061111e5761111e611e3a565b905f5260205f2001540361119c578154829061113c90600190611e94565b8154811061114c5761114c611e3a565b905f5260205f20015482828154811061116757611167611e3a565b905f5260205f2001819055508180548061118357611183611ea7565b600190038181905f5260205f20015f9055905550505050565b600101611102565b506040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f526f6c65204944206e6f7420666f756e6420666f7220746865207573657200006044820152606401610fce565b60605f805b83518110156112845760025f85838151811061122a5761122a611e3a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20805490508261127a919061204b565b915060010161120c565b5060015f5260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e0546112ba908261204b565b90505f8167ffffffffffffffff8111156112d6576112d6611a85565b6040519080825280602002602001820160405280156112ff578160200160208202803683370190505b5090505f805b8551811015611416575f60025f88848151811061132457611324611e3a565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208054806020026020016040519081016040528092919081815260200182805480156113ad57602002820191905f5260205f20905b815481526020019060010190808311611399575b509394505f93505050505b815181101561140c578181815181106113d3576113d3611e3a565b60200260200101518585806113e79061205e565b9650815181106113f9576113f9611e3a565b60209081029190910101526001016113b8565b5050600101611305565b5060015f908152600260209081527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e0805460408051828502810185019091528181529283018282801561148657602002820191905f5260205f20905b815481526020019060010190808311611472575b509394505f93505050505b81518110156114e5578181815181106114ac576114ac611e3a565b60200260200101518484806114c09061205e565b9550815181106114d2576114d2611e3a565b6020908102919091010152600101611491565b509195945050505050565b5f80546040517fb426423300000000000000000000000000000000000000000000000000000000815260048101859052829173ffffffffffffffffffffffffffffffffffffffff169063b4264233906024015f60405180830381865afa15801561155c573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526115a19190810190612095565b80519091505f5b81811015611612575f8382815181106115c3576115c3611e3a565b60200260200101516040516020016115db919061215d565b6040516020818303038152906040526115f390612168565b9050858103611609576001945050505050610404565b506001016115a8565b505f95945050505050565b611626826116bd565b60405173ffffffffffffffffffffffffffffffffffffffff8316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a280511561167757610bc5828261178b565b61048b61180a565b611687611842565b610e94576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff163b5f03611725576040517f4c9c8ce300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82166004820152602401610fce565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60605f5f8473ffffffffffffffffffffffffffffffffffffffff16846040516117b4919061215d565b5f60405180830381855af49150503d805f81146117ec576040519150601f19603f3d011682016040523d82523d5f602084013e6117f1565b606091505b5091509150611801858383611860565b95945050505050565b3415610e94576040517fb398979f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f61184b6110ac565b5468010000000000000000900460ff16919050565b60608261187557611870826118ef565b61042d565b8151158015611899575073ffffffffffffffffffffffffffffffffffffffff84163b155b156118e8576040517f9996b31500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602401610fce565b508061042d565b8051156118ff5780518082602001fd5b6040517fd6bda27500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5080545f8255905f5260205f2090810190610efc91906119d4565b828054828255905f5260205f209081019282156119c4579160200282015b828111156119c457825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff90911617825560209092019160019091019061196a565b506119d09291506119d4565b5090565b5b808211156119d0575f81556001016119d5565b5f602082840312156119f8575f5ffd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461042d575f5ffd5b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f61042d6020830184611a27565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040516080810167ffffffffffffffff81118282101715611ad557611ad5611a85565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611b2257611b22611a85565b604052919050565b5f67ffffffffffffffff821115611b4357611b43611a85565b5060051b60200190565b803573ffffffffffffffffffffffffffffffffffffffff81168114611b70575f5ffd5b919050565b5f82601f830112611b84575f5ffd5b8135611b97611b9282611b2a565b611adb565b8082825260208201915060208360051b860101925085831115611bb8575f5ffd5b602085015b83811015611bdc57611bce81611b4d565b835260209283019201611bbd565b5095945050505050565b5f5f5f60608486031215611bf8575f5ffd5b83359250602084013567ffffffffffffffff811115611c15575f5ffd5b611c2186828701611b75565b93969395505050506040919091013590565b5f60208284031215611c43575f5ffd5b5035919050565b5f67ffffffffffffffff821115611c6357611c63611a85565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b5f5f60408385031215611ca0575f5ffd5b611ca983611b4d565b9150602083013567ffffffffffffffff811115611cc4575f5ffd5b8301601f81018513611cd4575f5ffd5b8035611ce2611b9282611c4a565b818152866020838501011115611cf6575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f60208284031215611d25575f5ffd5b61042d82611b4d565b5f5f5f60408486031215611d40575f5ffd5b83359250602084013567ffffffffffffffff811115611d5d575f5ffd5b8401601f81018613611d6d575f5ffd5b803567ffffffffffffffff811115611d83575f5ffd5b866020828401011115611d94575f5ffd5b939660209190910195509293505050565b602080825282548282018190525f848152918220906040840190835b81811015611df557835473ffffffffffffffffffffffffffffffffffffffff16835260019384019360209093019201611dc1565b509095945050505050565b5f60208284031215611e10575f5ffd5b813567ffffffffffffffff811115611e26575f5ffd5b611e3284828501611b75565b949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8181038181111561040457610404611e67565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b5f82601f830112611ee3575f5ffd5b8151611ef1611b9282611c4a565b818152846020838601011115611f05575f5ffd5b8160208501602083015e5f918101602001919091529392505050565b5f60208284031215611f31575f5ffd5b815167ffffffffffffffff811115611f47575f5ffd5b820160808185031215611f58575f5ffd5b611f60611ab2565b8151815260208201518015158114611f76575f5ffd5b6020820152604082015167ffffffffffffffff811115611f94575f5ffd5b611fa086828501611ed4565b604083015250606082015167ffffffffffffffff811115611fbf575f5ffd5b80830192505084601f830112611fd3575f5ffd5b8151611fe1611b9282611b2a565b8082825260208201915060208360051b860101925087831115612002575f5ffd5b6020850194505b82851015612024578451825260209485019490910190612009565b6060840152509095945050505050565b5f60208284031215612044575f5ffd5b5051919050565b8082018082111561040457610404611e67565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361208e5761208e611e67565b5060010190565b5f602082840312156120a5575f5ffd5b815167ffffffffffffffff8111156120bb575f5ffd5b8201601f810184136120cb575f5ffd5b80516120d9611b9282611b2a565b8082825260208201915060208360051b8501019250868311156120fa575f5ffd5b602084015b8381101561213b57805167ffffffffffffffff81111561211d575f5ffd5b61212c89602083890101611ed4565b845250602092830192016120ff565b509695505050505050565b5f81518060208401855e5f93019283525090919050565b5f61042d8284612146565b805160208083015191908110156121a7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8160200360031b1b821691505b5091905056";
type UserEntitlementConstructorParams =
| [signer?: Signer]
| ConstructorParameters<typeof ContractFactory>;
const isSuperArgs = (
xs: UserEntitlementConstructorParams
): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
export class UserEntitlement__factory extends ContractFactory {
constructor(...args: UserEntitlementConstructorParams) {
if (isSuperArgs(args)) {
super(...args);
} else {
super(_abi, _bytecode, args[0]);
}
}
override deploy(
overrides?: Overrides & { from?: PromiseOrValue<string> }
): Promise<UserEntitlement> {
return super.deploy(overrides || {}) as Promise<UserEntitlement>;
}
override getDeployTransaction(
overrides?: Overrides & { from?: PromiseOrValue<string> }
): TransactionRequest {
return super.getDeployTransaction(overrides || {});
}
override attach(address: string): UserEntitlement {
return super.attach(address) as UserEntitlement;
}
override connect(signer: Signer): UserEntitlement__factory {
return super.connect(signer) as UserEntitlement__factory;
}
static readonly bytecode = _bytecode;
static readonly abi = _abi;
static createInterface(): UserEntitlementInterface {
return new utils.Interface(_abi) as UserEntitlementInterface;
}
static connect(
address: string,
signerOrProvider: Signer | Provider
): UserEntitlement {
return new Contract(address, _abi, signerOrProvider) as UserEntitlement;
}
}