{ "contractName": "Voting", "abi": [ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "proposalId", "type": "uint256" } ], "name": "ProposalRegistered", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "voter", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "proposalId", "type": "uint256" } ], "name": "Voted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "voterAddress", "type": "address" } ], "name": "VoterRegistered", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "enum Voting.WorkflowStatus", "name": "previousStatus", "type": "uint8" }, { "indexed": false, "internalType": "enum Voting.WorkflowStatus", "name": "newStatus", "type": "uint8" } ], "name": "WorkflowStatusChange", "type": "event" }, { "inputs": [], "name": "checkAndUpdateStatus", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_to", "type": "address" } ], "name": "delegateVoteTo", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "endProposalsRegistration", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "endVotingSession", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_voterAddress", "type": "address" } ], "name": "getDelegation", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_proposalId", "type": "uint256" } ], "name": "getProposal", "outputs": [ { "internalType": "string", "name": "description", "type": "string" }, { "internalType": "uint256", "name": "voteCount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getProposalsCount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_voterAddress", "type": "address" } ], "name": "getVoter", "outputs": [ { "internalType": "bool", "name": "isRegistered", "type": "bool" }, { "internalType": "bool", "name": "hasVoted", "type": "bool" }, { "internalType": "uint256", "name": "votedProposalId", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getWinner", "outputs": [ { "internalType": "uint256", "name": "winningProposalIndex", "type": "uint256" }, { "internalType": "string", "name": "description", "type": "string" }, { "internalType": "uint256", "name": "voteCount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "registrationEndTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_description", "type": "string" } ], "name": "registerProposal", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_voterAddress", "type": "address" } ], "name": "registerVoter", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_durationInMinutes", "type": "uint256" } ], "name": "startProposalsRegistration", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_durationInMinutes", "type": "uint256" } ], "name": "startVotingSession", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "tallyVotes", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_proposalId", "type": "uint256" } ], "name": "vote", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "votingEndTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "winningProposalId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "workflowStatus", "outputs": [ { "internalType": "enum Voting.WorkflowStatus", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" } ] }