@polkadot/types
Version:
Implementation of the Parity codec
380 lines (379 loc) • 16.2 kB
TypeScript
import type { BTreeMap, Compact, Enum, Option, Struct, Vec, bool, u128, u16, u32, u64 } from '@polkadot/types-codec';
import type { ITuple } from '@polkadot/types-codec/types';
import type { AccountId, Balance, BlockNumber, Moment, PerU16, Perbill } from '@polkadot/types/interfaces/runtime';
/** @name ActiveEraInfo */
export interface ActiveEraInfo extends Struct {
readonly index: EraIndex;
readonly start: Option<Moment>;
}
/** @name CompactAssignments */
export interface CompactAssignments extends CompactAssignmentsWith16 {
}
/** @name CompactAssignmentsTo257 */
export interface CompactAssignmentsTo257 extends Struct {
readonly votes1: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes2: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes3: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes4: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes5: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes6: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes7: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes8: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes9: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes10: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes11: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes12: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes13: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes14: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes15: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
readonly votes16: Vec<ITuple<[NominatorIndex, Vec<CompactScore>, ValidatorIndex]>>;
}
/** @name CompactAssignmentsTo265 */
export interface CompactAssignmentsTo265 extends CompactAssignmentsWith16 {
}
/** @name CompactAssignmentsWith16 */
export interface CompactAssignmentsWith16 extends Struct {
readonly votes1: Vec<ITuple<[NominatorIndexCompact, ValidatorIndexCompact]>>;
readonly votes2: Vec<ITuple<[NominatorIndexCompact, CompactScoreCompact, ValidatorIndexCompact]>>;
readonly votes3: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes4: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes5: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes6: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes7: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes8: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes9: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes10: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes11: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes12: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes13: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes14: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes15: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes16: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
}
/** @name CompactAssignmentsWith24 */
export interface CompactAssignmentsWith24 extends Struct {
readonly votes1: Vec<ITuple<[NominatorIndexCompact, ValidatorIndexCompact]>>;
readonly votes2: Vec<ITuple<[NominatorIndexCompact, CompactScoreCompact, ValidatorIndexCompact]>>;
readonly votes3: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes4: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes5: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes6: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes7: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes8: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes9: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes10: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes11: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes12: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes13: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes14: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes15: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes16: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes17: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes18: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes19: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes20: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes21: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes22: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes23: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
readonly votes24: Vec<ITuple<[NominatorIndexCompact, Vec<CompactScoreCompact>, ValidatorIndexCompact]>>;
}
/** @name CompactScore */
export interface CompactScore extends ITuple<[ValidatorIndex, OffchainAccuracy]> {
}
/** @name CompactScoreCompact */
export interface CompactScoreCompact extends ITuple<[ValidatorIndexCompact, OffchainAccuracyCompact]> {
}
/** @name ElectionCompute */
export interface ElectionCompute extends Enum {
readonly isOnChain: boolean;
readonly isSigned: boolean;
readonly isUnsigned: boolean;
readonly type: 'OnChain' | 'Signed' | 'Unsigned';
}
/** @name ElectionPhase */
export interface ElectionPhase extends Enum {
readonly isOff: boolean;
readonly isSigned: boolean;
readonly isUnsigned: boolean;
readonly asUnsigned: ITuple<[bool, BlockNumber]>;
readonly isEmergency: boolean;
readonly type: 'Off' | 'Signed' | 'Unsigned' | 'Emergency';
}
/** @name ElectionResult */
export interface ElectionResult extends Struct {
readonly compute: ElectionCompute;
readonly slotStake: Balance;
readonly electedStashes: Vec<AccountId>;
readonly exposures: Vec<ITuple<[AccountId, Exposure]>>;
}
/** @name ElectionScore */
export interface ElectionScore extends Vec<u128> {
}
/** @name ElectionSize */
export interface ElectionSize extends Struct {
readonly validators: Compact<ValidatorIndex>;
readonly nominators: Compact<NominatorIndex>;
}
/** @name ElectionStatus */
export interface ElectionStatus extends Enum {
readonly isClose: boolean;
readonly isOpen: boolean;
readonly asOpen: BlockNumber;
readonly type: 'Close' | 'Open';
}
/** @name EraIndex */
export interface EraIndex extends u32 {
}
/** @name EraPoints */
export interface EraPoints extends Struct {
readonly total: Points;
readonly individual: Vec<Points>;
}
/** @name EraRewardPoints */
export interface EraRewardPoints extends Struct {
readonly total: RewardPoint;
readonly individual: BTreeMap<AccountId, RewardPoint>;
}
/** @name EraRewards */
export interface EraRewards extends Struct {
readonly total: u32;
readonly rewards: Vec<u32>;
}
/** @name Exposure */
export interface Exposure extends Struct {
readonly total: Compact<Balance>;
readonly own: Compact<Balance>;
readonly others: Vec<IndividualExposure>;
}
/** @name ExtendedBalance */
export interface ExtendedBalance extends u128 {
}
/** @name Forcing */
export interface Forcing extends Enum {
readonly isNotForcing: boolean;
readonly isForceNew: boolean;
readonly isForceNone: boolean;
readonly isForceAlways: boolean;
readonly type: 'NotForcing' | 'ForceNew' | 'ForceNone' | 'ForceAlways';
}
/** @name IndividualExposure */
export interface IndividualExposure extends Struct {
readonly who: AccountId;
readonly value: Compact<Balance>;
}
/** @name KeyType */
export interface KeyType extends AccountId {
}
/** @name MomentOf */
export interface MomentOf extends Moment {
}
/** @name Nominations */
export interface Nominations extends Struct {
readonly targets: Vec<AccountId>;
readonly submittedIn: EraIndex;
readonly suppressed: bool;
}
/** @name NominatorIndex */
export interface NominatorIndex extends u32 {
}
/** @name NominatorIndexCompact */
export interface NominatorIndexCompact extends Compact<NominatorIndex> {
}
/** @name OffchainAccuracy */
export interface OffchainAccuracy extends PerU16 {
}
/** @name OffchainAccuracyCompact */
export interface OffchainAccuracyCompact extends Compact<OffchainAccuracy> {
}
/** @name PhragmenScore */
export interface PhragmenScore extends Vec<u128> {
}
/** @name Points */
export interface Points extends u32 {
}
/** @name RawSolution */
export interface RawSolution extends RawSolutionWith16 {
}
/** @name RawSolutionTo265 */
export interface RawSolutionTo265 extends RawSolutionWith16 {
}
/** @name RawSolutionWith16 */
export interface RawSolutionWith16 extends Struct {
readonly compact: CompactAssignmentsWith16;
readonly score: ElectionScore;
readonly round: u32;
}
/** @name RawSolutionWith24 */
export interface RawSolutionWith24 extends Struct {
readonly compact: CompactAssignmentsWith24;
readonly score: ElectionScore;
readonly round: u32;
}
/** @name ReadySolution */
export interface ReadySolution extends Struct {
readonly supports: SolutionSupports;
readonly score: ElectionScore;
readonly compute: ElectionCompute;
}
/** @name RewardDestination */
export interface RewardDestination extends Enum {
readonly isStaked: boolean;
readonly isStash: boolean;
readonly isController: boolean;
readonly isAccount: boolean;
readonly asAccount: AccountId;
readonly isNone: boolean;
readonly type: 'Staked' | 'Stash' | 'Controller' | 'Account' | 'None';
}
/** @name RewardPoint */
export interface RewardPoint extends u32 {
}
/** @name RoundSnapshot */
export interface RoundSnapshot extends Struct {
readonly voters: Vec<ITuple<[AccountId, VoteWeight, Vec<AccountId>]>>;
readonly targets: Vec<AccountId>;
}
/** @name SeatHolder */
export interface SeatHolder extends Struct {
readonly who: AccountId;
readonly stake: Balance;
readonly deposit: Balance;
}
/** @name SignedSubmission */
export interface SignedSubmission extends Struct {
readonly who: AccountId;
readonly deposit: Balance;
readonly solution: RawSolution;
readonly reward: Balance;
}
/** @name SignedSubmissionOf */
export interface SignedSubmissionOf extends SignedSubmission {
}
/** @name SignedSubmissionTo276 */
export interface SignedSubmissionTo276 extends Struct {
readonly who: AccountId;
readonly deposit: Balance;
readonly solution: RawSolution;
}
/** @name SlashingSpans */
export interface SlashingSpans extends Struct {
readonly spanIndex: SpanIndex;
readonly lastStart: EraIndex;
readonly lastNonzeroSlash: EraIndex;
readonly prior: Vec<EraIndex>;
}
/** @name SlashingSpansTo204 */
export interface SlashingSpansTo204 extends Struct {
readonly spanIndex: SpanIndex;
readonly lastStart: EraIndex;
readonly prior: Vec<EraIndex>;
}
/** @name SlashJournalEntry */
export interface SlashJournalEntry extends Struct {
readonly who: AccountId;
readonly amount: Balance;
readonly ownSlash: Balance;
}
/** @name SolutionOrSnapshotSize */
export interface SolutionOrSnapshotSize extends Struct {
readonly voters: Compact<u32>;
readonly targets: Compact<u32>;
}
/** @name SolutionSupport */
export interface SolutionSupport extends Struct {
readonly total: ExtendedBalance;
readonly voters: Vec<ITuple<[AccountId, ExtendedBalance]>>;
}
/** @name SolutionSupports */
export interface SolutionSupports extends Vec<ITuple<[AccountId, SolutionSupport]>> {
}
/** @name SpanIndex */
export interface SpanIndex extends u32 {
}
/** @name SpanRecord */
export interface SpanRecord extends Struct {
readonly slashed: Balance;
readonly paidOut: Balance;
}
/** @name StakingLedger */
export interface StakingLedger extends Struct {
readonly stash: AccountId;
readonly total: Compact<Balance>;
readonly active: Compact<Balance>;
readonly unlocking: Vec<UnlockChunk>;
readonly claimedRewards: Vec<EraIndex>;
}
/** @name StakingLedgerTo223 */
export interface StakingLedgerTo223 extends Struct {
readonly stash: AccountId;
readonly total: Compact<Balance>;
readonly active: Compact<Balance>;
readonly unlocking: Vec<UnlockChunk>;
}
/** @name StakingLedgerTo240 */
export interface StakingLedgerTo240 extends Struct {
readonly stash: AccountId;
readonly total: Compact<Balance>;
readonly active: Compact<Balance>;
readonly unlocking: Vec<UnlockChunk>;
readonly lastReward: Option<EraIndex>;
}
/** @name SubmissionIndicesOf */
export interface SubmissionIndicesOf extends BTreeMap<ElectionScore, u32> {
}
/** @name Supports */
export interface Supports extends SolutionSupports {
}
/** @name UnappliedSlash */
export interface UnappliedSlash extends Struct {
readonly validator: AccountId;
readonly own: Balance;
readonly others: Vec<UnappliedSlashOther>;
readonly reporters: Vec<AccountId>;
readonly payout: Balance;
}
/** @name UnappliedSlashOther */
export interface UnappliedSlashOther extends ITuple<[AccountId, Balance]> {
}
/** @name UnlockChunk */
export interface UnlockChunk extends Struct {
readonly value: Compact<Balance>;
readonly era: Compact<BlockNumber>;
}
/** @name ValidatorIndex */
export interface ValidatorIndex extends u16 {
}
/** @name ValidatorIndexCompact */
export interface ValidatorIndexCompact extends Compact<ValidatorIndex> {
}
/** @name ValidatorPrefs */
export interface ValidatorPrefs extends ValidatorPrefsWithBlocked {
}
/** @name ValidatorPrefsTo145 */
export interface ValidatorPrefsTo145 extends Struct {
readonly unstakeThreshold: Compact<u32>;
readonly validatorPayment: Compact<Balance>;
}
/** @name ValidatorPrefsTo196 */
export interface ValidatorPrefsTo196 extends Struct {
readonly validatorPayment: Compact<Balance>;
}
/** @name ValidatorPrefsWithBlocked */
export interface ValidatorPrefsWithBlocked extends Struct {
readonly commission: Compact<Perbill>;
readonly blocked: bool;
}
/** @name ValidatorPrefsWithCommission */
export interface ValidatorPrefsWithCommission extends Struct {
readonly commission: Compact<Perbill>;
}
/** @name Voter */
export interface Voter extends Struct {
readonly votes: Vec<AccountId>;
readonly stake: Balance;
readonly deposit: Balance;
}
/** @name VoteWeight */
export interface VoteWeight extends u64 {
}
export type PHANTOM_STAKING = 'staking';