MultiOwnerPluginAbi

1const MultiOwnerPluginAbi: readonly [{
2 inputs: readonly [];
3 name: "eip712Domain";
4 outputs: readonly [{
5 internalType: "bytes1";
6 name: "fields";
7 type: "bytes1";
8 }, {
9 internalType: "string";
10 name: "name";
11 type: "string";
12 }, {
13 internalType: "string";
14 name: "version";
15 type: "string";
16 }, {
17 internalType: "uint256";
18 name: "chainId";
19 type: "uint256";
20 }, {
21 internalType: "address";
22 name: "verifyingContract";
23 type: "address";
24 }, {
25 internalType: "bytes32";
26 name: "salt";
27 type: "bytes32";
28 }, {
29 internalType: "uint256[]";
30 name: "extensions";
31 type: "uint256[]";
32 }];
33 stateMutability: "view";
34 type: "function";
35}, {
36 inputs: readonly [{
37 internalType: "address";
38 name: "account";
39 type: "address";
40 }, {
41 internalType: "bytes";
42 name: "message";
43 type: "bytes";
44 }];
45 name: "encodeMessageData";
46 outputs: readonly [{
47 internalType: "bytes";
48 name: "";
49 type: "bytes";
50 }];
51 stateMutability: "view";
52 type: "function";
53}, {
54 inputs: readonly [{
55 internalType: "address";
56 name: "account";
57 type: "address";
58 }, {
59 internalType: "bytes";
60 name: "message";
61 type: "bytes";
62 }];
63 name: "getMessageHash";
64 outputs: readonly [{
65 internalType: "bytes32";
66 name: "";
67 type: "bytes32";
68 }];
69 stateMutability: "view";
70 type: "function";
71}, {
72 inputs: readonly [{
73 internalType: "address";
74 name: "account";
75 type: "address";
76 }, {
77 internalType: "address";
78 name: "ownerToCheck";
79 type: "address";
80 }];
81 name: "isOwnerOf";
82 outputs: readonly [{
83 internalType: "bool";
84 name: "";
85 type: "bool";
86 }];
87 stateMutability: "view";
88 type: "function";
89}, {
90 inputs: readonly [{
91 internalType: "bytes32";
92 name: "digest";
93 type: "bytes32";
94 }, {
95 internalType: "bytes";
96 name: "signature";
97 type: "bytes";
98 }];
99 name: "isValidSignature";
100 outputs: readonly [{
101 internalType: "bytes4";
102 name: "";
103 type: "bytes4";
104 }];
105 stateMutability: "view";
106 type: "function";
107}, {
108 inputs: readonly [{
109 internalType: "bytes";
110 name: "data";
111 type: "bytes";
112 }];
113 name: "onInstall";
114 outputs: readonly [];
115 stateMutability: "nonpayable";
116 type: "function";
117}, {
118 inputs: readonly [{
119 internalType: "bytes";
120 name: "";
121 type: "bytes";
122 }];
123 name: "onUninstall";
124 outputs: readonly [];
125 stateMutability: "nonpayable";
126 type: "function";
127}, {
128 inputs: readonly [{
129 internalType: "address";
130 name: "account";
131 type: "address";
132 }];
133 name: "ownersOf";
134 outputs: readonly [{
135 internalType: "address[]";
136 name: "";
137 type: "address[]";
138 }];
139 stateMutability: "view";
140 type: "function";
141}, {
142 inputs: readonly [];
143 name: "pluginManifest";
144 outputs: readonly [{
145 components: readonly [{
146 internalType: "bytes4[]";
147 name: "interfaceIds";
148 type: "bytes4[]";
149 }, {
150 internalType: "bytes4[]";
151 name: "dependencyInterfaceIds";
152 type: "bytes4[]";
153 }, {
154 internalType: "bytes4[]";
155 name: "executionFunctions";
156 type: "bytes4[]";
157 }, {
158 internalType: "bytes4[]";
159 name: "permittedExecutionSelectors";
160 type: "bytes4[]";
161 }, {
162 internalType: "bool";
163 name: "permitAnyExternalAddress";
164 type: "bool";
165 }, {
166 internalType: "bool";
167 name: "canSpendNativeToken";
168 type: "bool";
169 }, {
170 components: readonly [..., ..., ...];
171 internalType: "struct ManifestExternalCallPermission[]";
172 name: "permittedExternalCalls";
173 type: "tuple[]";
174 }, {
175 components: readonly [..., ...];
176 internalType: "struct ManifestAssociatedFunction[]";
177 name: "userOpValidationFunctions";
178 type: "tuple[]";
179 }, {
180 components: readonly [..., ...];
181 internalType: "struct ManifestAssociatedFunction[]";
182 name: "runtimeValidationFunctions";
183 type: "tuple[]";
184 }, {
185 components: readonly [..., ...];
186 internalType: "struct ManifestAssociatedFunction[]";
187 name: "preUserOpValidationHooks";
188 type: "tuple[]";
189 }, {
190 components: readonly [..., ...];
191 internalType: "struct ManifestAssociatedFunction[]";
192 name: "preRuntimeValidationHooks";
193 type: "tuple[]";
194 }, {
195 components: readonly [..., ..., ...];
196 internalType: "struct ManifestExecutionHook[]";
197 name: "executionHooks";
198 type: "tuple[]";
199 }];
200 internalType: "struct PluginManifest";
201 name: "";
202 type: "tuple";
203 }];
204 stateMutability: "pure";
205 type: "function";
206}, {
207 inputs: readonly [];
208 name: "pluginMetadata";
209 outputs: readonly [{
210 components: readonly [{
211 internalType: "string";
212 name: "name";
213 type: "string";
214 }, {
215 internalType: "string";
216 name: "version";
217 type: "string";
218 }, {
219 internalType: "string";
220 name: "author";
221 type: "string";
222 }, {
223 components: readonly [..., ...];
224 internalType: "struct SelectorPermission[]";
225 name: "permissionDescriptors";
226 type: "tuple[]";
227 }];
228 internalType: "struct PluginMetadata";
229 name: "";
230 type: "tuple";
231 }];
232 stateMutability: "pure";
233 type: "function";
234}, {
235 inputs: readonly [{
236 internalType: "uint8";
237 name: "functionId";
238 type: "uint8";
239 }, {
240 internalType: "bytes";
241 name: "preExecHookData";
242 type: "bytes";
243 }];
244 name: "postExecutionHook";
245 outputs: readonly [];
246 stateMutability: "nonpayable";
247 type: "function";
248}, {
249 inputs: readonly [{
250 internalType: "uint8";
251 name: "functionId";
252 type: "uint8";
253 }, {
254 internalType: "address";
255 name: "sender";
256 type: "address";
257 }, {
258 internalType: "uint256";
259 name: "value";
260 type: "uint256";
261 }, {
262 internalType: "bytes";
263 name: "data";
264 type: "bytes";
265 }];
266 name: "preExecutionHook";
267 outputs: readonly [{
268 internalType: "bytes";
269 name: "";
270 type: "bytes";
271 }];
272 stateMutability: "nonpayable";
273 type: "function";
274}, {
275 inputs: readonly [{
276 internalType: "uint8";
277 name: "functionId";
278 type: "uint8";
279 }, {
280 internalType: "address";
281 name: "sender";
282 type: "address";
283 }, {
284 internalType: "uint256";
285 name: "value";
286 type: "uint256";
287 }, {
288 internalType: "bytes";
289 name: "data";
290 type: "bytes";
291 }];
292 name: "preRuntimeValidationHook";
293 outputs: readonly [];
294 stateMutability: "nonpayable";
295 type: "function";
296}, {
297 inputs: readonly [{
298 internalType: "uint8";
299 name: "functionId";
300 type: "uint8";
301 }, {
302 components: readonly [{
303 internalType: "address";
304 name: "sender";
305 type: "address";
306 }, {
307 internalType: "uint256";
308 name: "nonce";
309 type: "uint256";
310 }, {
311 internalType: "bytes";
312 name: "initCode";
313 type: "bytes";
314 }, {
315 internalType: "bytes";
316 name: "callData";
317 type: "bytes";
318 }, {
319 internalType: "uint256";
320 name: "callGasLimit";
321 type: "uint256";
322 }, {
323 internalType: "uint256";
324 name: "verificationGasLimit";
325 type: "uint256";
326 }, {
327 internalType: "uint256";
328 name: "preVerificationGas";
329 type: "uint256";
330 }, {
331 internalType: "uint256";
332 name: "maxFeePerGas";
333 type: "uint256";
334 }, {
335 internalType: "uint256";
336 name: "maxPriorityFeePerGas";
337 type: "uint256";
338 }, {
339 internalType: "bytes";
340 name: "paymasterAndData";
341 type: "bytes";
342 }, {
343 internalType: "bytes";
344 name: "signature";
345 type: "bytes";
346 }];
347 internalType: "struct UserOperation";
348 name: "userOp";
349 type: "tuple";
350 }, {
351 internalType: "bytes32";
352 name: "userOpHash";
353 type: "bytes32";
354 }];
355 name: "preUserOpValidationHook";
356 outputs: readonly [{
357 internalType: "uint256";
358 name: "";
359 type: "uint256";
360 }];
361 stateMutability: "nonpayable";
362 type: "function";
363}, {
364 inputs: readonly [{
365 internalType: "uint8";
366 name: "functionId";
367 type: "uint8";
368 }, {
369 internalType: "address";
370 name: "sender";
371 type: "address";
372 }, {
373 internalType: "uint256";
374 name: "";
375 type: "uint256";
376 }, {
377 internalType: "bytes";
378 name: "";
379 type: "bytes";
380 }];
381 name: "runtimeValidationFunction";
382 outputs: readonly [];
383 stateMutability: "view";
384 type: "function";
385}, {
386 inputs: readonly [{
387 internalType: "bytes4";
388 name: "interfaceId";
389 type: "bytes4";
390 }];
391 name: "supportsInterface";
392 outputs: readonly [{
393 internalType: "bool";
394 name: "";
395 type: "bool";
396 }];
397 stateMutability: "view";
398 type: "function";
399}, {
400 inputs: readonly [{
401 internalType: "address[]";
402 name: "ownersToAdd";
403 type: "address[]";
404 }, {
405 internalType: "address[]";
406 name: "ownersToRemove";
407 type: "address[]";
408 }];
409 name: "updateOwners";
410 outputs: readonly [];
411 stateMutability: "nonpayable";
412 type: "function";
413}, {
414 inputs: readonly [{
415 internalType: "uint8";
416 name: "functionId";
417 type: "uint8";
418 }, {
419 components: readonly [{
420 internalType: "address";
421 name: "sender";
422 type: "address";
423 }, {
424 internalType: "uint256";
425 name: "nonce";
426 type: "uint256";
427 }, {
428 internalType: "bytes";
429 name: "initCode";
430 type: "bytes";
431 }, {
432 internalType: "bytes";
433 name: "callData";
434 type: "bytes";
435 }, {
436 internalType: "uint256";
437 name: "callGasLimit";
438 type: "uint256";
439 }, {
440 internalType: "uint256";
441 name: "verificationGasLimit";
442 type: "uint256";
443 }, {
444 internalType: "uint256";
445 name: "preVerificationGas";
446 type: "uint256";
447 }, {
448 internalType: "uint256";
449 name: "maxFeePerGas";
450 type: "uint256";
451 }, {
452 internalType: "uint256";
453 name: "maxPriorityFeePerGas";
454 type: "uint256";
455 }, {
456 internalType: "bytes";
457 name: "paymasterAndData";
458 type: "bytes";
459 }, {
460 internalType: "bytes";
461 name: "signature";
462 type: "bytes";
463 }];
464 internalType: "struct UserOperation";
465 name: "userOp";
466 type: "tuple";
467 }, {
468 internalType: "bytes32";
469 name: "userOpHash";
470 type: "bytes32";
471 }];
472 name: "userOpValidationFunction";
473 outputs: readonly [{
474 internalType: "uint256";
475 name: "";
476 type: "uint256";
477 }];
478 stateMutability: "view";
479 type: "function";
480}, {
481 anonymous: false;
482 inputs: readonly [{
483 indexed: true;
484 internalType: "address";
485 name: "account";
486 type: "address";
487 }, {
488 indexed: false;
489 internalType: "address[]";
490 name: "addedOwners";
491 type: "address[]";
492 }, {
493 indexed: false;
494 internalType: "address[]";
495 name: "removedOwners";
496 type: "address[]";
497 }];
498 name: "OwnerUpdated";
499 type: "event";
500}, {
501 inputs: readonly [];
502 name: "AlreadyInitialized";
503 type: "error";
504}, {
505 inputs: readonly [];
506 name: "EmptyOwnersNotAllowed";
507 type: "error";
508}, {
509 inputs: readonly [];
510 name: "InvalidAction";
511 type: "error";
512}, {
513 inputs: readonly [{
514 internalType: "address";
515 name: "owner";
516 type: "address";
517 }];
518 name: "InvalidOwner";
519 type: "error";
520}, {
521 inputs: readonly [];
522 name: "NotAuthorized";
523 type: "error";
524}, {
525 inputs: readonly [{
526 internalType: "address";
527 name: "caller";
528 type: "address";
529 }];
530 name: "NotContractCaller";
531 type: "error";
532}, {
533 inputs: readonly [{
534 internalType: "bytes4";
535 name: "selector";
536 type: "bytes4";
537 }, {
538 internalType: "uint8";
539 name: "functionId";
540 type: "uint8";
541 }];
542 name: "NotImplemented";
543 type: "error";
544}, {
545 inputs: readonly [];
546 name: "NotInitialized";
547 type: "error";
548}, {
549 inputs: readonly [{
550 internalType: "address";
551 name: "owner";
552 type: "address";
553 }];
554 name: "OwnerDoesNotExist";
555 type: "error";
556}];

Defined in: account-kit/smart-contracts/dist/types/src/msca/plugins/multi-owner/plugin.d.ts:95