Create Vote Signature

Create a vote signature for a Aquarius Governance proposal using EIP-712. This can be used to create an 'empty ballot' without burning gas. The signature can then be sent to someone else to post to the blockchain. The recipient can post one signature using the castVoteBySig method.

  • proposalId (string) The ID of the proposal to vote on. This is an auto-incrementing integer in the Governor Bravo contract.

  • support (number) A number value of 0, 1, or 2 for the proposal vote. The numbers correspond to 'in-favor', 'against', and 'abstain` respectively.

  • RETURN (object) Returns an object that contains the v, r, and s components of an Ethereum signature as hexadecimal strings.

const aquarius = new Aquarius(window.ethereum);

(async () => {

  const voteForSignature = await aquarius.createVoteSignature(20, 1);
  console.log('voteForSignature', voteForSignature);

  const voteAgainstSignature = await aquarius.createVoteSignature(20, 0);
  console.log('voteAgainstSignature', voteAgainstSignature);

})().catch(console.error);

Last updated