Skip to content

Instantly share code, notes, and snippets.

@xlc
Last active February 28, 2019 10:56
Embed
What would you like to do?
{
"magicNumber": 1635018093,
"metadata": {
"MetadataV2": {
"modules": [
{
"name": "system",
"prefix": "System",
"storage": [
{
"name": "AccountNonce",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "u64",
"display_name": "Index"
}
}
},
"fallback": "0x0000000000000000",
"docs": []
},
{
"name": "ExtrinsicCount",
"modifier": "Optional",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "u32"
}
},
"fallback": "0x00",
"docs": []
},
{
"name": "AllExtrinsicsLen",
"modifier": "Optional",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "u32"
}
},
"fallback": "0x00",
"docs": []
},
{
"name": "BlockHash",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "u64",
"display_name": "BlockNumber"
},
"value": {
"type_name": "H256",
"display_name": "Hash"
}
}
},
"fallback": "0x0000000000000000000000000000000000000000000000000000000000000000",
"docs": []
},
{
"name": "ExtrinsicData",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "u32",
"display_name": "u32"
},
"value": {
"type_name": "Vec<u8>",
"display_name": "Bytes"
}
}
},
"fallback": "0x00",
"docs": []
},
{
"name": "RandomSeed",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "H256",
"display_name": "Hash"
}
},
"fallback": "0x0000000000000000000000000000000000000000000000000000000000000000",
"docs": []
},
{
"name": "Number",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x0000000000000000",
"docs": [
" The current block number being processed. Set by `execute_block`."
]
},
{
"name": "ParentHash",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "H256",
"display_name": "Hash"
}
},
"fallback": "0x0000000000000000000000000000000000000000000000000000000000000000",
"docs": []
},
{
"name": "ExtrinsicsRoot",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "H256",
"display_name": "Hash"
}
},
"fallback": "0x0000000000000000000000000000000000000000000000000000000000000000",
"docs": []
},
{
"name": "Digest",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "sr_primitives::generic::digest#Digest<node_runtime#Log>",
"display_name": "Digest"
}
},
"fallback": "0x00",
"docs": []
},
{
"name": "Events",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<srml_system#EventRecord<node_runtime#Event>>",
"display_name": "Vec<EventRecord<Event>>"
}
},
"fallback": "0x00",
"docs": []
}
],
"calls": null,
"events": [
{
"name": "ExtrinsicSuccess",
"args": [],
"docs": [
" An extrinsic completed successfully."
]
},
{
"name": "ExtrinsicFailed",
"args": [],
"docs": [
" An extrinsic failed."
]
}
]
},
{
"name": "aura",
"prefix": "",
"storage": null,
"calls": null,
"events": null
},
{
"name": "timestamp",
"prefix": "Timestamp",
"storage": [
{
"name": "Now",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "Moment"
}
},
"fallback": "0x0000000000000000",
"docs": [
" Current time for the current block."
]
},
{
"name": "BlockPeriod",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "Moment"
}
},
"fallback": "0x0500000000000000",
"docs": [
" The minimum (and advised) period between blocks."
]
},
{
"name": "DidUpdate",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "bool",
"display_name": "bool"
}
},
"fallback": "0x00",
"docs": [
" Did the timestamp get updated in this block?"
]
}
],
"calls": [
{
"name": "set",
"args": [
{
"name": "now",
"type": {
"type_name": "Compact<u64>",
"display_name": "Compact<Moment>"
}
}
],
"docs": [
" Set the current time.",
"",
" Extrinsic with this call should be placed at the specific position in the each block",
" (specified by the Trait::TIMESTAMP_SET_POSITION) typically at the start of the each block.",
" This call should be invoked exactly once per block. It will panic at the finalization phase,",
" if this call hasn't been invoked by that time.",
"",
" The timestamp should be greater than the previous one by the amount specified by `block_period`."
]
}
],
"events": null
},
{
"name": "consensus",
"prefix": "Consensus",
"storage": [
{
"name": "OriginalAuthorities",
"modifier": "Optional",
"type": {
"PlainType": {
"type_name": "Vec<substrate_primitives::authority_id#Ed25519AuthorityId>",
"display_name": "Vec<SessionKey>"
}
},
"fallback": "0x00",
"docs": []
}
],
"calls": [
{
"name": "report_misbehavior",
"args": [
{
"name": "_report",
"type": {
"type_name": "Vec<u8>",
"display_name": "Bytes"
}
}
],
"docs": [
" Report some misbehaviour."
]
},
{
"name": "note_offline",
"args": [
{
"name": "offline",
"type": {
"type_name": "Null",
"display_name": "InherentOfflineReport"
}
}
],
"docs": [
" Note the previous block's validator missed their opportunity to propose a block."
]
},
{
"name": "remark",
"args": [
{
"name": "_remark",
"type": {
"type_name": "Vec<u8>",
"display_name": "Bytes"
}
}
],
"docs": [
" Make some on-chain remark."
]
},
{
"name": "set_heap_pages",
"args": [
{
"name": "pages",
"type": {
"type_name": "u64",
"display_name": "u64"
}
}
],
"docs": [
" Set the number of pages in the WebAssembly environment's heap."
]
},
{
"name": "set_code",
"args": [
{
"name": "new",
"type": {
"type_name": "Vec<u8>",
"display_name": "Bytes"
}
}
],
"docs": [
" Set the new code."
]
},
{
"name": "set_storage",
"args": [
{
"name": "items",
"type": {
"type_name": "Vec<(Vec<u8>,Vec<u8>)>",
"display_name": "Vec<KeyValue>"
}
}
],
"docs": [
" Set some items of storage."
]
}
],
"events": null
},
{
"name": "indices",
"prefix": "Indices",
"storage": [
{
"name": "NextEnumSet",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "AccountIndex"
}
},
"fallback": "0x00000000",
"docs": [
" The next free enumeration set."
]
},
{
"name": "EnumSet",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "u32",
"display_name": "AccountIndex"
},
"value": {
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
}
},
"fallback": "0x00",
"docs": [
" The enumeration sets."
]
}
],
"calls": [],
"events": [
{
"name": "NewAccountIndex",
"args": [
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
{
"type_name": "u32",
"display_name": "AccountIndex"
}
],
"docs": [
" A new account index was assigned.",
"",
" This event is not triggered when an existing index is reassigned",
" to another `AccountId`."
]
}
]
},
{
"name": "balances",
"prefix": "Balances",
"storage": [
{
"name": "TotalIssuance",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "Balance"
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" The total amount of stake on the system."
]
},
{
"name": "ExistentialDeposit",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "Balance"
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" The minimum amount allowed to keep an account open."
]
},
{
"name": "TransferFee",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "Balance"
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" The fee required to make a transfer."
]
},
{
"name": "CreationFee",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "Balance"
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" The fee required to create an account. At least as big as ReclaimRebate."
]
},
{
"name": "Vesting",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "srml_balances#VestingSchedule<u128>",
"display_name": "VestingSchedule<Balance>"
}
}
},
"fallback": "0x00",
"docs": [
" Information regarding the vesting of a given account."
]
},
{
"name": "FreeBalance",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "u128",
"display_name": "Balance"
}
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" The 'free' balance of a given account.",
"",
" This is the only balance that matters in terms of most operations on tokens. It is",
" alone used to determine the balance when in the contract execution environment. When this",
" balance falls below the value of `ExistentialDeposit`, then the 'current account' is",
" deleted: specifically `FreeBalance`. Furthermore, `OnFreeBalanceZero` callback",
" is invoked, giving a chance to external modules to cleanup data associated with",
" the deleted account.",
"",
" `system::AccountNonce` is also deleted if `ReservedBalance` is also zero (it also gets",
" collapsed to zero if it ever becomes less than `ExistentialDeposit`."
]
},
{
"name": "ReservedBalance",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "u128",
"display_name": "Balance"
}
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" The amount of the balance of a given account that is externally reserved; this can still get",
" slashed, but gets slashed last of all.",
"",
" This balance is a 'reserve' balance that other subsystems use in order to set aside tokens",
" that are still 'owned' by the account holder, but which are suspendable. (This is different",
" and wholly unrelated to the `Bondage` system used in the staking module.)",
"",
" When this balance falls below the value of `ExistentialDeposit`, then this 'reserve account'",
" is deleted: specifically, `ReservedBalance`.",
"",
" `system::AccountNonce` is also deleted if `FreeBalance` is also zero (it also gets",
" collapsed to zero if it ever becomes less than `ExistentialDeposit`."
]
}
],
"calls": [
{
"name": "transfer",
"args": [
{
"name": "dest",
"type": {
"type_name": "srml_indices::address#Address",
"display_name": "Address"
}
},
{
"name": "value",
"type": {
"type_name": "Compact<u128>",
"display_name": "Compact<Balance>"
}
}
],
"docs": [
" Transfer some liquid free balance to another staker."
]
},
{
"name": "set_balance",
"args": [
{
"name": "who",
"type": {
"type_name": "srml_indices::address#Address",
"display_name": "Address"
}
},
{
"name": "free",
"type": {
"type_name": "Compact<u128>",
"display_name": "Compact<Balance>"
}
},
{
"name": "reserved",
"type": {
"type_name": "Compact<u128>",
"display_name": "Compact<Balance>"
}
}
],
"docs": [
" Set the balances of a given account."
]
}
],
"events": [
{
"name": "NewAccount",
"args": [
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
{
"type_name": "u128",
"display_name": "Balance"
}
],
"docs": [
" A new account was created."
]
},
{
"name": "ReapedAccount",
"args": [
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
}
],
"docs": [
" An account was reaped."
]
},
{
"name": "Transfer",
"args": [
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
{
"type_name": "u128",
"display_name": "Balance"
},
{
"type_name": "u128",
"display_name": "Balance"
}
],
"docs": [
" Transfer succeeded (from, to, value, fees)."
]
}
]
},
{
"name": "session",
"prefix": "Session",
"storage": [
{
"name": "Validators",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
},
"fallback": "0x00",
"docs": [
" The current set of validators."
]
},
{
"name": "SessionLength",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0xe803000000000000",
"docs": [
" Current length of the session."
]
},
{
"name": "CurrentIndex",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x0000000000000000",
"docs": [
" Current index of the session."
]
},
{
"name": "CurrentStart",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "Moment"
}
},
"fallback": "0x0000000000000000",
"docs": [
" Timestamp when current session started."
]
},
{
"name": "ForcingNewSession",
"modifier": "Optional",
"type": {
"PlainType": {
"type_name": "bool",
"display_name": "bool"
}
},
"fallback": "0x00",
"docs": [
" New session is being forced is this entry exists; in which case, the boolean value is whether",
" the new session should be considered a normal rotation (rewardable) or exceptional (slashable)."
]
},
{
"name": "LastLengthChange",
"modifier": "Optional",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x00",
"docs": [
" Block at which the session length last changed."
]
},
{
"name": "NextKeyFor",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "substrate_primitives::authority_id#Ed25519AuthorityId",
"display_name": "SessionKey"
}
}
},
"fallback": "0x00",
"docs": [
" The next key for a given validator."
]
},
{
"name": "NextSessionLength",
"modifier": "Optional",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x00",
"docs": [
" The next session length."
]
}
],
"calls": [
{
"name": "set_key",
"args": [
{
"name": "key",
"type": {
"type_name": "substrate_primitives::authority_id#Ed25519AuthorityId",
"display_name": "SessionKey"
}
}
],
"docs": [
" Sets the session key of `_validator` to `_key`. This doesn't take effect until the next",
" session."
]
},
{
"name": "set_length",
"args": [
{
"name": "new",
"type": {
"type_name": "Compact<u64>",
"display_name": "Compact<BlockNumber>"
}
}
],
"docs": [
" Set a new session length. Won't kick in until the next session change (at current length)."
]
},
{
"name": "force_new_session",
"args": [
{
"name": "apply_rewards",
"type": {
"type_name": "bool",
"display_name": "bool"
}
}
],
"docs": [
" Forces a new session."
]
}
],
"events": [
{
"name": "NewSession",
"args": [
{
"type_name": "u64",
"display_name": "BlockNumber"
}
],
"docs": [
" New session has happened. Note that the argument is the session index, not the block",
" number as the type might suggest."
]
}
]
},
{
"name": "staking",
"prefix": "Staking",
"storage": [
{
"name": "ValidatorCount",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "u32"
}
},
"fallback": "0x00000000",
"docs": [
" The ideal number of staking participants."
]
},
{
"name": "MinimumValidatorCount",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "u32"
}
},
"fallback": "0x04000000",
"docs": [
" Minimum number of staking participants before emergency conditions are imposed."
]
},
{
"name": "SessionsPerEra",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0xe803000000000000",
"docs": [
" The length of a staking era in sessions."
]
},
{
"name": "SessionReward",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "sr_primitives#Perbill",
"display_name": "Perbill"
}
},
"fallback": "0x3c000000",
"docs": [
" Maximum reward, per validator, that is provided per acceptable session."
]
},
{
"name": "OfflineSlash",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "sr_primitives#Perbill",
"display_name": "Perbill"
}
},
"fallback": "0x40420f00",
"docs": [
" Slash, per validator that is taken for the first time they are found to be offline."
]
},
{
"name": "OfflineSlashGrace",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "u32"
}
},
"fallback": "0x00000000",
"docs": [
" Number of instances of offline reports before slashing begins for validators."
]
},
{
"name": "BondingDuration",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0xe803000000000000",
"docs": [
" The length of the bonding duration in blocks."
]
},
{
"name": "Invulerables",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
},
"fallback": "0x00",
"docs": [
" Any validators that may never be slashed or forcible kicked. It's a Vec since they're easy to initialise",
" and the performance hit is minimal (we expect no more than four invulnerables) and restricted to testnets."
]
},
{
"name": "CurrentEra",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x0000000000000000",
"docs": [
" The current era index."
]
},
{
"name": "ValidatorPreferences",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "srml_staking#ValidatorPrefs<u128>",
"display_name": "ValidatorPrefs<BalanceOf<T>>"
}
}
},
"fallback": "0x0c00",
"docs": [
" Preferences that a validator has."
]
},
{
"name": "Intentions",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
},
"fallback": "0x00",
"docs": [
" All the accounts with a desire to stake."
]
},
{
"name": "Nominating",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
}
}
},
"fallback": "0x00",
"docs": [
" All nominator -> nominee relationships."
]
},
{
"name": "NominatorsFor",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
}
},
"fallback": "0x00",
"docs": [
" Nominators for a particular account."
]
},
{
"name": "CurrentNominatorsFor",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
}
},
"fallback": "0x00",
"docs": [
" Nominators for a particular account that is in action right now."
]
},
{
"name": "CurrentSessionReward",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "BalanceOf<T>"
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" Maximum reward, per validator, that is provided per acceptable session."
]
},
{
"name": "CurrentOfflineSlash",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "BalanceOf<T>"
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" Slash, per validator that is taken for the first time they are found to be offline."
]
},
{
"name": "NextSessionsPerEra",
"modifier": "Optional",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x00",
"docs": [
" The next value of sessions per era."
]
},
{
"name": "LastEraLengthChange",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x0000000000000000",
"docs": [
" The session index at which the era length last changed."
]
},
{
"name": "StakeRange",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "(u128,u128)",
"display_name": "(BalanceOf<T>,BalanceOf<T>)"
}
},
"fallback": "0x0000000000000000000000000000000000000000000000000000000000000000",
"docs": [
" The highest and lowest staked validator slashable balances."
]
},
{
"name": "Bondage",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "u64",
"display_name": "BlockNumber"
}
}
},
"fallback": "0x0000000000000000",
"docs": [
" The block at which the `who`'s funds become entirely liquid."
]
},
{
"name": "SlashCount",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "u32",
"display_name": "u32"
}
}
},
"fallback": "0x00000000",
"docs": [
" The number of times a given validator has been reported offline. This gets decremented by one each era that passes."
]
},
{
"name": "ForcingNewEra",
"modifier": "Optional",
"type": {
"PlainType": {
"type_name": "Null",
"display_name": "Null"
}
},
"fallback": "0x00",
"docs": [
" We are forcing a new era."
]
},
{
"name": "RecentlyOffline",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<(sr_primitives#AccountId,u64,u32)>",
"display_name": "Vec<(AccountId,BlockNumber,u32)>"
}
},
"fallback": "0x00",
"docs": [
" Most recent `RECENT_OFFLINE_COUNT` instances. (who it was, when it was reported, how many instances they were offline for)."
]
}
],
"calls": [
{
"name": "stake",
"args": [],
"docs": [
" Declare the desire to stake for the transactor.",
"",
" Effects will be felt at the beginning of the next era."
]
},
{
"name": "unstake",
"args": [
{
"name": "intentions_index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
}
],
"docs": [
" Retract the desire to stake for the transactor.",
"",
" Effects will be felt at the beginning of the next era."
]
},
{
"name": "nominate",
"args": [
{
"name": "target",
"type": {
"type_name": "srml_indices::address#Address",
"display_name": "Address"
}
}
],
"docs": []
},
{
"name": "unnominate",
"args": [
{
"name": "target_index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
}
],
"docs": [
" Will panic if called when source isn't currently nominating target.",
" Updates Nominating, NominatorsFor and NominationBalance."
]
},
{
"name": "register_preferences",
"args": [
{
"name": "intentions_index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
},
{
"name": "prefs",
"type": {
"type_name": "srml_staking#ValidatorPrefs<u128>",
"display_name": "ValidatorPrefs<BalanceOf<T>>"
}
}
],
"docs": [
" Set the given account's preference for slashing behaviour should they be a validator.",
"",
" An error (no-op) if `Self::intentions()[intentions_index] != origin`."
]
},
{
"name": "set_sessions_per_era",
"args": [
{
"name": "new",
"type": {
"type_name": "Compact<u64>",
"display_name": "Compact<BlockNumber>"
}
}
],
"docs": [
" Set the number of sessions in an era."
]
},
{
"name": "set_bonding_duration",
"args": [
{
"name": "new",
"type": {
"type_name": "Compact<u64>",
"display_name": "Compact<BlockNumber>"
}
}
],
"docs": [
" The length of the bonding duration in eras."
]
},
{
"name": "set_validator_count",
"args": [
{
"name": "new",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
}
],
"docs": [
" The ideal number of validators."
]
},
{
"name": "force_new_era",
"args": [
{
"name": "apply_rewards",
"type": {
"type_name": "bool",
"display_name": "bool"
}
}
],
"docs": [
" Force there to be a new era. This also forces a new session immediately after.",
" `apply_rewards` should be true for validators to get the session reward."
]
},
{
"name": "set_offline_slash_grace",
"args": [
{
"name": "new",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
}
],
"docs": [
" Set the offline slash grace period."
]
},
{
"name": "set_invulnerables",
"args": [
{
"name": "validators",
"type": {
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
}
],
"docs": [
" Set the validators who cannot be slashed (if any)."
]
}
],
"events": [
{
"name": "Reward",
"args": [
{
"type_name": "u128",
"display_name": "Balance"
}
],
"docs": [
" All validators have been rewarded by the given balance."
]
},
{
"name": "OfflineWarning",
"args": [
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
{
"type_name": "u32",
"display_name": "u32"
}
],
"docs": [
" One validator (and their nominators) has been given a offline-warning (they're still",
" within their grace). The accrued number of slashes is recorded, too."
]
},
{
"name": "OfflineSlash",
"args": [
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
{
"type_name": "u128",
"display_name": "Balance"
}
],
"docs": [
" One validator (and their nominators) has been slashed by the given amount."
]
}
]
},
{
"name": "democracy",
"prefix": "Democracy",
"storage": [
{
"name": "PublicPropCount",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "PropIndex"
}
},
"fallback": "0x00000000",
"docs": [
" The number of (public) proposals that have been made so far."
]
},
{
"name": "PublicProps",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<(u32,node_runtime#Call,sr_primitives#AccountId)>",
"display_name": "Vec<(PropIndex,Proposal,AccountId)>"
}
},
"fallback": "0x00",
"docs": [
" The public proposals. Unsorted."
]
},
{
"name": "DepositOf",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "u32",
"display_name": "PropIndex"
},
"value": {
"type_name": "(u128,Vec<sr_primitives#AccountId>)",
"display_name": "(BalanceOf<T>,Vec<AccountId>)"
}
}
},
"fallback": "0x00",
"docs": [
" Those who have locked a deposit."
]
},
{
"name": "LaunchPeriod",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0xe803000000000000",
"docs": [
" How often (in blocks) new public referenda are launched."
]
},
{
"name": "MinimumDeposit",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "BalanceOf<T>"
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" The minimum amount to be used as a deposit for a public referendum proposal."
]
},
{
"name": "PublicDelay",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x0000000000000000",
"docs": [
" The delay before enactment for all public referenda."
]
},
{
"name": "MaxLockPeriods",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "i8",
"display_name": "LockPeriods"
}
},
"fallback": "0x00",
"docs": [
" The maximum number of additional lock periods a voter may offer to strengthen their vote. Multiples of `PublicDelay`."
]
},
{
"name": "VotingPeriod",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0xe803000000000000",
"docs": [
" How often (in blocks) to check for new votes."
]
},
{
"name": "ReferendumCount",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "ReferendumIndex"
}
},
"fallback": "0x00000000",
"docs": [
" The next free referendum index, aka the number of referendums started so far."
]
},
{
"name": "NextTally",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "ReferendumIndex"
}
},
"fallback": "0x00000000",
"docs": [
" The next referendum index that should be tallied."
]
},
{
"name": "ReferendumInfoOf",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "u32",
"display_name": "ReferendumIndex"
},
"value": {
"type_name": "srml_democracy#ReferendumInfo<u64,node_runtime#Call>",
"display_name": "(ReferendumInfo<BlockNumber,Proposal>)"
}
}
},
"fallback": "0x00",
"docs": [
" Information concerning any given referendum."
]
},
{
"name": "DispatchQueue",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "u64",
"display_name": "BlockNumber"
},
"value": {
"type_name": "Vec<Option<(node_runtime#Call,u32)>>",
"display_name": "Vec<Option<(Proposal,ReferendumIndex)>>"
}
}
},
"fallback": "0x00",
"docs": [
" Queue of successful referenda to be dispatched."
]
},
{
"name": "Bondage",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "u64",
"display_name": "BlockNumber"
}
}
},
"fallback": "0x0000000000000000",
"docs": [
" The block at which the `who`'s funds become liquid."
]
},
{
"name": "VotersFor",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "u32",
"display_name": "ReferendumIndex"
},
"value": {
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
}
},
"fallback": "0x00",
"docs": [
" Get the voters for the current proposal."
]
},
{
"name": "VoteOf",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "(u32,sr_primitives#AccountId)",
"display_name": "(ReferendumIndex,AccountId)"
},
"value": {
"type_name": "srml_democracy#Vote",
"display_name": "Vote"
}
}
},
"fallback": "0x00",
"docs": [
" Get the vote in a given referendum of a particular voter. The result is meaningful only if `voters_for` includes the",
" voter when called with the referendum (you'll get the default `Vote` value otherwise). If you don't want to check",
" `voters_for`, then you can also check for simple existence with `VoteOf::exists` first."
]
}
],
"calls": [
{
"name": "propose",
"args": [
{
"name": "proposal",
"type": {
"type_name": "node_runtime#Call",
"display_name": "Proposal"
}
},
{
"name": "value",
"type": {
"type_name": "Compact<u128>",
"display_name": "Compact<BalanceOf<T>>"
}
}
],
"docs": [
" Propose a sensitive action to be taken."
]
},
{
"name": "second",
"args": [
{
"name": "proposal",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<PropIndex>"
}
}
],
"docs": [
" Propose a sensitive action to be taken."
]
},
{
"name": "vote",
"args": [
{
"name": "ref_index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<ReferendumIndex>"
}
},
{
"name": "vote",
"type": {
"type_name": "srml_democracy#Vote",
"display_name": "Vote"
}
}
],
"docs": [
" Vote in a referendum. If `vote.is_aye()`, the vote is to enact the proposal;",
" otherwise it is a vote to keep the status quo."
]
},
{
"name": "start_referendum",
"args": [
{
"name": "proposal",
"type": {
"type_name": "node_runtime#Call",
"display_name": "Proposal"
}
},
{
"name": "threshold",
"type": {
"type_name": "srml_democracy::vote_threshold#VoteThreshold",
"display_name": "VoteThreshold"
}
},
{
"name": "delay",
"type": {
"type_name": "u64",
"display_name": "BlockNumber"
}
}
],
"docs": [
" Start a referendum."
]
},
{
"name": "cancel_referendum",
"args": [
{
"name": "ref_index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<ReferendumIndex>"
}
}
],
"docs": [
" Remove a referendum."
]
},
{
"name": "cancel_queued",
"args": [
{
"name": "when",
"type": {
"type_name": "Compact<u64>",
"display_name": "Compact<BlockNumber>"
}
},
{
"name": "which",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
}
],
"docs": [
" Cancel a proposal queued for enactment."
]
}
],
"events": [
{
"name": "Proposed",
"args": [
{
"type_name": "u32",
"display_name": "PropIndex"
},
{
"type_name": "u128",
"display_name": "Balance"
}
],
"docs": []
},
{
"name": "Tabled",
"args": [
{
"type_name": "u32",
"display_name": "PropIndex"
},
{
"type_name": "u128",
"display_name": "Balance"
},
{
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
],
"docs": []
},
{
"name": "Started",
"args": [
{
"type_name": "u32",
"display_name": "ReferendumIndex"
},
{
"type_name": "srml_democracy::vote_threshold#VoteThreshold",
"display_name": "VoteThreshold"
}
],
"docs": []
},
{
"name": "Passed",
"args": [
{
"type_name": "u32",
"display_name": "ReferendumIndex"
}
],
"docs": []
},
{
"name": "NotPassed",
"args": [
{
"type_name": "u32",
"display_name": "ReferendumIndex"
}
],
"docs": []
},
{
"name": "Cancelled",
"args": [
{
"type_name": "u32",
"display_name": "ReferendumIndex"
}
],
"docs": []
},
{
"name": "Executed",
"args": [
{
"type_name": "u32",
"display_name": "ReferendumIndex"
},
{
"type_name": "bool",
"display_name": "bool"
}
],
"docs": []
}
]
},
{
"name": "council",
"prefix": "Council",
"storage": [
{
"name": "CandidacyBond",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "BalanceOf<T>"
}
},
"fallback": "0x09000000000000000000000000000000",
"docs": [
" How much should be locked up in order to submit one's candidacy."
]
},
{
"name": "VotingBond",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "BalanceOf<T>"
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" How much should be locked up in order to be able to submit votes."
]
},
{
"name": "PresentSlashPerVoter",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "BalanceOf<T>"
}
},
"fallback": "0x01000000000000000000000000000000",
"docs": [
" The punishment, per voter, if you provide an invalid presentation."
]
},
{
"name": "CarryCount",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "u32"
}
},
"fallback": "0x02000000",
"docs": [
" How many runners-up should have their approvals persist until the next vote."
]
},
{
"name": "PresentationDuration",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0xe803000000000000",
"docs": [
" How long to give each top candidate to present themselves after the vote ends."
]
},
{
"name": "InactiveGracePeriod",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "VoteIndex"
}
},
"fallback": "0x01000000",
"docs": [
" How many vote indexes need to go by after a target voter's last vote before they can be reaped if their",
" approvals are moot."
]
},
{
"name": "VotingPeriod",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0xe803000000000000",
"docs": [
" How often (in blocks) to check for new votes."
]
},
{
"name": "TermDuration",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x0500000000000000",
"docs": [
" How long each position is active for."
]
},
{
"name": "DesiredSeats",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "u32"
}
},
"fallback": "0x00000000",
"docs": [
" Number of accounts that should be sitting on the council."
]
},
{
"name": "ActiveCouncil",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<(sr_primitives#AccountId,u64)>",
"display_name": "Vec<(AccountId,BlockNumber)>"
}
},
"fallback": "0x00",
"docs": [
" The current council. When there's a vote going on, this should still be used for executive",
" matters. The block number (second element in the tuple) is the block that their position is",
" active until (calculated by the sum of the block number when the council member was elected",
" and their term duration)."
]
},
{
"name": "VoteCount",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "VoteIndex"
}
},
"fallback": "0x00000000",
"docs": [
" The total number of votes that have happened or are in progress."
]
},
{
"name": "ApprovalsOf",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "Vec<bool>",
"display_name": "Vec<bool>"
}
}
},
"fallback": "0x00",
"docs": [
" A list of votes for each voter, respecting the last cleared vote index that this voter was",
" last active at."
]
},
{
"name": "RegisterInfoOf",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "(u32,u32)",
"display_name": "(VoteIndex,u32)"
}
}
},
"fallback": "0x00",
"docs": [
" The vote index and list slot that the candidate `who` was registered or `None` if they are not",
" currently registered."
]
},
{
"name": "LastActiveOf",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
"value": {
"type_name": "u32",
"display_name": "VoteIndex"
}
}
},
"fallback": "0x00",
"docs": [
" The last cleared vote index that this voter was last active at."
]
},
{
"name": "Voters",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
},
"fallback": "0x00",
"docs": [
" The present voter list."
]
},
{
"name": "Candidates",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
},
"fallback": "0x00",
"docs": [
" The present candidate list."
]
},
{
"name": "CandidateCount",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "u32"
}
},
"fallback": "0x00000000",
"docs": []
},
{
"name": "NextFinalise",
"modifier": "Optional",
"type": {
"PlainType": {
"type_name": "(u64,u32,Vec<sr_primitives#AccountId>)",
"display_name": "(BlockNumber,u32,Vec<AccountId>)"
}
},
"fallback": "0x00",
"docs": [
" The accounts holding the seats that will become free on the next tally."
]
},
{
"name": "SnapshotedStakes",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<u128>",
"display_name": "Vec<BalanceOf<T>>"
}
},
"fallback": "0x00",
"docs": [
" The stakes as they were at the point that the vote ended."
]
},
{
"name": "Leaderboard",
"modifier": "Optional",
"type": {
"PlainType": {
"type_name": "Vec<(u128,sr_primitives#AccountId)>",
"display_name": "Vec<(BalanceOf<T>,AccountId)>"
}
},
"fallback": "0x00",
"docs": [
" Get the leaderboard if we;re in the presentation phase."
]
}
],
"calls": [
{
"name": "set_approvals",
"args": [
{
"name": "votes",
"type": {
"type_name": "Vec<bool>",
"display_name": "Vec<bool>"
}
},
{
"name": "index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<VoteIndex>"
}
}
],
"docs": [
" Set candidate approvals. Approval slots stay valid as long as candidates in those slots",
" are registered."
]
},
{
"name": "reap_inactive_voter",
"args": [
{
"name": "reporter_index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
},
{
"name": "who",
"type": {
"type_name": "srml_indices::address#Address",
"display_name": "Address"
}
},
{
"name": "who_index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
},
{
"name": "assumed_vote_index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<VoteIndex>"
}
}
],
"docs": [
" Remove a voter. For it not to be a bond-consuming no-op, all approved candidate indices",
" must now be either unregistered or registered to a candidate that registered the slot after",
" the voter gave their last approval set.",
"",
" May be called by anyone. Returns the voter deposit to `signed`."
]
},
{
"name": "retract_voter",
"args": [
{
"name": "index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
}
],
"docs": [
" Remove a voter. All votes are cancelled and the voter deposit is returned."
]
},
{
"name": "submit_candidacy",
"args": [
{
"name": "slot",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
}
],
"docs": [
" Submit oneself for candidacy.",
"",
" Account must have enough transferrable funds in it to pay the bond."
]
},
{
"name": "present_winner",
"args": [
{
"name": "candidate",
"type": {
"type_name": "srml_indices::address#Address",
"display_name": "Address"
}
},
{
"name": "total",
"type": {
"type_name": "Compact<u128>",
"display_name": "Compact<BalanceOf<T>>"
}
},
{
"name": "index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<VoteIndex>"
}
}
],
"docs": [
" Claim that `signed` is one of the top Self::carry_count() + current_vote().1 candidates.",
" Only works if the `block_number >= current_vote().0` and `< current_vote().0 + presentation_duration()``",
" `signed` should have at least"
]
},
{
"name": "set_desired_seats",
"args": [
{
"name": "count",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
}
],
"docs": [
" Set the desired member count; if lower than the current count, then seats will not be up",
" election when they expire. If more, then a new vote will be started if one is not already",
" in progress."
]
},
{
"name": "remove_member",
"args": [
{
"name": "who",
"type": {
"type_name": "srml_indices::address#Address",
"display_name": "Address"
}
}
],
"docs": [
" Remove a particular member. A tally will happen instantly (if not already in a presentation",
" period) to fill the seat if removal means that the desired members are not met.",
" This is effective immediately."
]
},
{
"name": "set_presentation_duration",
"args": [
{
"name": "count",
"type": {
"type_name": "Compact<u64>",
"display_name": "Compact<BlockNumber>"
}
}
],
"docs": [
" Set the presentation duration. If there is currently a vote being presented for, will",
" invoke `finalise_vote`."
]
},
{
"name": "set_term_duration",
"args": [
{
"name": "count",
"type": {
"type_name": "Compact<u64>",
"display_name": "Compact<BlockNumber>"
}
}
],
"docs": [
" Set the presentation duration. If there is current a vote being presented for, will",
" invoke `finalise_vote`."
]
}
],
"events": [
{
"name": "VoterReaped",
"args": [
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
}
],
"docs": [
" reaped voter, reaper"
]
},
{
"name": "BadReaperSlashed",
"args": [
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
}
],
"docs": [
" slashed reaper"
]
},
{
"name": "TallyStarted",
"args": [
{
"type_name": "u32",
"display_name": "u32"
}
],
"docs": [
" A tally (for approval votes of council seat(s)) has started."
]
},
{
"name": "TallyFinalised",
"args": [
{
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
},
{
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
],
"docs": [
" A tally (for approval votes of council seat(s)) has ended (with one or more new members)."
]
}
]
},
{
"name": "council_voting",
"prefix": "CouncilVoting",
"storage": [
{
"name": "CooloffPeriod",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0xe803000000000000",
"docs": []
},
{
"name": "VotingPeriod",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x0300000000000000",
"docs": []
},
{
"name": "EnactDelayPeriod",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x0000000000000000",
"docs": [
" Number of blocks by which to delay enactment of successful, non-unanimous-council-instigated referendum proposals."
]
},
{
"name": "Proposals",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<(u64,H256)>",
"display_name": "Vec<(BlockNumber,Hash)>"
}
},
"fallback": "0x00",
"docs": []
},
{
"name": "ProposalOf",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "H256",
"display_name": "Hash"
},
"value": {
"type_name": "node_runtime#Call",
"display_name": "Proposal"
}
}
},
"fallback": "0x00",
"docs": []
},
{
"name": "ProposalVoters",
"modifier": "Default",
"type": {
"MapType": {
"key": {
"type_name": "H256",
"display_name": "Hash"
},
"value": {
"type_name": "Vec<sr_primitives#AccountId>",
"display_name": "Vec<AccountId>"
}
}
},
"fallback": "0x00",
"docs": []
},
{
"name": "CouncilVoteOf",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "(H256,sr_primitives#AccountId)",
"display_name": "(Hash,AccountId)"
},
"value": {
"type_name": "bool",
"display_name": "bool"
}
}
},
"fallback": "0x00",
"docs": []
},
{
"name": "VetoedProposal",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "H256",
"display_name": "Hash"
},
"value": {
"type_name": "(u64,Vec<sr_primitives#AccountId>)",
"display_name": "(BlockNumber,Vec<AccountId>)"
}
}
},
"fallback": "0x00",
"docs": []
}
],
"calls": [
{
"name": "propose",
"args": [
{
"name": "proposal",
"type": {
"type_name": "node_runtime#Call",
"display_name": "Proposal"
}
}
],
"docs": []
},
{
"name": "vote",
"args": [
{
"name": "proposal",
"type": {
"type_name": "H256",
"display_name": "Hash"
}
},
{
"name": "approve",
"type": {
"type_name": "bool",
"display_name": "bool"
}
}
],
"docs": []
},
{
"name": "veto",
"args": [
{
"name": "proposal_hash",
"type": {
"type_name": "H256",
"display_name": "Hash"
}
}
],
"docs": []
},
{
"name": "set_cooloff_period",
"args": [
{
"name": "blocks",
"type": {
"type_name": "Compact<u64>",
"display_name": "Compact<BlockNumber>"
}
}
],
"docs": []
},
{
"name": "set_voting_period",
"args": [
{
"name": "blocks",
"type": {
"type_name": "Compact<u64>",
"display_name": "Compact<BlockNumber>"
}
}
],
"docs": []
}
],
"events": [
{
"name": "TallyCancelation",
"args": [
{
"type_name": "H256",
"display_name": "Hash"
},
{
"type_name": "u32",
"display_name": "u32"
},
{
"type_name": "u32",
"display_name": "u32"
},
{
"type_name": "u32",
"display_name": "u32"
}
],
"docs": [
" A voting tally has happened for a referendum cancellation vote.",
" Last three are yes, no, abstain counts."
]
},
{
"name": "TallyReferendum",
"args": [
{
"type_name": "H256",
"display_name": "Hash"
},
{
"type_name": "u32",
"display_name": "u32"
},
{
"type_name": "u32",
"display_name": "u32"
},
{
"type_name": "u32",
"display_name": "u32"
}
],
"docs": [
" A voting tally has happened for a referendum vote.",
" Last three are yes, no, abstain counts."
]
}
]
},
{
"name": "council_motions",
"prefix": "CouncilMotions",
"storage": [
{
"name": "Proposals",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<H256>",
"display_name": "Vec<Hash>"
}
},
"fallback": "0x00",
"docs": [
" The (hashes of) the active proposals."
]
},
{
"name": "ProposalOf",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "H256",
"display_name": "Hash"
},
"value": {
"type_name": "node_runtime#Call",
"display_name": "Proposal"
}
}
},
"fallback": "0x00",
"docs": [
" Actual proposal for a given hash, if it's current."
]
},
{
"name": "Voting",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "H256",
"display_name": "Hash"
},
"value": {
"type_name": "(u32,u32,Vec<sr_primitives#AccountId>,Vec<sr_primitives#AccountId>)",
"display_name": "(ProposalIndex,u32,Vec<AccountId>,Vec<AccountId>)"
}
}
},
"fallback": "0x00",
"docs": [
" Votes for a given proposal: (required_yes_votes, yes_voters, no_voters)."
]
},
{
"name": "ProposalCount",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "u32"
}
},
"fallback": "0x00000000",
"docs": [
" Proposals so far."
]
}
],
"calls": [
{
"name": "propose",
"args": [
{
"name": "threshold",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<u32>"
}
},
{
"name": "proposal",
"type": {
"type_name": "node_runtime#Call",
"display_name": "Proposal"
}
}
],
"docs": []
},
{
"name": "vote",
"args": [
{
"name": "proposal",
"type": {
"type_name": "H256",
"display_name": "Hash"
}
},
{
"name": "index",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<ProposalIndex>"
}
},
{
"name": "approve",
"type": {
"type_name": "bool",
"display_name": "bool"
}
}
],
"docs": []
}
],
"events": [
{
"name": "Proposed",
"args": [
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
{
"type_name": "u32",
"display_name": "ProposalIndex"
},
{
"type_name": "H256",
"display_name": "Hash"
},
{
"type_name": "u32",
"display_name": "u32"
}
],
"docs": [
" A motion (given hash) has been proposed (by given account) with a threshold (given u32)."
]
},
{
"name": "Voted",
"args": [
{
"type_name": "sr_primitives#AccountId",
"display_name": "AccountId"
},
{
"type_name": "H256",
"display_name": "Hash"
},
{
"type_name": "bool",
"display_name": "bool"
},
{
"type_name": "u32",
"display_name": "u32"
},
{
"type_name": "u32",
"display_name": "u32"
}
],
"docs": [
" A motion (given hash) has been voted on by given account, leaving",
" a tally (yes votes and no votes given as u32s respectively)."
]
},
{
"name": "Approved",
"args": [
{
"type_name": "H256",
"display_name": "Hash"
}
],
"docs": [
" A motion was approved by the required threshold."
]
},
{
"name": "Disapproved",
"args": [
{
"type_name": "H256",
"display_name": "Hash"
}
],
"docs": [
" A motion was not approved by the required threshold."
]
},
{
"name": "Executed",
"args": [
{
"type_name": "H256",
"display_name": "Hash"
},
{
"type_name": "bool",
"display_name": "bool"
}
],
"docs": [
" A motion was executed; `bool` is true if returned without error."
]
}
]
},
{
"name": "grandpa",
"prefix": "GrandpaFinality",
"storage": [
{
"name": "PendingChange",
"modifier": "Optional",
"type": {
"PlainType": {
"type_name": "srml_grandpa#StoredPendingChange<u64,substrate_primitives::authority_id#Ed25519AuthorityId>",
"display_name": "StoredPendingChange<BlockNumber,SessionKey>"
}
},
"fallback": "0x00",
"docs": []
}
],
"calls": [
{
"name": "report_misbehavior",
"args": [
{
"name": "_report",
"type": {
"type_name": "Vec<u8>",
"display_name": "Bytes"
}
}
],
"docs": [
" Report some misbehaviour."
]
}
],
"events": [
{
"name": "NewAuthorities",
"args": [
{
"type_name": "Vec<(substrate_primitives::authority_id#Ed25519AuthorityId,u64)>",
"display_name": "Vec<(SessionKey,u64)>"
}
],
"docs": [
" New authority set has been applied."
]
}
]
},
{
"name": "treasury",
"prefix": "Treasury",
"storage": [
{
"name": "ProposalBond",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "sr_primitives#Permill",
"display_name": "Permill"
}
},
"fallback": "0x00000000",
"docs": [
" Proportion of funds that should be bonded in order to place a proposal. An accepted",
" proposal gets these back. A rejected proposal doesn't."
]
},
{
"name": "ProposalBondMinimum",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "BalanceOf<T>"
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" Minimum amount of funds that should be placed in a deposit for making a proposal."
]
},
{
"name": "SpendPeriod",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u64",
"display_name": "BlockNumber"
}
},
"fallback": "0x0100000000000000",
"docs": [
" Period between successive spends."
]
},
{
"name": "Burn",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "sr_primitives#Permill",
"display_name": "Permill"
}
},
"fallback": "0x00000000",
"docs": [
" Percentage of spare funds (if any) that are burnt per spend period."
]
},
{
"name": "Pot",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u128",
"display_name": "BalanceOf<T>"
}
},
"fallback": "0x00000000000000000000000000000000",
"docs": [
" Total funds available to this module for spending."
]
},
{
"name": "ProposalCount",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "u32",
"display_name": "ProposalIndex"
}
},
"fallback": "0x00000000",
"docs": [
" Number of proposals that have been made."
]
},
{
"name": "Proposals",
"modifier": "Optional",
"type": {
"MapType": {
"key": {
"type_name": "u32",
"display_name": "ProposalIndex"
},
"value": {
"type_name": "srml_treasury#Proposal<sr_primitives#AccountId,u128>",
"display_name": "Proposal<AccountId,BalanceOf<T>>"
}
}
},
"fallback": "0x00",
"docs": [
" Proposals that have been made."
]
},
{
"name": "Approvals",
"modifier": "Default",
"type": {
"PlainType": {
"type_name": "Vec<u32>",
"display_name": "Vec<ProposalIndex>"
}
},
"fallback": "0x00",
"docs": [
" Proposal indices that have been approved but not yet awarded."
]
}
],
"calls": [
{
"name": "propose_spend",
"args": [
{
"name": "value",
"type": {
"type_name": "Compact<u128>",
"display_name": "Compact<BalanceOf<T>>"
}
},
{
"name": "beneficiary",
"type": {
"type_name": "srml_indices::address#Address",
"display_name": "Address"
}
}
],
"docs": [
" Put forward a suggestion for spending. A deposit proportional to the value",
" is reserved and slashed if the proposal is rejected. It is returned once the",
" proposal is awarded."
]
},
{
"name": "set_pot",
"args": [
{
"name": "new_pot",
"type": {
"type_name": "Compact<u128>",
"display_name": "Compact<BalanceOf<T>>"
}
}
],
"docs": [
" Set the balance of funds available to spend."
]
},
{
"name": "configure",
"args": [
{
"name": "proposal_bond",
"type": {
"type_name": "Compact<sr_primitives#Permill>",
"display_name": "Compact<Permill>"
}
},
{
"name": "proposal_bond_minimum",
"type": {
"type_name": "Compact<u128>",
"display_name": "Compact<BalanceOf<T>>"
}
},
{
"name": "spend_period",
"type": {
"type_name": "Compact<u64>",
"display_name": "Compact<BlockNumber>"
}
},
{
"name": "burn",
"type": {
"type_name": "Compact<sr_primitives#Permill>",
"display_name": "Compact<Permill>"
}
}
],
"docs": [
" (Re-)configure this module."
]
},
{
"name": "reject_proposal",
"args": [
{
"name": "proposal_id",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<ProposalIndex>"
}
}
],
"docs": [
" Reject a proposed spend. The original deposit will be slashed."
]
},
{
"name": "approve_proposal",
"args": [
{
"name": "proposal_id",
"type": {
"type_name": "Compact<u32>",
"display_name": "Compact<ProposalIndex>"
}
}
],
"docs": [
" Approve a proposal. At a later time, the proposal will be allocated to the beneficiary",
" and the original deposit will be returned."
]