import { ContractFactory, ContractTransactionResponse } from "ethers"; import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers"; import type { NonPayableOverrides } from "../../common"; import type { PermissionFactory, PermissionFactoryInterface } from "../../permission/PermissionFactory"; type PermissionFactoryConstructorParams = [signer?: Signer] | ConstructorParameters; export declare class PermissionFactory__factory extends ContractFactory { constructor(...args: PermissionFactoryConstructorParams); getDeployTransaction(overrides?: NonPayableOverrides & { from?: string; }): Promise; deploy(overrides?: NonPayableOverrides & { from?: string; }): Promise; connect(runner: ContractRunner | null): PermissionFactory__factory; static readonly bytecode = "0x60806040523480156200001157600080fd5b5033806200003a57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b620000458162000056565b506200005062000074565b620007cc565b600180546001600160a01b0319169055620000718162000258565b50565b620000c4604051806040016040528060118152602001701c185cdccb9dd85b1b195d0b9cdc195b99607a1b8152506040518060600160405280603781526020016200225f603791396001620002a8565b620001426040518060400160405280601881526020017f706173732e70757263686173652e6164646974696f6e616c00000000000000008152506040518060400160405280601c81526020017f5075726368617365206164646974696f6e616c2070726f6475637473000000008152506001620002a860201b60201c565b6200019e6040518060400160405280601981526020017f706173732e737562736372697074696f6e2e72656e6577616c0000000000000081525060405180606001604052806029815260200162002236602991396001620002a8565b620001fa6040518060400160405280601981526020017f706173732e737562736372697074696f6e2e70726963696e670000000000000081525060405180606001604052806032815260200162002296603291396001620002a8565b620002566040518060400160405280601a81526020017f706173732e737562736372697074696f6e2e7175616e746974790000000000008152506040518060600160405280602d8152602001620022c8602d91396001620002a8565b565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b620002b2620004cc565b6000835111620003055760405162461bcd60e51b815260206004820152601460248201527f4e616d652063616e6e6f7420626520656d707479000000000000000000000000604482015260640162000031565b6000801b6007846040516200031b9190620005bc565b90815260200160405180910390205414620003795760405162461bcd60e51b815260206004820152601e60248201527f5065726d697373696f6e206e616d6520616c7265616479206578697374730000604482015260640162000031565b60006200038684620004fb565b6040805160a0810182528281526020808201888152828401889052600160608401819052426080850152600086815260069093529390912082518155905193945090929091820190620003da908262000681565b5060408201516002820190620003f1908262000681565b50606082015160038201805460ff1916911515919091179055608090910151600490910155620004236002826200052d565b5080600785604051620004379190620005bc565b90815260405190819003602001902055811562000488576200045b6004826200052d565b5060405181907fb77a9cb3580a8da919fca5c42797d96200cc0967721c863d445db6b88bcb280090600090a25b807f635974197d3ac72d49333166826f4a73a58b1103e03e629aaf65d8da437425e2858585604051620004be939291906200077b565b60405180910390a250505050565b6000546001600160a01b03163314620002565760405163118cdaa760e01b815233600482015260240162000031565b600081604051602001620005109190620007b7565b604051602081830303815290604052805190602001209050919050565b60006200053b838362000544565b90505b92915050565b60008181526001830160205260408120546200058d575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556200053e565b5060006200053e565b60005b83811015620005b357818101518382015260200162000599565b50506000910152565b60008251620005d081846020870162000596565b9190910192915050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200060557607f821691505b6020821081036200062657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200067c576000816000526020600020601f850160051c81016020861015620006575750805b601f850160051c820191505b81811015620006785782815560010162000663565b5050505b505050565b81516001600160401b038111156200069d576200069d620005da565b620006b581620006ae8454620005f0565b846200062c565b602080601f831160018114620006ed5760008415620006d45750858301515b600019600386901b1c1916600185901b17855562000678565b600085815260208120601f198616915b828110156200071e57888601518255948401946001909101908401620006fd565b50858210156200073d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600081518084526200076781602086016020860162000596565b601f01601f19169290920160200192915050565b6060815260006200079060608301866200074d565b8281036020840152620007a481866200074d565b9150508215156040830152949350505050565b6020815260006200053b60208301846200074d565b611a5a80620007dc6000396000f3fe608060405234801561001057600080fd5b50600436106101575760003560e01c80638a824b63116100c3578063b989e2c51161007c578063b989e2c5146102ed578063e30c3978146102f5578063ec2676a114610306578063f2fde38b1461031b578063f83d49371461032e578063f86e7abf1461033657600080fd5b80638a824b631461025c5780638da5cb5b1461026f578063948f60401461029457806399850676146102a7578063acebdbd1146102c7578063ae693f25146102da57600080fd5b80636968c22c116101155780636968c22c146101f25780637013b2c514610213578063715018a61461022657806376c032661461022e57806379ba50971461024157806382e1d5791461024957600080fd5b80628431c01461015c57806301ffc9a71461018457806333d331671461019757806345e27367146101b757806353f7529c146101ca57806356ac1558146101dd575b600080fd5b61016f61016a3660046113b5565b610349565b60405190151581526020015b60405180910390f35b61016f6101923660046113f2565b61037d565b6101aa6101a536600461141c565b6103b4565b60405161017b91906114e0565b61016f6101c536600461141c565b610535565b6101aa6101d83660046113b5565b61054b565b6101f06101eb36600461141c565b6105b7565b005b6102056102003660046113b5565b610665565b60405190815260200161017b565b6101f061022136600461141c565b610692565b6101f0610731565b6101f061023c366004611508565b610745565b6101f0610949565b6101f061025736600461157c565b61098d565b6101f061026a3660046115c3565b6109f8565b6000546001600160a01b03165b6040516001600160a01b03909116815260200161017b565b61016f6102a2366004611613565b610ada565b6102ba6102b5366004611613565b610b34565b60405161017b91906116c9565b6102ba6102d536600461172d565b610bf0565b61016f6102e836600461172d565b610e26565b6102ba610e76565b6001546001600160a01b031661027c565b61030e610e8a565b60405161017b91906117be565b6101f0610329366004611802565b610e96565b61030e610f07565b61016f61034436600461141c565b610f13565b60008060078360405161035c919061182b565b908152602001604051809103902054905061037681610f13565b9392505050565b60006001600160e01b03198216634e42cdbf60e01b14806103ae57506001600160e01b031982166301ffc9a760e01b145b92915050565b6103bc6112ca565b816103c681610f44565b600660008481526020019081526020016000206040518060a0016040529081600082015481526020016001820180546103fe90611847565b80601f016020809104026020016040519081016040528092919081815260200182805461042a90611847565b80156104775780601f1061044c57610100808354040283529160200191610477565b820191906000526020600020905b81548152906001019060200180831161045a57829003601f168201915b5050505050815260200160028201805461049090611847565b80601f01602080910402602001604051908101604052809291908181526020018280546104bc90611847565b80156105095780601f106104de57610100808354040283529160200191610509565b820191906000526020600020905b8154815290600101906020018083116104ec57829003601f168201915b5050509183525050600382015460ff161515602082015260049091015460409091015291505b50919050565b60008181526005602052604081205415156103ae565b6105536112ca565b6000600783604051610565919061182b565b908152602001604051809103902054905061057f81610f44565b600660008281526020019081526020016000206040518060a0016040529081600082015481526020016001820180546103fe90611847565b6105bf610f9f565b806105c981610f44565b6000828152600560205260409020541561062a5760405162461bcd60e51b815260206004820152601860248201527f5065726d697373696f6e20616c7265616479206164646564000000000000000060448201526064015b60405180910390fd5b610635600483610fcc565b5060405182907fb77a9cb3580a8da919fca5c42797d96200cc0967721c863d445db6b88bcb280090600090a25050565b600080600783604051610678919061182b565b90815260200160405180910390205490506103ae81610f44565b61069a610f9f565b806106a481610f44565b6000828152600560205260409020546106f65760405162461bcd60e51b815260206004820152601460248201527314195c9b5a5cdcda5bdb881b9bdd08185919195960621b6044820152606401610621565b610701600483610fd8565b5060405182907ff63e5ce00a602a3f9b053b891a7831051f6322622e4b3763641000ee2de4059590600090a25050565b610739610f9f565b6107436000610fe4565b565b61074d610f9f565b60008351116107955760405162461bcd60e51b81526020600482015260146024820152734e616d652063616e6e6f7420626520656d70747960601b6044820152606401610621565b6000801b6007846040516107a9919061182b565b908152602001604051809103902054146108055760405162461bcd60e51b815260206004820152601e60248201527f5065726d697373696f6e206e616d6520616c72656164792065786973747300006044820152606401610621565b600061081084610ffd565b6040805160a081018252828152602080820188815282840188905260016060840181905242608085015260008681526006909352939091208251815590519394509092909182019061086290826118cc565b506040820151600282019061087790826118cc565b50606082015160038201805460ff19169115159190911790556080909101516004909101556108a7600282610fcc565b50806007856040516108b9919061182b565b908152604051908190036020019020558115610907576108da600482610fcc565b5060405181907fb77a9cb3580a8da919fca5c42797d96200cc0967721c863d445db6b88bcb280090600090a25b807f635974197d3ac72d49333166826f4a73a58b1103e03e629aaf65d8da437425e285858560405161093b9392919061198c565b60405180910390a250505050565b60015433906001600160a01b031681146109815760405163118cdaa760e01b81526001600160a01b0382166004820152602401610621565b61098a81610fe4565b50565b610995610f9f565b8161099f81610f44565b60008381526006602052604090206002016109ba83826118cc565b50827f6f0227dfad6e62ec4fd2dd8f84e351be558e0faee3b90fef84cd2cc298bbfa6f836040516109eb91906119c4565b60405180910390a2505050565b610a00610f9f565b81610a0a81610f44565b60008381526006602052604090206003015482151560ff909116151503610a875760405162461bcd60e51b815260206004820152602b60248201527f5065726d697373696f6e20616c72656164792073657420746f2074686973206160448201526a637469766520737461746560a81b6064820152608401610621565b600083815260066020908152604091829020600301805460ff1916851515908117909155915191825284917f1ba296b84ba464d2713e99b9488922929d786dd8b029f1f2578a40060eec6b8391016109eb565b600081610ae68161102d565b60005b8351811015610b2a57610b14848281518110610b0757610b076119d7565b6020026020010151610349565b610b2257600092505061052f565b600101610ae9565b5060019392505050565b606081610b408161102d565b825167ffffffffffffffff811115610b5a57610b5a6112fe565b604051908082528060200260200182016040528015610b9357816020015b610b806112ca565b815260200190600190039081610b785790505b50915060005b8351811015610be957610bc4848281518110610bb757610bb76119d7565b602002602001015161054b565b838281518110610bd657610bd66119d7565b6020908102919091010152600101610b99565b5050919050565b606081610bfc8161107e565b825167ffffffffffffffff811115610c1657610c166112fe565b604051908082528060200260200182016040528015610c4f57816020015b610c3c6112ca565b815260200190600190039081610c345790505b50915060005b8351811015610be957610c80848281518110610c7357610c736119d7565b6020026020010151610f44565b60066000858381518110610c9657610c966119d7565b602002602001015181526020019081526020016000206040518060a001604052908160008201548152602001600182018054610cd190611847565b80601f0160208091040260200160405190810160405280929190818152602001828054610cfd90611847565b8015610d4a5780601f10610d1f57610100808354040283529160200191610d4a565b820191906000526020600020905b815481529060010190602001808311610d2d57829003601f168201915b50505050508152602001600282018054610d6390611847565b80601f0160208091040260200160405190810160405280929190818152602001828054610d8f90611847565b8015610ddc5780601f10610db157610100808354040283529160200191610ddc565b820191906000526020600020905b815481529060010190602001808311610dbf57829003601f168201915b5050509183525050600382015460ff16151560208201526004909101546040909101528351849083908110610e1357610e136119d7565b6020908102919091010152600101610c55565b600081610e328161107e565b60005b8351811015610b2a57610e60848281518110610e5357610e536119d7565b6020026020010151610f13565b610e6e57600092505061052f565b600101610e35565b6060610e856102d560026110cf565b905090565b6060610e8560046110cf565b610e9e610f9f565b600180546001600160a01b0383166001600160a01b03199091168117909155610ecf6000546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6060610e8560026110cf565b600081815260036020526040812054151580156103ae57505060009081526006602052604090206003015460ff1690565b60008181526003602052604090205461098a5760405162461bcd60e51b815260206004820152601960248201527f5065726d697373696f6e20646f6573206e6f74206578697374000000000000006044820152606401610621565b6000546001600160a01b031633146107435760405163118cdaa760e01b8152336004820152602401610621565b600061037683836110dc565b6000610376838361112b565b600180546001600160a01b031916905561098a8161121e565b60008160405160200161101091906119c4565b604051602081830303815290604052805190602001209050919050565b600081511161098a5760405162461bcd60e51b815260206004820152601c60248201527f4e6f207065726d697373696f6e206e616d65732070726f7669646564000000006044820152606401610621565b600081511161098a5760405162461bcd60e51b815260206004820152601760248201527f4e6f207065726d697373696f6e732070726f76696465640000000000000000006044820152606401610621565b606060006103768361126e565b6000818152600183016020526040812054611123575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556103ae565b5060006103ae565b6000818152600183016020526040812054801561121457600061114f6001836119ed565b8554909150600090611163906001906119ed565b90508082146111c8576000866000018281548110611183576111836119d7565b90600052602060002001549050808760000184815481106111a6576111a66119d7565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806111d9576111d9611a0e565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506103ae565b60009150506103ae565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6060816000018054806020026020016040519081016040528092919081815260200182805480156112be57602002820191906000526020600020905b8154815260200190600101908083116112aa575b50505050509050919050565b6040518060a00160405280600080191681526020016060815260200160608152602001600015158152602001600081525090565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561133d5761133d6112fe565b604052919050565b600082601f83011261135657600080fd5b813567ffffffffffffffff811115611370576113706112fe565b611383601f8201601f1916602001611314565b81815284602083860101111561139857600080fd5b816020850160208301376000918101602001919091529392505050565b6000602082840312156113c757600080fd5b813567ffffffffffffffff8111156113de57600080fd5b6113ea84828501611345565b949350505050565b60006020828403121561140457600080fd5b81356001600160e01b03198116811461037657600080fd5b60006020828403121561142e57600080fd5b5035919050565b60005b83811015611450578181015183820152602001611438565b50506000910152565b60008151808452611471816020860160208601611435565b601f01601f19169290920160200192915050565b805182526000602082015160a060208501526114a460a0850182611459565b9050604083015184820360408601526114bd8282611459565b915050606083015115156060850152608083015160808501528091505092915050565b6020815260006103766020830184611485565b8035801515811461150357600080fd5b919050565b60008060006060848603121561151d57600080fd5b833567ffffffffffffffff8082111561153557600080fd5b61154187838801611345565b9450602086013591508082111561155757600080fd5b5061156486828701611345565b925050611573604085016114f3565b90509250925092565b6000806040838503121561158f57600080fd5b82359150602083013567ffffffffffffffff8111156115ad57600080fd5b6115b985828601611345565b9150509250929050565b600080604083850312156115d657600080fd5b823591506115e6602084016114f3565b90509250929050565b600067ffffffffffffffff821115611609576116096112fe565b5060051b60200190565b6000602080838503121561162657600080fd5b823567ffffffffffffffff8082111561163e57600080fd5b818501915085601f83011261165257600080fd5b8135611665611660826115ef565b611314565b81815260059190911b8301840190848101908883111561168457600080fd5b8585015b838110156116bc578035858111156116a05760008081fd5b6116ae8b89838a0101611345565b845250918601918601611688565b5098975050505050505050565b600060208083016020845280855180835260408601915060408160051b87010192506020870160005b8281101561172057603f1988860301845261170e858351611485565b945092850192908501906001016116f2565b5092979650505050505050565b6000602080838503121561174057600080fd5b823567ffffffffffffffff81111561175757600080fd5b8301601f8101851361176857600080fd5b8035611776611660826115ef565b81815260059190911b8201830190838101908783111561179557600080fd5b928401925b828410156117b35783358252928401929084019061179a565b979650505050505050565b6020808252825182820181905260009190848201906040850190845b818110156117f6578351835292840192918401916001016117da565b50909695505050505050565b60006020828403121561181457600080fd5b81356001600160a01b038116811461037657600080fd5b6000825161183d818460208701611435565b9190910192915050565b600181811c9082168061185b57607f821691505b60208210810361052f57634e487b7160e01b600052602260045260246000fd5b601f8211156118c7576000816000526020600020601f850160051c810160208610156118a45750805b601f850160051c820191505b818110156118c3578281556001016118b0565b5050505b505050565b815167ffffffffffffffff8111156118e6576118e66112fe565b6118fa816118f48454611847565b8461187b565b602080601f83116001811461192f57600084156119175750858301515b600019600386901b1c1916600185901b1785556118c3565b600085815260208120601f198616915b8281101561195e5788860151825594840194600190910190840161193f565b508582101561197c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60608152600061199f6060830186611459565b82810360208401526119b18186611459565b9150508215156040830152949350505050565b6020815260006103766020830184611459565b634e487b7160e01b600052603260045260246000fd5b818103818111156103ae57634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603160045260246000fdfea26469706673582212207a67633c6594ec5312efea4a00be9f9f73684008392593266b47a0406d345d0764736f6c634300081800334175746f6d61746963616c6c792072656e6577206578706972656420737562736372697074696f6e73417070726f766520616e206f7267616e697a6174696f6e20746f207370656e642066756e64732066726f6d20796f75722077616c6c6574557064617465206f7220646f776e6772616465207468652070726963696e6720666f72206120737562736372697074696f6e4368616e676520746865207175616e7469747920666f7220612054494552454420737562736372697074696f6e"; static readonly abi: readonly [{ readonly inputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "constructor"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "owner"; readonly type: "address"; }]; readonly name: "OwnableInvalidOwner"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "OwnableUnauthorizedAccount"; readonly type: "error"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "bytes32"; readonly name: "permissionId"; readonly type: "bytes32"; }]; readonly name: "DefaultPermissionAdded"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "bytes32"; readonly name: "permissionId"; readonly type: "bytes32"; }]; readonly name: "DefaultPermissionRemoved"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "previousOwner"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "newOwner"; readonly type: "address"; }]; readonly name: "OwnershipTransferStarted"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "previousOwner"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "newOwner"; readonly type: "address"; }]; readonly name: "OwnershipTransferred"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "bytes32"; readonly name: "permissionId"; readonly type: "bytes32"; }, { readonly indexed: false; readonly internalType: "bool"; readonly name: "isActive"; readonly type: "bool"; }]; readonly name: "PermissionActivation"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "bytes32"; readonly name: "permissionId"; readonly type: "bytes32"; }, { readonly indexed: false; readonly internalType: "string"; readonly name: "name"; readonly type: "string"; }, { readonly indexed: false; readonly internalType: "string"; readonly name: "description"; readonly type: "string"; }, { readonly indexed: false; readonly internalType: "bool"; readonly name: "isDefault"; readonly type: "bool"; }]; readonly name: "PermissionCreated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "bytes32"; readonly name: "permissionId"; readonly type: "bytes32"; }, { readonly indexed: false; readonly internalType: "string"; readonly name: "description"; readonly type: "string"; }]; readonly name: "PermissionDescriptionUpdated"; readonly type: "event"; }, { readonly inputs: readonly []; readonly name: "acceptOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "_permissionId"; readonly type: "bytes32"; }]; readonly name: "addDefaultPermission"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "string"; readonly name: "_name"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "_description"; readonly type: "string"; }, { readonly internalType: "bool"; readonly name: "_isDefault"; readonly type: "bool"; }]; readonly name: "createPermission"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getAllPermissionIds"; readonly outputs: readonly [{ readonly internalType: "bytes32[]"; readonly name: ""; readonly type: "bytes32[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getAllPermissions"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "bytes32"; readonly name: "id"; readonly type: "bytes32"; }, { readonly internalType: "string"; readonly name: "name"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "description"; readonly type: "string"; }, { readonly internalType: "bool"; readonly name: "isActive"; readonly type: "bool"; }, { readonly internalType: "uint256"; readonly name: "createdAt"; readonly type: "uint256"; }]; readonly internalType: "struct IPermissionFactory.Permission[]"; readonly name: ""; readonly type: "tuple[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getDefaultPermissionIds"; readonly outputs: readonly [{ readonly internalType: "bytes32[]"; readonly name: ""; readonly type: "bytes32[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "_permissionId"; readonly type: "bytes32"; }]; readonly name: "getPermission"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "bytes32"; readonly name: "id"; readonly type: "bytes32"; }, { readonly internalType: "string"; readonly name: "name"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "description"; readonly type: "string"; }, { readonly internalType: "bool"; readonly name: "isActive"; readonly type: "bool"; }, { readonly internalType: "uint256"; readonly name: "createdAt"; readonly type: "uint256"; }]; readonly internalType: "struct IPermissionFactory.Permission"; readonly name: ""; readonly type: "tuple"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32[]"; readonly name: "_permissionIds"; readonly type: "bytes32[]"; }]; readonly name: "getPermissionBatch"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "bytes32"; readonly name: "id"; readonly type: "bytes32"; }, { readonly internalType: "string"; readonly name: "name"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "description"; readonly type: "string"; }, { readonly internalType: "bool"; readonly name: "isActive"; readonly type: "bool"; }, { readonly internalType: "uint256"; readonly name: "createdAt"; readonly type: "uint256"; }]; readonly internalType: "struct IPermissionFactory.Permission[]"; readonly name: "_permissions"; readonly type: "tuple[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "string"; readonly name: "_name"; readonly type: "string"; }]; readonly name: "getPermissionByName"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "bytes32"; readonly name: "id"; readonly type: "bytes32"; }, { readonly internalType: "string"; readonly name: "name"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "description"; readonly type: "string"; }, { readonly internalType: "bool"; readonly name: "isActive"; readonly type: "bool"; }, { readonly internalType: "uint256"; readonly name: "createdAt"; readonly type: "uint256"; }]; readonly internalType: "struct IPermissionFactory.Permission"; readonly name: ""; readonly type: "tuple"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "string[]"; readonly name: "_names"; readonly type: "string[]"; }]; readonly name: "getPermissionByNameBatch"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "bytes32"; readonly name: "id"; readonly type: "bytes32"; }, { readonly internalType: "string"; readonly name: "name"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "description"; readonly type: "string"; }, { readonly internalType: "bool"; readonly name: "isActive"; readonly type: "bool"; }, { readonly internalType: "uint256"; readonly name: "createdAt"; readonly type: "uint256"; }]; readonly internalType: "struct IPermissionFactory.Permission[]"; readonly name: "_permissions"; readonly type: "tuple[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "string"; readonly name: "_name"; readonly type: "string"; }]; readonly name: "getPermissionIdByName"; readonly outputs: readonly [{ readonly internalType: "bytes32"; readonly name: ""; readonly type: "bytes32"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "_permissionId"; readonly type: "bytes32"; }]; readonly name: "isDefaultPermission"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "_permissionId"; readonly type: "bytes32"; }]; readonly name: "isPermissionActive"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32[]"; readonly name: "_permissionIds"; readonly type: "bytes32[]"; }]; readonly name: "isPermissionActiveBatch"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "string"; readonly name: "_name"; readonly type: "string"; }]; readonly name: "isPermissionActiveByName"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "string[]"; readonly name: "_names"; readonly type: "string[]"; }]; readonly name: "isPermissionActiveByNameBatch"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "owner"; readonly outputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "pendingOwner"; readonly outputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "_permissionId"; readonly type: "bytes32"; }]; readonly name: "removeDefaultPermission"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "renounceOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "_permissionId"; readonly type: "bytes32"; }, { readonly internalType: "bool"; readonly name: "_isActive"; readonly type: "bool"; }]; readonly name: "setPermissionActive"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "_permissionId"; readonly type: "bytes32"; }, { readonly internalType: "string"; readonly name: "_description"; readonly type: "string"; }]; readonly name: "setPermissionDescription"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes4"; readonly name: "interfaceId"; readonly type: "bytes4"; }]; readonly name: "supportsInterface"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "pure"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "newOwner"; readonly type: "address"; }]; readonly name: "transferOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }]; static createInterface(): PermissionFactoryInterface; static connect(address: string, runner?: ContractRunner | null): PermissionFactory; } export {};