MultiOwnerPluginAbi
1 const 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