diff --git a/classes/index.Contract.html b/classes/index.Contract.html index 13400dd1..33b08048 100644 --- a/classes/index.Contract.html +++ b/classes/index.Contract.html @@ -1,4 +1,4 @@ -Contract | crossbell - v1.4.0
+Contract | crossbell - v1.4.1
  • Preparing search index...
  • -
  • The search index is not available
crossbell - v1.4.0
+
  • The search index is not available
  • crossbell - v1.4.1
    @@ -35,7 +35,7 @@

    Hierarchy

    • Contract
    +
  • Defined in src/contract/contract.ts:43
  • @@ -116,14 +116,14 @@

    Example

    Connect with a Readonly Contract

    +
  • Defined in src/contract/subcontracts/base.ts:131
  • Properties

    cbt: CbtContract = ...
    +
  • Defined in src/contract/contract.ts:49
  • cbtContract: GetContractReturnType<readonly [{
        inputs: readonly [{
            name: "web3Entry";
            type: "address";
        }];
        stateMutability: "nonpayable";
        type: "constructor";
    }, {
        inputs: readonly [{
            indexed: true;
            name: "account";
            type: "address";
        }, {
            indexed: true;
            name: "operator";
            type: "address";
        }, {
            indexed: false;
            name: "approved";
            type: "bool";
        }];
        name: "ApprovalForAll";
        type: "event";
    }, {
        inputs: readonly [{
            indexed: true;
            name: "from";
            type: "uint256";
        }, {
            indexed: true;
            name: "tokenId";
            type: "uint256";
        }, {
            indexed: true;
            name: "amount";
            type: "uint256";
        }];
        name: "Burn";
        type: "event";
    }, {
        inputs: readonly [{
            indexed: true;
            name: "to";
            type: "uint256";
        }, {
            indexed: true;
            name: "tokenId";
            type: "uint256";
        }, {
            indexed: true;
            name: "tokenNumber";
            type: "uint256";
        }];
        name: "Mint";
        type: "event";
    }, {
        inputs: readonly [{
            indexed: true;
            name: "role";
            type: "bytes32";
        }, {
            indexed: true;
            name: "previousAdminRole";
            type: "bytes32";
        }, {
            indexed: true;
            name: "newAdminRole";
            type: "bytes32";
        }];
        name: "RoleAdminChanged";
        type: "event";
    }, {
        inputs: readonly [{
            indexed: true;
            name: "role";
            type: "bytes32";
        }, {
            indexed: true;
            name: "account";
            type: "address";
        }, {
            indexed: true;
            name: "sender";
            type: "address";
        }];
        name: "RoleGranted";
        type: "event";
    }, {
        inputs: readonly [{
            indexed: true;
            name: "role";
            type: "bytes32";
        }, {
            indexed: true;
            name: "account";
            type: "address";
        }, {
            indexed: true;
            name: "sender";
            type: "address";
        }];
        name: "RoleRevoked";
        type: "event";
    }, {
        inputs: readonly [{
            indexed: true;
            name: "operator";
            type: "address";
        }, {
            indexed: true;
            name: "from";
            type: "address";
        }, {
            indexed: true;
            name: "to";
            type: "address";
        }, {
            indexed: false;
            name: "ids";
            type: "uint256[]";
        }, {
            indexed: false;
            name: "values";
            type: "uint256[]";
        }];
        name: "TransferBatch";
        type: "event";
    }, {
        inputs: readonly [{
            indexed: true;
            name: "operator";
            type: "address";
        }, {
            indexed: true;
            name: "from";
            type: "address";
        }, {
            indexed: true;
            name: "to";
            type: "address";
        }, {
            indexed: false;
            name: "id";
            type: "uint256";
        }, {
            indexed: false;
            name: "value";
            type: "uint256";
        }];
        name: "TransferSingle";
        type: "event";
    }, {
        inputs: readonly [{
            indexed: false;
            name: "value";
            type: "string";
        }, {
            indexed: true;
            name: "id";
            type: "uint256";
        }];
        name: "URI";
        type: "event";
    }, {
        inputs: readonly [];
        name: "DEFAULT_ADMIN_ROLE";
        outputs: readonly [{
            name: "";
            type: "bytes32";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [];
        name: "MINTER_ROLE";
        outputs: readonly [{
            name: "";
            type: "bytes32";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [];
        name: "_web3Entry";
        outputs: readonly [{
            name: "";
            type: "address";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [{
            name: "account";
            type: "address";
        }, {
            name: "tokenId";
            type: "uint256";
        }];
        name: "balanceOf";
        outputs: readonly [{
            name: "balance";
            type: "uint256";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [{
            name: "characterId";
            type: "uint256";
        }, {
            name: "tokenId";
            type: "uint256";
        }];
        name: "balanceOf";
        outputs: readonly [{
            name: "";
            type: "uint256";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [{
            name: "accounts";
            type: "address[]";
        }, {
            name: "tokenIds";
            type: "uint256[]";
        }];
        name: "balanceOfBatch";
        outputs: readonly [{
            name: "";
            type: "uint256[]";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [{
            name: "characterId";
            type: "uint256";
        }, {
            name: "tokenId";
            type: "uint256";
        }, {
            name: "amount";
            type: "uint256";
        }];
        name: "burn";
        outputs: readonly [];
        stateMutability: "nonpayable";
        type: "function";
    }, {
        inputs: readonly [{
            name: "role";
            type: "bytes32";
        }];
        name: "getRoleAdmin";
        outputs: readonly [{
            name: "";
            type: "bytes32";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [{
            name: "role";
            type: "bytes32";
        }, {
            name: "index";
            type: "uint256";
        }];
        name: "getRoleMember";
        outputs: readonly [{
            name: "";
            type: "address";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [{
            name: "role";
            type: "bytes32";
        }];
        name: "getRoleMemberCount";
        outputs: readonly [{
            name: "";
            type: "uint256";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [{
            name: "role";
            type: "bytes32";
        }, {
            name: "account";
            type: "address";
        }];
        name: "grantRole";
        outputs: readonly [];
        stateMutability: "nonpayable";
        type: "function";
    }, {
        inputs: readonly [{
            name: "role";
            type: "bytes32";
        }, {
            name: "account";
            type: "address";
        }];
        name: "hasRole";
        outputs: readonly [{
            name: "";
            type: "bool";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [{
            name: "account";
            type: "address";
        }, {
            name: "operator";
            type: "address";
        }];
        name: "isApprovedForAll";
        outputs: readonly [{
            name: "";
            type: "bool";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [{
            name: "characterId";
            type: "uint256";
        }, {
            name: "tokenId";
            type: "uint256";
        }];
        name: "mint";
        outputs: readonly [];
        stateMutability: "nonpayable";
        type: "function";
    }, {
        inputs: readonly [{
            name: "role";
            type: "bytes32";
        }, {
            name: "account";
            type: "address";
        }];
        name: "renounceRole";
        outputs: readonly [];
        stateMutability: "nonpayable";
        type: "function";
    }, {
        inputs: readonly [{
            name: "role";
            type: "bytes32";
        }, {
            name: "account";
            type: "address";
        }];
        name: "revokeRole";
        outputs: readonly [];
        stateMutability: "nonpayable";
        type: "function";
    }, {
        inputs: readonly [{
            name: "";
            type: "address";
        }, {
            name: "";
            type: "address";
        }, {
            name: "";
            type: "uint256[]";
        }, {
            name: "";
            type: "uint256[]";
        }, {
            name: "";
            type: "bytes";
        }];
        name: "safeBatchTransferFrom";
        outputs: readonly [];
        stateMutability: "nonpayable";
        type: "function";
    }, {
        inputs: readonly [{
            name: "";
            type: "address";
        }, {
            name: "";
            type: "address";
        }, {
            name: "";
            type: "uint256";
        }, {
            name: "";
            type: "uint256";
        }, {
            name: "";
            type: "bytes";
        }];
        name: "safeTransferFrom";
        outputs: readonly [];
        stateMutability: "nonpayable";
        type: "function";
    }, {
        inputs: readonly [{
            name: "operator";
            type: "address";
        }, {
            name: "approved";
            type: "bool";
        }];
        name: "setApprovalForAll";
        outputs: readonly [];
        stateMutability: "nonpayable";
        type: "function";
    }, {
        inputs: readonly [{
            name: "tokenId";
            type: "uint256";
        }, {
            name: "tokenURI";
            type: "string";
        }];
        name: "setTokenURI";
        outputs: readonly [];
        stateMutability: "nonpayable";
        type: "function";
    }, {
        inputs: readonly [{
            name: "interfaceId";
            type: "bytes4";
        }];
        name: "supportsInterface";
        outputs: readonly [{
            name: "";
            type: "bool";
        }];
        stateMutability: "view";
        type: "function";
    }, {
        inputs: readonly [{
            name: "tokenId";
            type: "uint256";
        }];
        name: "uri";
        outputs: readonly [{
            name: "";
            type: "string";
        }];
        stateMutability: "view";
        type: "function";
    }], {}, {}>
    @@ -135,12 +135,12 @@

    Type declaration

      +
    • Defined in src/contract/subcontracts/base.ts:90
    • character: CharacterContract = ...
      +
    • Defined in src/contract/contract.ts:47
    • contract: GetContractReturnType<readonly [{
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          name: "ErrCharacterNotExists";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrHandleContainsInvalidCharacters";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrHandleExists";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrHandleLengthInvalid";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrNotAddressOwner";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrNotCharacterOwner";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrNotEnoughPermission";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrNotEnoughPermissionForThisNote";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrNoteIsDeleted";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrNoteLocked";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrNoteNotExists";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrSignatureExpired";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrSignatureInvalid";
          type: "error";
      }, {
          inputs: readonly [];
          name: "ErrSocialTokenExists";
          type: "error";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "owner";
              type: "address";
          }, {
              indexed: true;
              name: "approved";
              type: "address";
          }, {
              indexed: true;
              name: "tokenId";
              type: "uint256";
          }];
          name: "Approval";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "owner";
              type: "address";
          }, {
              indexed: true;
              name: "operator";
              type: "address";
          }, {
              indexed: false;
              name: "approved";
              type: "bool";
          }];
          name: "ApprovalForAll";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: false;
              name: "version";
              type: "uint8";
          }];
          name: "Initialized";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "from";
              type: "address";
          }, {
              indexed: true;
              name: "to";
              type: "address";
          }, {
              indexed: true;
              name: "tokenId";
              type: "uint256";
          }];
          name: "Transfer";
          type: "event";
      }, {
          inputs: readonly [{
              name: "to";
              type: "address";
          }, {
              name: "tokenId";
              type: "uint256";
          }];
          name: "approve";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "owner";
              type: "address";
          }];
          name: "balanceOf";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "tokenId";
              type: "uint256";
          }];
          name: "burn";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "to";
                  type: "address";
              }, {
                  name: "handle";
                  type: "string";
              }, {
                  name: "uri";
                  type: "string";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "linkModuleInitData";
                  type: "bytes";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "createCharacter";
          outputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "to";
                  type: "address";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "createThenLinkCharacter";
          outputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "noteId";
              type: "uint256";
          }];
          name: "deleteNote";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "tokenId";
              type: "uint256";
          }];
          name: "getApproved";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          name: "getCharacter";
          outputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "handle";
                  type: "string";
              }, {
                  name: "uri";
                  type: "string";
              }, {
                  name: "noteCount";
                  type: "uint256";
              }, {
                  name: "socialToken";
                  type: "address";
              }, {
                  name: "linkModule";
                  type: "address";
              }];
              name: "";
              type: "tuple";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "handle";
              type: "string";
          }];
          name: "getCharacterByHandle";
          outputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "handle";
                  type: "string";
              }, {
                  name: "uri";
                  type: "string";
              }, {
                  name: "noteCount";
                  type: "uint256";
              }, {
                  name: "socialToken";
                  type: "address";
              }, {
                  name: "linkModule";
                  type: "address";
              }];
              name: "";
              type: "tuple";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          name: "getCharacterUri";
          outputs: readonly [{
              name: "";
              type: "string";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "getDomainSeparator";
          outputs: readonly [{
              name: "";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          name: "getHandle";
          outputs: readonly [{
              name: "";
              type: "string";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "account";
              type: "address";
          }];
          name: "getLinkModule4Address";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "tokenAddress";
              type: "address";
          }, {
              name: "tokenId";
              type: "uint256";
          }];
          name: "getLinkModule4ERC721";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "tokenId";
              type: "uint256";
          }];
          name: "getLinkModule4Linklist";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "getLinklistContract";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "linkType";
              type: "bytes32";
          }];
          name: "getLinklistId";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "linkListId";
              type: "uint256";
          }];
          name: "getLinklistType";
          outputs: readonly [{
              name: "";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "tokenId";
              type: "uint256";
          }];
          name: "getLinklistUri";
          outputs: readonly [{
              name: "";
              type: "string";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "noteId";
              type: "uint256";
          }];
          name: "getNote";
          outputs: readonly [{
              components: readonly [{
                  name: "linkItemType";
                  type: "bytes32";
              }, {
                  name: "linkKey";
                  type: "bytes32";
              }, {
                  name: "contentUri";
                  type: "string";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "mintModule";
                  type: "address";
              }, {
                  name: "mintNFT";
                  type: "address";
              }, {
                  name: "deleted";
                  type: "bool";
              }, {
                  name: "locked";
                  type: "bool";
              }];
              name: "";
              type: "tuple";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "operator";
              type: "address";
          }];
          name: "getOperatorPermissions";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          name: "getOperators";
          outputs: readonly [{
              name: "";
              type: "address[]";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "noteId";
              type: "uint256";
          }];
          name: "getOperators4Note";
          outputs: readonly [{
              name: "blocklist";
              type: "address[]";
          }, {
              name: "allowlist";
              type: "address[]";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "account";
              type: "address";
          }];
          name: "getPrimaryCharacterId";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "getRevision";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "pure";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "operator";
              type: "address";
          }, {
              name: "permissionBitMap";
              type: "uint256";
          }];
          name: "grantOperatorPermissions";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "operator";
              type: "address";
          }, {
              name: "permissionBitMap";
              type: "uint256";
          }, {
              components: readonly [{
                  name: "v";
                  type: "uint8";
              }, {
                  name: "r";
                  type: "bytes32";
              }, {
                  name: "s";
                  type: "bytes32";
              }, {
                  name: "deadline";
                  type: "uint256";
              }];
              name: "sig";
              type: "tuple";
          }];
          name: "grantOperatorPermissionsWithSig";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "noteId";
              type: "uint256";
          }, {
              name: "blocklist";
              type: "address[]";
          }, {
              name: "allowlist";
              type: "address[]";
          }];
          name: "grantOperators4Note";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "name_";
              type: "string";
          }, {
              name: "symbol_";
              type: "string";
          }, {
              name: "linklist_";
              type: "address";
          }, {
              name: "mintNFTImpl_";
              type: "address";
          }, {
              name: "periphery_";
              type: "address";
          }, {
              name: "newbieVilla_";
              type: "address";
          }];
          name: "initialize";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "owner";
              type: "address";
          }, {
              name: "operator";
              type: "address";
          }];
          name: "isApprovedForAll";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "noteId";
              type: "uint256";
          }, {
              name: "operator";
              type: "address";
          }];
          name: "isOperatorAllowedForNote";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          name: "isPrimaryCharacter";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "ethAddress";
                  type: "address";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }, {
                  name: "data";
                  type: "bytes";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "linkAddress";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "toUri";
                  type: "string";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }, {
                  name: "data";
                  type: "bytes";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "linkAnyUri";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "toCharacterId";
                  type: "uint256";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }, {
                  name: "data";
                  type: "bytes";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "linkCharacter";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "tokenAddress";
                  type: "address";
              }, {
                  name: "tokenId";
                  type: "uint256";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }, {
                  name: "data";
                  type: "bytes";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "linkERC721";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "toLinkListId";
                  type: "uint256";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }, {
                  name: "data";
                  type: "bytes";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "linkLinklist";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "toCharacterId";
                  type: "uint256";
              }, {
                  name: "toNoteId";
                  type: "uint256";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }, {
                  name: "data";
                  type: "bytes";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "linkNote";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "noteId";
              type: "uint256";
          }];
          name: "lockNote";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "noteId";
                  type: "uint256";
              }, {
                  name: "to";
                  type: "address";
              }, {
                  name: "mintModuleData";
                  type: "bytes";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "mintNote";
          outputs: readonly [{
              name: "tokenId";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "data";
              type: "bytes[]";
          }];
          name: "multicall";
          outputs: readonly [{
              name: "results";
              type: "bytes[]";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "name";
          outputs: readonly [{
              name: "";
              type: "string";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "owner";
              type: "address";
          }];
          name: "nonces";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "tokenId";
              type: "uint256";
          }];
          name: "ownerOf";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "contentUri";
                  type: "string";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "linkModuleInitData";
                  type: "bytes";
              }, {
                  name: "mintModule";
                  type: "address";
              }, {
                  name: "mintModuleInitData";
                  type: "bytes";
              }, {
                  name: "locked";
                  type: "bool";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "postNote";
          outputs: readonly [{
              name: "noteId";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "contentUri";
                  type: "string";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "linkModuleInitData";
                  type: "bytes";
              }, {
                  name: "mintModule";
                  type: "address";
              }, {
                  name: "mintModuleInitData";
                  type: "bytes";
              }, {
                  name: "locked";
                  type: "bool";
              }];
              name: "vars";
              type: "tuple";
          }, {
              name: "ethAddress";
              type: "address";
          }];
          name: "postNote4Address";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "contentUri";
                  type: "string";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "linkModuleInitData";
                  type: "bytes";
              }, {
                  name: "mintModule";
                  type: "address";
              }, {
                  name: "mintModuleInitData";
                  type: "bytes";
              }, {
                  name: "locked";
                  type: "bool";
              }];
              name: "vars";
              type: "tuple";
          }, {
              name: "uri";
              type: "string";
          }];
          name: "postNote4AnyUri";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "contentUri";
                  type: "string";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "linkModuleInitData";
                  type: "bytes";
              }, {
                  name: "mintModule";
                  type: "address";
              }, {
                  name: "mintModuleInitData";
                  type: "bytes";
              }, {
                  name: "locked";
                  type: "bool";
              }];
              name: "vars";
              type: "tuple";
          }, {
              name: "toCharacterId";
              type: "uint256";
          }];
          name: "postNote4Character";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "contentUri";
                  type: "string";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "linkModuleInitData";
                  type: "bytes";
              }, {
                  name: "mintModule";
                  type: "address";
              }, {
                  name: "mintModuleInitData";
                  type: "bytes";
              }, {
                  name: "locked";
                  type: "bool";
              }];
              name: "vars";
              type: "tuple";
          }, {
              components: readonly [{
                  name: "tokenAddress";
                  type: "address";
              }, {
                  name: "erc721TokenId";
                  type: "uint256";
              }];
              name: "erc721";
              type: "tuple";
          }];
          name: "postNote4ERC721";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "contentUri";
                  type: "string";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "linkModuleInitData";
                  type: "bytes";
              }, {
                  name: "mintModule";
                  type: "address";
              }, {
                  name: "mintModuleInitData";
                  type: "bytes";
              }, {
                  name: "locked";
                  type: "bool";
              }];
              name: "vars";
              type: "tuple";
          }, {
              name: "toLinklistId";
              type: "uint256";
          }];
          name: "postNote4Linklist";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "contentUri";
                  type: "string";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "linkModuleInitData";
                  type: "bytes";
              }, {
                  name: "mintModule";
                  type: "address";
              }, {
                  name: "mintModuleInitData";
                  type: "bytes";
              }, {
                  name: "locked";
                  type: "bool";
              }];
              name: "vars";
              type: "tuple";
          }, {
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "noteId";
                  type: "uint256";
              }];
              name: "note";
              type: "tuple";
          }];
          name: "postNote4Note";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "resolver";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "from";
              type: "address";
          }, {
              name: "to";
              type: "address";
          }, {
              name: "tokenId";
              type: "uint256";
          }];
          name: "safeTransferFrom";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "from";
              type: "address";
          }, {
              name: "to";
              type: "address";
          }, {
              name: "tokenId";
              type: "uint256";
          }, {
              name: "_data";
              type: "bytes";
          }];
          name: "safeTransferFrom";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "operator";
              type: "address";
          }, {
              name: "approved";
              type: "bool";
          }];
          name: "setApprovalForAll";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "newUri";
              type: "string";
          }];
          name: "setCharacterUri";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "newHandle";
              type: "string";
          }];
          name: "setHandle";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "account";
                  type: "address";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "linkModuleInitData";
                  type: "bytes";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "setLinkModule4Address";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "linklistId";
                  type: "uint256";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "linkModuleInitData";
                  type: "bytes";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "setLinkModule4Linklist";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "linklistId";
              type: "uint256";
          }, {
              name: "uri";
              type: "string";
          }];
          name: "setLinklistUri";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "noteId";
                  type: "uint256";
              }, {
                  name: "mintModule";
                  type: "address";
              }, {
                  name: "mintModuleInitData";
                  type: "bytes";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "setMintModule4Note";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "noteId";
              type: "uint256";
          }, {
              name: "newUri";
              type: "string";
          }];
          name: "setNoteUri";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          name: "setPrimaryCharacterId";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "tokenAddress";
              type: "address";
          }];
          name: "setSocialToken";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "interfaceId";
              type: "bytes4";
          }];
          name: "supportsInterface";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "symbol";
          outputs: readonly [{
              name: "";
              type: "string";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "index";
              type: "uint256";
          }];
          name: "tokenByIndex";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "owner";
              type: "address";
          }, {
              name: "index";
              type: "uint256";
          }];
          name: "tokenOfOwnerByIndex";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          name: "tokenURI";
          outputs: readonly [{
              name: "";
              type: "string";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "totalSupply";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "from";
              type: "address";
          }, {
              name: "to";
              type: "address";
          }, {
              name: "tokenId";
              type: "uint256";
          }];
          name: "transferFrom";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "ethAddress";
                  type: "address";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "unlinkAddress";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "toUri";
                  type: "string";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "unlinkAnyUri";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "toCharacterId";
                  type: "uint256";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "unlinkCharacter";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "tokenAddress";
                  type: "address";
              }, {
                  name: "tokenId";
                  type: "uint256";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "unlinkERC721";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "toLinkListId";
                  type: "uint256";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "unlinkLinklist";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "toCharacterId";
                  type: "uint256";
              }, {
                  name: "toNoteId";
                  type: "uint256";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "unlinkNote";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "linklistId";
              type: "uint256";
          }, {
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "linkType";
              type: "bytes32";
          }];
          name: "AttachLinklist";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: false;
              name: "name";
              type: "string";
          }, {
              indexed: false;
              name: "symbol";
              type: "string";
          }, {
              indexed: false;
              name: "timestamp";
              type: "uint256";
          }];
          name: "BaseInitialized";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "creator";
              type: "address";
          }, {
              indexed: true;
              name: "to";
              type: "address";
          }, {
              indexed: false;
              name: "handle";
              type: "string";
          }, {
              indexed: false;
              name: "timestamp";
              type: "uint256";
          }];
          name: "CharacterCreated";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "noteId";
              type: "uint256";
          }];
          name: "DeleteNote";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "linklistId";
              type: "uint256";
          }, {
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "linkType";
              type: "bytes32";
          }];
          name: "DetachLinklist";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "operator";
              type: "address";
          }, {
              indexed: false;
              name: "permissionBitMap";
              type: "uint256";
          }];
          name: "GrantOperatorPermissions";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "noteId";
              type: "uint256";
          }, {
              indexed: false;
              name: "blocklist";
              type: "address[]";
          }, {
              indexed: false;
              name: "allowlist";
              type: "address[]";
          }];
          name: "GrantOperators4Note";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "ethAddress";
              type: "address";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }, {
              indexed: false;
              name: "linklistId";
              type: "uint256";
          }];
          name: "LinkAddress";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "toUri";
              type: "string";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }, {
              indexed: false;
              name: "linklistId";
              type: "uint256";
          }];
          name: "LinkAnyUri";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "account";
              type: "address";
          }, {
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "toCharacterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }, {
              indexed: false;
              name: "linklistId";
              type: "uint256";
          }];
          name: "LinkCharacter";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "linkType";
              type: "bytes32";
          }, {
              indexed: false;
              name: "clFromCharacterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "clToCharacterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "clLinkType";
              type: "bytes32";
          }];
          name: "LinkCharacterLink";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "tokenAddress";
              type: "address";
          }, {
              indexed: true;
              name: "toNoteId";
              type: "uint256";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }, {
              indexed: false;
              name: "linklistId";
              type: "uint256";
          }];
          name: "LinkERC721";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "toLinklistId";
              type: "uint256";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }, {
              indexed: true;
              name: "linklistId";
              type: "uint256";
          }];
          name: "LinkLinklist";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "toCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "toNoteId";
              type: "uint256";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }, {
              indexed: false;
              name: "linklistId";
              type: "uint256";
          }];
          name: "LinkNote";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: false;
              name: "timestamp";
              type: "uint256";
          }];
          name: "LinklistNFTInitialized";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "noteId";
              type: "uint256";
          }];
          name: "LockNote";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: false;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "noteId";
              type: "uint256";
          }, {
              indexed: false;
              name: "timestamp";
              type: "uint256";
          }];
          name: "MintNFTInitialized";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "to";
              type: "address";
          }, {
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "noteId";
              type: "uint256";
          }, {
              indexed: false;
              name: "tokenAddress";
              type: "address";
          }, {
              indexed: false;
              name: "tokenId";
              type: "uint256";
          }];
          name: "MintNote";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "noteId";
              type: "uint256";
          }, {
              indexed: true;
              name: "linkKey";
              type: "bytes32";
          }, {
              indexed: false;
              name: "linkItemType";
              type: "bytes32";
          }, {
              indexed: false;
              name: "data";
              type: "bytes";
          }];
          name: "PostNote";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "noteId";
              type: "uint256";
          }, {
              indexed: true;
              name: "amount";
              type: "uint256";
          }, {
              indexed: false;
              name: "approvedAddresses";
              type: "address[]";
          }];
          name: "SetApprovedMintAmount4Addresses";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "newUri";
              type: "string";
          }];
          name: "SetCharacterUri";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "account";
              type: "address";
          }, {
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "newHandle";
              type: "string";
          }];
          name: "SetHandle";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "account";
              type: "address";
          }, {
              indexed: true;
              name: "linkModule";
              type: "address";
          }, {
              indexed: false;
              name: "linkModuleInitData";
              type: "bytes";
          }, {
              indexed: false;
              name: "returnData";
              type: "bytes";
          }];
          name: "SetLinkModule4Address";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "linkModule";
              type: "address";
          }, {
              indexed: false;
              name: "linkModuleInitData";
              type: "bytes";
          }, {
              indexed: false;
              name: "returnData";
              type: "bytes";
          }];
          name: "SetLinkModule4Character";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "tokenAddress";
              type: "address";
          }, {
              indexed: true;
              name: "tokenId";
              type: "uint256";
          }, {
              indexed: true;
              name: "linkModule";
              type: "address";
          }, {
              indexed: false;
              name: "linkModuleInitData";
              type: "bytes";
          }, {
              indexed: false;
              name: "returnData";
              type: "bytes";
          }];
          name: "SetLinkModule4ERC721";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "linklistId";
              type: "uint256";
          }, {
              indexed: true;
              name: "linkModule";
              type: "address";
          }, {
              indexed: false;
              name: "linkModuleInitData";
              type: "bytes";
          }, {
              indexed: false;
              name: "returnData";
              type: "bytes";
          }];
          name: "SetLinkModule4Linklist";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "noteId";
              type: "uint256";
          }, {
              indexed: true;
              name: "linkModule";
              type: "address";
          }, {
              indexed: false;
              name: "linkModuleInitData";
              type: "bytes";
          }, {
              indexed: false;
              name: "returnData";
              type: "bytes";
          }];
          name: "SetLinkModule4Note";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "noteId";
              type: "uint256";
          }, {
              indexed: true;
              name: "mintModule";
              type: "address";
          }, {
              indexed: false;
              name: "mintModuleInitData";
              type: "bytes";
          }, {
              indexed: false;
              name: "returnData";
              type: "bytes";
          }];
          name: "SetMintModule4Note";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "noteId";
              type: "uint256";
          }, {
              indexed: false;
              name: "newUri";
              type: "string";
          }];
          name: "SetNoteUri";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "account";
              type: "address";
          }, {
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "oldCharacterId";
              type: "uint256";
          }];
          name: "SetPrimaryCharacterId";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "account";
              type: "address";
          }, {
              indexed: true;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "tokenAddress";
              type: "address";
          }];
          name: "SetSocialToken";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "ethAddress";
              type: "address";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }];
          name: "UnlinkAddress";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "toUri";
              type: "string";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }];
          name: "UnlinkAnyUri";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "account";
              type: "address";
          }, {
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "toCharacterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }];
          name: "UnlinkCharacter";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "linkType";
              type: "bytes32";
          }, {
              indexed: false;
              name: "clFromCharactereId";
              type: "uint256";
          }, {
              indexed: false;
              name: "clToCharacterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "clLinkType";
              type: "bytes32";
          }];
          name: "UnlinkCharacterLink";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "tokenAddress";
              type: "address";
          }, {
              indexed: true;
              name: "toNoteId";
              type: "uint256";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }, {
              indexed: false;
              name: "linklistId";
              type: "uint256";
          }];
          name: "UnlinkERC721";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "toLinklistId";
              type: "uint256";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }, {
              indexed: true;
              name: "linklistId";
              type: "uint256";
          }];
          name: "UnlinkLinklist";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "toCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "toNoteId";
              type: "uint256";
          }, {
              indexed: false;
              name: "linkType";
              type: "bytes32";
          }, {
              indexed: false;
              name: "linklistId";
              type: "uint256";
          }];
          name: "UnlinkNote";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: false;
              name: "timestamp";
              type: "uint256";
          }];
          name: "Web3EntryInitialized";
          type: "event";
      }], {}, {}>
      @@ -152,27 +152,27 @@

      Type declaration

      +
    • Defined in src/contract/subcontracts/base.ts:75
    • csb: CsbContract = ...
      +
    • Defined in src/contract/contract.ts:46
    • link: LinkContract = ...
      +
    • Defined in src/contract/contract.ts:48
    • linkModule: LinkModuleContract = ...
      +
    • Defined in src/contract/contract.ts:54
    • mintModule: MintModuleContract = ...
      +
    • Defined in src/contract/contract.ts:55
    • miraContract: GetContractReturnType<readonly [{
          inputs: readonly [{
              name: "name_";
              type: "string";
          }, {
              name: "symbol_";
              type: "string";
          }, {
              name: "admin";
              type: "address";
          }];
          stateMutability: "nonpayable";
          type: "constructor";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "owner";
              type: "address";
          }, {
              indexed: true;
              name: "spender";
              type: "address";
          }, {
              indexed: false;
              name: "value";
              type: "uint256";
          }];
          name: "Approval";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "operator";
              type: "address";
          }, {
              indexed: true;
              name: "tokenHolder";
              type: "address";
          }];
          name: "AuthorizedOperator";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "operator";
              type: "address";
          }, {
              indexed: true;
              name: "from";
              type: "address";
          }, {
              indexed: false;
              name: "amount";
              type: "uint256";
          }, {
              indexed: false;
              name: "data";
              type: "bytes";
          }, {
              indexed: false;
              name: "operatorData";
              type: "bytes";
          }];
          name: "Burned";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "operator";
              type: "address";
          }, {
              indexed: true;
              name: "to";
              type: "address";
          }, {
              indexed: false;
              name: "amount";
              type: "uint256";
          }, {
              indexed: false;
              name: "data";
              type: "bytes";
          }, {
              indexed: false;
              name: "operatorData";
              type: "bytes";
          }];
          name: "Minted";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "operator";
              type: "address";
          }, {
              indexed: true;
              name: "tokenHolder";
              type: "address";
          }];
          name: "RevokedOperator";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "role";
              type: "bytes32";
          }, {
              indexed: true;
              name: "previousAdminRole";
              type: "bytes32";
          }, {
              indexed: true;
              name: "newAdminRole";
              type: "bytes32";
          }];
          name: "RoleAdminChanged";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "role";
              type: "bytes32";
          }, {
              indexed: true;
              name: "account";
              type: "address";
          }, {
              indexed: true;
              name: "sender";
              type: "address";
          }];
          name: "RoleGranted";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "role";
              type: "bytes32";
          }, {
              indexed: true;
              name: "account";
              type: "address";
          }, {
              indexed: true;
              name: "sender";
              type: "address";
          }];
          name: "RoleRevoked";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "operator";
              type: "address";
          }, {
              indexed: true;
              name: "from";
              type: "address";
          }, {
              indexed: true;
              name: "to";
              type: "address";
          }, {
              indexed: false;
              name: "amount";
              type: "uint256";
          }, {
              indexed: false;
              name: "data";
              type: "bytes";
          }, {
              indexed: false;
              name: "operatorData";
              type: "bytes";
          }];
          name: "Sent";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "from";
              type: "address";
          }, {
              indexed: true;
              name: "to";
              type: "address";
          }, {
              indexed: false;
              name: "value";
              type: "uint256";
          }];
          name: "Transfer";
          type: "event";
      }, {
          inputs: readonly [];
          name: "BLOCK_ROLE";
          outputs: readonly [{
              name: "";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "DEFAULT_ADMIN_ROLE";
          outputs: readonly [{
              name: "";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "holder";
              type: "address";
          }, {
              name: "spender";
              type: "address";
          }];
          name: "allowance";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "spender";
              type: "address";
          }, {
              name: "value";
              type: "uint256";
          }];
          name: "approve";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "operator";
              type: "address";
          }];
          name: "authorizeOperator";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "tokenHolder";
              type: "address";
          }];
          name: "balanceOf";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "amount";
              type: "uint256";
          }, {
              name: "data";
              type: "bytes";
          }];
          name: "burn";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "decimals";
          outputs: readonly [{
              name: "";
              type: "uint8";
          }];
          stateMutability: "pure";
          type: "function";
      }, {
          inputs: readonly [];
          name: "defaultOperators";
          outputs: readonly [{
              name: "";
              type: "address[]";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }];
          name: "getRoleAdmin";
          outputs: readonly [{
              name: "";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }, {
              name: "index";
              type: "uint256";
          }];
          name: "getRoleMember";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }];
          name: "getRoleMemberCount";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }, {
              name: "account";
              type: "address";
          }];
          name: "grantRole";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "granularity";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }, {
              name: "account";
              type: "address";
          }];
          name: "hasRole";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "operator";
              type: "address";
          }, {
              name: "tokenHolder";
              type: "address";
          }];
          name: "isOperatorFor";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "to";
              type: "address";
          }, {
              name: "amount";
              type: "uint256";
          }];
          name: "mint";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "name";
          outputs: readonly [{
              name: "";
              type: "string";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "account";
              type: "address";
          }, {
              name: "amount";
              type: "uint256";
          }, {
              name: "data";
              type: "bytes";
          }, {
              name: "operatorData";
              type: "bytes";
          }];
          name: "operatorBurn";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "sender";
              type: "address";
          }, {
              name: "recipient";
              type: "address";
          }, {
              name: "amount";
              type: "uint256";
          }, {
              name: "data";
              type: "bytes";
          }, {
              name: "operatorData";
              type: "bytes";
          }];
          name: "operatorSend";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }, {
              name: "account";
              type: "address";
          }];
          name: "renounceRole";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "operator";
              type: "address";
          }];
          name: "revokeOperator";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }, {
              name: "account";
              type: "address";
          }];
          name: "revokeRole";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "recipient";
              type: "address";
          }, {
              name: "amount";
              type: "uint256";
          }, {
              name: "data";
              type: "bytes";
          }];
          name: "send";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "interfaceId";
              type: "bytes4";
          }];
          name: "supportsInterface";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "symbol";
          outputs: readonly [{
              name: "";
              type: "string";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "totalSupply";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "recipient";
              type: "address";
          }, {
              name: "amount";
              type: "uint256";
          }];
          name: "transfer";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "holder";
              type: "address";
          }, {
              name: "recipient";
              type: "address";
          }, {
              name: "amount";
              type: "uint256";
          }];
          name: "transferFrom";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }], {}, {}>
      @@ -184,7 +184,7 @@

      Type declaration

      +
    • Defined in src/contract/subcontracts/base.ts:95
    • newbieVillaContract: GetContractReturnType<readonly [{
          inputs: readonly [{
              indexed: false;
              name: "version";
              type: "uint8";
          }];
          name: "Initialized";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "role";
              type: "bytes32";
          }, {
              indexed: true;
              name: "previousAdminRole";
              type: "bytes32";
          }, {
              indexed: true;
              name: "newAdminRole";
              type: "bytes32";
          }];
          name: "RoleAdminChanged";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "role";
              type: "bytes32";
          }, {
              indexed: true;
              name: "account";
              type: "address";
          }, {
              indexed: true;
              name: "sender";
              type: "address";
          }];
          name: "RoleGranted";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "role";
              type: "bytes32";
          }, {
              indexed: true;
              name: "account";
              type: "address";
          }, {
              indexed: true;
              name: "sender";
              type: "address";
          }];
          name: "RoleRevoked";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: false;
              name: "to";
              type: "address";
          }, {
              indexed: false;
              name: "characterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "token";
              type: "address";
          }, {
              indexed: false;
              name: "amount";
              type: "uint256";
          }];
          name: "Withdraw";
          type: "event";
      }, {
          inputs: readonly [];
          name: "ADMIN_ROLE";
          outputs: readonly [{
              name: "";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "DEFAULT_ADMIN_ROLE";
          outputs: readonly [{
              name: "";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "ERC1820_REGISTRY";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "TOKENS_RECIPIENT_INTERFACE_HASH";
          outputs: readonly [{
              name: "";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          name: "balanceOf";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }];
          name: "getRoleAdmin";
          outputs: readonly [{
              name: "";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }, {
              name: "index";
              type: "uint256";
          }];
          name: "getRoleMember";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }];
          name: "getRoleMemberCount";
          outputs: readonly [{
              name: "";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "getToken";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }, {
              name: "account";
              type: "address";
          }];
          name: "grantRole";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }, {
              name: "account";
              type: "address";
          }];
          name: "hasRole";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "web3Entry_";
              type: "address";
          }, {
              name: "xsyncOperator_";
              type: "address";
          }, {
              name: "token_";
              type: "address";
          }, {
              name: "admin_";
              type: "address";
          }, {
              name: "tips_";
              type: "address";
          }];
          name: "initialize";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "operator";
              type: "address";
          }, {
              name: "";
              type: "address";
          }, {
              name: "tokenId";
              type: "uint256";
          }, {
              name: "data";
              type: "bytes";
          }];
          name: "onERC721Received";
          outputs: readonly [{
              name: "";
              type: "bytes4";
          }];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }, {
              name: "account";
              type: "address";
          }];
          name: "renounceRole";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "role";
              type: "bytes32";
          }, {
              name: "account";
              type: "address";
          }];
          name: "revokeRole";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "interfaceId";
              type: "bytes4";
          }];
          name: "supportsInterface";
          outputs: readonly [{
              name: "";
              type: "bool";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "fromCharacterId";
              type: "uint256";
          }, {
              name: "toCharacterId";
              type: "uint256";
          }, {
              name: "amount";
              type: "uint256";
          }];
          name: "tipCharacter";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "fromCharacterId";
              type: "uint256";
          }, {
              name: "toCharacterId";
              type: "uint256";
          }, {
              name: "toNoteId";
              type: "uint256";
          }, {
              name: "amount";
              type: "uint256";
          }];
          name: "tipCharacterForNote";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "";
              type: "address";
          }, {
              name: "";
              type: "address";
          }, {
              name: "to";
              type: "address";
          }, {
              name: "amount";
              type: "uint256";
          }, {
              name: "userData";
              type: "bytes";
          }, {
              name: "operatorData";
              type: "bytes";
          }];
          name: "tokensReceived";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "web3Entry";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "to";
              type: "address";
          }, {
              name: "characterId";
              type: "uint256";
          }, {
              name: "nonce";
              type: "uint256";
          }, {
              name: "expires";
              type: "uint256";
          }, {
              name: "proof";
              type: "bytes";
          }];
          name: "withdraw";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "xsyncOperator";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }], {}, {}>
      @@ -196,23 +196,23 @@

      Type declaration

      +
    • Defined in src/contract/subcontracts/base.ts:80
    • note: NoteContract = ...
      +
    • Defined in src/contract/contract.ts:50
    • operator: OperatorContract = ...
      +
    • Defined in src/contract/contract.ts:51
    • +
    • Defined in src/contract/subcontracts/base.ts:73
    • peripheryContract: GetContractReturnType<readonly [{
          inputs: readonly [{
              name: "linkKey";
              type: "bytes32";
          }];
          name: "getLinkingAddress";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "fromCharacterId";
              type: "uint256";
          }, {
              name: "linkType";
              type: "bytes32";
          }];
          name: "getLinkingAddresses";
          outputs: readonly [{
              name: "";
              type: "address[]";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "linkKey";
              type: "bytes32";
          }];
          name: "getLinkingAnyUri";
          outputs: readonly [{
              name: "";
              type: "string";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "fromCharacterId";
              type: "uint256";
          }, {
              name: "linkType";
              type: "bytes32";
          }];
          name: "getLinkingAnyUris";
          outputs: readonly [{
              name: "results";
              type: "string[]";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "linkKey";
              type: "bytes32";
          }];
          name: "getLinkingCharacterId";
          outputs: readonly [{
              name: "characterId";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "fromCharacterId";
              type: "uint256";
          }, {
              name: "linkType";
              type: "bytes32";
          }];
          name: "getLinkingCharacterIds";
          outputs: readonly [{
              name: "results";
              type: "uint256[]";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "linkKey";
              type: "bytes32";
          }];
          name: "getLinkingERC721";
          outputs: readonly [{
              components: readonly [{
                  name: "tokenAddress";
                  type: "address";
              }, {
                  name: "erc721TokenId";
                  type: "uint256";
              }];
              name: "";
              type: "tuple";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "fromCharacterId";
              type: "uint256";
          }, {
              name: "linkType";
              type: "bytes32";
          }];
          name: "getLinkingERC721s";
          outputs: readonly [{
              components: readonly [{
                  name: "tokenAddress";
                  type: "address";
              }, {
                  name: "erc721TokenId";
                  type: "uint256";
              }];
              name: "results";
              type: "tuple[]";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "linkKey";
              type: "bytes32";
          }];
          name: "getLinkingLinklistId";
          outputs: readonly [{
              name: "linklistId";
              type: "uint256";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "fromCharacterId";
              type: "uint256";
          }, {
              name: "linkType";
              type: "bytes32";
          }];
          name: "getLinkingLinklistIds";
          outputs: readonly [{
              name: "linklistIds";
              type: "uint256[]";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "linkKey";
              type: "bytes32";
          }];
          name: "getLinkingNote";
          outputs: readonly [{
              components: readonly [{
                  name: "characterId";
                  type: "uint256";
              }, {
                  name: "noteId";
                  type: "uint256";
              }];
              name: "";
              type: "tuple";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "fromCharacterId";
              type: "uint256";
          }, {
              name: "linkType";
              type: "bytes32";
          }];
          name: "getLinkingNotes";
          outputs: readonly [{
              components: readonly [{
                  name: "linkItemType";
                  type: "bytes32";
              }, {
                  name: "linkKey";
                  type: "bytes32";
              }, {
                  name: "contentUri";
                  type: "string";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "mintModule";
                  type: "address";
              }, {
                  name: "mintNFT";
                  type: "address";
              }, {
                  name: "deleted";
                  type: "bool";
              }, {
                  name: "locked";
                  type: "bool";
              }];
              name: "results";
              type: "tuple[]";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "characterId";
              type: "uint256";
          }, {
              name: "offset";
              type: "uint256";
          }, {
              name: "limit";
              type: "uint256";
          }];
          name: "getNotesByCharacterId";
          outputs: readonly [{
              components: readonly [{
                  name: "linkItemType";
                  type: "bytes32";
              }, {
                  name: "linkKey";
                  type: "bytes32";
              }, {
                  name: "contentUri";
                  type: "string";
              }, {
                  name: "linkModule";
                  type: "address";
              }, {
                  name: "mintModule";
                  type: "address";
              }, {
                  name: "mintNFT";
                  type: "address";
              }, {
                  name: "deleted";
                  type: "bool";
              }, {
                  name: "locked";
                  type: "bool";
              }];
              name: "results";
              type: "tuple[]";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "_web3Entry";
              type: "address";
          }, {
              name: "_linklist";
              type: "address";
          }];
          name: "initialize";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "fromCharacterId";
                  type: "uint256";
              }, {
                  name: "toCharacterIds";
                  type: "uint256[]";
              }, {
                  name: "data";
                  type: "bytes[]";
              }, {
                  name: "toAddresses";
                  type: "address[]";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "linkCharactersInBatch";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "linklist";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              components: readonly [{
                  name: "account";
                  type: "address";
              }, {
                  name: "handle";
                  type: "string";
              }, {
                  name: "uri";
                  type: "string";
              }, {
                  name: "toAddresses";
                  type: "address[]";
              }, {
                  name: "linkType";
                  type: "bytes32";
              }];
              name: "vars";
              type: "tuple";
          }];
          name: "migrate";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [];
          name: "web3Entry";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }], {}, {}>
      @@ -224,7 +224,7 @@

      Type declaration

      +
    • Defined in src/contract/subcontracts/base.ts:85
    • publicClient: {} = ...
      @@ -233,17 +233,17 @@

      Type declaration

      +
    • Defined in src/contract/subcontracts/base.ts:56
    • revision: RevisionContract = ...
      +
    • Defined in src/contract/contract.ts:53
    • tips: TipsContract = ...
      +
    • Defined in src/contract/contract.ts:52
    • tipsContract: GetContractReturnType<readonly [{
          inputs: readonly [];
          name: "ErrCallerNotCharacterOwner";
          type: "error";
      }, {
          inputs: readonly [{
              indexed: false;
              name: "version";
              type: "uint8";
          }];
          name: "Initialized";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "toCharacterId";
              type: "uint256";
          }, {
              indexed: false;
              name: "token";
              type: "address";
          }, {
              indexed: false;
              name: "amount";
              type: "uint256";
          }];
          name: "TipCharacter";
          type: "event";
      }, {
          inputs: readonly [{
              indexed: true;
              name: "fromCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "toCharacterId";
              type: "uint256";
          }, {
              indexed: true;
              name: "toNoteId";
              type: "uint256";
          }, {
              indexed: false;
              name: "token";
              type: "address";
          }, {
              indexed: false;
              name: "amount";
              type: "uint256";
          }];
          name: "TipCharacterForNote";
          type: "event";
      }, {
          inputs: readonly [];
          name: "ERC1820_REGISTRY";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "TOKENS_RECIPIENT_INTERFACE_HASH";
          outputs: readonly [{
              name: "";
              type: "bytes32";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "getToken";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [];
          name: "getWeb3Entry";
          outputs: readonly [{
              name: "";
              type: "address";
          }];
          stateMutability: "view";
          type: "function";
      }, {
          inputs: readonly [{
              name: "web3Entry_";
              type: "address";
          }, {
              name: "token_";
              type: "address";
          }];
          name: "initialize";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }, {
          inputs: readonly [{
              name: "";
              type: "address";
          }, {
              name: "from";
              type: "address";
          }, {
              name: "to";
              type: "address";
          }, {
              name: "amount";
              type: "uint256";
          }, {
              name: "userData";
              type: "bytes";
          }, {
              name: "operatorData";
              type: "bytes";
          }];
          name: "tokensReceived";
          outputs: readonly [];
          stateMutability: "nonpayable";
          type: "function";
      }], {}, {}>
      @@ -255,7 +255,7 @@

      Type declaration

      +
    • Defined in src/contract/subcontracts/base.ts:100
    • Accessors

      @@ -266,7 +266,7 @@ +
    • Defined in src/contract/subcontracts/base.ts:60
    • set account(value): void
    • @@ -277,7 +277,7 @@
      value: Returns void
    • +
    • Defined in src/contract/subcontracts/base.ts:63
    • +
    • Defined in src/contract/subcontracts/base.ts:67
    • Methods

      @@ -307,7 +307,7 @@
      contract: Returns T
      +
    • Defined in src/contract/subcontracts/base.ts:229
    • @@ -32,7 +32,7 @@

      Hierarchy

      +
    • Defined in src/indexer/indexer.ts:32
    • @@ -81,19 +81,19 @@
      Optional Returns Indexer
      +
    • Defined in src/indexer/subapis/base.ts:26
    • Properties

      achievement: AchievementIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:41
    • character: CharacterIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:36
    • endpoint: string = 'https://indexer.crossbell.io/v1'
      @@ -102,12 +102,12 @@
      +
    • Defined in src/indexer/subapis/base.ts:21
    • feed: FeedIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:38
    • fetchOptions: FetchOptions = {}
      @@ -116,67 +116,67 @@
      +
    • Defined in src/indexer/subapis/base.ts:24
    • link: LinkIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:33
    • linkModule: LinkModuleIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:45
    • linklist: LinklistIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:34
    • metadata: MetadataIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:40
    • mintModule: MintModuleIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:46
    • mintedNote: MintedNoteIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:39
    • newbie: NewbieIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:47
    • note: NoteIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:35
    • notification: NotificationIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:42
    • operator: OperatorIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:43
    • search: SearchIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:37
    • tip: TipIndexer = ...
      +
    • Defined in src/indexer/indexer.ts:44
    • Methods

      @@ -199,7 +199,7 @@
      __namedParameters: Returns Promise<T>
      +
    • Defined in src/indexer/subapis/base.ts:41
    • @@ -29,7 +29,7 @@

      Hierarchy

      +
    • Defined in src/contract/subcontracts/base.ts:55
    • @@ -99,7 +99,7 @@

      Example

      Connect with a Readonly Contract

      +
    • Defined in src/contract/subcontracts/base.ts:131
    • Properties

      @@ -112,7 +112,7 @@

      Type declaration

      Type declaration

        +
      • Defined in src/contract/subcontracts/base.ts:90
      • contract: GetContractReturnType<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], {}, {}>
        @@ -123,7 +123,7 @@

        Type declaration

        Type declaration

        +
      • Defined in src/contract/subcontracts/base.ts:75
      • miraContract: GetContractReturnType<readonly [{
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "admin";
                type: "address";
            }];
            stateMutability: "nonpayable";
            type: "constructor";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "spender";
                type: "address";
            }, {
                indexed: false;
                name: "value";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "tokenHolder";
                type: "address";
            }];
            name: "AuthorizedOperator";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }, {
                indexed: false;
                name: "operatorData";
                type: "bytes";
            }];
            name: "Burned";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }, {
                indexed: false;
                name: "operatorData";
                type: "bytes";
            }];
            name: "Minted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "tokenHolder";
                type: "address";
            }];
            name: "RevokedOperator";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "previousAdminRole";
                type: "bytes32";
            }, {
                indexed: true;
                name: "newAdminRole";
                type: "bytes32";
            }];
            name: "RoleAdminChanged";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleGranted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleRevoked";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }, {
                indexed: false;
                name: "operatorData";
                type: "bytes";
            }];
            name: "Sent";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "value";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [];
            name: "BLOCK_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "holder";
                type: "address";
            }, {
                name: "spender";
                type: "address";
            }];
            name: "allowance";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "spender";
                type: "address";
            }, {
                name: "value";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }];
            name: "authorizeOperator";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenHolder";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "amount";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "decimals";
            outputs: readonly [{
                name: "";
                type: "uint8";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [];
            name: "defaultOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleAdmin";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "getRoleMember";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleMemberCount";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "granularity";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "hasRole";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "tokenHolder";
                type: "address";
            }];
            name: "isOperatorFor";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "mint";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }, {
                name: "operatorData";
                type: "bytes";
            }];
            name: "operatorBurn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "sender";
                type: "address";
            }, {
                name: "recipient";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }, {
                name: "operatorData";
                type: "bytes";
            }];
            name: "operatorSend";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }];
            name: "revokeOperator";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "recipient";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }];
            name: "send";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "recipient";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "transfer";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "holder";
                type: "address";
            }, {
                name: "recipient";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }], {}, {}>
        @@ -134,7 +134,7 @@

        Type declaration

        Type declaration

        +
      • Defined in src/contract/subcontracts/base.ts:95
      • newbieVillaContract: GetContractReturnType<readonly [{
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "previousAdminRole";
                type: "bytes32";
            }, {
                indexed: true;
                name: "newAdminRole";
                type: "bytes32";
            }];
            name: "RoleAdminChanged";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleGranted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleRevoked";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "token";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }];
            name: "Withdraw";
            type: "event";
        }, {
            inputs: readonly [];
            name: "ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "ERC1820_REGISTRY";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "TOKENS_RECIPIENT_INTERFACE_HASH";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleAdmin";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "getRoleMember";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleMemberCount";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getToken";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "hasRole";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "web3Entry_";
                type: "address";
            }, {
                name: "xsyncOperator_";
                type: "address";
            }, {
                name: "token_";
                type: "address";
            }, {
                name: "admin_";
                type: "address";
            }, {
                name: "tips_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }];
            name: "onERC721Received";
            outputs: readonly [{
                name: "";
                type: "bytes4";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "tipCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "toNoteId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "tipCharacterForNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "userData";
                type: "bytes";
            }, {
                name: "operatorData";
                type: "bytes";
            }];
            name: "tokensReceived";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "characterId";
                type: "uint256";
            }, {
                name: "nonce";
                type: "uint256";
            }, {
                name: "expires";
                type: "uint256";
            }, {
                name: "proof";
                type: "bytes";
            }];
            name: "withdraw";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "xsyncOperator";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }], {}, {}>
        @@ -145,12 +145,12 @@

        Type declaration

        Type declaration

        +
      • Defined in src/contract/subcontracts/base.ts:80
      • options: ResolvedContractOptions
        +
      • Defined in src/contract/subcontracts/base.ts:73
      • peripheryContract: GetContractReturnType<readonly [{
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAddress";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAddresses";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAnyUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAnyUris";
            outputs: readonly [{
                name: "results";
                type: "string[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingCharacterId";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingCharacterIds";
            outputs: readonly [{
                name: "results";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingERC721";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingERC721s";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingLinklistId";
            outputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingLinklistIds";
            outputs: readonly [{
                name: "linklistIds";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingNote";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingNotes";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "offset";
                type: "uint256";
            }, {
                name: "limit";
                type: "uint256";
            }];
            name: "getNotesByCharacterId";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "_web3Entry";
                type: "address";
            }, {
                name: "_linklist";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterIds";
                    type: "uint256[]";
                }, {
                    name: "data";
                    type: "bytes[]";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharactersInBatch";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "migrate";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }], {}, {}>
        @@ -161,7 +161,7 @@

        Type declaration

        Type declaration

        +
      • Defined in src/contract/subcontracts/base.ts:85
      • publicClient: {} = ...
        @@ -169,7 +169,7 @@
        +
      • Defined in src/contract/subcontracts/base.ts:56
      • tipsContract: GetContractReturnType<readonly [{
            inputs: readonly [];
            name: "ErrCallerNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "token";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }];
            name: "TipCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "token";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }];
            name: "TipCharacterForNote";
            type: "event";
        }, {
            inputs: readonly [];
            name: "ERC1820_REGISTRY";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "TOKENS_RECIPIENT_INTERFACE_HASH";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getToken";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getWeb3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "web3Entry_";
                type: "address";
            }, {
                name: "token_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "userData";
                type: "bytes";
            }, {
                name: "operatorData";
                type: "bytes";
            }];
            name: "tokensReceived";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }], {}, {}>
        @@ -180,7 +180,7 @@

        Type declaration

        Type declaration

        +
      • Defined in src/contract/subcontracts/base.ts:100
      • Accessors

        @@ -190,7 +190,7 @@

        Returns void

        +
      • Defined in src/contract/subcontracts/base.ts:63
      • +
      • Defined in src/contract/subcontracts/base.ts:67
      • Methods

        @@ -228,7 +228,7 @@

        Parameters

        contract: T

        Returns T

        +
      • Defined in src/contract/subcontracts/base.ts:229
      • @@ -22,7 +22,7 @@

        Hierarchy

        +
      • Defined in src/contract/subcontracts/cbt.ts:11
      • @@ -52,7 +52,7 @@

        Parameters

        base: BaseContract<boolean>

        Returns CbtContract

        +
      • Defined in src/contract/subcontracts/cbt.ts:12
      • Methods - CharacterBoundToken

        @@ -74,12 +74,12 @@
        tokenId
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "web3Entry";
                type: "address";
            }];
            stateMutability: "nonpayable";
            type: "constructor";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }];
            name: "Burn";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenNumber";
                type: "uint256";
            }];
            name: "Mint";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "previousAdminRole";
                type: "bytes32";
            }, {
                indexed: true;
                name: "newAdminRole";
                type: "bytes32";
            }];
            name: "RoleAdminChanged";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleGranted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleRevoked";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "ids";
                type: "uint256[]";
            }, {
                indexed: false;
                name: "values";
                type: "uint256[]";
            }];
            name: "TransferBatch";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "id";
                type: "uint256";
            }, {
                indexed: false;
                name: "value";
                type: "uint256";
            }];
            name: "TransferSingle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "value";
                type: "string";
            }, {
                indexed: true;
                name: "id";
                type: "uint256";
            }];
            name: "URI";
            type: "event";
        }, {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "MINTER_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "_web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "balance";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "accounts";
                type: "address[]";
            }, {
                name: "tokenIds";
                type: "uint256[]";
            }];
            name: "balanceOfBatch";
            outputs: readonly [{
                name: "";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleAdmin";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "getRoleMember";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleMemberCount";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "hasRole";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "mint";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "";
                type: "uint256[]";
            }, {
                name: "";
                type: "uint256[]";
            }, {
                name: "";
                type: "bytes";
            }];
            name: "safeBatchTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "";
                type: "uint256";
            }, {
                name: "";
                type: "uint256";
            }, {
                name: "";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "tokenURI";
                type: "string";
            }];
            name: "setTokenURI";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "uri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }], "uri"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "web3Entry";
                type: "address";
            }];
            stateMutability: "nonpayable";
            type: "constructor";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }];
            name: "Burn";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenNumber";
                type: "uint256";
            }];
            name: "Mint";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "previousAdminRole";
                type: "bytes32";
            }, {
                indexed: true;
                name: "newAdminRole";
                type: "bytes32";
            }];
            name: "RoleAdminChanged";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleGranted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleRevoked";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "ids";
                type: "uint256[]";
            }, {
                indexed: false;
                name: "values";
                type: "uint256[]";
            }];
            name: "TransferBatch";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "id";
                type: "uint256";
            }, {
                indexed: false;
                name: "value";
                type: "uint256";
            }];
            name: "TransferSingle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "value";
                type: "string";
            }, {
                indexed: true;
                name: "id";
                type: "uint256";
            }];
            name: "URI";
            type: "event";
        }, {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "MINTER_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "_web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "balance";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "accounts";
                type: "address[]";
            }, {
                name: "tokenIds";
                type: "uint256[]";
            }];
            name: "balanceOfBatch";
            outputs: readonly [{
                name: "";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleAdmin";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "getRoleMember";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleMemberCount";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "hasRole";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "mint";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "";
                type: "uint256[]";
            }, {
                name: "";
                type: "uint256[]";
            }, {
                name: "";
                type: "bytes";
            }];
            name: "safeBatchTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "";
                type: "uint256";
            }, {
                name: "";
                type: "uint256";
            }, {
                name: "";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "tokenURI";
                type: "string";
            }];
            name: "setTokenURI";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "uri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }], "uri">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: string;
        }>

        The URI of the token.

        +
      • Defined in src/contract/subcontracts/cbt.ts:87
      • +
      • Defined in src/contract/subcontracts/cbt.ts:20
      • +
      • Defined in src/contract/subcontracts/cbt.ts:54
      • @@ -22,7 +22,7 @@

        Hierarchy

        +
      • Defined in src/contract/subcontracts/character.ts:17
      • @@ -71,7 +71,7 @@

        Parameters

        base: BaseContract<boolean>

        Returns CharacterContract

        +
      • Defined in src/contract/subcontracts/character.ts:18
      • Methods - Character

        @@ -98,7 +98,7 @@

        Returns Promise<

        +
      • Defined in src/contract/subcontracts/character.ts:294
      • +
      • Defined in src/contract/subcontracts/character.ts:203
      • +
      • Defined in src/contract/subcontracts/character.ts:26
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getPrimaryCharacterId"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getPrimaryCharacterId">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: boolean;
        }>

        A boolean indicating whether the character exists.

        +
      • Defined in src/contract/subcontracts/character.ts:520
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getCharacterByHandle"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getCharacterByHandle">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: boolean;
        }>

        A boolean indicating whether the character exists.

        +
      • Defined in src/contract/subcontracts/character.ts:546
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getCharacter"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getCharacter">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: Character;
        }>

        The character with the given characterId.

        +
      • Defined in src/contract/subcontracts/character.ts:410
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getCharacterByHandle"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getCharacterByHandle">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: Character;
        }>

        The character with the given handle.

        +
      • Defined in src/contract/subcontracts/character.ts:373
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getCharacter"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getCharacter">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: Character;
        }>

        The characterId of the character that was created.

        +
      • Defined in src/contract/subcontracts/character.ts:493
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getHandle"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getHandle">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: string;
        }>

        The handle of the character.

        +
      • Defined in src/contract/subcontracts/character.ts:447
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getPrimaryCharacterId"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getPrimaryCharacterId">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: bigint;
        }>

        The characterId of the primary character of the address.

        +
      • Defined in src/contract/subcontracts/character.ts:324
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getCharacterUri"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getCharacterUri">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: string;
        }>

        The URI of the character.

        +
      • Defined in src/contract/subcontracts/character.ts:470
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "isPrimaryCharacter"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "isPrimaryCharacter">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: boolean;
        }>

        A boolean value.

        +
      • Defined in src/contract/subcontracts/character.ts:350
      • +
      • Defined in src/contract/subcontracts/character.ts:81
      • +
      • Defined in src/contract/subcontracts/character.ts:154
      • +
      • Defined in src/contract/subcontracts/character.ts:266
      • +
      • Defined in src/contract/subcontracts/character.ts:235
      • +
      • Defined in src/contract/subcontracts/character.ts:114
      • +
      • Defined in src/contract/subcontracts/character.ts:570
      • Methods - Other

        @@ -602,10 +602,10 @@
        __namedParameters:
        characterId: Numberish
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "previousAdminRole";
                type: "bytes32";
            }, {
                indexed: true;
                name: "newAdminRole";
                type: "bytes32";
            }];
            name: "RoleAdminChanged";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleGranted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleRevoked";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "token";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }];
            name: "Withdraw";
            type: "event";
        }, {
            inputs: readonly [];
            name: "ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "ERC1820_REGISTRY";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "TOKENS_RECIPIENT_INTERFACE_HASH";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleAdmin";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "getRoleMember";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleMemberCount";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getToken";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "hasRole";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "web3Entry_";
                type: "address";
            }, {
                name: "xsyncOperator_";
                type: "address";
            }, {
                name: "token_";
                type: "address";
            }, {
                name: "admin_";
                type: "address";
            }, {
                name: "tips_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }];
            name: "onERC721Received";
            outputs: readonly [{
                name: "";
                type: "bytes4";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "tipCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "toNoteId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "tipCharacterForNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "userData";
                type: "bytes";
            }, {
                name: "operatorData";
                type: "bytes";
            }];
            name: "tokensReceived";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "characterId";
                type: "uint256";
            }, {
                name: "nonce";
                type: "uint256";
            }, {
                name: "expires";
                type: "uint256";
            }, {
                name: "proof";
                type: "bytes";
            }];
            name: "withdraw";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "xsyncOperator";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }], "balanceOf"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "previousAdminRole";
                type: "bytes32";
            }, {
                indexed: true;
                name: "newAdminRole";
                type: "bytes32";
            }];
            name: "RoleAdminChanged";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleGranted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleRevoked";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "token";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }];
            name: "Withdraw";
            type: "event";
        }, {
            inputs: readonly [];
            name: "ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "ERC1820_REGISTRY";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "TOKENS_RECIPIENT_INTERFACE_HASH";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleAdmin";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "getRoleMember";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleMemberCount";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getToken";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "hasRole";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "web3Entry_";
                type: "address";
            }, {
                name: "xsyncOperator_";
                type: "address";
            }, {
                name: "token_";
                type: "address";
            }, {
                name: "admin_";
                type: "address";
            }, {
                name: "tips_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }];
            name: "onERC721Received";
            outputs: readonly [{
                name: "";
                type: "bytes4";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "tipCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "toNoteId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "tipCharacterForNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "userData";
                type: "bytes";
            }, {
                name: "operatorData";
                type: "bytes";
            }];
            name: "tokensReceived";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "characterId";
                type: "uint256";
            }, {
                name: "nonce";
                type: "uint256";
            }, {
                name: "expires";
                type: "uint256";
            }, {
                name: "proof";
                type: "bytes";
            }];
            name: "withdraw";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "xsyncOperator";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }], "balanceOf">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<bigint>

        +
      • Defined in src/contract/subcontracts/character.ts:609
      • @@ -22,7 +22,7 @@

        Hierarchy

        +
      • Defined in src/contract/subcontracts/csb.ts:7
      • @@ -51,7 +51,7 @@

        Parameters

        base: BaseContract<boolean>

        Returns CsbContract

        +
      • Defined in src/contract/subcontracts/csb.ts:8
      • Methods - CSB

        @@ -76,7 +76,7 @@

        Returns Promise<

        +
      • Defined in src/contract/subcontracts/csb.ts:15
      • +
      • Defined in src/contract/subcontracts/csb.ts:33
      • @@ -22,7 +22,7 @@

        Hierarchy

        +
      • Defined in src/contract/subcontracts/link.ts:15
      • @@ -71,7 +71,7 @@

        Parameters

        base: BaseContract<boolean> & {
            character: CharacterContract;
        }

        Returns LinkContract

        +
      • Defined in src/contract/subcontracts/link.ts:16
      • Methods - Link

        @@ -113,7 +113,7 @@

        Returns Promise<

        +
      • Defined in src/contract/subcontracts/link.ts:158
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAddress";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAddresses";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAnyUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAnyUris";
            outputs: readonly [{
                name: "results";
                type: "string[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingCharacterId";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingCharacterIds";
            outputs: readonly [{
                name: "results";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingERC721";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingERC721s";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingLinklistId";
            outputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingLinklistIds";
            outputs: readonly [{
                name: "linklistIds";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingNote";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingNotes";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "offset";
                type: "uint256";
            }, {
                name: "limit";
                type: "uint256";
            }];
            name: "getNotesByCharacterId";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "_web3Entry";
                type: "address";
            }, {
                name: "_linklist";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterIds";
                    type: "uint256[]";
                }, {
                    name: "data";
                    type: "bytes[]";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharactersInBatch";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "migrate";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }], "getLinkingCharacterIds"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAddress";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAddresses";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAnyUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAnyUris";
            outputs: readonly [{
                name: "results";
                type: "string[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingCharacterId";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingCharacterIds";
            outputs: readonly [{
                name: "results";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingERC721";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingERC721s";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingLinklistId";
            outputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingLinklistIds";
            outputs: readonly [{
                name: "linklistIds";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingNote";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingNotes";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "offset";
                type: "uint256";
            }, {
                name: "limit";
                type: "uint256";
            }];
            name: "getNotesByCharacterId";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "_web3Entry";
                type: "address";
            }, {
                name: "_linklist";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterIds";
                    type: "uint256[]";
                }, {
                    name: "data";
                    type: "bytes[]";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharactersInBatch";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "migrate";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }], "getLinkingCharacterIds">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: bigint[];
        }>

        An array of character ids that are linked to the character id passed in.

        +
      • Defined in src/contract/subcontracts/link.ts:248
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAddress";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAddresses";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAnyUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAnyUris";
            outputs: readonly [{
                name: "results";
                type: "string[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingCharacterId";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingCharacterIds";
            outputs: readonly [{
                name: "results";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingERC721";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingERC721s";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingLinklistId";
            outputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingLinklistIds";
            outputs: readonly [{
                name: "linklistIds";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingNote";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingNotes";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "offset";
                type: "uint256";
            }, {
                name: "limit";
                type: "uint256";
            }];
            name: "getNotesByCharacterId";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "_web3Entry";
                type: "address";
            }, {
                name: "_linklist";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterIds";
                    type: "uint256[]";
                }, {
                    name: "data";
                    type: "bytes[]";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharactersInBatch";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "migrate";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }], "getLinkingCharacterIds"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAddress";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAddresses";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAnyUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAnyUris";
            outputs: readonly [{
                name: "results";
                type: "string[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingCharacterId";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingCharacterIds";
            outputs: readonly [{
                name: "results";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingERC721";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingERC721s";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingLinklistId";
            outputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingLinklistIds";
            outputs: readonly [{
                name: "linklistIds";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingNote";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingNotes";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "offset";
                type: "uint256";
            }, {
                name: "limit";
                type: "uint256";
            }];
            name: "getNotesByCharacterId";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "_web3Entry";
                type: "address";
            }, {
                name: "_linklist";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterIds";
                    type: "uint256[]";
                }, {
                    name: "data";
                    type: "bytes[]";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharactersInBatch";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "migrate";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }], "getLinkingCharacterIds">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: Character[];
        }>

        An array of character that are linked to the character id passed in.

        +
      • Defined in src/contract/subcontracts/link.ts:275
      • +
      • Defined in src/contract/subcontracts/link.ts:132
      • +
      • Defined in src/contract/subcontracts/link.ts:306
      • +
      • Defined in src/contract/subcontracts/link.ts:396
      • +
      • Defined in src/contract/subcontracts/link.ts:23
      • +
      • Defined in src/contract/subcontracts/link.ts:74
      • +
      • Defined in src/contract/subcontracts/link.ts:486
      • +
      • Defined in src/contract/subcontracts/link.ts:684
      • +
      • Defined in src/contract/subcontracts/link.ts:584
      • +
      • Defined in src/contract/subcontracts/link.ts:354
      • +
      • Defined in src/contract/subcontracts/link.ts:444
      • +
      • Defined in src/contract/subcontracts/link.ts:208
      • +
      • Defined in src/contract/subcontracts/link.ts:538
      • +
      • Defined in src/contract/subcontracts/link.ts:732
      • +
      • Defined in src/contract/subcontracts/link.ts:636
      • Methods - Other

        @@ -729,10 +729,10 @@
        __namedParameters:
        fromCharacterId: string
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getLinklistUri"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getLinklistUri">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: string;
        }>

        +
      • Defined in src/contract/subcontracts/link.ts:786
      • Returns Promise<Result<undefined, true>>

        +
      • Defined in src/contract/subcontracts/link.ts:769
      • @@ -22,7 +22,7 @@

        Hierarchy

        +
      • Defined in src/contract/subcontracts/link_module.ts:13
      • @@ -51,7 +51,7 @@

        Parameters

        base: BaseContract<boolean>

        Returns LinkModuleContract

        +
      • Defined in src/contract/subcontracts/link_module.ts:14
      • Methods - LinkModule

        @@ -80,7 +80,7 @@

        Returns Promise<

        +
      • Defined in src/contract/subcontracts/link_module.ts:23
      • +
      • Defined in src/contract/subcontracts/link_module.ts:61
      • @@ -22,7 +22,7 @@

        Hierarchy

        +
      • Defined in src/contract/subcontracts/mint_module.ts:12
      • @@ -50,7 +50,7 @@

        Parameters

        base: BaseContract<boolean>

        Returns MintModuleContract

        +
      • Defined in src/contract/subcontracts/mint_module.ts:13
      • Methods - MintModule

        @@ -78,7 +78,7 @@

        Returns Promise<

        +
      • Defined in src/contract/subcontracts/mint_module.ts:23
      • @@ -22,7 +22,7 @@

        Hierarchy

        +
      • Defined in src/contract/subcontracts/note.ts:53
      • @@ -70,7 +70,7 @@

        Parameters

        base: BaseContract<boolean>

        Returns NoteContract

        +
      • Defined in src/contract/subcontracts/note.ts:54
      • Methods - Note

        @@ -126,7 +126,7 @@

        Example

        change a note's metadata title and content (using spread

        +
      • Defined in src/contract/subcontracts/note.ts:454
      • +
      • Defined in src/contract/subcontracts/note.ts:602
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getNote"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getNote">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: Note<LinkItemMap[T]>;
        }>

        The info of the note.

        +
      • Defined in src/contract/subcontracts/note.ts:513
      • +
      • Defined in src/contract/subcontracts/note.ts:740
      • +
      • Defined in src/contract/subcontracts/note.ts:818
      • +
      • Defined in src/contract/subcontracts/note.ts:724
      • +
      • Defined in src/contract/subcontracts/note.ts:780
      • +
      • Defined in src/contract/subcontracts/note.ts:802
      • +
      • Defined in src/contract/subcontracts/note.ts:758
      • +
      • Defined in src/contract/subcontracts/note.ts:641
      • +
      • Defined in src/contract/subcontracts/note.ts:674
      • +
      • Defined in src/contract/subcontracts/note.ts:61
      • +
      • Defined in src/contract/subcontracts/note.ts:305
      • +
      • Defined in src/contract/subcontracts/note.ts:152
      • +
      • Defined in src/contract/subcontracts/note.ts:233
      • +
      • Defined in src/contract/subcontracts/note.ts:342
      • +
      • Defined in src/contract/subcontracts/note.ts:269
      • +
      • Defined in src/contract/subcontracts/note.ts:189
      • +
      • Defined in src/contract/subcontracts/note.ts:88
      • +
      • Defined in src/contract/subcontracts/note.ts:490
      • +
      • Defined in src/contract/subcontracts/note.ts:380
      • @@ -22,7 +22,7 @@

        Hierarchy

        +
      • Defined in src/contract/subcontracts/operator.ts:17
      • @@ -57,7 +57,7 @@

        Parameters

        base: BaseContract<boolean>

        Returns OperatorContract

        +
      • Defined in src/contract/subcontracts/operator.ts:18
      • Methods - Operator

        @@ -76,7 +76,7 @@

        Returns bigint

        +
      • Defined in src/contract/subcontracts/operator.ts:257
      • +
      • Defined in src/contract/subcontracts/operator.ts:287
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getOperators"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getOperators">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: readonly `0x${string}`[];
        }>

        The operators of the character.

        +
      • Defined in src/contract/subcontracts/operator.ts:136
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getOperators4Note"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getOperators4Note">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: {
                allowlist: readonly `0x${string}`[];
                blocklist: readonly `0x${string}`[];
            };
        }>

        +
      • Defined in src/contract/subcontracts/operator.ts:159
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getOperatorPermissions"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getOperatorPermissions">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: ("POST_NOTE" | "POST_NOTE_FOR_NOTE" | "POST_NOTE_FOR_ANY_URI" | "POST_NOTE_FOR_ADDRESS" | "POST_NOTE_FOR_LINKLIST" | "POST_NOTE_FOR_CHARACTER" | "POST_NOTE_FOR_ERC721" | "LOCK_NOTE" | "DELETE_NOTE" | "SET_HANDLE" | "SET_SOCIAL_TOKEN" | "GRANT_OPERATOR_PERMISSIONS" | "GRANT_OPERATORS_FOR_NOTE" | "SET_CHARACTER_URI" | "SET_LINKLIST_URI" | "LINK_CHARACTER" | "UNLINK_CHARACTER" | "CREATE_THEN_LINK_CHARACTER" | "LINK_NOTE" | "UNLINK_NOTE" | "LINK_ERC721" | "UNLINK_ERC721" | "LINK_ADDRESS" | "UNLINK_ADDRESS" | "LINK_ANY_URI" | "UNLINK_ANY_URI" | "LINK_LINKLIST" | "UNLINK_LINKLIST" | "SET_LINK_MODULE_FOR_CHARACTER" | "SET_LINK_MODULE_FOR_NOTE" | "SET_LINK_MODULE_FOR_LINKLIST" | "SET_MINT_MODULE_FOR_NOTE" | "SET_NOTE_URI")[];
        }>

        The permissions of the operator.

        +
      • Defined in src/contract/subcontracts/operator.ts:225
      • +
      • Defined in src/contract/subcontracts/operator.ts:34
      • +
      • Defined in src/contract/subcontracts/operator.ts:88
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "isOperatorAllowedForNote"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "isOperatorAllowedForNote">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: boolean;
        }>

        Whether the operator is allowed to operate the note.

        +
      • Defined in src/contract/subcontracts/operator.ts:195
      • @@ -22,7 +22,7 @@

        Hierarchy

        +
      • Defined in src/contract/subcontracts/revision.ts:6
      • @@ -52,7 +52,7 @@

        Parameters

        base: BaseContract<boolean>

        Returns RevisionContract

        +
      • Defined in src/contract/subcontracts/revision.ts:7
      • Methods - Revision

        @@ -70,7 +70,7 @@

        Returns Promise<

        +
      • Defined in src/contract/subcontracts/revision.ts:45
      • +
      • Defined in src/contract/subcontracts/revision.ts:29
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "getRevision">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: bigint;
        }>

        The remote latest revision of the contract.

        +
      • Defined in src/contract/subcontracts/revision.ts:14
      • @@ -22,7 +22,7 @@

        Hierarchy

        +
      • Defined in src/contract/subcontracts/tips.ts:12
      • @@ -60,7 +60,7 @@

        Parameters

        base: BaseContract<boolean>

        Returns TipsContract

        +
      • Defined in src/contract/subcontracts/tips.ts:13
      • Methods - Other

        @@ -83,7 +83,7 @@
        amount: overrides: WriteOverrides<readonly [{
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "previousAdminRole";
                type: "bytes32";
            }, {
                indexed: true;
                name: "newAdminRole";
                type: "bytes32";
            }];
            name: "RoleAdminChanged";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleGranted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleRevoked";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "token";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }];
            name: "Withdraw";
            type: "event";
        }, {
            inputs: readonly [];
            name: "ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "ERC1820_REGISTRY";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "TOKENS_RECIPIENT_INTERFACE_HASH";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleAdmin";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "getRoleMember";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleMemberCount";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getToken";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "hasRole";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "web3Entry_";
                type: "address";
            }, {
                name: "xsyncOperator_";
                type: "address";
            }, {
                name: "token_";
                type: "address";
            }, {
                name: "admin_";
                type: "address";
            }, {
                name: "tips_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }];
            name: "onERC721Received";
            outputs: readonly [{
                name: "";
                type: "bytes4";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "tipCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "toNoteId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "tipCharacterForNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "userData";
                type: "bytes";
            }, {
                name: "operatorData";
                type: "bytes";
            }];
            name: "tokensReceived";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "characterId";
                type: "uint256";
            }, {
                name: "nonce";
                type: "uint256";
            }, {
                name: "expires";
                type: "uint256";
            }, {
                name: "proof";
                type: "bytes";
            }];
            name: "withdraw";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "xsyncOperator";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }], "tipCharacterForNote"> = {}

        Returns Promise<{
            data: undefined;
            transactionHash: `0x${string}`;
        }>

        +
      • Defined in src/contract/subcontracts/tips.ts:85
      • Returns Promise<{
            data: undefined;
            transactionHash: `0x${string}`;
        }>

        +
      • Defined in src/contract/subcontracts/tips.ts:57
      • Methods - TipsContract

        @@ -127,12 +127,12 @@
        address
      • -
        overrides: ReadOverrides<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "balanceOf"> = {}
      • +
        overrides: Omit<ReadContractParameters<readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }], "balanceOf">, "address" | "abi" | "args" | "functionName"> = {}

        Returns Promise<{
            data: bigint;
        }>

        The balance of $MIRA token of the address. Unit: wei.

        +
      • Defined in src/contract/subcontracts/tips.ts:201
      • +
      • Defined in src/contract/subcontracts/tips.ts:168
      • Returns Promise<{
            data: `0x${string}`;
        }>

        The token address of $MIRA.

        +
      • Defined in src/contract/subcontracts/tips.ts:226
      • Returns Promise<{
            data: number;
        }>

        The token decimals of $MIRA.

        +
      • Defined in src/contract/subcontracts/tips.ts:242
      • +
      • Defined in src/contract/subcontracts/tips.ts:21
      • +
      • Defined in src/contract/subcontracts/tips.ts:119
      • @@ -17,7 +17,7 @@
      • AchievementStatus
      • Enumeration AchievementStatus

        +
      • Defined in src/types/indexer/achievement.ts:16
      • @@ -35,17 +35,17 @@

        Enumeration Members

        INACTIVE: "INACTIVE"
        +
      • Defined in src/types/indexer/achievement.ts:17
      • MINTABLE: "MINTABLE"
        +
      • Defined in src/types/indexer/achievement.ts:18
      • MINTED: "MINTED"
        +
      • Defined in src/types/indexer/achievement.ts:19
      • @@ -17,7 +17,7 @@
      • CharacterOperatorPermission
      • Enumeration CharacterOperatorPermission

        +
      • Defined in src/types/indexer/operator.ts:3
      • @@ -65,167 +65,167 @@

        Enumeration Members

        CREATE_THEN_LINK_CHARACTER: "CREATE_THEN_LINK_CHARACTER"
        +
      • Defined in src/types/indexer/operator.ts:12
      • DELETE_NOTE: "DELETE_NOTE"
        +
      • Defined in src/types/indexer/operator.ts:29
      • GRANT_OPERATORS_FOR_NOTE: "GRANT_OPERATORS_FOR_NOTE"
        +
      • Defined in src/types/indexer/operator.ts:7
      • GRANT_OPERATOR_PERMISSIONS: "GRANT_OPERATOR_PERMISSIONS"
        +
      • Defined in src/types/indexer/operator.ts:6
      • LINK_ADDRESS: "LINK_ADDRESS"
        +
      • Defined in src/types/indexer/operator.ts:17
      • LINK_ANY_URI: "LINK_ANY_URI"
        +
      • Defined in src/types/indexer/operator.ts:19
      • LINK_CHARACTER: "LINK_CHARACTER"
        +
      • Defined in src/types/indexer/operator.ts:10
      • LINK_ERC721: "LINK_ERC721"
        +
      • Defined in src/types/indexer/operator.ts:15
      • LINK_LINKLIST: "LINK_LINKLIST"
        +
      • Defined in src/types/indexer/operator.ts:21
      • LINK_NOTE: "LINK_NOTE"
        +
      • Defined in src/types/indexer/operator.ts:13
      • LOCK_NOTE: "LOCK_NOTE"
        +
      • Defined in src/types/indexer/operator.ts:28
      • POST_NOTE: "POST_NOTE"
        +
      • Defined in src/types/indexer/operator.ts:36
      • POST_NOTE_FOR_ADDRESS: "POST_NOTE_FOR_ADDRESS"
        +
      • Defined in src/types/indexer/operator.ts:31
      • POST_NOTE_FOR_ANY_URI: "POST_NOTE_FOR_ANY_URI"
        +
      • Defined in src/types/indexer/operator.ts:35
      • POST_NOTE_FOR_CHARACTER: "POST_NOTE_FOR_CHARACTER"
        +
      • Defined in src/types/indexer/operator.ts:30
      • POST_NOTE_FOR_ERC721: "POST_NOTE_FOR_ERC721"
        +
      • Defined in src/types/indexer/operator.ts:34
      • POST_NOTE_FOR_LINKLIST: "POST_NOTE_FOR_LINKLIST"
        +
      • Defined in src/types/indexer/operator.ts:32
      • POST_NOTE_FOR_NOTE: "POST_NOTE_FOR_NOTE"
        +
      • Defined in src/types/indexer/operator.ts:33
      • SET_CHARACTER_URI: "SET_CHARACTER_URI"
        +
      • Defined in src/types/indexer/operator.ts:8
      • SET_HANDLE: "SET_HANDLE"
        +
      • Defined in src/types/indexer/operator.ts:4
      • SET_LINKLIST_URI: "SET_LINKLIST_URI"
        +
      • Defined in src/types/indexer/operator.ts:9
      • SET_LINK_MODULE_FOR_CHARACTER: "SET_LINK_MODULE_FOR_CHARACTER"
        +
      • Defined in src/types/indexer/operator.ts:23
      • SET_LINK_MODULE_FOR_LINKLIST: "SET_LINK_MODULE_FOR_LINKLIST"
        +
      • Defined in src/types/indexer/operator.ts:25
      • SET_LINK_MODULE_FOR_NOTE: "SET_LINK_MODULE_FOR_NOTE"
        +
      • Defined in src/types/indexer/operator.ts:24
      • SET_MINT_MODULE_FOR_NOTE: "SET_MINT_MODULE_FOR_NOTE"
        +
      • Defined in src/types/indexer/operator.ts:26
      • SET_NOTE_URI: "SET_NOTE_URI"
        +
      • Defined in src/types/indexer/operator.ts:27
      • SET_SOCIAL_TOKEN: "SET_SOCIAL_TOKEN"
        +
      • Defined in src/types/indexer/operator.ts:5
      • UNLINK_ADDRESS: "UNLINK_ADDRESS"
        +
      • Defined in src/types/indexer/operator.ts:18
      • UNLINK_ANY_URI: "UNLINK_ANY_URI"
        +
      • Defined in src/types/indexer/operator.ts:20
      • UNLINK_CHARACTER: "UNLINK_CHARACTER"
        +
      • Defined in src/types/indexer/operator.ts:11
      • UNLINK_ERC721: "UNLINK_ERC721"
        +
      • Defined in src/types/indexer/operator.ts:16
      • UNLINK_LINKLIST: "UNLINK_LINKLIST"
        +
      • Defined in src/types/indexer/operator.ts:22
      • UNLINK_NOTE: "UNLINK_NOTE"
        +
      • Defined in src/types/indexer/operator.ts:14
      • @@ -17,7 +17,7 @@
      • FeedType
      • Enumeration FeedType

        +
      • Defined in src/types/indexer/feed.ts:17
      • @@ -59,137 +59,137 @@

        Enumeration Members

        ADD_OPERATOR: "ADD_OPERATOR"
        +
      • Defined in src/types/indexer/feed.ts:23
      • CREATE_CHARACTER: "CREATE_CHARACTER"
        +
      • Defined in src/types/indexer/feed.ts:18
      • CREATE_LINKLIST: "CREATE_LINKLIST"
        +
      • Defined in src/types/indexer/feed.ts:25
      • DELETE_NOTE: "DELETE_NOTE"
        +
      • Defined in src/types/indexer/feed.ts:39
      • LINK: "LINK"
        +
      • Defined in src/types/indexer/feed.ts:28
      • LOCK_NOTE: "LOCK_NOTE"
        +
      • Defined in src/types/indexer/feed.ts:38
      • MINT_NOTE: "MINT_NOTE"
        +
      • Defined in src/types/indexer/feed.ts:40
      • POST_NOTE: "POST_NOTE"
        +
      • Defined in src/types/indexer/feed.ts:30
      • POST_NOTE_FOR_ADDRESS: "POST_NOTE_FOR_ADDRESS"
        +
      • Defined in src/types/indexer/feed.ts:33
      • POST_NOTE_FOR_ANY_URI: "POST_NOTE_FOR_ANY_URI"
        +
      • Defined in src/types/indexer/feed.ts:32
      • POST_NOTE_FOR_CHARACTER: "POST_NOTE_FOR_CHARACTER"
        +
      • Defined in src/types/indexer/feed.ts:35
      • POST_NOTE_FOR_ERC721: "POST_NOTE_FOR_ERC721"
        +
      • Defined in src/types/indexer/feed.ts:36
      • POST_NOTE_FOR_LINKLIST: "POST_NOTE_FOR_LINKLIST"
        +
      • Defined in src/types/indexer/feed.ts:34
      • POST_NOTE_FOR_NOTE: "POST_NOTE_FOR_NOTE"
        +
      • Defined in src/types/indexer/feed.ts:31
      • REMOVE_OPERATOR: "REMOVE_OPERATOR"
        +
      • Defined in src/types/indexer/feed.ts:24
      • SET_LINK_MODULE: "SET_LINK_MODULE"
        +
      • Defined in src/types/indexer/feed.ts:42
      • SET_MINT_MODULE: "SET_MINT_MODULE"
        +
      • Defined in src/types/indexer/feed.ts:43
      • TIP_CHARACTER: "TIP_CHARACTER"
        +
      • Defined in src/types/indexer/feed.ts:44
      • TRANSFER_CHARACTER: "TRANSFER_CHARACTER"
        +
      • Defined in src/types/indexer/feed.ts:22
      • TRANSFER_LINKLIST: "TRANSFER_LINKLIST"
        +
      • Defined in src/types/indexer/feed.ts:27
      • TRANSFER_MINTED_NOTE: "TRANSFER_MINTED_NOTE"
        +
      • Defined in src/types/indexer/feed.ts:41
      • UNLINK: "UNLINK"
        +
      • Defined in src/types/indexer/feed.ts:29
      • UPDATE_CHARACTER_HANDLE: "UPDATE_CHARACTER_HANDLE"
        +
      • Defined in src/types/indexer/feed.ts:19
      • UPDATE_CHARACTER_METADATA: "UPDATE_CHARACTER_METADATA"
        +
      • Defined in src/types/indexer/feed.ts:20
      • UPDATE_LINKLIST: "UPDATE_LINKLIST"
        +
      • Defined in src/types/indexer/feed.ts:26
      • UPDATE_NOTE: "UPDATE_NOTE"
        +
      • Defined in src/types/indexer/feed.ts:37
      • UPDATE_PRIMARY_CHARACTER: "UPDATE_PRIMARY_CHARACTER"
        +
      • Defined in src/types/indexer/feed.ts:21
      • @@ -17,7 +17,7 @@
      • NotificationType
      • Enumeration NotificationType

        +
      • Defined in src/types/indexer/notification.ts:5
      • @@ -40,42 +40,42 @@

        Enumeration Members

        LINKED: "LINKED"
        +
      • Defined in src/types/indexer/notification.ts:8
      • MENTIONED: "MENTIONED"
        +
      • Defined in src/types/indexer/notification.ts:12
      • NOTE_MINTED: "NOTE_MINTED"
        +
      • Defined in src/types/indexer/notification.ts:10
      • NOTE_POSTED: "NOTE_POSTED"
        +
      • Defined in src/types/indexer/notification.ts:11
      • OPERATOR_ADDED: "OPERATOR_ADDED"
        +
      • Defined in src/types/indexer/notification.ts:6
      • OPERATOR_REMOVED: "OPERATOR_REMOVED"
        +
      • Defined in src/types/indexer/notification.ts:7
      • TIPPED: "TIPPED"
        +
      • Defined in src/types/indexer/notification.ts:13
      • UNLINKED: "UNLINKED"
        +
      • Defined in src/types/indexer/notification.ts:9
      • @@ -27,7 +27,7 @@

        Parameters

        address: `0x${string}` | Account

        Returns Account

        +
      • Defined in src/utils/viem.ts:178
      • @@ -48,7 +48,7 @@

        Example

        Connect with a Readonly Contract

        +
      • Defined in src/contract/contract.ts:83
      • @@ -60,7 +60,7 @@
        Optional Optional options: Partial<ContractOptions>
      • Returns Contract<boolean>

        +
      • Defined in src/contract/contract.ts:87
      • @@ -22,7 +22,7 @@

        Function createDefaultPublicClient

      • Returns PublicClient

      • +
      • Defined in src/utils/viem.ts:43
      • @@ -27,7 +27,7 @@

        Parameters

        addr: string = ...

        Returns Transport

        +
      • Defined in src/utils/viem.ts:29
      • @@ -35,7 +35,7 @@

        Example

        import<
         

        See

        https://indexer.crossbell.io/docs The underlying APIs.

        +
      • Defined in src/indexer/indexer.ts:64
      • @@ -27,7 +27,7 @@

        Parameters

        params: Record<string, undefined | null | boolean | MaybeArray<Numberish>>

        Returns string

        +
      • Defined in src/utils/query_string.ts:3
      • @@ -27,7 +27,7 @@

        Parameters

        account: PrivateKeyAccount

        Returns WalletClient<Transport, Chain, Account>

        +
      • Defined in src/utils/viem.ts:55
      • @@ -29,7 +29,7 @@
        provider: Optional account: `0x${string}` | Account

        Returns WalletClient<Transport, Chain, Account>

        +
      • Defined in src/utils/viem.ts:81
      • @@ -29,7 +29,7 @@
        moduleAddress: initData: `0x${string}`

        Returns Promise<unknown[]>

        +
      • Defined in src/utils/module.ts:110
      • @@ -29,7 +29,7 @@
        moduleAddress: data: any[]

        Returns Promise<`0x${string}`>

        +
      • Defined in src/utils/module.ts:93
      • @@ -27,7 +27,7 @@

        Parameters

        address: `0x${string}`

        Returns Promise<undefined | MintOrLinkModule<"link">>

        +
      • Defined in src/utils/module.ts:47
      • @@ -22,7 +22,7 @@

        Function getLinkModules

      • Returns Promise<MintOrLinkModule<"link">[]>

      • +
      • Defined in src/utils/module.ts:43
      • @@ -27,7 +27,7 @@

        Parameters

        address: `0x${string}`

        Returns Promise<undefined | MintOrLinkModule<"mint">>

        +
      • Defined in src/utils/module.ts:59
      • @@ -22,7 +22,7 @@

        Function getMintModules

      • Returns Promise<MintOrLinkModule<"mint">[]>

      • +
      • Defined in src/utils/module.ts:55
      • @@ -27,7 +27,7 @@

        Parameters

        address: `0x${string}`

        Returns Promise<undefined | MintOrLinkModule<"link" | "mint">>

        +
      • Defined in src/utils/module.ts:38
      • @@ -27,7 +27,7 @@

        Parameters

        Optional m: MintOrLinkModuleConfig

        Returns Promise<{
            address: `0x${string}`;
            initData: `0x${string}`;
        }>

        +
      • Defined in src/utils/module.ts:67
      • @@ -35,7 +35,7 @@
        __namedParameters: Optional type?: T

        Returns Promise<MintOrLinkModule<T>[]>

        +
      • Defined in src/utils/module.ts:14
      • @@ -27,7 +27,7 @@

        Parameters

        provider: EIP1193Provider

        Returns Account | undefined

        +
      • Defined in src/utils/viem.ts:67
      • @@ -44,7 +44,7 @@
        scope
        token_id: undefined | string
        +
      • Defined in src/utils/csb.ts:5
      • @@ -43,7 +43,7 @@
        returnMultipleLogsOptional throwOnMultipleLogsFound?: boolean

        Returns FixedEventReturn<Entry, TName>[]

        +
      • Defined in src/utils/viem.ts:127
      • @@ -69,7 +69,7 @@
        Optional Optional throwOnMultipleLogsFound?: boolean
      • Returns FixedEventReturn<Entry, TName>

        +
      • Defined in src/utils/viem.ts:136
      • @@ -27,7 +27,7 @@

        Parameters

        address: MaybeArray<`0x${string}`>

        Returns void

        +
      • Defined in src/utils/address.ts:7
      • @@ -39,7 +39,7 @@

        Returns Promise<

        +
      • Defined in src/utils/validate-handle.ts:19
      • @@ -27,7 +27,7 @@

        Parameters

        address: `0x${string}`

        Returns void

        +
      • Defined in src/utils/sdn.ts:56
      • @@ -67,7 +67,7 @@

        Example

        const
        +
      • Defined in src/indexer/utils.ts:25
      • @@ -22,7 +22,7 @@

        Function getIpfsGateway

      • Returns string

      • +
      • Defined in src/ipfs.ts:11
      • @@ -27,7 +27,7 @@

        Parameters

        metadata: Metadata

        Returns Promise<string>

        +
      • Defined in src/ipfs.ts:59
      • @@ -31,7 +31,7 @@
        metadataOrUri: Optional retrieveMetadataIfNeeded: false

        Returns Promise<{
            uri: string;
        }>

        +
      • Defined in src/ipfs.ts:97
      • @@ -45,7 +45,7 @@
        metadataOrUri: retrieveMetadataIfNeeded: true
      • Returns Promise<{
            metadata: NoteMetadata;
            uri: string;
        }>

        +
      • Defined in src/ipfs.ts:102
      • @@ -59,7 +59,7 @@
        metadataOrUri: Optional retrieveMetadataIfNeeded: false
      • Returns Promise<{
            uri: string;
        }>

        +
      • Defined in src/ipfs.ts:107
      • @@ -73,7 +73,7 @@
        metadataOrUri: retrieveMetadataIfNeeded: true
      • Returns Promise<{
            metadata: CharacterMetadata;
            uri: string;
        }>

        +
      • Defined in src/ipfs.ts:112
      • @@ -27,7 +27,7 @@

        Parameters

        file: Blob | File

        Returns Promise<IpfsResponse>

        +
      • Defined in src/ipfs.ts:41
      • @@ -27,7 +27,7 @@

        Parameters

        json: any

        Returns Promise<IpfsResponse>

        +
      • Defined in src/ipfs.ts:27
      • @@ -32,7 +32,7 @@

        Parameters

        uri: string

        Returns Promise<T>

        +
      • Defined in src/ipfs.ts:69
      • @@ -27,7 +27,7 @@

        Parameters

        gateway: string

        Returns void

        +
      • Defined in src/ipfs.ts:14
      • @@ -22,7 +22,7 @@

        Function getJsonRpcAddress

      • Returns string

      • +
      • Defined in src/network.ts:20
      • @@ -35,7 +35,7 @@

        Returns Promise<

        +
      • Defined in src/network.ts:32
      • @@ -27,7 +27,7 @@

        Parameters

        address: string

        Returns void

        +
      • Defined in src/network.ts:23
      • -

        crossbell - v1.4.0

        +

        crossbell - v1.4.1

        crossbell.js

        A JavaScript SDK to interact with the Crossbell. It works for both browser and Node.js.

        npm version npm downloads

          @@ -69,7 +69,7 @@

          Connect with Read-Only

      • Indexer
      • @@ -21,7 +21,7 @@

        Hierarchy

        • AchievementInfo
        +
      • Defined in src/types/indexer/achievement.ts:3
      • @@ -51,42 +51,42 @@
        trait_type
        value: string
        +
      • Defined in src/types/indexer/achievement.ts:10
      • description: string
        +
      • Defined in src/types/indexer/achievement.ts:8
      • media: string
        +
      • Defined in src/types/indexer/achievement.ts:9
      • name: FunctionStringCallback
        +
      • Defined in src/types/indexer/achievement.ts:5
      • targetValue?: number
        +
      • Defined in src/types/indexer/achievement.ts:12
      • tokenId: number
        +
      • Defined in src/types/indexer/achievement.ts:4
      • unit: string
        +
      • Defined in src/types/indexer/achievement.ts:13
      • uri: string
        +
      • Defined in src/types/indexer/achievement.ts:6
      • @@ -21,7 +21,7 @@

        Hierarchy

        • AchievementItem
        +
      • Defined in src/types/indexer/achievement.ts:24
      • @@ -48,32 +48,32 @@

        Properties

        characterId: number
        +
      • Defined in src/types/indexer/achievement.ts:26
      • createdAt: string
        +
      • Defined in src/types/indexer/achievement.ts:31
      • currentValue: number
        +
      • Defined in src/types/indexer/achievement.ts:30
      • +
      • Defined in src/types/indexer/achievement.ts:35
      • mintedAt: null | string
        +
      • Defined in src/types/indexer/achievement.ts:33
      • name: string
        +
      • Defined in src/types/indexer/achievement.ts:27
      • stat: {
            mintedCount: number;
        }
        @@ -83,32 +83,32 @@

        Type declaration

      • mintedCount: number
      • +
      • Defined in src/types/indexer/achievement.ts:36
      • status: "INACTIVE" | "MINTABLE" | "MINTED"
        +
      • Defined in src/types/indexer/achievement.ts:28
      • tokenId: number
        +
      • Defined in src/types/indexer/achievement.ts:25
      • tokenNumber: number
        +
      • Defined in src/types/indexer/achievement.ts:29
      • transactionHash: null | `0x${string}`
        +
      • Defined in src/types/indexer/achievement.ts:34
      • updatedAt: string
        +
      • Defined in src/types/indexer/achievement.ts:32
      • @@ -21,7 +21,7 @@

        Hierarchy

        • AchievementItemGroup
        +
      • Defined in src/types/indexer/achievement.ts:41
      • @@ -45,12 +45,12 @@
        name
        title: string
        +
      • Defined in src/types/indexer/achievement.ts:42
      • +
      • Defined in src/types/indexer/achievement.ts:46
      • @@ -21,7 +21,7 @@

        Hierarchy

        • AchievementSection
        +
      • Defined in src/types/indexer/achievement.ts:49
      • @@ -38,7 +38,7 @@

        Properties

        +
      • Defined in src/types/indexer/achievement.ts:54
      • info: {
            name: string;
            title: string;
        }
        @@ -50,7 +50,7 @@
        name
        title: string
        +
      • Defined in src/types/indexer/achievement.ts:50
      • @@ -24,7 +24,7 @@

        Hierarchy

      • CharacterMetadata
      • NoteMetadata
      • +
      • Defined in src/types/metadata/base.ts:7
      • @@ -55,7 +55,7 @@

        Example

        [{ 
        +
      • Defined in src/types/metadata/base.ts:14
      • @@ -24,7 +24,7 @@

        Hierarchy

      • CharacterMetadata
      • NoteMetadata
      • +
      • Defined in src/types/metadata/base.ts:1
      • @@ -40,7 +40,7 @@

        Properties

        type?: "character" | "note" | "linklist"
        +
      • Defined in src/types/metadata/base.ts:4
      • @@ -21,7 +21,7 @@

        Hierarchy

        • Character
        +
      • Defined in src/types/contract/character.ts:3
      • @@ -45,7 +45,7 @@
        +
      • Defined in src/types/contract/character.ts:5
      • handle: string
        @@ -53,7 +53,7 @@
        +
      • Defined in src/types/contract/character.ts:7
      • @@ -61,7 +61,7 @@
        +
      • Defined in src/types/contract/character.ts:11
      • noteCount: bigint
        @@ -69,7 +69,7 @@
        +
      • Defined in src/types/contract/character.ts:15
      • socialToken: string
        @@ -77,7 +77,7 @@
        +
      • Defined in src/types/contract/character.ts:13
      • uri: string
        @@ -85,7 +85,7 @@
        +
      • Defined in src/types/contract/character.ts:9
      • @@ -21,7 +21,7 @@

        Hierarchy

        • CharacterEntity
        +
      • Defined in src/types/indexer/character.ts:4
      • @@ -54,92 +54,92 @@

        Properties

        blockNumber: number
        +
      • Defined in src/types/indexer/character.ts:18
      • characterId: number
        +
      • Defined in src/types/indexer/character.ts:5
      • createdAt: string
        +
      • Defined in src/types/indexer/character.ts:14
      • deletedAt: null | string
        +
      • Defined in src/types/indexer/character.ts:16
      • fromAddress: `0x${string}`
        +
      • Defined in src/types/indexer/character.ts:13
      • handle: string
        +
      • Defined in src/types/indexer/character.ts:6
      • logIndex: number
        +
      • Defined in src/types/indexer/character.ts:19
      • metadata?: null | MetadataEntity<"CHARACTER">
        +
      • Defined in src/types/indexer/character.ts:9
      • operator: `0x${string}`
        +
      • Defined in src/types/indexer/character.ts:11
      • owner: `0x${string}`
        +
      • Defined in src/types/indexer/character.ts:12
      • primary: boolean
        +
      • Defined in src/types/indexer/character.ts:7
      • socialToken: null | string
        +
      • Defined in src/types/indexer/character.ts:10
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/character.ts:17
      • updatedAt: string
        +
      • Defined in src/types/indexer/character.ts:15
      • updatedBlockNumber: number
        +
      • Defined in src/types/indexer/character.ts:21
      • updatedLogIndex: number
        +
      • Defined in src/types/indexer/character.ts:22
      • updatedTransactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/character.ts:20
      • uri: null | string
        +
      • Defined in src/types/indexer/character.ts:8
      • @@ -24,7 +24,7 @@

        Hierarchy

        • CharacterMetadata
        +
      • Defined in src/types/metadata/character.ts:3
      • @@ -64,7 +64,7 @@

        Example

        [{ 
        +
      • Defined in src/types/metadata/base.ts:14
      • avatars?: string[]
        @@ -76,7 +76,7 @@

        Example

        [
        +
      • Defined in src/types/metadata/character.ts:14
      • banners?: {
            address: string;
            mime_type: string;
        }[]
        @@ -100,7 +100,7 @@

        Example

        [{ 
        +
      • Defined in src/types/metadata/character.ts:33
      • bio?: string
        @@ -108,7 +108,7 @@
        +
      • Defined in src/types/metadata/character.ts:17
      • connected_accounts?: string[]
        @@ -120,7 +120,7 @@

        Example

        [
        +
      • Defined in src/types/metadata/character.ts:53
      • connected_avatars?: string[]
        @@ -133,7 +133,7 @@

        Example

        [
        +
      • Defined in src/types/metadata/character.ts:65
      • name?: string
        @@ -141,13 +141,13 @@
        +
      • Defined in src/types/metadata/character.ts:5
      • type?: "character" | "note" | "linklist"
        +
      • Defined in src/types/metadata/base.ts:4
      • websites?: string[]
        @@ -158,7 +158,7 @@

        Example

        [
        +
      • Defined in src/types/metadata/character.ts:25
      • @@ -21,7 +21,7 @@

        Hierarchy

        • CharacterOperatorEntity
        +
      • Defined in src/types/indexer/operator.ts:41
      • @@ -47,57 +47,57 @@

        Properties

        blockNumber: number
        +
      • Defined in src/types/indexer/operator.ts:48
      • characterId: number
        +
      • Defined in src/types/indexer/operator.ts:42
      • createdAt: Date
        +
      • Defined in src/types/indexer/operator.ts:45
      • logIndex: number
        +
      • Defined in src/types/indexer/operator.ts:49
      • operator: `0x${string}`
        +
      • Defined in src/types/indexer/operator.ts:43
      • permissions: ("POST_NOTE" | "POST_NOTE_FOR_NOTE" | "POST_NOTE_FOR_ANY_URI" | "POST_NOTE_FOR_ADDRESS" | "POST_NOTE_FOR_LINKLIST" | "POST_NOTE_FOR_CHARACTER" | "POST_NOTE_FOR_ERC721" | "LOCK_NOTE" | "DELETE_NOTE" | "SET_HANDLE" | "SET_SOCIAL_TOKEN" | "GRANT_OPERATOR_PERMISSIONS" | "GRANT_OPERATORS_FOR_NOTE" | "SET_CHARACTER_URI" | "SET_LINKLIST_URI" | "LINK_CHARACTER" | "UNLINK_CHARACTER" | "CREATE_THEN_LINK_CHARACTER" | "LINK_NOTE" | "UNLINK_NOTE" | "LINK_ERC721" | "UNLINK_ERC721" | "LINK_ADDRESS" | "UNLINK_ADDRESS" | "LINK_ANY_URI" | "UNLINK_ANY_URI" | "LINK_LINKLIST" | "UNLINK_LINKLIST" | "SET_LINK_MODULE_FOR_CHARACTER" | "SET_LINK_MODULE_FOR_NOTE" | "SET_LINK_MODULE_FOR_LINKLIST" | "SET_MINT_MODULE_FOR_NOTE" | "SET_NOTE_URI")[]
        +
      • Defined in src/types/indexer/operator.ts:44
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/operator.ts:47
      • updatedAt: Date
        +
      • Defined in src/types/indexer/operator.ts:46
      • updatedBlockNumber: number
        +
      • Defined in src/types/indexer/operator.ts:51
      • updatedLogIndex: number
        +
      • Defined in src/types/indexer/operator.ts:52
      • updatedTransactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/operator.ts:50
      • @@ -21,7 +21,7 @@

        Hierarchy

        • CharacterStatEntity
        +
      • Defined in src/types/indexer/stat.ts:1
      • @@ -41,27 +41,27 @@

        Properties

        characterId: number
        +
      • Defined in src/types/indexer/stat.ts:2
      • viewCount: number
        +
      • Defined in src/types/indexer/stat.ts:3
      • viewDetailCount: number
        +
      • Defined in src/types/indexer/stat.ts:5
      • viewInListCount: number
        +
      • Defined in src/types/indexer/stat.ts:4
      • viewNoteCount: number
        +
      • Defined in src/types/indexer/stat.ts:6
      • @@ -21,7 +21,7 @@

        Hierarchy

        • EmailUserEntity
        +
      • Defined in src/types/indexer/newbie.ts:1
      • @@ -44,42 +44,42 @@

        Properties

        characterId?: number
        +
      • Defined in src/types/indexer/newbie.ts:3
      • characterWithdrawnAt?: string
        +
      • Defined in src/types/indexer/newbie.ts:4
      • characterWithdrawnTo?: string
        +
      • Defined in src/types/indexer/newbie.ts:5
      • createdAt: string
        +
      • Defined in src/types/indexer/newbie.ts:7
      • csb?: string
        +
      • Defined in src/types/indexer/newbie.ts:6
      • deletedAt?: string
        +
      • Defined in src/types/indexer/newbie.ts:9
      • email: string
        +
      • Defined in src/types/indexer/newbie.ts:2
      • updatedAt: string
        +
      • Defined in src/types/indexer/newbie.ts:8
      • @@ -21,7 +21,7 @@

        Hierarchy

        • FeedEntity
        +
      • Defined in src/types/indexer/feed.ts:49
      • @@ -60,122 +60,122 @@

        Properties

        blockNumber: number
        +
      • Defined in src/types/indexer/feed.ts:72
      • character?: CharacterEntity
        +
      • Defined in src/types/indexer/feed.ts:51
      • characterId?: number
        +
      • Defined in src/types/indexer/feed.ts:52
      • contractAddress?: `0x${string}`
        +
      • Defined in src/types/indexer/feed.ts:60
      • createdAt: Date
        +
      • Defined in src/types/indexer/feed.ts:68
      • deletedAt: null | Date
        +
      • Defined in src/types/indexer/feed.ts:70
      • link?: LinkEntity
        +
      • Defined in src/types/indexer/feed.ts:55
      • linkModule?: LinkModuleEntity
        +
      • Defined in src/types/indexer/feed.ts:63
      • linkModuleTargetItemType?: LinkModuleTargetItemType
        +
      • Defined in src/types/indexer/feed.ts:62
      • linkValue?: string
        +
      • Defined in src/types/indexer/feed.ts:56
      • linklist?: LinklistEntity
        +
      • Defined in src/types/indexer/feed.ts:53
      • linklistId: number
        +
      • Defined in src/types/indexer/feed.ts:54
      • logIndex: number
        +
      • Defined in src/types/indexer/feed.ts:73
      • mintModule?: MintModuleEntity
        +
      • Defined in src/types/indexer/feed.ts:65
      • mintModuleTargetItemType?: "Note"
        +
      • Defined in src/types/indexer/feed.ts:64
      • mintedNote?: MintedNoteEntity
        +
      • Defined in src/types/indexer/feed.ts:59
      • note?: NoteEntity
        +
      • Defined in src/types/indexer/feed.ts:57
      • noteId?: number
        +
      • Defined in src/types/indexer/feed.ts:58
      • owner: `0x${string}`
        +
      • Defined in src/types/indexer/feed.ts:67
      • tip?: TipEntity
        +
      • Defined in src/types/indexer/feed.ts:66
      • tokenId?: number
        +
      • Defined in src/types/indexer/feed.ts:61
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/feed.ts:71
      • type: FeedType
        +
      • Defined in src/types/indexer/feed.ts:50
      • updatedAt: Date
        +
      • Defined in src/types/indexer/feed.ts:69
      • @@ -21,7 +21,7 @@

        Hierarchy

        • LinkEntity
        +
      • Defined in src/types/indexer/link.ts:7
      • @@ -64,142 +64,142 @@

        Properties

        blockNumber: number
        +
      • Defined in src/types/indexer/link.ts:31
      • createdAt: string
        +
      • Defined in src/types/indexer/link.ts:27
      • deletedAt: null | string
        +
      • Defined in src/types/indexer/link.ts:29
      • fromCharacter?: null | CharacterEntity
        +
      • Defined in src/types/indexer/link.ts:14
      • fromCharacterId: null | number
        +
      • Defined in src/types/indexer/link.ts:13
      • linkItemType: keyof LinkItemMap
        +
      • Defined in src/types/indexer/link.ts:11
      • linkType: string
        +
      • Defined in src/types/indexer/link.ts:10
      • linkValue: string
        +
      • Defined in src/types/indexer/link.ts:12
      • linklist?: LinklistEntity
        +
      • Defined in src/types/indexer/link.ts:9
      • linklistId: number
        +
      • Defined in src/types/indexer/link.ts:8
      • logIndex: number
        +
      • Defined in src/types/indexer/link.ts:32
      • operator: `0x${string}`
        +
      • Defined in src/types/indexer/link.ts:25
      • owner: `0x${string}`
        +
      • Defined in src/types/indexer/link.ts:26
      • toAddress: null | `0x${string}`
        +
      • Defined in src/types/indexer/link.ts:17
      • toCharacter?: null | CharacterEntity
        +
      • Defined in src/types/indexer/link.ts:16
      • toCharacterId: null | number
        +
      • Defined in src/types/indexer/link.ts:15
      • toContractAddress: null | `0x${string}`
        +
      • Defined in src/types/indexer/link.ts:20
      • toLinklist?: null | LinklistEntity
        +
      • Defined in src/types/indexer/link.ts:23
      • toLinklistId: null | number
        +
      • Defined in src/types/indexer/link.ts:22
      • toNote?: null | NoteEntity
        +
      • Defined in src/types/indexer/link.ts:19
      • toNoteId: null | number
        +
      • Defined in src/types/indexer/link.ts:18
      • toTokenId: null | number
        +
      • Defined in src/types/indexer/link.ts:21
      • toUri: null | string
        +
      • Defined in src/types/indexer/link.ts:24
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/link.ts:30
      • updatedAt: string
        +
      • Defined in src/types/indexer/link.ts:28
      • updatedBlockNumber: number
        +
      • Defined in src/types/indexer/link.ts:34
      • updatedLogIndex: number
        +
      • Defined in src/types/indexer/link.ts:35
      • updatedTransactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/link.ts:33
      • @@ -21,7 +21,7 @@

        Hierarchy

        • LinkItemAddress
        +
      • Defined in src/types/contract/link.ts:25
      • @@ -37,7 +37,7 @@

        Properties

        address: `0x${string}`
        +
      • Defined in src/types/contract/link.ts:26
      • @@ -21,7 +21,7 @@

        Hierarchy

        • LinkItemAnyUri
        +
      • Defined in src/types/contract/link.ts:43
      • @@ -37,7 +37,7 @@

        Properties

        uri: string
        +
      • Defined in src/types/contract/link.ts:44
      • @@ -21,7 +21,7 @@

        Hierarchy

        • LinkItemCharacter
        +
      • Defined in src/types/contract/link.ts:21
      • @@ -37,7 +37,7 @@

        Properties

        characterId: bigint
        +
      • Defined in src/types/contract/link.ts:22
      • @@ -21,7 +21,7 @@

        Hierarchy

        • LinkItemERC721
        +
      • Defined in src/types/contract/link.ts:34
      • @@ -38,12 +38,12 @@

        Properties

        contractAddress: `0x${string}`
        +
      • Defined in src/types/contract/link.ts:35
      • tokenId: string
        +
      • Defined in src/types/contract/link.ts:36
      • @@ -21,7 +21,7 @@

        Hierarchy

        • LinkItemLinklist
        +
      • Defined in src/types/contract/link.ts:39
      • @@ -37,7 +37,7 @@

        Properties

        linklistId: bigint
        +
      • Defined in src/types/contract/link.ts:40
      • @@ -21,7 +21,7 @@

        Hierarchy

        • LinkItemMap
        +
      • Defined in src/types/contract/link.ts:3
      • @@ -42,32 +42,32 @@

        Properties

        +
      • Defined in src/types/contract/link.ts:5
      • +
      • Defined in src/types/contract/link.ts:9
      • +
      • Defined in src/types/contract/link.ts:4
      • +
      • Defined in src/types/contract/link.ts:7
      • +
      • Defined in src/types/contract/link.ts:8
      • +
      • Defined in src/types/contract/link.ts:6
      • @@ -21,7 +21,7 @@

        Hierarchy

        • LinkItemNote
        +
      • Defined in src/types/contract/link.ts:29
      • @@ -38,12 +38,12 @@

        Properties

        characterId: bigint
        +
      • Defined in src/types/contract/link.ts:30
      • noteId: bigint
        +
      • Defined in src/types/contract/link.ts:31
      • @@ -21,7 +21,7 @@

        Hierarchy

        • LinkModuleEntity
        +
      • Defined in src/types/indexer/link_module.ts:13
      • @@ -60,122 +60,122 @@

        Properties

        blockNumber: number
        +
      • Defined in src/types/indexer/link_module.ts:33
      • contractAddress: `0x${string}`
        +
      • Defined in src/types/indexer/link_module.ts:16
      • createdAt: Date
        +
      • Defined in src/types/indexer/link_module.ts:29
      • deletedAt: null | Date
        +
      • Defined in src/types/indexer/link_module.ts:31
      • initData: string
        +
      • Defined in src/types/indexer/link_module.ts:17
      • linkValue: string
        +
      • Defined in src/types/indexer/link_module.ts:15
      • logIndex: number
        +
      • Defined in src/types/indexer/link_module.ts:34
      • operator: `0x${string}`
        +
      • Defined in src/types/indexer/link_module.ts:28
      • returnData: string
        +
      • Defined in src/types/indexer/link_module.ts:18
      • targetItemType: LinkModuleTargetItemType
        +
      • Defined in src/types/indexer/link_module.ts:14
      • toAddress: `0x${string}`
        +
      • Defined in src/types/indexer/link_module.ts:21
      • toCharacter?: null | CharacterEntity
        +
      • Defined in src/types/indexer/link_module.ts:20
      • toCharacterId: null | number
        +
      • Defined in src/types/indexer/link_module.ts:19
      • toContractAddress: null | `0x${string}`
        +
      • Defined in src/types/indexer/link_module.ts:24
      • toLinklist?: null | LinklistEntity
        +
      • Defined in src/types/indexer/link_module.ts:27
      • toLinklistId: null | number
        +
      • Defined in src/types/indexer/link_module.ts:26
      • toNote?: null | NoteEntity
        +
      • Defined in src/types/indexer/link_module.ts:23
      • toNoteId: null | number
        +
      • Defined in src/types/indexer/link_module.ts:22
      • toTokenId: null | number
        +
      • Defined in src/types/indexer/link_module.ts:25
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/link_module.ts:32
      • updatedAt: Date
        +
      • Defined in src/types/indexer/link_module.ts:30
      • updatedBlockNumber: number
        +
      • Defined in src/types/indexer/link_module.ts:36
      • updatedLogIndex: number
        +
      • Defined in src/types/indexer/link_module.ts:37
      • updatedTransactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/link_module.ts:35
      • @@ -21,7 +21,7 @@

        Hierarchy

        • LinklistEntity
        +
      • Defined in src/types/indexer/linklist.ts:4
      • @@ -53,87 +53,87 @@

        Properties

        attached: boolean
        +
      • Defined in src/types/indexer/linklist.ts:6
      • blockNumber: number
        +
      • Defined in src/types/indexer/linklist.ts:17
      • createdAt: string
        +
      • Defined in src/types/indexer/linklist.ts:14
      • fromAddress: `0x${string}`
        +
      • Defined in src/types/indexer/linklist.ts:13
      • fromCharacterId: null | number
        +
      • Defined in src/types/indexer/linklist.ts:7
      • linkType: string
        +
      • Defined in src/types/indexer/linklist.ts:8
      • linklistId: number
        +
      • Defined in src/types/indexer/linklist.ts:5
      • logIndex: number
        +
      • Defined in src/types/indexer/linklist.ts:18
      • metadata?: null | MetadataEntity<"LINKLIST">
        +
      • Defined in src/types/indexer/linklist.ts:10
      • operator: `0x${string}`
        +
      • Defined in src/types/indexer/linklist.ts:11
      • owner: `0x${string}`
        +
      • Defined in src/types/indexer/linklist.ts:12
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/linklist.ts:16
      • updatedAt: string
        +
      • Defined in src/types/indexer/linklist.ts:15
      • updatedBlockNumber: number
        +
      • Defined in src/types/indexer/linklist.ts:20
      • updatedLogIndex: number
        +
      • Defined in src/types/indexer/linklist.ts:21
      • updatedTransactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/linklist.ts:19
      • uri: null | string
        +
      • Defined in src/types/indexer/linklist.ts:9
      • @@ -26,7 +26,7 @@

        Hierarchy

        • ListResponse
        +
      • Defined in src/types/indexer/base.ts:1
      • @@ -44,17 +44,17 @@

        Properties

        count: number
        +
      • Defined in src/types/indexer/base.ts:3
      • cursor: null | string
        +
      • Defined in src/types/indexer/base.ts:2
      • list: T[]
        +
      • Defined in src/types/indexer/base.ts:4
      • @@ -26,7 +26,7 @@

        Hierarchy

        • MetadataEntity
        +
      • Defined in src/types/indexer/metadata.ts:5
      • @@ -44,17 +44,17 @@

        Properties

        content?: null | (T extends "CHARACTER"
            ? CharacterMetadata
            : T extends "NOTE"
                ? NoteMetadata
                : object)
        +
      • Defined in src/types/indexer/metadata.ts:8
      • type?: null | MetadataType
        +
      • Defined in src/types/indexer/metadata.ts:7
      • uri?: string
        +
      • Defined in src/types/indexer/metadata.ts:6
      • @@ -21,7 +21,7 @@

        Hierarchy

        • MintModuleEntity
        +
      • Defined in src/types/indexer/mint_module.ts:7
      • @@ -55,97 +55,97 @@

        Properties

        blockNumber: number
        +
      • Defined in src/types/indexer/mint_module.ts:22
      • contractAddress: `0x${string}`
        +
      • Defined in src/types/indexer/mint_module.ts:10
      • createdAt: Date
        +
      • Defined in src/types/indexer/mint_module.ts:18
      • deletedAt: null | Date
        +
      • Defined in src/types/indexer/mint_module.ts:20
      • initData: string
        +
      • Defined in src/types/indexer/mint_module.ts:11
      • linkValue: string
        +
      • Defined in src/types/indexer/mint_module.ts:9
      • logIndex: number
        +
      • Defined in src/types/indexer/mint_module.ts:23
      • operator: `0x${string}`
        +
      • Defined in src/types/indexer/mint_module.ts:17
      • returnData: string
        +
      • Defined in src/types/indexer/mint_module.ts:12
      • targetItemType: "Note"
        +
      • Defined in src/types/indexer/mint_module.ts:8
      • toCharacter?: null | CharacterEntity
        +
      • Defined in src/types/indexer/mint_module.ts:14
      • toCharacterId: null | number
        +
      • Defined in src/types/indexer/mint_module.ts:13
      • toNote?: null | NoteEntity
        +
      • Defined in src/types/indexer/mint_module.ts:16
      • toNoteId: null | number
        +
      • Defined in src/types/indexer/mint_module.ts:15
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/mint_module.ts:21
      • updatedAt: Date
        +
      • Defined in src/types/indexer/mint_module.ts:19
      • updatedBlockNumber: number
        +
      • Defined in src/types/indexer/mint_module.ts:25
      • updatedLogIndex: number
        +
      • Defined in src/types/indexer/mint_module.ts:26
      • updatedTransactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/mint_module.ts:24
      • @@ -26,7 +26,7 @@

        Hierarchy

        • MintOrLinkModule
        +
      • Defined in src/types/contract/module.ts:3
      • @@ -50,32 +50,32 @@

        Properties

        address: `0x${string}`
        +
      • Defined in src/types/contract/module.ts:9
      • authorCharacterId?: number
        +
      • Defined in src/types/contract/module.ts:17
      • createdAt?: string
        +
      • Defined in src/types/contract/module.ts:30
      • description: string
        +
      • Defined in src/types/contract/module.ts:13
      • icon?: string
        +
      • Defined in src/types/contract/module.ts:15
      • id: string
        +
      • Defined in src/types/contract/module.ts:5
      • initDataStructure: {
            description: string;
            label: string;
            required?: boolean;
            type: AbiType;
        }[]
        @@ -91,17 +91,17 @@
        Optional
        type: AbiType
        +
      • Defined in src/types/contract/module.ts:19
      • name: string
        +
      • Defined in src/types/contract/module.ts:11
      • type: T
        +
      • Defined in src/types/contract/module.ts:7
      • @@ -21,7 +21,7 @@

        Hierarchy

        • MintOrLinkModuleConfig
        +
      • Defined in src/types/contract/module.ts:33
      • @@ -41,7 +41,7 @@
        +
      • Defined in src/types/contract/module.ts:35
      • data: any[]
        @@ -49,7 +49,7 @@
        +
      • Defined in src/types/contract/module.ts:37
      • @@ -21,7 +21,7 @@

        Hierarchy

        • MintedNoteEntity
        +
      • Defined in src/types/indexer/minted_note.ts:5
      • @@ -53,87 +53,87 @@

        Properties

        blockNumber: number
        +
      • Defined in src/types/indexer/minted_note.ts:18
      • contractAddress: `0x${string}`
        +
      • Defined in src/types/indexer/minted_note.ts:10
      • createdAt: string
        +
      • Defined in src/types/indexer/minted_note.ts:15
      • fromAddress: `0x${string}`
        +
      • Defined in src/types/indexer/minted_note.ts:14
      • logIndex: number
        +
      • Defined in src/types/indexer/minted_note.ts:19
      • note?: null | NoteEntity
        +
      • Defined in src/types/indexer/minted_note.ts:9
      • noteCharacter?: CharacterEntity
        +
      • Defined in src/types/indexer/minted_note.ts:7
      • noteCharacterId: number
        +
      • Defined in src/types/indexer/minted_note.ts:6
      • noteId: number
        +
      • Defined in src/types/indexer/minted_note.ts:8
      • operator: `0x${string}`
        +
      • Defined in src/types/indexer/minted_note.ts:12
      • owner: `0x${string}`
        +
      • Defined in src/types/indexer/minted_note.ts:13
      • tokenId: number
        +
      • Defined in src/types/indexer/minted_note.ts:11
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/minted_note.ts:17
      • updatedAt: string
        +
      • Defined in src/types/indexer/minted_note.ts:16
      • updatedBlockNumber: number
        +
      • Defined in src/types/indexer/minted_note.ts:21
      • updatedLogIndex: number
        +
      • Defined in src/types/indexer/minted_note.ts:22
      • updatedTransactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/minted_note.ts:20
      • @@ -26,7 +26,7 @@

        Hierarchy

        • Note
        +
      • Defined in src/types/contract/note.ts:7
      • @@ -57,7 +57,7 @@
        +
      • Defined in src/types/contract/note.ts:9
      • contentUri: string
        @@ -65,7 +65,7 @@
        +
      • Defined in src/types/contract/note.ts:14
      • contractAddress: `0x${string}`
        @@ -73,7 +73,7 @@
        +
      • Defined in src/types/contract/note.ts:34
      • deleted: boolean
        @@ -81,12 +81,12 @@
        +
      • Defined in src/types/contract/note.ts:39
      • linkItem: T
        +
      • Defined in src/types/contract/note.ts:23
      • linkItemType: string
        @@ -94,7 +94,7 @@
        +
      • Defined in src/types/contract/note.ts:19
      • linkItemTypeString?: keyof LinkItemMap
        @@ -102,7 +102,7 @@
        +
      • Defined in src/types/contract/note.ts:21
      • linkKey: string
        @@ -111,7 +111,7 @@
        +
      • Defined in src/types/contract/note.ts:29
      • linkModule: string
        @@ -119,7 +119,7 @@
        +
      • Defined in src/types/contract/note.ts:31
      • locked: boolean
        @@ -127,7 +127,7 @@
        +
      • Defined in src/types/contract/note.ts:41
      • metadata?: NoteMetadata
        @@ -135,7 +135,7 @@
        +
      • Defined in src/types/contract/note.ts:16
      • mintModule: string
        @@ -143,7 +143,7 @@
        +
      • Defined in src/types/contract/note.ts:36
      • noteId: bigint
        @@ -151,7 +151,7 @@
        +
      • Defined in src/types/contract/note.ts:11
      • @@ -21,7 +21,7 @@

        Hierarchy

        • NoteEntity
        +
      • Defined in src/types/indexer/note.ts:7
      • @@ -72,182 +72,182 @@

        Properties

        blockNumber: number
        +
      • Defined in src/types/indexer/note.ts:39
      • character?: null | CharacterEntity
        +
      • Defined in src/types/indexer/note.ts:12
      • characterId: number
        +
      • Defined in src/types/indexer/note.ts:8
      • contractAddress: null | `0x${string}`
        +
      • Defined in src/types/indexer/note.ts:29
      • createdAt: string
        +
      • Defined in src/types/indexer/note.ts:34
      • deleted: boolean
        +
      • Defined in src/types/indexer/note.ts:27
      • deletedAt: null | string
        +
      • Defined in src/types/indexer/note.ts:37
      • linkItemType: null | keyof LinkItemMap
        +
      • Defined in src/types/indexer/note.ts:10
      • linkKey: string
        +
      • Defined in src/types/indexer/note.ts:11
      • locked: boolean
        +
      • Defined in src/types/indexer/note.ts:28
      • logIndex: number
        +
      • Defined in src/types/indexer/note.ts:40
      • metadata?: null | MetadataEntity<"NOTE">
        +
      • Defined in src/types/indexer/note.ts:31
      • noteId: number
        +
      • Defined in src/types/indexer/note.ts:9
      • operator: `0x${string}`
        +
      • Defined in src/types/indexer/note.ts:32
      • owner: `0x${string}`
        +
      • Defined in src/types/indexer/note.ts:33
      • publishedAt: string
        +
      • Defined in src/types/indexer/note.ts:35
      • toAddress: null | `0x${string}`
        +
      • Defined in src/types/indexer/note.ts:15
      • toCharacter?: null | CharacterEntity
        +
      • Defined in src/types/indexer/note.ts:14
      • toCharacterId: null | number
        +
      • Defined in src/types/indexer/note.ts:13
      • toContractAddress: null | `0x${string}`
        +
      • Defined in src/types/indexer/note.ts:22
      • toHeadCharacter?: null | CharacterEntity
        +
      • Defined in src/types/indexer/note.ts:19
      • toHeadCharacterId: null | number
        +
      • Defined in src/types/indexer/note.ts:18
      • toHeadNote?: null | NoteEntity
        +
      • Defined in src/types/indexer/note.ts:21
      • toHeadNoteId: null | number
        +
      • Defined in src/types/indexer/note.ts:20
      • toLinklist?: null | LinklistEntity
        +
      • Defined in src/types/indexer/note.ts:25
      • toLinklistId: null | number
        +
      • Defined in src/types/indexer/note.ts:24
      • toNote?: null | NoteEntity
        +
      • Defined in src/types/indexer/note.ts:17
      • toNoteId: null | number
        +
      • Defined in src/types/indexer/note.ts:16
      • toTokenId: null | number
        +
      • Defined in src/types/indexer/note.ts:23
      • toUri: null | string
        +
      • Defined in src/types/indexer/note.ts:26
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/note.ts:38
      • updatedAt: string
        +
      • Defined in src/types/indexer/note.ts:36
      • updatedBlockNumber: number
        +
      • Defined in src/types/indexer/note.ts:42
      • updatedLogIndex: number
        +
      • Defined in src/types/indexer/note.ts:43
      • updatedTransactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/note.ts:41
      • uri: null | string
        +
      • Defined in src/types/indexer/note.ts:30
      • @@ -24,7 +24,7 @@

        Hierarchy

        • NoteMetadata
        +
      • Defined in src/types/metadata/note.ts:48
      • @@ -53,7 +53,7 @@
        +
      • Defined in src/types/metadata/note.ts:73
      • attributes?: {
            display_type?: "string" | "number" | "boolean" | "date";
            trait_type?: string;
            value: null | string | number | boolean;
        }[]
        @@ -74,7 +74,7 @@

        Example

        [{ 
        +
      • Defined in src/types/metadata/base.ts:14
      • content?: string
        @@ -85,7 +85,7 @@

        Example

        '# Hello W
         
        +
      • Defined in src/types/metadata/note.ts:68
      • content_warning?: "nsfw" | "sensitive" | "spoiler"
        @@ -96,7 +96,7 @@

        Example

        'nsfw'
         
        +
      • Defined in src/types/metadata/note.ts:116
      • date_published?: string
        @@ -112,7 +112,7 @@

        Example

        '2022-01-0
         
        +
      • Defined in src/types/metadata/note.ts:108
      • external_urls?: string[]
        @@ -123,7 +123,7 @@

        Example

        [
        +
      • Defined in src/types/metadata/note.ts:94
      • sources?: string[]
        @@ -135,7 +135,7 @@

        Example

        [
        +
      • Defined in src/types/metadata/note.ts:86
      • tags?: string[]
        @@ -146,7 +146,7 @@

        Example

        [
        +
      • Defined in src/types/metadata/note.ts:55
      • title?: string
        @@ -154,13 +154,13 @@
        +
      • Defined in src/types/metadata/note.ts:60
      • type?: "character" | "note" | "linklist"
        +
      • Defined in src/types/metadata/base.ts:4
      • variant?: "achievement"
        @@ -175,7 +175,7 @@

        Example

        'achieveme
         
        +
      • Defined in src/types/metadata/note.ts:127
      • @@ -26,7 +26,7 @@

        Hierarchy

        • NoteMetadataAttachmentBase
        +
      • Defined in src/types/metadata/note.ts:3
      • @@ -52,7 +52,7 @@
        +
      • Defined in src/types/metadata/note.ts:14
      • alt?: string
        @@ -61,7 +61,7 @@
        +
      • Defined in src/types/metadata/note.ts:35
      • content?: ContentType extends "content"
            ? string
            : never
        @@ -69,7 +69,7 @@
        +
      • Defined in src/types/metadata/note.ts:19
      • height?: number
        @@ -77,7 +77,7 @@
        +
      • Defined in src/types/metadata/note.ts:45
      • mime_type?: string
        @@ -85,7 +85,7 @@
        +
      • Defined in src/types/metadata/note.ts:24
      • name?: string
        @@ -93,7 +93,7 @@
        +
      • Defined in src/types/metadata/note.ts:9
      • size_in_bytes?: number
        @@ -101,7 +101,7 @@
        +
      • Defined in src/types/metadata/note.ts:29
      • width?: number
        @@ -109,7 +109,7 @@
        +
      • Defined in src/types/metadata/note.ts:40
      • @@ -21,7 +21,7 @@

        Hierarchy

        • NoteOperatorEntity
        +
      • Defined in src/types/indexer/operator.ts:55
      • @@ -48,62 +48,62 @@

        Properties

        allowlist: `0x${string}`[]
        +
      • Defined in src/types/indexer/operator.ts:58
      • blockNumber: number
        +
      • Defined in src/types/indexer/operator.ts:63
      • blocklist: `0x${string}`[]
        +
      • Defined in src/types/indexer/operator.ts:59
      • characterId: number
        +
      • Defined in src/types/indexer/operator.ts:56
      • createdAt: Date
        +
      • Defined in src/types/indexer/operator.ts:60
      • logIndex: number
        +
      • Defined in src/types/indexer/operator.ts:64
      • noteId: number
        +
      • Defined in src/types/indexer/operator.ts:57
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/operator.ts:62
      • updatedAt: Date
        +
      • Defined in src/types/indexer/operator.ts:61
      • updatedBlockNumber: number
        +
      • Defined in src/types/indexer/operator.ts:66
      • updatedLogIndex: number
        +
      • Defined in src/types/indexer/operator.ts:67
      • updatedTransactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/operator.ts:65
      • @@ -21,7 +21,7 @@

        Hierarchy

        • NoteStatEntity
        +
      • Defined in src/types/indexer/stat.ts:9
      • @@ -41,27 +41,27 @@

        Properties

        characterId: number
        +
      • Defined in src/types/indexer/stat.ts:10
      • noteId: number
        +
      • Defined in src/types/indexer/stat.ts:11
      • viewCount: number
        +
      • Defined in src/types/indexer/stat.ts:12
      • viewDetailCount: number
        +
      • Defined in src/types/indexer/stat.ts:14
      • viewInListCount: number
        +
      • Defined in src/types/indexer/stat.ts:13
      • @@ -21,7 +21,7 @@

        Hierarchy

        • NotificationEntity
        +
      • Defined in src/types/indexer/notification.ts:18
      • @@ -45,47 +45,47 @@

        Properties

        blockNumber: number
        +
      • Defined in src/types/indexer/notification.ts:23
      • character?: CharacterEntity
        +
      • Defined in src/types/indexer/notification.ts:20
      • characterId: number
        +
      • Defined in src/types/indexer/notification.ts:19
      • createdAt: Date
        +
      • Defined in src/types/indexer/notification.ts:26
      • feed?: FeedEntity
        +
      • Defined in src/types/indexer/notification.ts:25
      • isRead?: boolean
        +
      • Defined in src/types/indexer/notification.ts:27
      • logIndex: number
        +
      • Defined in src/types/indexer/notification.ts:24
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/notification.ts:22
      • type: "OPERATOR_ADDED" | "OPERATOR_REMOVED" | "LINKED" | "UNLINKED" | "NOTE_MINTED" | "NOTE_POSTED" | "MENTIONED" | "TIPPED"
        +
      • Defined in src/types/indexer/notification.ts:21
      • @@ -21,7 +21,7 @@

        Hierarchy

        • PostNoteOptions
        +
      • Defined in src/types/contract/note.ts:44
      • @@ -44,7 +44,7 @@
        +
      • Defined in src/types/contract/note.ts:52
      • @@ -52,7 +52,7 @@
        +
      • Defined in src/types/contract/note.ts:50
      • locked?: boolean
        @@ -60,7 +60,7 @@
        +
      • Defined in src/types/contract/note.ts:46
      • metadataOrUri: string | NoteMetadata
        @@ -68,7 +68,7 @@
        +
      • Defined in src/types/contract/note.ts:54
      • @@ -76,7 +76,7 @@
        +
      • Defined in src/types/contract/note.ts:48
      • @@ -21,7 +21,7 @@

        Hierarchy

        • TipEntity
        +
      • Defined in src/types/indexer/tip.ts:5
      • @@ -48,62 +48,62 @@

        Properties

        amount: string
        +
      • Defined in src/types/indexer/tip.ts:12
      • blockNumber: number
        +
      • Defined in src/types/indexer/tip.ts:16
      • character?: CharacterEntity
        +
      • Defined in src/types/indexer/tip.ts:7
      • characterId: number
        +
      • Defined in src/types/indexer/tip.ts:6
      • createdAt: Date
        +
      • Defined in src/types/indexer/tip.ts:14
      • logIndex: number
        +
      • Defined in src/types/indexer/tip.ts:17
      • toCharacter?: CharacterEntity
        +
      • Defined in src/types/indexer/tip.ts:9
      • toCharacterId: number
        +
      • Defined in src/types/indexer/tip.ts:8
      • toNote?: null | NoteEntity
        +
      • Defined in src/types/indexer/tip.ts:11
      • toNoteId: null | number
        +
      • Defined in src/types/indexer/tip.ts:10
      • tokenAddress: `0x${string}`
        +
      • Defined in src/types/indexer/tip.ts:13
      • transactionHash: `0x${string}`
        +
      • Defined in src/types/indexer/tip.ts:15
      • @@ -22,7 +22,7 @@

        Hierarchy

        • AccountOptions
        +
      • Defined in src/contract/subcontracts/base.ts:25
      • @@ -38,7 +38,7 @@

        Properties

        account: `0x${string}` | Account
        +
      • Defined in src/contract/subcontracts/base.ts:26
      • @@ -22,7 +22,7 @@

        Hierarchy

        • AddressOptions
        +
      • Defined in src/contract/subcontracts/base.ts:28
      • @@ -44,37 +44,37 @@

        Properties

        cbtContract: `0x${string}`
        +
      • Defined in src/contract/subcontracts/base.ts:31
      • entryContract: `0x${string}`
        +
      • Defined in src/contract/subcontracts/base.ts:29
      • linklistContract: `0x${string}`
        +
      • Defined in src/contract/subcontracts/base.ts:35
      • miraContract: `0x${string}`
        +
      • Defined in src/contract/subcontracts/base.ts:34
      • newbieVillaContract: `0x${string}`
        +
      • Defined in src/contract/subcontracts/base.ts:32
      • peripheryContract: `0x${string}`
        +
      • Defined in src/contract/subcontracts/base.ts:30
      • tipsContract: `0x${string}`
        +
      • Defined in src/contract/subcontracts/base.ts:33
      • @@ -24,7 +24,7 @@

        Hierarchy

        • ContractOptions
        +
      • Defined in src/contract/subcontracts/base.ts:37
      • @@ -43,12 +43,12 @@
        +
      • Defined in src/contract/subcontracts/base.ts:26
      • address?: Partial<AddressOptions>
        +
      • Defined in src/contract/subcontracts/base.ts:38
      • gasPrice?: bigint | "estimate"
        @@ -60,7 +60,7 @@

        Default

        10
        +
      • Defined in src/contract/subcontracts/base.ts:47
      • @@ -21,7 +21,7 @@

        Hierarchy

        • IpfsResponse
        +
      • Defined in src/ipfs.ts:18
      • @@ -40,12 +40,12 @@

        Properties

        cid: string
        +
      • Defined in src/ipfs.ts:20
      • status: "error" | "ok"
        +
      • Defined in src/ipfs.ts:19
      • url: string
        @@ -53,7 +53,7 @@
        +
      • Defined in src/ipfs.ts:22
      • web2url: string
        @@ -61,7 +61,7 @@
        +
      • Defined in src/ipfs.ts:24
      • @@ -17,7 +17,7 @@
      • Abi
      • Namespace Abi

        +
      • Defined in src/contract/abi/index.ts:1
      • Index

        @@ -54,7 +54,7 @@

        Member Visibility

        Theme

        @@ -17,7 +17,7 @@
      • contracts
      • Namespace contracts

        +
      • Defined in src/contract/subcontracts/index.ts:1
      • Index

        @@ -58,7 +58,7 @@

        Member Visibility

        Theme

        @@ -16,7 +16,7 @@
      • index
      • Module index

        +
      • Defined in src/index.ts:1
      • @@ -162,7 +162,7 @@

        ContractOptions
      • ResolvedContractOptions
      • @@ -16,7 +16,7 @@
      • ipfs
      • Module ipfs

        +
      • Defined in src/ipfs.ts:1
      • Index

        @@ -47,7 +47,7 @@

        Member Visibility

        Theme

        @@ -16,7 +16,7 @@
      • network
      • Module network

        +
      • Defined in src/network.ts:1
      • Index

        @@ -43,7 +43,7 @@

        Member Visibility

        Theme

        @@ -19,7 +19,7 @@

        Type alias Cbt

        Cbt: typeof cbt
        +
      • Defined in src/contract/abi/cbt.ts:298
      • @@ -19,7 +19,7 @@

        Type alias Entry

        Entry: typeof entry
        +
      • Defined in src/contract/abi/entry.ts:1420
      • @@ -19,7 +19,7 @@

        Type alias Linklist

        Linklist: typeof linklist
        +
      • Defined in src/contract/abi/linklist.ts:610
      • @@ -19,7 +19,7 @@

        Type alias Mira

        Mira: typeof mira
        +
      • Defined in src/contract/abi/mira.ts:362
      • @@ -19,7 +19,7 @@

        Type alias NewbieVilla

        NewbieVilla: typeof newbieVilla
        +
      • Defined in src/contract/abi/newbie-villa.ts:247
      • @@ -19,7 +19,7 @@

        Type alias Periphery

        Periphery: typeof periphery
        +
      • Defined in src/contract/abi/periphery.ts:235
      • @@ -19,7 +19,7 @@

        Type alias Tips

        Tips: typeof tips
        +
      • Defined in src/contract/abi/tips.ts:82
      • @@ -18,7 +18,7 @@

        Type alias AchievementStatusKey

        AchievementStatusKey: keyof typeof AchievementStatus
        +
      • Defined in src/types/indexer/achievement.ts:22
      • @@ -18,7 +18,7 @@

        Type alias CharacterPermissionKey

        CharacterPermissionKey: keyof typeof CharacterOperatorPermission
        +
      • Defined in src/types/indexer/operator.ts:39
      • @@ -18,7 +18,7 @@

        Type alias FeedTypeKey

        FeedTypeKey: keyof typeof FeedType
        +
      • Defined in src/types/indexer/feed.ts:47
      • @@ -30,7 +30,7 @@

        Type declaration

      • args: GetEventArgs<TAbi, TName>
      • +
      • Defined in src/utils/viem.ts:120
      • @@ -18,7 +18,7 @@

        Type alias LinkItem

        +
      • Defined in src/types/contract/link.ts:19
      • @@ -18,7 +18,7 @@

        Type alias LinkItemType

        LinkItemType: keyof LinkItemMap
        +
      • Defined in src/types/contract/link.ts:18
      • @@ -18,7 +18,7 @@

        Type alias LinkModuleTargetItemType

        LinkModuleTargetItemType: "Address" | "Character" | "ERC721" | "Linklist" | "Note"
        +
      • Defined in src/types/indexer/link_module.ts:6
      • @@ -23,7 +23,7 @@

        Type Parameters

      • T

      • +
      • Defined in src/types/utils.ts:1
      • @@ -18,7 +18,7 @@

        Type alias Metadata

        +
      • Defined in src/types/metadata/index.ts:4
      • @@ -18,7 +18,7 @@

        Type alias MetadataType

        MetadataType: "CHARACTER" | "NOTE" | "LINKLIST"
        +
      • Defined in src/types/indexer/metadata.ts:3
      • @@ -18,7 +18,7 @@

        Type alias MintModuleTargetItemType

        MintModuleTargetItemType: "Note"
        +
      • Defined in src/types/indexer/mint_module.ts:5
      • @@ -18,7 +18,7 @@

        Type alias NotificationTypeKey

        NotificationTypeKey: keyof typeof NotificationType
        +
      • Defined in src/types/indexer/notification.ts:16
      • @@ -18,7 +18,7 @@

        Type alias Numberish

        Numberish: bigint | number | string
        +
      • Defined in src/types/utils.ts:3
      • @@ -25,7 +25,7 @@

        T

      • U

      • +
      • Defined in src/types/utils.ts:2
      • @@ -16,7 +16,7 @@
      • index
      • ReadOverrides
      • Type alias ReadOverrides<TAbi, TFunctionName>

        -
        ReadOverrides<TAbi, TFunctionName>: Omit<ReadContractParameters<TAbi, TFunctionName>, "abi" | "address" | "args" | "functionName">
        +
        ReadOverrides<TAbi, TFunctionName>: UnionOmit<ReadContractParameters<TAbi, TFunctionName>, "abi" | "address" | "args" | "functionName">

        Type Parameters

          @@ -25,7 +25,7 @@

          TAbiTFunctionName extends ExtractAbiFunctionNames<TAbi, "pure" | "view">

        +
      • Defined in src/types/contract/base.ts:25
      • @@ -33,7 +33,7 @@

        Type declaration

        data: T
        +
      • Defined in src/types/contract/base.ts:13
      • @@ -26,7 +26,7 @@

        Type alias ValidateHandleError

        +
      • Defined in src/utils/validate-handle.ts:10
      • @@ -16,7 +16,7 @@
      • index
      • WriteOverrides
      • Type alias WriteOverrides<TAbi, TFunctionName>

        -
        WriteOverrides<TAbi, TFunctionName>: Omit<WriteContractParameters<TAbi, TFunctionName, Chain, Account>, "abi" | "address" | "args" | "functionName">
        +
        WriteOverrides<TAbi, TFunctionName>: UnionOmit<WriteContractParameters<TAbi, TFunctionName, Chain, Account>, "abi" | "address" | "args" | "functionName">

        Type Parameters

          @@ -25,7 +25,7 @@

          TAbiTFunctionName extends ExtractAbiFunctionNames<TAbi, "nonpayable" | "payable">

        +
      • Defined in src/types/contract/base.ts:32
      • @@ -24,7 +24,7 @@

        Type declaration

      • address: AddressOptions
      • +
      • Defined in src/contract/subcontracts/base.ts:50
      • @@ -19,7 +19,7 @@

        Variable cbtConst

        cbt: readonly [{
            inputs: readonly [{
                name: "web3Entry";
                type: "address";
            }];
            stateMutability: "nonpayable";
            type: "constructor";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }];
            name: "Burn";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenNumber";
                type: "uint256";
            }];
            name: "Mint";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "previousAdminRole";
                type: "bytes32";
            }, {
                indexed: true;
                name: "newAdminRole";
                type: "bytes32";
            }];
            name: "RoleAdminChanged";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleGranted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleRevoked";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "ids";
                type: "uint256[]";
            }, {
                indexed: false;
                name: "values";
                type: "uint256[]";
            }];
            name: "TransferBatch";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "id";
                type: "uint256";
            }, {
                indexed: false;
                name: "value";
                type: "uint256";
            }];
            name: "TransferSingle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "value";
                type: "string";
            }, {
                indexed: true;
                name: "id";
                type: "uint256";
            }];
            name: "URI";
            type: "event";
        }, {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "MINTER_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "_web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "balance";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "accounts";
                type: "address[]";
            }, {
                name: "tokenIds";
                type: "uint256[]";
            }];
            name: "balanceOfBatch";
            outputs: readonly [{
                name: "";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleAdmin";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "getRoleMember";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleMemberCount";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "hasRole";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "mint";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "";
                type: "uint256[]";
            }, {
                name: "";
                type: "uint256[]";
            }, {
                name: "";
                type: "bytes";
            }];
            name: "safeBatchTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "";
                type: "uint256";
            }, {
                name: "";
                type: "uint256";
            }, {
                name: "";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "tokenURI";
                type: "string";
            }];
            name: "setTokenURI";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "uri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }] = ...
        +
      • Defined in src/contract/abi/cbt.ts:1
      • @@ -19,7 +19,7 @@

        Variable entryConst

        entry: readonly [{
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "ErrCharacterNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleContainsInvalidCharacters";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrHandleLengthInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotAddressOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermission";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNotEnoughPermissionForThisNote";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteIsDeleted";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteLocked";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrNoteNotExists";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureExpired";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSignatureInvalid";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrSocialTokenExists";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "to";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "createThenLinkCharacter";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "deleteNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacter";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "handle";
                type: "string";
            }];
            name: "getCharacterByHandle";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "noteCount";
                    type: "uint256";
                }, {
                    name: "socialToken";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getCharacterUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getDomainSeparator";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getHandle";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getLinkModule4Address";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenAddress";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4ERC721";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkModule4Linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getLinklistContract";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinklistId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkListId";
                type: "uint256";
            }];
            name: "getLinklistType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinklistUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getNote";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "getOperatorPermissions";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "getOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "getOperators4Note";
            outputs: readonly [{
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "getPrimaryCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getRevision";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "grantOperatorPermissions";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }, {
                name: "permissionBitMap";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "v";
                    type: "uint8";
                }, {
                    name: "r";
                    type: "bytes32";
                }, {
                    name: "s";
                    type: "bytes32";
                }, {
                    name: "deadline";
                    type: "uint256";
                }];
                name: "sig";
                type: "tuple";
            }];
            name: "grantOperatorPermissionsWithSig";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "blocklist";
                type: "address[]";
            }, {
                name: "allowlist";
                type: "address[]";
            }];
            name: "grantOperators4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "linklist_";
                type: "address";
            }, {
                name: "mintNFTImpl_";
                type: "address";
            }, {
                name: "periphery_";
                type: "address";
            }, {
                name: "newbieVilla_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isOperatorAllowedForNote";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "isPrimaryCharacter";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }, {
                    name: "data";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }];
            name: "lockNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "to";
                    type: "address";
                }, {
                    name: "mintModuleData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "mintNote";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "data";
                type: "bytes[]";
            }];
            name: "multicall";
            outputs: readonly [{
                name: "results";
                type: "bytes[]";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }];
            name: "nonces";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "postNote";
            outputs: readonly [{
                name: "noteId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "postNote4Address";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "postNote4AnyUri";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "postNote4Character";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "erc721";
                type: "tuple";
            }];
            name: "postNote4ERC721";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                name: "toLinklistId";
                type: "uint256";
            }];
            name: "postNote4Linklist";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "vars";
                type: "tuple";
            }, {
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "note";
                type: "tuple";
            }];
            name: "postNote4Note";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "resolver";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setCharacterUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "newHandle";
                type: "string";
            }];
            name: "setHandle";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Address";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "linklistId";
                    type: "uint256";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "linkModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setLinkModule4Linklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }, {
                name: "uri";
                type: "string";
            }];
            name: "setLinklistUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintModuleInitData";
                    type: "bytes";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "setMintModule4Note";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "noteId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setNoteUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "setPrimaryCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }];
            name: "setSocialToken";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "ethAddress";
                    type: "address";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toUri";
                    type: "string";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "tokenId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toLinkListId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkLinklist";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "toNoteId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "unlinkNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "AttachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "name";
                type: "string";
            }, {
                indexed: false;
                name: "symbol";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "BaseInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "creator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "handle";
                type: "string";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "CharacterCreated";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "DeleteNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }];
            name: "DetachLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "permissionBitMap";
                type: "uint256";
            }];
            name: "GrantOperatorPermissions";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "blocklist";
                type: "address[]";
            }, {
                indexed: false;
                name: "allowlist";
                type: "address[]";
            }];
            name: "GrantOperators4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "LinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "LinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "LinklistNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }];
            name: "LockNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "MintNFTInitialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: false;
                name: "tokenId";
                type: "uint256";
            }];
            name: "MintNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkKey";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linkItemType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }];
            name: "PostNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "approvedAddresses";
                type: "address[]";
            }];
            name: "SetApprovedMintAmount4Addresses";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetCharacterUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newHandle";
                type: "string";
            }];
            name: "SetHandle";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Address";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Character";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4ERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Linklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkModule";
                type: "address";
            }, {
                indexed: false;
                name: "linkModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetLinkModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: true;
                name: "mintModule";
                type: "address";
            }, {
                indexed: false;
                name: "mintModuleInitData";
                type: "bytes";
            }, {
                indexed: false;
                name: "returnData";
                type: "bytes";
            }];
            name: "SetMintModule4Note";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "noteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "newUri";
                type: "string";
            }];
            name: "SetNoteUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "oldCharacterId";
                type: "uint256";
            }];
            name: "SetPrimaryCharacterId";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }];
            name: "SetSocialToken";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "ethAddress";
                type: "address";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAddress";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "toUri";
                type: "string";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkAnyUri";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "clFromCharactereId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clToCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "clLinkType";
                type: "bytes32";
            }];
            name: "UnlinkCharacterLink";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenAddress";
                type: "address";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkERC721";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toLinklistId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: true;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkLinklist";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "linkType";
                type: "bytes32";
            }, {
                indexed: false;
                name: "linklistId";
                type: "uint256";
            }];
            name: "UnlinkNote";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "timestamp";
                type: "uint256";
            }];
            name: "Web3EntryInitialized";
            type: "event";
        }] = ...
        +
      • Defined in src/contract/abi/entry.ts:1
      • @@ -19,7 +19,7 @@

        Variable linklistConst

        linklist: readonly [{
            inputs: readonly [];
            name: "ErrCallerNotWeb3Entry";
            type: "error";
        }, {
            inputs: readonly [];
            name: "ErrCallerNotWeb3EntryOrNotOwner";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "approved";
                type: "address";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: false;
                name: "approved";
                type: "bool";
            }];
            name: "ApprovalForAll";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "tokenId";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "Uri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "Web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "addLinkingAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "toUri";
                type: "string";
            }];
            name: "addLinkingAnyUri";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "addLinkingCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "linkData";
                type: "tuple";
            }];
            name: "addLinkingCharacterLink";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }, {
                name: "erc721TokenId";
                type: "uint256";
            }];
            name: "addLinkingERC721";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "linklistId";
                type: "uint256";
            }];
            name: "addLinkingLinklistId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "toNoteId";
                type: "uint256";
            }];
            name: "addLinkingNote";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "balance";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "characterOwnerOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getApproved";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getCurrentTakeOver";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkType";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingAddressListLength";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingAddresses";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingAnyListLength";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAnyUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingAnyUriKeys";
            outputs: readonly [{
                name: "";
                type: "bytes32[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingAnyUris";
            outputs: readonly [{
                name: "results";
                type: "string[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingCharacterIds";
            outputs: readonly [{
                name: "";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingCharacterLink";
            outputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingCharacterLinkListLength";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingCharacterLinks";
            outputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingCharacterListLength";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingERC721";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingERC721ListLength";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingERC721s";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingLinklistIds";
            outputs: readonly [{
                name: "";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingLinklistLength";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingNote";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingNoteListLength";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getLinkingNotes";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "getOwnerCharacterId";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "web3Entry_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "operator";
                type: "address";
            }];
            name: "isApprovedForAll";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "mint";
            outputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "ownerOf";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "ethAddress";
                type: "address";
            }];
            name: "removeLinkingAddress";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "toUri";
                type: "string";
            }];
            name: "removeLinkingAnyUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }];
            name: "removeLinkingCharacterId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterId";
                    type: "uint256";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "linkData";
                type: "tuple";
            }];
            name: "removeLinkingCharacterLink";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "tokenAddress";
                type: "address";
            }, {
                name: "erc721TokenId";
                type: "uint256";
            }];
            name: "removeLinkingERC721";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "linklistId";
                type: "uint256";
            }];
            name: "removeLinkingLinklistId";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "toNoteId";
                type: "uint256";
            }];
            name: "removeLinkingNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "_data";
                type: "bytes";
            }];
            name: "safeTransferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "approved";
                type: "bool";
            }];
            name: "setApprovalForAll";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }, {
                name: "newUri";
                type: "string";
            }];
            name: "setUri";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "index";
                type: "uint256";
            }];
            name: "tokenByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "owner";
                type: "address";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "tokenOfOwnerByIndex";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenId";
                type: "uint256";
            }];
            name: "tokenURI";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }] = ...
        +
      • Defined in src/contract/abi/linklist.ts:1
      • @@ -19,7 +19,7 @@

        Variable miraConst

        mira: readonly [{
            inputs: readonly [{
                name: "name_";
                type: "string";
            }, {
                name: "symbol_";
                type: "string";
            }, {
                name: "admin";
                type: "address";
            }];
            stateMutability: "nonpayable";
            type: "constructor";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "owner";
                type: "address";
            }, {
                indexed: true;
                name: "spender";
                type: "address";
            }, {
                indexed: false;
                name: "value";
                type: "uint256";
            }];
            name: "Approval";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "tokenHolder";
                type: "address";
            }];
            name: "AuthorizedOperator";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }, {
                indexed: false;
                name: "operatorData";
                type: "bytes";
            }];
            name: "Burned";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }, {
                indexed: false;
                name: "operatorData";
                type: "bytes";
            }];
            name: "Minted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "tokenHolder";
                type: "address";
            }];
            name: "RevokedOperator";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "previousAdminRole";
                type: "bytes32";
            }, {
                indexed: true;
                name: "newAdminRole";
                type: "bytes32";
            }];
            name: "RoleAdminChanged";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleGranted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleRevoked";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "operator";
                type: "address";
            }, {
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }, {
                indexed: false;
                name: "data";
                type: "bytes";
            }, {
                indexed: false;
                name: "operatorData";
                type: "bytes";
            }];
            name: "Sent";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "from";
                type: "address";
            }, {
                indexed: true;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "value";
                type: "uint256";
            }];
            name: "Transfer";
            type: "event";
        }, {
            inputs: readonly [];
            name: "BLOCK_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "holder";
                type: "address";
            }, {
                name: "spender";
                type: "address";
            }];
            name: "allowance";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "spender";
                type: "address";
            }, {
                name: "value";
                type: "uint256";
            }];
            name: "approve";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }];
            name: "authorizeOperator";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "tokenHolder";
                type: "address";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "amount";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }];
            name: "burn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "decimals";
            outputs: readonly [{
                name: "";
                type: "uint8";
            }];
            stateMutability: "pure";
            type: "function";
        }, {
            inputs: readonly [];
            name: "defaultOperators";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleAdmin";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "getRoleMember";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleMemberCount";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "granularity";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "hasRole";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "tokenHolder";
                type: "address";
            }];
            name: "isOperatorFor";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "mint";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "name";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "account";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }, {
                name: "operatorData";
                type: "bytes";
            }];
            name: "operatorBurn";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "sender";
                type: "address";
            }, {
                name: "recipient";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }, {
                name: "operatorData";
                type: "bytes";
            }];
            name: "operatorSend";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }];
            name: "revokeOperator";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "recipient";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }];
            name: "send";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "symbol";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "totalSupply";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "recipient";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "transfer";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "holder";
                type: "address";
            }, {
                name: "recipient";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "transferFrom";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }] = ...
        +
      • Defined in src/contract/abi/mira.ts:1
      • @@ -19,7 +19,7 @@

        Variable newbieVillaConst

        newbieVilla: readonly [{
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "previousAdminRole";
                type: "bytes32";
            }, {
                indexed: true;
                name: "newAdminRole";
                type: "bytes32";
            }];
            name: "RoleAdminChanged";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleGranted";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "role";
                type: "bytes32";
            }, {
                indexed: true;
                name: "account";
                type: "address";
            }, {
                indexed: true;
                name: "sender";
                type: "address";
            }];
            name: "RoleRevoked";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "to";
                type: "address";
            }, {
                indexed: false;
                name: "characterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "token";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }];
            name: "Withdraw";
            type: "event";
        }, {
            inputs: readonly [];
            name: "ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "DEFAULT_ADMIN_ROLE";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "ERC1820_REGISTRY";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "TOKENS_RECIPIENT_INTERFACE_HASH";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            name: "balanceOf";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleAdmin";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "index";
                type: "uint256";
            }];
            name: "getRoleMember";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }];
            name: "getRoleMemberCount";
            outputs: readonly [{
                name: "";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getToken";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "grantRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "hasRole";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "web3Entry_";
                type: "address";
            }, {
                name: "xsyncOperator_";
                type: "address";
            }, {
                name: "token_";
                type: "address";
            }, {
                name: "admin_";
                type: "address";
            }, {
                name: "tips_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "operator";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "tokenId";
                type: "uint256";
            }, {
                name: "data";
                type: "bytes";
            }];
            name: "onERC721Received";
            outputs: readonly [{
                name: "";
                type: "bytes4";
            }];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "renounceRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "role";
                type: "bytes32";
            }, {
                name: "account";
                type: "address";
            }];
            name: "revokeRole";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "interfaceId";
                type: "bytes4";
            }];
            name: "supportsInterface";
            outputs: readonly [{
                name: "";
                type: "bool";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "tipCharacter";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "toCharacterId";
                type: "uint256";
            }, {
                name: "toNoteId";
                type: "uint256";
            }, {
                name: "amount";
                type: "uint256";
            }];
            name: "tipCharacterForNote";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "userData";
                type: "bytes";
            }, {
                name: "operatorData";
                type: "bytes";
            }];
            name: "tokensReceived";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "to";
                type: "address";
            }, {
                name: "characterId";
                type: "uint256";
            }, {
                name: "nonce";
                type: "uint256";
            }, {
                name: "expires";
                type: "uint256";
            }, {
                name: "proof";
                type: "bytes";
            }];
            name: "withdraw";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "xsyncOperator";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }] = ...
        +
      • Defined in src/contract/abi/newbie-villa.ts:1
      • @@ -19,7 +19,7 @@

        Variable peripheryConst

        periphery: readonly [{
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAddress";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAddresses";
            outputs: readonly [{
                name: "";
                type: "address[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingAnyUri";
            outputs: readonly [{
                name: "";
                type: "string";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingAnyUris";
            outputs: readonly [{
                name: "results";
                type: "string[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingCharacterId";
            outputs: readonly [{
                name: "characterId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingCharacterIds";
            outputs: readonly [{
                name: "results";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingERC721";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingERC721s";
            outputs: readonly [{
                components: readonly [{
                    name: "tokenAddress";
                    type: "address";
                }, {
                    name: "erc721TokenId";
                    type: "uint256";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingLinklistId";
            outputs: readonly [{
                name: "linklistId";
                type: "uint256";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingLinklistIds";
            outputs: readonly [{
                name: "linklistIds";
                type: "uint256[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "linkKey";
                type: "bytes32";
            }];
            name: "getLinkingNote";
            outputs: readonly [{
                components: readonly [{
                    name: "characterId";
                    type: "uint256";
                }, {
                    name: "noteId";
                    type: "uint256";
                }];
                name: "";
                type: "tuple";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "fromCharacterId";
                type: "uint256";
            }, {
                name: "linkType";
                type: "bytes32";
            }];
            name: "getLinkingNotes";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "characterId";
                type: "uint256";
            }, {
                name: "offset";
                type: "uint256";
            }, {
                name: "limit";
                type: "uint256";
            }];
            name: "getNotesByCharacterId";
            outputs: readonly [{
                components: readonly [{
                    name: "linkItemType";
                    type: "bytes32";
                }, {
                    name: "linkKey";
                    type: "bytes32";
                }, {
                    name: "contentUri";
                    type: "string";
                }, {
                    name: "linkModule";
                    type: "address";
                }, {
                    name: "mintModule";
                    type: "address";
                }, {
                    name: "mintNFT";
                    type: "address";
                }, {
                    name: "deleted";
                    type: "bool";
                }, {
                    name: "locked";
                    type: "bool";
                }];
                name: "results";
                type: "tuple[]";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "_web3Entry";
                type: "address";
            }, {
                name: "_linklist";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "fromCharacterId";
                    type: "uint256";
                }, {
                    name: "toCharacterIds";
                    type: "uint256[]";
                }, {
                    name: "data";
                    type: "bytes[]";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "linkCharactersInBatch";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "linklist";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                components: readonly [{
                    name: "account";
                    type: "address";
                }, {
                    name: "handle";
                    type: "string";
                }, {
                    name: "uri";
                    type: "string";
                }, {
                    name: "toAddresses";
                    type: "address[]";
                }, {
                    name: "linkType";
                    type: "bytes32";
                }];
                name: "vars";
                type: "tuple";
            }];
            name: "migrate";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [];
            name: "web3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }] = ...
        +
      • Defined in src/contract/abi/periphery.ts:1
      • @@ -19,7 +19,7 @@

        Variable tipsConst

        tips: readonly [{
            inputs: readonly [];
            name: "ErrCallerNotCharacterOwner";
            type: "error";
        }, {
            inputs: readonly [{
                indexed: false;
                name: "version";
                type: "uint8";
            }];
            name: "Initialized";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: false;
                name: "token";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }];
            name: "TipCharacter";
            type: "event";
        }, {
            inputs: readonly [{
                indexed: true;
                name: "fromCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toCharacterId";
                type: "uint256";
            }, {
                indexed: true;
                name: "toNoteId";
                type: "uint256";
            }, {
                indexed: false;
                name: "token";
                type: "address";
            }, {
                indexed: false;
                name: "amount";
                type: "uint256";
            }];
            name: "TipCharacterForNote";
            type: "event";
        }, {
            inputs: readonly [];
            name: "ERC1820_REGISTRY";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "TOKENS_RECIPIENT_INTERFACE_HASH";
            outputs: readonly [{
                name: "";
                type: "bytes32";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getToken";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [];
            name: "getWeb3Entry";
            outputs: readonly [{
                name: "";
                type: "address";
            }];
            stateMutability: "view";
            type: "function";
        }, {
            inputs: readonly [{
                name: "web3Entry_";
                type: "address";
            }, {
                name: "token_";
                type: "address";
            }];
            name: "initialize";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }, {
            inputs: readonly [{
                name: "";
                type: "address";
            }, {
                name: "from";
                type: "address";
            }, {
                name: "to";
                type: "address";
            }, {
                name: "amount";
                type: "uint256";
            }, {
                name: "userData";
                type: "bytes";
            }, {
                name: "operatorData";
                type: "bytes";
            }];
            name: "tokensReceived";
            outputs: readonly [];
            stateMutability: "nonpayable";
            type: "function";
        }] = ...
        +
      • Defined in src/contract/abi/tips.ts:1
      • @@ -18,7 +18,7 @@

        Variable NIL_ADDRESSConst

        NIL_ADDRESS: Address = '0x0000000000000000000000000000000000000000'
        +
      • Defined in src/utils/address.ts:5
      • @@ -35,7 +35,7 @@
        Readonly
        Readonly TIPS: "0x0058be0845952D887D1668B5545de995E12e8783"
        +
      • Defined in src/network.ts:6