MultisigPluginAbi
1 const MultisigPluginAbi: readonly [ 2 { 3 inputs: readonly [ 4 { 5 internalType: "address"; 6 name: "entryPoint"; 7 type: "address"; 8 }, 9 ]; 10 stateMutability: "nonpayable"; 11 type: "constructor"; 12 }, 13 { 14 inputs: readonly []; 15 name: "ENTRYPOINT"; 16 outputs: readonly [ 17 { 18 internalType: "address"; 19 name: ""; 20 type: "address"; 21 }, 22 ]; 23 stateMutability: "view"; 24 type: "function"; 25 }, 26 { 27 inputs: readonly [ 28 { 29 internalType: "bytes32"; 30 name: "actualDigest"; 31 type: "bytes32"; 32 }, 33 { 34 internalType: "bytes32"; 35 name: "upperLimitGasDigest"; 36 type: "bytes32"; 37 }, 38 { 39 internalType: "address"; 40 name: "account"; 41 type: "address"; 42 }, 43 { 44 internalType: "bytes"; 45 name: "signatures"; 46 type: "bytes"; 47 }, 48 ]; 49 name: "checkNSignatures"; 50 outputs: readonly [ 51 { 52 internalType: "bool"; 53 name: "success"; 54 type: "bool"; 55 }, 56 { 57 internalType: "uint256"; 58 name: "firstFailure"; 59 type: "uint256"; 60 }, 61 ]; 62 stateMutability: "view"; 63 type: "function"; 64 }, 65 { 66 inputs: readonly []; 67 name: "eip712Domain"; 68 outputs: readonly [ 69 { 70 internalType: "bytes1"; 71 name: "fields"; 72 type: "bytes1"; 73 }, 74 { 75 internalType: "string"; 76 name: "name"; 77 type: "string"; 78 }, 79 { 80 internalType: "string"; 81 name: "version"; 82 type: "string"; 83 }, 84 { 85 internalType: "uint256"; 86 name: "chainId"; 87 type: "uint256"; 88 }, 89 { 90 internalType: "address"; 91 name: "verifyingContract"; 92 type: "address"; 93 }, 94 { 95 internalType: "bytes32"; 96 name: "salt"; 97 type: "bytes32"; 98 }, 99 { 100 internalType: "uint256[]"; 101 name: "extensions"; 102 type: "uint256[]"; 103 }, 104 ]; 105 stateMutability: "view"; 106 type: "function"; 107 }, 108 { 109 inputs: readonly [ 110 { 111 internalType: "address"; 112 name: "account"; 113 type: "address"; 114 }, 115 { 116 internalType: "bytes"; 117 name: "message"; 118 type: "bytes"; 119 }, 120 ]; 121 name: "encodeMessageData"; 122 outputs: readonly [ 123 { 124 internalType: "bytes"; 125 name: ""; 126 type: "bytes"; 127 }, 128 ]; 129 stateMutability: "view"; 130 type: "function"; 131 }, 132 { 133 inputs: readonly [ 134 { 135 internalType: "address"; 136 name: "account"; 137 type: "address"; 138 }, 139 { 140 internalType: "bytes"; 141 name: "message"; 142 type: "bytes"; 143 }, 144 ]; 145 name: "getMessageHash"; 146 outputs: readonly [ 147 { 148 internalType: "bytes32"; 149 name: ""; 150 type: "bytes32"; 151 }, 152 ]; 153 stateMutability: "view"; 154 type: "function"; 155 }, 156 { 157 inputs: readonly [ 158 { 159 internalType: "address"; 160 name: "account"; 161 type: "address"; 162 }, 163 { 164 internalType: "address"; 165 name: "ownerToCheck"; 166 type: "address"; 167 }, 168 ]; 169 name: "isOwnerOf"; 170 outputs: readonly [ 171 { 172 internalType: "bool"; 173 name: ""; 174 type: "bool"; 175 }, 176 ]; 177 stateMutability: "view"; 178 type: "function"; 179 }, 180 { 181 inputs: readonly [ 182 { 183 internalType: "bytes32"; 184 name: "digest"; 185 type: "bytes32"; 186 }, 187 { 188 internalType: "bytes"; 189 name: "signature"; 190 type: "bytes"; 191 }, 192 ]; 193 name: "isValidSignature"; 194 outputs: readonly [ 195 { 196 internalType: "bytes4"; 197 name: ""; 198 type: "bytes4"; 199 }, 200 ]; 201 stateMutability: "view"; 202 type: "function"; 203 }, 204 { 205 inputs: readonly [ 206 { 207 internalType: "bytes"; 208 name: "data"; 209 type: "bytes"; 210 }, 211 ]; 212 name: "onInstall"; 213 outputs: readonly []; 214 stateMutability: "nonpayable"; 215 type: "function"; 216 }, 217 { 218 inputs: readonly [ 219 { 220 internalType: "bytes"; 221 name: ""; 222 type: "bytes"; 223 }, 224 ]; 225 name: "onUninstall"; 226 outputs: readonly []; 227 stateMutability: "nonpayable"; 228 type: "function"; 229 }, 230 { 231 inputs: readonly [ 232 { 233 internalType: "address"; 234 name: "account"; 235 type: "address"; 236 }, 237 ]; 238 name: "ownershipInfoOf"; 239 outputs: readonly [ 240 { 241 internalType: "address[]"; 242 name: ""; 243 type: "address[]"; 244 }, 245 { 246 internalType: "uint256"; 247 name: ""; 248 type: "uint256"; 249 }, 250 ]; 251 stateMutability: "view"; 252 type: "function"; 253 }, 254 { 255 inputs: readonly []; 256 name: "pluginManifest"; 257 outputs: readonly [ 258 { 259 components: readonly [ 260 { 261 internalType: "bytes4[]"; 262 name: "interfaceIds"; 263 type: "bytes4[]"; 264 }, 265 { 266 internalType: "bytes4[]"; 267 name: "dependencyInterfaceIds"; 268 type: "bytes4[]"; 269 }, 270 { 271 internalType: "bytes4[]"; 272 name: "executionFunctions"; 273 type: "bytes4[]"; 274 }, 275 { 276 internalType: "bytes4[]"; 277 name: "permittedExecutionSelectors"; 278 type: "bytes4[]"; 279 }, 280 { 281 internalType: "bool"; 282 name: "permitAnyExternalAddress"; 283 type: "bool"; 284 }, 285 { 286 internalType: "bool"; 287 name: "canSpendNativeToken"; 288 type: "bool"; 289 }, 290 { 291 components: readonly [ 292 { 293 internalType: "address"; 294 name: "externalAddress"; 295 type: "address"; 296 }, 297 { 298 internalType: "bool"; 299 name: "permitAnySelector"; 300 type: "bool"; 301 }, 302 { 303 internalType: "bytes4[]"; 304 name: "selectors"; 305 type: "bytes4[]"; 306 }, 307 ]; 308 internalType: "struct ManifestExternalCallPermission[]"; 309 name: "permittedExternalCalls"; 310 type: "tuple[]"; 311 }, 312 { 313 components: readonly [ 314 { 315 internalType: "bytes4"; 316 name: "executionSelector"; 317 type: "bytes4"; 318 }, 319 { 320 components: readonly [ 321 { 322 internalType: "enum ManifestAssociatedFunctionType"; 323 name: "functionType"; 324 type: "uint8"; 325 }, 326 { 327 internalType: "uint8"; 328 name: "functionId"; 329 type: "uint8"; 330 }, 331 { 332 internalType: "uint256"; 333 name: "dependencyIndex"; 334 type: "uint256"; 335 }, 336 ]; 337 internalType: "struct ManifestFunction"; 338 name: "associatedFunction"; 339 type: "tuple"; 340 }, 341 ]; 342 internalType: "struct ManifestAssociatedFunction[]"; 343 name: "userOpValidationFunctions"; 344 type: "tuple[]"; 345 }, 346 { 347 components: readonly [ 348 { 349 internalType: "bytes4"; 350 name: "executionSelector"; 351 type: "bytes4"; 352 }, 353 { 354 components: readonly [ 355 { 356 internalType: "enum ManifestAssociatedFunctionType"; 357 name: "functionType"; 358 type: "uint8"; 359 }, 360 { 361 internalType: "uint8"; 362 name: "functionId"; 363 type: "uint8"; 364 }, 365 { 366 internalType: "uint256"; 367 name: "dependencyIndex"; 368 type: "uint256"; 369 }, 370 ]; 371 internalType: "struct ManifestFunction"; 372 name: "associatedFunction"; 373 type: "tuple"; 374 }, 375 ]; 376 internalType: "struct ManifestAssociatedFunction[]"; 377 name: "runtimeValidationFunctions"; 378 type: "tuple[]"; 379 }, 380 { 381 components: readonly [ 382 { 383 internalType: "bytes4"; 384 name: "executionSelector"; 385 type: "bytes4"; 386 }, 387 { 388 components: readonly [ 389 { 390 internalType: "enum ManifestAssociatedFunctionType"; 391 name: "functionType"; 392 type: "uint8"; 393 }, 394 { 395 internalType: "uint8"; 396 name: "functionId"; 397 type: "uint8"; 398 }, 399 { 400 internalType: "uint256"; 401 name: "dependencyIndex"; 402 type: "uint256"; 403 }, 404 ]; 405 internalType: "struct ManifestFunction"; 406 name: "associatedFunction"; 407 type: "tuple"; 408 }, 409 ]; 410 internalType: "struct ManifestAssociatedFunction[]"; 411 name: "preUserOpValidationHooks"; 412 type: "tuple[]"; 413 }, 414 { 415 components: readonly [ 416 { 417 internalType: "bytes4"; 418 name: "executionSelector"; 419 type: "bytes4"; 420 }, 421 { 422 components: readonly [ 423 { 424 internalType: "enum ManifestAssociatedFunctionType"; 425 name: "functionType"; 426 type: "uint8"; 427 }, 428 { 429 internalType: "uint8"; 430 name: "functionId"; 431 type: "uint8"; 432 }, 433 { 434 internalType: "uint256"; 435 name: "dependencyIndex"; 436 type: "uint256"; 437 }, 438 ]; 439 internalType: "struct ManifestFunction"; 440 name: "associatedFunction"; 441 type: "tuple"; 442 }, 443 ]; 444 internalType: "struct ManifestAssociatedFunction[]"; 445 name: "preRuntimeValidationHooks"; 446 type: "tuple[]"; 447 }, 448 { 449 components: readonly [ 450 { 451 internalType: "bytes4"; 452 name: "executionSelector"; 453 type: "bytes4"; 454 }, 455 { 456 components: readonly [ 457 { 458 internalType: "enum ManifestAssociatedFunctionType"; 459 name: "functionType"; 460 type: "uint8"; 461 }, 462 { 463 internalType: "uint8"; 464 name: "functionId"; 465 type: "uint8"; 466 }, 467 { 468 internalType: "uint256"; 469 name: "dependencyIndex"; 470 type: "uint256"; 471 }, 472 ]; 473 internalType: "struct ManifestFunction"; 474 name: "preExecHook"; 475 type: "tuple"; 476 }, 477 { 478 components: readonly [ 479 { 480 internalType: "enum ManifestAssociatedFunctionType"; 481 name: "functionType"; 482 type: "uint8"; 483 }, 484 { 485 internalType: "uint8"; 486 name: "functionId"; 487 type: "uint8"; 488 }, 489 { 490 internalType: "uint256"; 491 name: "dependencyIndex"; 492 type: "uint256"; 493 }, 494 ]; 495 internalType: "struct ManifestFunction"; 496 name: "postExecHook"; 497 type: "tuple"; 498 }, 499 ]; 500 internalType: "struct ManifestExecutionHook[]"; 501 name: "executionHooks"; 502 type: "tuple[]"; 503 }, 504 ]; 505 internalType: "struct PluginManifest"; 506 name: ""; 507 type: "tuple"; 508 }, 509 ]; 510 stateMutability: "pure"; 511 type: "function"; 512 }, 513 { 514 inputs: readonly []; 515 name: "pluginMetadata"; 516 outputs: readonly [ 517 { 518 components: readonly [ 519 { 520 internalType: "string"; 521 name: "name"; 522 type: "string"; 523 }, 524 { 525 internalType: "string"; 526 name: "version"; 527 type: "string"; 528 }, 529 { 530 internalType: "string"; 531 name: "author"; 532 type: "string"; 533 }, 534 { 535 components: readonly [ 536 { 537 internalType: "bytes4"; 538 name: "functionSelector"; 539 type: "bytes4"; 540 }, 541 { 542 internalType: "string"; 543 name: "permissionDescription"; 544 type: "string"; 545 }, 546 ]; 547 internalType: "struct SelectorPermission[]"; 548 name: "permissionDescriptors"; 549 type: "tuple[]"; 550 }, 551 ]; 552 internalType: "struct PluginMetadata"; 553 name: ""; 554 type: "tuple"; 555 }, 556 ]; 557 stateMutability: "pure"; 558 type: "function"; 559 }, 560 { 561 inputs: readonly [ 562 { 563 internalType: "uint8"; 564 name: "functionId"; 565 type: "uint8"; 566 }, 567 { 568 internalType: "bytes"; 569 name: "preExecHookData"; 570 type: "bytes"; 571 }, 572 ]; 573 name: "postExecutionHook"; 574 outputs: readonly []; 575 stateMutability: "nonpayable"; 576 type: "function"; 577 }, 578 { 579 inputs: readonly [ 580 { 581 internalType: "uint8"; 582 name: "functionId"; 583 type: "uint8"; 584 }, 585 { 586 internalType: "address"; 587 name: "sender"; 588 type: "address"; 589 }, 590 { 591 internalType: "uint256"; 592 name: "value"; 593 type: "uint256"; 594 }, 595 { 596 internalType: "bytes"; 597 name: "data"; 598 type: "bytes"; 599 }, 600 ]; 601 name: "preExecutionHook"; 602 outputs: readonly [ 603 { 604 internalType: "bytes"; 605 name: ""; 606 type: "bytes"; 607 }, 608 ]; 609 stateMutability: "nonpayable"; 610 type: "function"; 611 }, 612 { 613 inputs: readonly [ 614 { 615 internalType: "uint8"; 616 name: "functionId"; 617 type: "uint8"; 618 }, 619 { 620 internalType: "address"; 621 name: "sender"; 622 type: "address"; 623 }, 624 { 625 internalType: "uint256"; 626 name: "value"; 627 type: "uint256"; 628 }, 629 { 630 internalType: "bytes"; 631 name: "data"; 632 type: "bytes"; 633 }, 634 ]; 635 name: "preRuntimeValidationHook"; 636 outputs: readonly []; 637 stateMutability: "nonpayable"; 638 type: "function"; 639 }, 640 { 641 inputs: readonly [ 642 { 643 internalType: "uint8"; 644 name: "functionId"; 645 type: "uint8"; 646 }, 647 { 648 components: readonly [ 649 { 650 internalType: "address"; 651 name: "sender"; 652 type: "address"; 653 }, 654 { 655 internalType: "uint256"; 656 name: "nonce"; 657 type: "uint256"; 658 }, 659 { 660 internalType: "bytes"; 661 name: "initCode"; 662 type: "bytes"; 663 }, 664 { 665 internalType: "bytes"; 666 name: "callData"; 667 type: "bytes"; 668 }, 669 { 670 internalType: "uint256"; 671 name: "callGasLimit"; 672 type: "uint256"; 673 }, 674 { 675 internalType: "uint256"; 676 name: "verificationGasLimit"; 677 type: "uint256"; 678 }, 679 { 680 internalType: "uint256"; 681 name: "preVerificationGas"; 682 type: "uint256"; 683 }, 684 { 685 internalType: "uint256"; 686 name: "maxFeePerGas"; 687 type: "uint256"; 688 }, 689 { 690 internalType: "uint256"; 691 name: "maxPriorityFeePerGas"; 692 type: "uint256"; 693 }, 694 { 695 internalType: "bytes"; 696 name: "paymasterAndData"; 697 type: "bytes"; 698 }, 699 { 700 internalType: "bytes"; 701 name: "signature"; 702 type: "bytes"; 703 }, 704 ]; 705 internalType: "struct UserOperation"; 706 name: "userOp"; 707 type: "tuple"; 708 }, 709 { 710 internalType: "bytes32"; 711 name: "userOpHash"; 712 type: "bytes32"; 713 }, 714 ]; 715 name: "preUserOpValidationHook"; 716 outputs: readonly [ 717 { 718 internalType: "uint256"; 719 name: ""; 720 type: "uint256"; 721 }, 722 ]; 723 stateMutability: "nonpayable"; 724 type: "function"; 725 }, 726 { 727 inputs: readonly [ 728 { 729 internalType: "uint8"; 730 name: "functionId"; 731 type: "uint8"; 732 }, 733 { 734 internalType: "address"; 735 name: "sender"; 736 type: "address"; 737 }, 738 { 739 internalType: "uint256"; 740 name: "value"; 741 type: "uint256"; 742 }, 743 { 744 internalType: "bytes"; 745 name: "data"; 746 type: "bytes"; 747 }, 748 ]; 749 name: "runtimeValidationFunction"; 750 outputs: readonly []; 751 stateMutability: "nonpayable"; 752 type: "function"; 753 }, 754 { 755 inputs: readonly [ 756 { 757 internalType: "bytes4"; 758 name: "interfaceId"; 759 type: "bytes4"; 760 }, 761 ]; 762 name: "supportsInterface"; 763 outputs: readonly [ 764 { 765 internalType: "bool"; 766 name: ""; 767 type: "bool"; 768 }, 769 ]; 770 stateMutability: "view"; 771 type: "function"; 772 }, 773 { 774 inputs: readonly [ 775 { 776 internalType: "address[]"; 777 name: "ownersToAdd"; 778 type: "address[]"; 779 }, 780 { 781 internalType: "address[]"; 782 name: "ownersToRemove"; 783 type: "address[]"; 784 }, 785 { 786 internalType: "uint128"; 787 name: "newThreshold"; 788 type: "uint128"; 789 }, 790 ]; 791 name: "updateOwnership"; 792 outputs: readonly []; 793 stateMutability: "nonpayable"; 794 type: "function"; 795 }, 796 { 797 inputs: readonly [ 798 { 799 internalType: "uint8"; 800 name: "functionId"; 801 type: "uint8"; 802 }, 803 { 804 components: readonly [ 805 { 806 internalType: "address"; 807 name: "sender"; 808 type: "address"; 809 }, 810 { 811 internalType: "uint256"; 812 name: "nonce"; 813 type: "uint256"; 814 }, 815 { 816 internalType: "bytes"; 817 name: "initCode"; 818 type: "bytes"; 819 }, 820 { 821 internalType: "bytes"; 822 name: "callData"; 823 type: "bytes"; 824 }, 825 { 826 internalType: "uint256"; 827 name: "callGasLimit"; 828 type: "uint256"; 829 }, 830 { 831 internalType: "uint256"; 832 name: "verificationGasLimit"; 833 type: "uint256"; 834 }, 835 { 836 internalType: "uint256"; 837 name: "preVerificationGas"; 838 type: "uint256"; 839 }, 840 { 841 internalType: "uint256"; 842 name: "maxFeePerGas"; 843 type: "uint256"; 844 }, 845 { 846 internalType: "uint256"; 847 name: "maxPriorityFeePerGas"; 848 type: "uint256"; 849 }, 850 { 851 internalType: "bytes"; 852 name: "paymasterAndData"; 853 type: "bytes"; 854 }, 855 { 856 internalType: "bytes"; 857 name: "signature"; 858 type: "bytes"; 859 }, 860 ]; 861 internalType: "struct UserOperation"; 862 name: "userOp"; 863 type: "tuple"; 864 }, 865 { 866 internalType: "bytes32"; 867 name: "userOpHash"; 868 type: "bytes32"; 869 }, 870 ]; 871 name: "userOpValidationFunction"; 872 outputs: readonly [ 873 { 874 internalType: "uint256"; 875 name: ""; 876 type: "uint256"; 877 }, 878 ]; 879 stateMutability: "view"; 880 type: "function"; 881 }, 882 { 883 anonymous: false; 884 inputs: readonly [ 885 { 886 indexed: true; 887 internalType: "address"; 888 name: "account"; 889 type: "address"; 890 }, 891 { 892 indexed: false; 893 internalType: "address[]"; 894 name: "addedOwners"; 895 type: "address[]"; 896 }, 897 { 898 indexed: false; 899 internalType: "address[]"; 900 name: "removedOwners"; 901 type: "address[]"; 902 }, 903 { 904 indexed: false; 905 internalType: "uint256"; 906 name: "threshold"; 907 type: "uint256"; 908 }, 909 ]; 910 name: "OwnerUpdated"; 911 type: "event"; 912 }, 913 { 914 inputs: readonly []; 915 name: "AlreadyInitialized"; 916 type: "error"; 917 }, 918 { 919 inputs: readonly []; 920 name: "ECDSARecoverFailure"; 921 type: "error"; 922 }, 923 { 924 inputs: readonly []; 925 name: "EmptyOwnersNotAllowed"; 926 type: "error"; 927 }, 928 { 929 inputs: readonly []; 930 name: "InvalidAction"; 931 type: "error"; 932 }, 933 { 934 inputs: readonly []; 935 name: "InvalidAddress"; 936 type: "error"; 937 }, 938 { 939 inputs: readonly []; 940 name: "InvalidMaxFeePerGas"; 941 type: "error"; 942 }, 943 { 944 inputs: readonly []; 945 name: "InvalidMaxPriorityFeePerGas"; 946 type: "error"; 947 }, 948 { 949 inputs: readonly []; 950 name: "InvalidNumSigsOnActualGas"; 951 type: "error"; 952 }, 953 { 954 inputs: readonly [ 955 { 956 internalType: "address"; 957 name: "owner"; 958 type: "address"; 959 }, 960 ]; 961 name: "InvalidOwner"; 962 type: "error"; 963 }, 964 { 965 inputs: readonly []; 966 name: "InvalidPreVerificationGas"; 967 type: "error"; 968 }, 969 { 970 inputs: readonly []; 971 name: "InvalidSigLength"; 972 type: "error"; 973 }, 974 { 975 inputs: readonly []; 976 name: "InvalidSigOffset"; 977 type: "error"; 978 }, 979 { 980 inputs: readonly []; 981 name: "InvalidThreshold"; 982 type: "error"; 983 }, 984 { 985 inputs: readonly [ 986 { 987 internalType: "address"; 988 name: "caller"; 989 type: "address"; 990 }, 991 ]; 992 name: "NotContractCaller"; 993 type: "error"; 994 }, 995 { 996 inputs: readonly [ 997 { 998 internalType: "bytes4"; 999 name: "selector"; 1000 type: "bytes4"; 1001 }, 1002 { 1003 internalType: "uint8"; 1004 name: "functionId"; 1005 type: "uint8"; 1006 }, 1007 ]; 1008 name: "NotImplemented"; 1009 type: "error"; 1010 }, 1011 { 1012 inputs: readonly []; 1013 name: "NotInitialized"; 1014 type: "error"; 1015 }, 1016 { 1017 inputs: readonly [ 1018 { 1019 internalType: "address"; 1020 name: "owner"; 1021 type: "address"; 1022 }, 1023 ]; 1024 name: "OwnerDoesNotExist"; 1025 type: "error"; 1026 }, 1027 ];
Defined in: account-kit/smart-contracts/src/msca/plugins/multisig/plugin.ts:376