@towns-protocol/generated
Version:
## How to generate contract types
447 lines (446 loc) • 8.82 kB
text/typescript
export default [
{
"type": "function",
"name": "__WalletLink_init",
"inputs": [],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "checkIfLinked",
"inputs": [
{
"name": "rootKey",
"type": "address",
"internalType": "address"
},
{
"name": "wallet",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "bool",
"internalType": "bool"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "getLatestNonceForRootKey",
"inputs": [
{
"name": "rootKey",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "",
"type": "uint256",
"internalType": "uint256"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "getRootKeyForWallet",
"inputs": [
{
"name": "wallet",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "rootKey",
"type": "address",
"internalType": "address"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "getWalletsByRootKey",
"inputs": [
{
"name": "rootKey",
"type": "address",
"internalType": "address"
}
],
"outputs": [
{
"name": "wallets",
"type": "address[]",
"internalType": "address[]"
}
],
"stateMutability": "view"
},
{
"type": "function",
"name": "linkCallerToRootKey",
"inputs": [
{
"name": "rootWallet",
"type": "tuple",
"internalType": "struct IWalletLinkBase.LinkedWallet",
"components": [
{
"name": "addr",
"type": "address",
"internalType": "address"
},
{
"name": "signature",
"type": "bytes",
"internalType": "bytes"
},
{
"name": "message",
"type": "string",
"internalType": "string"
}
]
},
{
"name": "nonce",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "linkWalletToRootKey",
"inputs": [
{
"name": "wallet",
"type": "tuple",
"internalType": "struct IWalletLinkBase.LinkedWallet",
"components": [
{
"name": "addr",
"type": "address",
"internalType": "address"
},
{
"name": "signature",
"type": "bytes",
"internalType": "bytes"
},
{
"name": "message",
"type": "string",
"internalType": "string"
}
]
},
{
"name": "rootWallet",
"type": "tuple",
"internalType": "struct IWalletLinkBase.LinkedWallet",
"components": [
{
"name": "addr",
"type": "address",
"internalType": "address"
},
{
"name": "signature",
"type": "bytes",
"internalType": "bytes"
},
{
"name": "message",
"type": "string",
"internalType": "string"
}
]
},
{
"name": "nonce",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "function",
"name": "removeLink",
"inputs": [
{
"name": "wallet",
"type": "address",
"internalType": "address"
},
{
"name": "rootWallet",
"type": "tuple",
"internalType": "struct IWalletLinkBase.LinkedWallet",
"components": [
{
"name": "addr",
"type": "address",
"internalType": "address"
},
{
"name": "signature",
"type": "bytes",
"internalType": "bytes"
},
{
"name": "message",
"type": "string",
"internalType": "string"
}
]
},
{
"name": "nonce",
"type": "uint256",
"internalType": "uint256"
}
],
"outputs": [],
"stateMutability": "nonpayable"
},
{
"type": "event",
"name": "Initialized",
"inputs": [
{
"name": "version",
"type": "uint32",
"indexed": false,
"internalType": "uint32"
}
],
"anonymous": false
},
{
"type": "event",
"name": "InterfaceAdded",
"inputs": [
{
"name": "interfaceId",
"type": "bytes4",
"indexed": true,
"internalType": "bytes4"
}
],
"anonymous": false
},
{
"type": "event",
"name": "InterfaceRemoved",
"inputs": [
{
"name": "interfaceId",
"type": "bytes4",
"indexed": true,
"internalType": "bytes4"
}
],
"anonymous": false
},
{
"type": "event",
"name": "LinkWalletToRootKey",
"inputs": [
{
"name": "wallet",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "rootKey",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "event",
"name": "RemoveLink",
"inputs": [
{
"name": "wallet",
"type": "address",
"indexed": true,
"internalType": "address"
},
{
"name": "secondWallet",
"type": "address",
"indexed": true,
"internalType": "address"
}
],
"anonymous": false
},
{
"type": "error",
"name": "ECDSAInvalidSignature",
"inputs": []
},
{
"type": "error",
"name": "ECDSAInvalidSignatureLength",
"inputs": [
{
"name": "length",
"type": "uint256",
"internalType": "uint256"
}
]
},
{
"type": "error",
"name": "ECDSAInvalidSignatureS",
"inputs": [
{
"name": "s",
"type": "bytes32",
"internalType": "bytes32"
}
]
},
{
"type": "error",
"name": "Initializable_InInitializingState",
"inputs": []
},
{
"type": "error",
"name": "Initializable_NotInInitializingState",
"inputs": []
},
{
"type": "error",
"name": "Introspection_AlreadySupported",
"inputs": []
},
{
"type": "error",
"name": "Introspection_NotSupported",
"inputs": []
},
{
"type": "error",
"name": "InvalidAccountNonce",
"inputs": [
{
"name": "account",
"type": "address",
"internalType": "address"
},
{
"name": "currentNonce",
"type": "uint256",
"internalType": "uint256"
}
]
},
{
"type": "error",
"name": "WalletLink__CannotLinkToRootWallet",
"inputs": [
{
"name": "wallet",
"type": "address",
"internalType": "address"
},
{
"name": "rootKey",
"type": "address",
"internalType": "address"
}
]
},
{
"type": "error",
"name": "WalletLink__CannotLinkToSelf",
"inputs": []
},
{
"type": "error",
"name": "WalletLink__CannotRemoveRootWallet",
"inputs": []
},
{
"type": "error",
"name": "WalletLink__InvalidAddress",
"inputs": []
},
{
"type": "error",
"name": "WalletLink__InvalidSignature",
"inputs": []
},
{
"type": "error",
"name": "WalletLink__LinkAlreadyExists",
"inputs": [
{
"name": "wallet",
"type": "address",
"internalType": "address"
},
{
"name": "rootKey",
"type": "address",
"internalType": "address"
}
]
},
{
"type": "error",
"name": "WalletLink__LinkedToAnotherRootKey",
"inputs": [
{
"name": "wallet",
"type": "address",
"internalType": "address"
},
{
"name": "rootKey",
"type": "address",
"internalType": "address"
}
]
},
{
"type": "error",
"name": "WalletLink__NotLinked",
"inputs": [
{
"name": "wallet",
"type": "address",
"internalType": "address"
},
{
"name": "rootKey",
"type": "address",
"internalType": "address"
}
]
}
] as const