UNPKG

@swaptoshi/governance-module

Version:

Klayr governance on-chain module

44 lines (43 loc) 1.81 kB
import { CreateProposalParams, ImmutableGovernanceContext, MutableGovernanceContext, ProposalStatus, ProposalStoreData, QuorumMode, StoreInstance } from '../types'; import { BaseStoreWithInstance } from './base'; import { Proposal } from './instances'; export declare class ProposalStore extends BaseStoreWithInstance<ProposalStoreData> { verifyCreateProposal(ctx: ImmutableGovernanceContext, params: CreateProposalParams): Promise<void>; createProposal(ctx: MutableGovernanceContext, params: CreateProposalParams, verify?: boolean): Promise<void>; getMutableProposal(ctx: MutableGovernanceContext, proposalId: number): Promise<StoreInstance<Proposal>>; getImmutableProposal(ctx: ImmutableGovernanceContext, proposalId: number): Promise<StoreInstance<Proposal>>; getKey(proposalId: number): Buffer<ArrayBuffer>; schema: import("@swaptoshi/utils/dist/types").TypedSchema<ProposalStoreData>; protected readonly default: { title: string; summary: string; deposited: bigint; author: Buffer<ArrayBuffer>; turnout: { for: bigint; against: bigint; abstain: bigint; }; parameters: { createdHeight: number; startHeight: number; quorumHeight: number; endHeight: number; executionHeight: number; boostFactor: number; maxBoostDuration: number; enableBoosting: boolean; enableTurnoutBias: boolean; quorumMode: QuorumMode; quorumTreshold: string; }; voteSummary: { for: bigint; against: bigint; abstain: bigint; }; status: ProposalStatus; actions: never[]; attributes: never[]; }; }