Skip to main content
Version: v1.2

Ballot

A Ballot represents a User's votes in a Poll, as well as their next valid nonce.

Table of contents​

Constructors​

Properties​

Methods​

Constructors​

constructor​

• new Ballot(_numVoteOptions, _voteOptionTreeDepth): Ballot

Create a new Ballot instance

Parameters​

NameTypeDescription
_numVoteOptionsnumberHow many vote options are available in the poll
_voteOptionTreeDepthnumberThe depth of the merkle tree holding the vote options

Returns​

Ballot

Defined in​

ballot.ts:23

Properties​

nonce​

• nonce: bigint

Defined in​

ballot.ts:14


voteOptionTreeDepth​

• voteOptionTreeDepth: number

Defined in​

ballot.ts:16


votes​

• votes: bigint[] = []

Defined in​

ballot.ts:12

Methods​

asArray​

▸ asArray(): bigint[]

Convert in a an array of bigints

Returns​

bigint[]

the ballot as a bigint array

Notice

this is the nonce and the root of the vote option tree

Defined in​

ballot.ts:52


asCircuitInputs​

▸ asCircuitInputs(): bigint[]

Convert in a format suitable for the circuit

Returns​

bigint[]

the ballot as a BigInt array

Defined in​

ballot.ts:45


copy​

▸ copy(): Ballot

Create a deep clone of this Ballot

Returns​

Ballot

a copy of the ballot

Defined in​

ballot.ts:68


equals​

▸ equals(b): boolean

Check if two ballots are equal (same votes and same nonce)

Parameters​

NameTypeDescription
bBallotThe ballot to compare with

Returns​

boolean

whether the two ballots are equal

Defined in​

ballot.ts:81


hash​

▸ hash(): bigint

Generate an hash of this ballot

Returns​

bigint

The hash of the ballot

Defined in​

ballot.ts:36


toJSON​

▸ toJSON(): IJsonBallot

Serialize to a JSON object

Returns​

IJsonBallot

Defined in​

ballot.ts:112


fromJSON​

▸ fromJSON(json): Ballot

Deserialize into a Ballot instance

Parameters​

NameTypeDescription
jsonIJsonBallotthe json representation

Returns​

Ballot

the deserialized object as a Ballot instance

Defined in​

ballot.ts:125


genBlankBallot​

▸ genBlankBallot(numVoteOptions, voteOptionTreeDepth): Ballot

Generate a blank ballot

Parameters​

NameTypeDescription
numVoteOptionsnumberHow many vote options are available
voteOptionTreeDepthnumberHow deep is the merkle tree holding the vote options

Returns​

Ballot

a Blank Ballot object

Defined in​

ballot.ts:104


genRandomBallot​

▸ genRandomBallot(numVoteOptions, voteOptionTreeDepth): Ballot

Generate a random ballot

Parameters​

NameTypeDescription
numVoteOptionsnumberHow many vote options are available
voteOptionTreeDepthnumberHow deep is the merkle tree holding the vote options

Returns​

Ballot

a random Ballot

Defined in​

ballot.ts:92