"use strict";
// Copyright 2017-2020 @polkadot/types authors & contributors
// This software may be modified and distributed under the terms
// of the Apache-2.0 license. See the LICENSE file for details.
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = {
    types: {
        EraIndex: 'u32',
        EraPoints: {
            total: 'Points',
            individual: 'Vec<Points>'
        },
        EraRewards: {
            total: 'u32',
            rewards: 'Vec<u32>'
        },
        Exposure: {
            total: 'Compact<Balance>',
            own: 'Compact<Balance>',
            others: 'Vec<IndividualExposure>'
        },
        Forcing: {
            _enum: [
                'NotForcing',
                'ForceNew',
                'ForceNone',
                'ForceAlways'
            ]
        },
        IndividualExposure: {
            who: 'AccountId',
            value: 'Compact<Balance>'
        },
        MomentOf: 'Moment',
        Nominations: {
            targets: 'Vec<AccountId>',
            submittedIn: 'EraIndex',
            suppressed: 'bool'
        },
        Points: 'u32',
        RewardDestination: {
            _enum: [
                'Staked',
                'Stash',
                'Controller'
            ]
        },
        SlashJournalEntry: {
            who: 'AccountId',
            amount: 'Balance',
            ownSlash: 'Balance'
        },
        SlashingSpansTo204: {
            spanIndex: 'SpanIndex',
            lastStart: 'EraIndex',
            prior: 'Vec<EraIndex>'
        },
        SlashingSpans: {
            spanIndex: 'SpanIndex',
            lastStart: 'EraIndex',
            lastNonzeroSlash: 'EraIndex',
            prior: 'Vec<EraIndex>'
        },
        SpanIndex: 'u32',
        SpanRecord: {
            slashed: 'Balance',
            paidOut: 'Balance'
        },
        StakingLedger: {
            stash: 'AccountId',
            total: 'Compact<Balance>',
            active: 'Compact<Balance>',
            unlocking: 'Vec<UnlockChunk>'
        },
        UnappliedSlashOther: '(AccountId, Balance)',
        UnappliedSlash: {
            validator: 'AccountId',
            own: 'Balance',
            others: 'Vec<UnappliedSlashOther>',
            reporters: 'Vec<AccountId>',
            payout: 'Balance'
        },
        UnlockChunk: {
            value: 'Compact<Balance>',
            era: 'Compact<BlockNumber>'
        },
        ValidatorPrefs: {
            commission: 'Compact<Perbill>'
        },
        ValidatorPrefsTo196: {
            validatorPayment: 'Compact<Balance>'
        },
        ValidatorPrefsTo145: {
            unstakeThreshold: 'Compact<u32>',
            validatorPayment: 'Compact<Balance>'
        }
    }
};
