import BigNumber from 'bignumber.js'; import { CorporateBallotDetails, CorporateBallotMetaWithResults, CorporateBallotStatus, CorporateBallotWithParticipation } from '../../../api/entities/CorporateBallot/types'; import { Context, CorporateActionBase } from '../../../internal'; import { CastBallotVoteParams, CorporateActionKind, CorporateActionTargets, Identity, InputCaCheckpoint, NoArgsProcedureMethod, ProcedureMethod, TaxWithholding } from '../../../types'; export interface UniqueIdentifiers { id: BigNumber; assetId: string; } export interface HumanReadable { id: string; assetId: string; } export interface Params { kind: CorporateActionKind; declarationDate: Date; description: string; targets: CorporateActionTargets; defaultTaxWithholding: BigNumber; taxWithholdings: TaxWithholding[]; } /** * Represents a Ballot */ export declare class CorporateBallot extends CorporateActionBase { /** * @hidden */ constructor(args: UniqueIdentifiers & Omit, context: Context); /** * Determine whether this Ballot exists on chain */ exists(): Promise; /** * Retrieve details associated with this Ballot * * @throws if the Ballot does not exist */ details(): Promise; /** * Return the status of the Ballot * * @throws if the Ballot does not exist */ status(): Promise; /** * Retrieve the results of the Ballot * * @throws if the Ballot does not exist */ results(): Promise; /** * Retrieve the participation of the Ballot * * @throws if the Ballot does not exist */ votesByIdentity(did: Identity | string): Promise; /** * Remove the Ballot * * @note deletes the corporate action with the associated ballot if ballot has not started * @throws if ballot has already started * @throws if ballot is not found */ remove: NoArgsProcedureMethod; /** * Cast a vote on the Ballot * * @throws if the Ballot does not exist * @throws if the Ballot voting is not active * @throws if the number of votes does not match the sum of all choices of all motions * @throws if fallback votes are provided for a non-RCV Ballot * @throws if vote does not point to the correct choice in motion * @throws if the fallback vote is the same as the choice * @throws if the fallback vote is not pointing to a choice in the motion */ vote: ProcedureMethod; /** * Modify the Corporate Ballot's Record Date */ modifyCheckpoint: ProcedureMethod<{ checkpoint: InputCaCheckpoint; }, void>; } //# sourceMappingURL=index.d.ts.map