@bitriel/multisig-wallet
Version:
MultiSignature Wallet
901 lines • 19.3 kB
JSON
{
"compiler": {
"version": "0.8.4+commit.c7e474f2"
},
"language": "Solidity",
"output": {
"abi": [
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "AddedOwner",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "transactionId",
"type": "uint256"
}
],
"name": "ApprovalRevoked",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint8",
"name": "threshold",
"type": "uint8"
}
],
"name": "ChangedThreshold",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "transactionId",
"type": "uint256"
}
],
"name": "ExecutionFailed",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "value",
"type": "uint256"
}
],
"name": "Received",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "RemovedOwner",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"indexed": true,
"internalType": "uint256",
"name": "transactionId",
"type": "uint256"
}
],
"name": "TransactionApproved",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "transactionId",
"type": "uint256"
}
],
"name": "TransactionExecuted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "uint256",
"name": "transactionId",
"type": "uint256"
}
],
"name": "TransactionSubmitted",
"type": "event"
},
{
"inputs": [],
"name": "MAX_OWNER",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
},
{
"internalType": "uint8",
"name": "_threshold",
"type": "uint8"
}
],
"name": "addOwnerWithThreshold",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
},
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"name": "approvals",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_txnId",
"type": "uint256"
}
],
"name": "approve",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint8",
"name": "_threshold",
"type": "uint8"
}
],
"name": "changeThreshold",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "checkOwner",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_txnId",
"type": "uint256"
}
],
"name": "executeTransaction",
"outputs": [
{
"internalType": "bool",
"name": "success",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_txnId",
"type": "uint256"
}
],
"name": "getApprovalCount",
"outputs": [
{
"internalType": "uint8",
"name": "count",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getOwners",
"outputs": [
{
"internalType": "address[]",
"name": "",
"type": "address[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getThreshold",
"outputs": [
{
"internalType": "uint8",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bool",
"name": "_pending",
"type": "bool"
},
{
"internalType": "bool",
"name": "_executed",
"type": "bool"
}
],
"name": "getTransactionCount",
"outputs": [
{
"internalType": "uint256",
"name": "count",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "_owners",
"type": "address[]"
},
{
"internalType": "uint8",
"name": "_required",
"type": "uint8"
}
],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_txnId",
"type": "uint256"
}
],
"name": "isConfirmed",
"outputs": [
{
"internalType": "bool",
"name": "status",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "uint256[]",
"name": "",
"type": "uint256[]"
},
{
"internalType": "uint256[]",
"name": "",
"type": "uint256[]"
},
{
"internalType": "bytes",
"name": "",
"type": "bytes"
}
],
"name": "onERC1155BatchReceived",
"outputs": [
{
"internalType": "bytes4",
"name": "",
"type": "bytes4"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "",
"type": "bytes"
}
],
"name": "onERC1155Received",
"outputs": [
{
"internalType": "bytes4",
"name": "",
"type": "bytes4"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "",
"type": "bytes"
}
],
"name": "onERC721Received",
"outputs": [
{
"internalType": "bytes4",
"name": "",
"type": "bytes4"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "enum Types.Operation",
"name": "operation",
"type": "uint8"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "requiredTxGas",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_txnId",
"type": "uint256"
}
],
"name": "revokeApproval",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "enum Types.Operation",
"name": "operation",
"type": "uint8"
},
{
"internalType": "address",
"name": "target",
"type": "address"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "submitTransaction",
"outputs": [
{
"internalType": "uint256",
"name": "txnId",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "interfaceId",
"type": "bytes4"
}
],
"name": "supportsInterface",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "prevOwner",
"type": "address"
},
{
"internalType": "address",
"name": "oldOwner",
"type": "address"
},
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "swapOwner",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "address",
"name": "",
"type": "address"
},
{
"internalType": "uint256",
"name": "",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "",
"type": "bytes"
},
{
"internalType": "bytes",
"name": "",
"type": "bytes"
}
],
"name": "tokensReceived",
"outputs": [],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [],
"name": "transactionCount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "transactions",
"outputs": [
{
"internalType": "enum Types.Operation",
"name": "operation",
"type": "uint8"
},
{
"internalType": "address",
"name": "target",
"type": "address"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "uint8",
"name": "approval",
"type": "uint8"
},
{
"internalType": "bool",
"name": "executed",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"stateMutability": "payable",
"type": "receive"
}
],
"devdoc": {
"kind": "dev",
"methods": {
"approve(uint256)": {
"details": "Allows an owner to approve a transaction.",
"params": {
"_txnId": "transaction ID."
}
},
"executeTransaction(uint256)": {
"details": "Allows anyone to execute a approved transaction.",
"params": {
"_txnId": "transaction ID."
},
"returns": {
"success": "wether it's success"
}
},
"getApprovalCount(uint256)": {
"details": "Returns number of approvals of a transaction.",
"params": {
"_txnId": "transaction ID."
},
"returns": {
"count": "Number of approvals."
}
},
"getTransactionCount(bool,bool)": {
"details": "Returns total number of transactions which filers are applied.",
"params": {
"_executed": "Include executed transactions.",
"_pending": "Include pending transactions."
},
"returns": {
"count": "Total number of transactions after filters are applied."
}
},
"initialize(address[],uint8)": {
"details": "sets initial owners and required number of confirmations.",
"params": {
"_owners": "List of initial owners.",
"_required": "Number of required confirmations."
}
},
"isConfirmed(uint256)": {
"details": "Returns the confirmation status of a transaction.",
"params": {
"_txnId": "transaction ID."
},
"returns": {
"status": "confirmation status."
}
},
"revokeApproval(uint256)": {
"details": "Allows an owner to revoke a approval for a transaction.",
"params": {
"_txnId": "transaction ID."
}
},
"submitTransaction(uint8,address,uint256,bytes)": {
"details": "Allows an owner to submit and approve a transaction.",
"params": {
"data": "transaction data payload.",
"operation": "external call operation",
"target": "transaction destination address",
"value": "transaction value in Wei."
},
"returns": {
"txnId": "returns transaction ID."
}
},
"supportsInterface(bytes4)": {
"details": "Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas."
}
},
"title": "Multisignature wallet - Allows multiple parties to agree on transactions before execution.",
"version": 1
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
},
"settings": {
"compilationTarget": {
"contracts/MultiSigWallet.sol": "MultiSigWallet"
},
"evmVersion": "istanbul",
"libraries": {},
"metadata": {
"bytecodeHash": "ipfs"
},
"optimizer": {
"enabled": false,
"runs": 200
},
"remappings": []
},
"sources": {
"@openzeppelin/contracts/proxy/utils/Initializable.sol": {
"keccak256": "0x94dd781aa290742d990ccb720b3cab52a3865d1ba004e35c1dc757aa3ee788e0",
"license": "MIT",
"urls": [
"bzz-raw://1d762e5eb6f74a6228a744b0261fb2dda4e2c8a214206ca67a443c06feb16ce2",
"dweb:/ipfs/QmU85d56LUBCQ5j24hVf3WJ2uwjNoyLJr8ZYyDXWKmJGpU"
]
},
"@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol": {
"keccak256": "0xc743d2235b8854045c308d2f8f1ed88efed6c2bebf2b7a4a51ea42480c82e566",
"license": "MIT",
"urls": [
"bzz-raw://05e54e397a053f319187999ef4d65446a7f15f693ddd66dfaed4d856f67dac4e",
"dweb:/ipfs/QmbGTFVdZxShg76UPcuLAXm6HBjZx3Vn6CL1eaBhV9rST1"
]
},
"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol": {
"keccak256": "0xd5fa74b4fb323776fa4a8158800fec9d5ac0fec0d6dd046dd93798632ada265f",
"license": "MIT",
"urls": [
"bzz-raw://33017a30a99cc5411a9e376622c31fc4a55cfc6a335e2f57f00cbf24a817ff3f",
"dweb:/ipfs/QmWNQtWTPhA7Lo8nbxbc8KFMvZwbFYB8fSeEQ3vuapSV4a"
]
},
"@openzeppelin/contracts/token/ERC777/IERC777Recipient.sol": {
"keccak256": "0x1a5d61db2733202ba361e6d6741cd2e662380e22b80e987eacfc91973f2267dc",
"license": "MIT",
"urls": [
"bzz-raw://04c0cd697050a6516b7779aa2343ad2d0e5217d8915ac2382681dfdf4e445be3",
"dweb:/ipfs/QmPCBCZgm7pHBwwogE2F9NCN3UfTdLNhqc8UDEvw8kDzyA"
]
},
"@openzeppelin/contracts/utils/Address.sol": {
"keccak256": "0x51b758a8815ecc9596c66c37d56b1d33883a444631a3f916b9fe65cb863ef7c4",
"license": "MIT",
"urls": [
"bzz-raw://997ca03557985b3c6f9143a18b6c3a710b3bc1c7f189ee956d305a966ecfb922",
"dweb:/ipfs/QmQaD3Wb62F88SHqmpLttvF6wKuPDQep2LLUcKPekeRzvz"
]
},
"@openzeppelin/contracts/utils/introspection/IERC165.sol": {
"keccak256": "0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1",
"license": "MIT",
"urls": [
"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f",
"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"
]
},
"contracts/MultiSigWallet.sol": {
"keccak256": "0xcfaeae969ec09c5be825d701d460bef3b850886874bb0ac47a307f2ebec7535f",
"license": "GPL-3.0",
"urls": [
"bzz-raw://735a870c2e67beeb79499f0bc801dab7602827cb83b3e448fb412f4dad001bdd",
"dweb:/ipfs/QmYZuPoZpMkCiWvnuW73syhRDRk6zmcudEYMuhb98h9HVf"
]
},
"contracts/base/Executor.sol": {
"keccak256": "0xc384ab01550a10f345b7146e7a37190a6150687db1672c22fc6de74df3d26391",
"license": "GPL-3.0",
"urls": [
"bzz-raw://6e64b03590ef916b03e7e81acf3730edf9993c2a096b867307b16802b4dd26b3",
"dweb:/ipfs/QmeET3UEATZ2B2zf2uxyrhMQhNxrUNDDqwWfWF7pxBdPtk"
]
},
"contracts/base/OwnerManager.sol": {
"keccak256": "0x9e02bfb39486bdb9a4cc3fa8c506a69d0ed090d84669d2ad8e2360b348483154",
"license": "GPL-3.0",
"urls": [
"bzz-raw://f01274211a2266c246a3311dccf7696ac3c6f7e0c170f9c6f5dcf65d799965ec",
"dweb:/ipfs/QmWa9ksMHAzzBsHP71QQWt7VxW3sSAxV4UYEPZpG3uBrjU"
]
},
"contracts/handler/TokensHandler.sol": {
"keccak256": "0xd5c884d83811e412ace040f85d4830a8bb83c57c8b16aa3adc5d294ae2f79b58",
"license": "GPL-3.0",
"urls": [
"bzz-raw://e2751809f5dc30204b232d201811e97073ea6013e6024d04cc826aa8d576ec12",
"dweb:/ipfs/QmcpgUT9UcGoYk36fhygiyYcyawPtqiXfrxU7vwetzSkbn"
]
},
"contracts/utils/SelfAuthorized.sol": {
"keccak256": "0xf429759512facbb8bf895cb570afcc6560dc170276c9dee6774d818d738c0461",
"license": "GPL-3.0",
"urls": [
"bzz-raw://0b39944e5f57801849eb43bdbae28cb743dc5fcfcf69165d48dd1e8fe199c381",
"dweb:/ipfs/QmWriNEDkGCErRQRMbxyRNoZWMXK7J3JgD4HhgvVviLTkx"
]
},
"contracts/utils/Types.sol": {
"keccak256": "0x154da3b303402876d1ebcaba13ed8593cdfad00b89e4327036bcd37e92111cfe",
"license": "GPL-3.0",
"urls": [
"bzz-raw://25c6fe0fa27d562b03dbb4453cd9e737b53b1d09de292afec6e3a615346df290",
"dweb:/ipfs/Qmcdz7yWdM1XKBoLT1iCnrqtih3myWPodtAjNgnZZ7enfi"
]
}
},
"version": 1
}