types

package
v0.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 22, 2019 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Examples

Constants

View Source
const (
	ExtrinsicBitSigned      = 0x80
	ExtrinsicBitUnsigned    = 0
	ExtrinsicUnmaskVersion  = 0x7f
	ExtrinsicDefaultVersion = 1
	ExtrinsicVersionUnknown = 0 // v0 is unknown
	ExtrinsicVersion1       = 1
	ExtrinsicVersion2       = 2
	ExtrinsicVersion3       = 3
)
View Source
const MagicNumber uint32 = 0x6174656d

Variables

View Source
var ExamplaryExtrinsic = Extrinsic{Version: 0x83, Signature: ExtrinsicSignatureV3{Signer: Address{IsAccountID: true, AsAccountID: AccountID{0xd4, 0x35, 0x93, 0xc7, 0x15, 0xfd, 0xd3, 0x1c, 0x61, 0x14, 0x1a, 0xbd, 0x4, 0xa9, 0x9f, 0xd6, 0x82, 0x2c, 0x85, 0x58, 0x85, 0x4c, 0xcd, 0xe3, 0x9a, 0x56, 0x84, 0xe7, 0xa5, 0x6d, 0xa2, 0x7d}, IsAccountIndex: false, AsAccountIndex: 0x0}, Signature: Signature{0x5c, 0x77, 0x1d, 0xd5, 0x6a, 0xe0, 0xce, 0xed, 0x68, 0xd, 0xb3, 0xbb, 0x4c, 0x40, 0x7a, 0x38, 0x96, 0x99, 0x97, 0xae, 0xb6, 0xa, 0x2c, 0x62, 0x39, 0x1, 0x6, 0x2f, 0x7f, 0x8e, 0xbf, 0x2f, 0xe7, 0x73, 0x3a, 0x61, 0x3c, 0xf1, 0x6b, 0x78, 0xf6, 0x10, 0xc6, 0x52, 0x32, 0xa2, 0x3c, 0xc5, 0xce, 0x25, 0xda, 0x29, 0xa3, 0xd5, 0x84, 0x85, 0xd8, 0x7b, 0xd8, 0x3d, 0xb8, 0x18, 0x3f, 0x8}, Era: ExtrinsicEra{IsImmortalEra: true, IsMortalEra: false, AsMortalEra: MortalEra{First: 0x0, Second: 0x0}}, Nonce: 0x1, Tip: 0x2}, Method: Call{CallIndex: CallIndex{SectionIndex: 0x3, MethodIndex: 0x0}, Args: Args{0xff, 0x8e, 0xaf, 0x4, 0x15, 0x16, 0x87, 0x73, 0x63, 0x26, 0xc9, 0xfe, 0xa1, 0x7e, 0x25, 0xfc, 0x52, 0x87, 0x61, 0x36, 0x93, 0xc9, 0x12, 0x90, 0x9c, 0xb2, 0x26, 0xaa, 0x47, 0x94, 0xf2, 0x6a, 0x48, 0xe5, 0x6c}}} //nolint:lll
View Source
var ExamplaryHeader = Header{ParentHash: Hash{0xf6, 0xe0, 0xf9, 0xd, 0x27, 0x57, 0x8a, 0x18, 0xfc, 0x22, 0xcf, 0x10, 0x83, 0x3d, 0x7f, 0xb2, 0x86, 0xf9, 0x78, 0xce, 0x4e, 0x41, 0x1e, 0x87, 0xb2, 0x19, 0xc1, 0xd4, 0x98, 0xf6, 0xd3, 0x2c}, Number: 0xa, StateRoot: Hash{0x2e, 0x5e, 0x1e, 0xa0, 0x5f, 0xcd, 0xec, 0xca, 0xa, 0xa, 0xf0, 0xe9, 0x8d, 0xc5, 0xc3, 0x20, 0xcb, 0x62, 0x13, 0xad, 0xc2, 0x1f, 0x4f, 0xad, 0x2c, 0xf, 0xfc, 0x74, 0x7a, 0x18, 0x64, 0xc}, ExtrinsicsRoot: Hash{0xc4, 0x5f, 0x66, 0x5d, 0x47, 0xe4, 0x8e, 0x54, 0xf, 0x1c, 0x89, 0xd8, 0x7e, 0x8, 0x79, 0xb8, 0x0, 0x53, 0x34, 0xf0, 0x6e, 0x53, 0x7d, 0xaa, 0x7c, 0xe8, 0xab, 0x51, 0xcc, 0x12, 0x39, 0x1b}, Digest: Digest{DigestItem{IsOther: false, AsOther: Bytes(nil), IsAuthoritiesChange: false, AsAuthoritiesChange: []AuthorityID(nil), IsChangesTrieRoot: false, AsChangesTrieRoot: Hash{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, IsSealV0: false, AsSealV0: SealV0{Signer: 0x0, Signature: Signature{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, IsConsensus: false, AsConsensus: Consensus{ConsensusEngineID: 0x0, Bytes: Bytes(nil)}, IsSeal: false, AsSeal: Seal{ConsensusEngineID: 0x0, Bytes: Bytes(nil)}, IsPreRuntime: true, AsPreRuntime: PreRuntime{ConsensusEngineID: 0x45424142, Bytes: Bytes{0x2, 0x0, 0x0, 0x0, 0x0, 0xd9, 0xe8, 0x33, 0x1f, 0x0, 0x0, 0x0, 0x0}}}, DigestItem{IsOther: false, AsOther: Bytes(nil), IsAuthoritiesChange: false, AsAuthoritiesChange: []AuthorityID(nil), IsChangesTrieRoot: false, AsChangesTrieRoot: Hash{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, IsSealV0: false, AsSealV0: SealV0{Signer: 0x0, Signature: Signature{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}, IsConsensus: false, AsConsensus: Consensus{ConsensusEngineID: 0x0, Bytes: Bytes(nil)}, IsSeal: true, AsSeal: Seal{ConsensusEngineID: 0x45424142, Bytes: Bytes{0xaa, 0x3f, 0x2f, 0x1, 0x50, 0x15, 0x4a, 0x9a, 0x6c, 0xe6, 0xb8, 0xf5, 0x18, 0x28, 0x8b, 0xc2, 0x92, 0xb2, 0x1, 0xf8, 0x36, 0x32, 0xdc, 0xf9, 0xeb, 0xd, 0x2d, 0x0, 0x5a, 0x38, 0xde, 0x2a, 0xa3, 0x67, 0x45, 0x31, 0xc7, 0x4, 0x46, 0x4e, 0xe6, 0x76, 0x88, 0x76, 0x83, 0x68, 0xba, 0xb8, 0x40, 0x11, 0x7, 0x6a, 0x35, 0xe8, 0xe6, 0xdd, 0x4a, 0xf5, 0x9d, 0xb4, 0x15, 0x5, 0x2f, 0x8d}}, IsPreRuntime: false, AsPreRuntime: PreRuntime{ConsensusEngineID: 0x0, Bytes: Bytes(nil)}}}} //nolint:lll
View Source
var ExamplaryMetadataV4 = &Metadata{MagicNumber: 0x6174656d, Version: 0x4, IsMetadataV4: true, AsMetadataV4: MetadataV4{Modules: []ModuleMetadataV4{{Name: "system", Prefix: "System", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "AccountNonce", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::Index", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Extrinsics nonce for accounts."}}, {Name: "ExtrinsicCount", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Total extrinsics count for the current block."}}, {Name: "AllExtrinsicsLen", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Total length in bytes for all extrinsics put together, for the current block."}}, {Name: "BlockHash", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::BlockNumber", Value: "T::Hash", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Map of block numbers to block hashes."}}, {Name: "ExtrinsicData", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "u32", Value: "Vec<u8>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Extrinsics data for the current block (maps extrinsic's index to its data)."}}, {Name: "RandomSeed", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Hash", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Random seed of the current block."}}, {Name: "Number", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The current block number being processed. Set by `execute_block`."}}, {Name: "ParentHash", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Hash", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Hash of the previous block."}}, {Name: "ExtrinsicsRoot", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Hash", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Extrinsics root of the current block, also part of the block header."}}, {Name: "Digest", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Digest", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Digest of the current block, also part of the block header."}}, {Name: "Events", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<EventRecord<T::Event>>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Events deposited for the current block."}}}, HasCalls: false, Calls: []FunctionMetadataV4(nil), HasEvents: true, Events: []EventMetadataV4{{Name: "ExtrinsicSuccess", Args: []Type(nil), Documentation: []Text{" An extrinsic completed successfully."}}, {Name: "ExtrinsicFailed", Args: []Type(nil), Documentation: []Text{" An extrinsic failed."}}}}, {Name: "aura", Prefix: "", HasStorage: false, Storage: []StorageFunctionMetadataV4(nil), HasCalls: false, Calls: []FunctionMetadataV4(nil), HasEvents: false, Events: []EventMetadataV4(nil)}, {Name: "timestamp", Prefix: "Timestamp", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "Now", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Moment", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Current time for the current block."}}, {Name: "BlockPeriod", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Moment", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Old storage item provided for compatibility. Remove after all networks upgraded."}}, {Name: "MinimumPeriod", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Moment", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The minimum period between blocks. Beware that this is different to the *expected* period", " that the block production apparatus provides. Your chosen consensus system will generally", " work with this to determine a sensible block time. e.g. For Aura, it will be double this", " period on default settings."}}, {Name: "DidUpdate", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "bool", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Did the timestamp get updated in this block?"}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "set", Args: []FunctionArgumentMetadata{{Name: "now", Type: "Compact<T::Moment>"}}, Documentation: []Text{" Set the current time.", "", " 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 `minimum_period`.", "", " The dispatch origin for this call must be `Inherent`."}}}, HasEvents: false, Events: []EventMetadataV4(nil)}, {Name: "consensus", Prefix: "Consensus", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "OriginalAuthorities", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<T::SessionKey>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text(nil)}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "report_misbehavior", Args: []FunctionArgumentMetadata{{Name: "_report", Type: "Vec<u8>"}}, Documentation: []Text{" Report some misbehavior."}}, {Name: "note_offline", Args: []FunctionArgumentMetadata{{Name: "offline", Type: "<T::InherentOfflineReport as InherentOfflineReport>::Inherent"}}, Documentation: []Text{" Note that the previous block's validator missed its opportunity to propose a block."}}, {Name: "remark", Args: []FunctionArgumentMetadata{{Name: "_remark", Type: "Vec<u8>"}}, Documentation: []Text{" Make some on-chain remark."}}, {Name: "set_heap_pages", Args: []FunctionArgumentMetadata{{Name: "pages", Type: "u64"}}, Documentation: []Text{" Set the number of pages in the WebAssembly environment's heap."}}, {Name: "set_code", Args: []FunctionArgumentMetadata{{Name: "new", Type: "Vec<u8>"}}, Documentation: []Text{" Set the new code."}}, {Name: "set_storage", Args: []FunctionArgumentMetadata{{Name: "items", Type: "Vec<KeyValue>"}}, Documentation: []Text{" Set some items of storage."}}, {Name: "kill_storage", Args: []FunctionArgumentMetadata{{Name: "keys", Type: "Vec<Key>"}}, Documentation: []Text{" Kill some items from storage."}}}, HasEvents: false, Events: []EventMetadataV4(nil)}, {Name: "indices", Prefix: "Indices", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "NextEnumSet", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::AccountIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The next free enumeration set."}}, {Name: "EnumSet", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountIndex", Value: "Vec<T::AccountId>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The enumeration sets."}}}, HasCalls: true, Calls: []FunctionMetadataV4(nil), HasEvents: true, Events: []EventMetadataV4{{Name: "NewAccountIndex", Args: []Type{"AccountId", "AccountIndex"}, Documentation: []Text{" A new account index was assigned.", "", " This event is not triggered when an existing index is reassigned", " to another `AccountId`."}}}}, {Name: "balances", Prefix: "Balances", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "TotalIssuance", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Balance", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The total units issued in the system."}}, {Name: "ExistentialDeposit", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Balance", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The minimum amount required to keep an account open."}}, {Name: "TransferFee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Balance", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee required to make a transfer."}}, {Name: "CreationFee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Balance", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee required to create an account."}}, {Name: "TransactionBaseFee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Balance", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee to be paid for making a transaction; the base."}}, {Name: "TransactionByteFee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Balance", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee to be paid for making a transaction; the per-byte portion."}}, {Name: "Vesting", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "VestingSchedule<T::Balance>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Information regarding the vesting of a given account."}}, {Name: "FreeBalance", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::Balance", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The 'free' balance of a given account.", "", " This is the only balance that matters in terms of most operations on tokens. It", " alone is 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`. Further, the `OnFreeBalanceZero` callback", " is invoked, giving a chance to external modules to clean up 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: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::Balance", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" 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.", "", " 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`.)"}}, {Name: "Locks", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "Vec<BalanceLock<T::Balance, T::BlockNumber>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Any liquidity locks on some account balances."}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "transfer", Args: []FunctionArgumentMetadata{{Name: "dest", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "value", Type: "Compact<T::Balance>"}}, Documentation: []Text{" Transfer some liquid free balance to another account.", "", " `transfer` will set the `FreeBalance` of the sender and receiver.", " It will decrease the total issuance of the system by the `TransferFee`.", " If the sender's account is below the existential deposit as a result", " of the transfer, the account will be reaped.", "", " The dispatch origin for this call must be `Signed` by the transactor."}}, {Name: "set_balance", Args: []FunctionArgumentMetadata{{Name: "who", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "free", Type: "Compact<T::Balance>"}, {Name: "reserved", Type: "Compact<T::Balance>"}}, Documentation: []Text{" Set the balances of a given account.", "", " This will alter `FreeBalance` and `ReservedBalance` in storage.", " If the new free or reserved balance is below the existential deposit,", " it will also decrease the total issuance of the system (`TotalIssuance`)", " and reset the account nonce (`system::AccountNonce`).", "", " The dispatch origin for this call is `root`."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "NewAccount", Args: []Type{"AccountId", "Balance"}, Documentation: []Text{" A new account was created."}}, {Name: "ReapedAccount", Args: []Type{"AccountId"}, Documentation: []Text{" An account was reaped."}}, {Name: "Transfer", Args: []Type{"AccountId", "AccountId", "Balance", "Balance"}, Documentation: []Text{" Transfer succeeded (from, to, value, fees)."}}}}, {Name: "session", Prefix: "Session", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "Validators", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<T::AccountId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The current set of validators."}}, {Name: "SessionLength", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0xe8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Current length of the session."}}, {Name: "CurrentIndex", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Current index of the session."}}, {Name: "CurrentStart", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Moment", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Timestamp when current session started."}}, {Name: "ForcingNewSession", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "bool", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" New session is being forced if 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: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Block at which the session length last changed."}}, {Name: "NextKeyFor", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::SessionKey", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The next key for a given validator."}}, {Name: "NextSessionLength", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The next session length."}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "set_key", Args: []FunctionArgumentMetadata{{Name: "key", Type: "T::SessionKey"}}, Documentation: []Text{" Sets the session key of `_validator` to `_key`. This doesn't take effect until the next", " session."}}, {Name: "set_length", Args: []FunctionArgumentMetadata{{Name: "new", Type: "Compact<T::BlockNumber>"}}, Documentation: []Text{" Set a new session length. Won't kick in until the next session change (at current length)."}}, {Name: "force_new_session", Args: []FunctionArgumentMetadata{{Name: "apply_rewards", Type: "bool"}}, Documentation: []Text{" Forces a new session."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "NewSession", Args: []Type{"BlockNumber"}, Documentation: []Text{" 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", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "ValidatorCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The ideal number of staking participants."}}, {Name: "MinimumValidatorCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x4, 0x0, 0x0, 0x0}, Documentation: []Text{" Minimum number of staking participants before emergency conditions are imposed."}}, {Name: "SessionsPerEra", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0xe8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The length of a staking era in sessions."}}, {Name: "SessionReward", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Perbill", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x3c, 0x0, 0x0, 0x0}, Documentation: []Text{" Maximum reward, per validator, that is provided per acceptable session."}}, {Name: "OfflineSlash", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Perbill", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x40, 0x42, 0xf, 0x0}, Documentation: []Text{" Slash, per validator that is taken for the first time they are found to be offline."}}, {Name: "OfflineSlashGrace", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of instances of offline reports before slashing begins for validators."}}, {Name: "BondingDuration", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0xe8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The length of the bonding duration in blocks."}}, {Name: "Invulnerables", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<T::AccountId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Any validators that may never be slashed or forcibly kicked. It's a Vec since they're easy to initialize", " and the performance hit is minimal (we expect no more than four invulnerables) and restricted to testnets."}}, {Name: "Bonded", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::AccountId", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Map from all locked \"stash\" accounts to the controller account."}}, {Name: "Ledger", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "StakingLedger<T::AccountId, BalanceOf<T>, T::BlockNumber>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Map from all (unlocked) \"controller\" accounts to the info regarding the staking."}}, {Name: "Payee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "RewardDestination", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Where the reward payment should be made. Keyed by stash."}}, {Name: "Validators", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "ValidatorPrefs<BalanceOf<T>>", Linked: true}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0xc, 0x0}, Documentation: []Text{" The map from (wannabe) validator stash key to the preferences of that validator."}}, {Name: "Nominators", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "Vec<T::AccountId>", Linked: true}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The map from nominator stash key to the set of stash keys of all validators to nominate."}}, {Name: "Stakers", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "Exposure<T::AccountId, BalanceOf<T>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0}, Documentation: []Text{" Nominators for a particular account that is in action right now. You can't iterate through validators here,", " but you can find them in the `sessions` module.", "", " This is keyed by the stash account."}}, {Name: "CurrentElected", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<T::AccountId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The currently elected validator set keyed by stash account ID."}}, {Name: "CurrentEra", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The current era index."}}, {Name: "CurrentSessionReward", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Maximum reward, per validator, that is provided per acceptable session."}}, {Name: "CurrentEraReward", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The accumulated reward for the current era. Reset to zero at the beginning of the era and", " increased for every successfully finished session."}}, {Name: "NextSessionsPerEra", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The next value of sessions per era."}}, {Name: "LastEraLengthChange", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The session index at which the era length last changed."}}, {Name: "SlotStake", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The amount of balance actively at stake for each validator slot, currently.", "", " This is used to derive rewards and punishments."}}, {Name: "SlashCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "u32", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The number of times a given validator has been reported offline. This gets decremented by one each era that passes."}}, {Name: "ForcingNewEra", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "()", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" We are forcing a new era."}}, {Name: "RecentlyOffline", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<(T::AccountId, T::BlockNumber, u32)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Most recent `RECENT_OFFLINE_COUNT` instances. (who it was, when it was reported, how many instances they were offline for)."}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "bond", Args: []FunctionArgumentMetadata{{Name: "controller", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "value", Type: "Compact<BalanceOf<T>>"}, {Name: "payee", Type: "RewardDestination"}}, Documentation: []Text{" Take the origin account as a stash and lock up `value` of its balance. `controller` will be the", " account that controls it.", "", " The dispatch origin for this call must be _Signed_ by the stash account."}}, {Name: "bond_extra", Args: []FunctionArgumentMetadata{{Name: "max_additional", Type: "Compact<BalanceOf<T>>"}}, Documentation: []Text{" Add some extra amount that have appeared in the stash `free_balance` into the balance up for", " staking.", "", " Use this if there are additional funds in your stash account that you wish to bond.", "", " The dispatch origin for this call must be _Signed_ by the stash, not the controller."}}, {Name: "unbond", Args: []FunctionArgumentMetadata{{Name: "value", Type: "Compact<BalanceOf<T>>"}}, Documentation: []Text{" Schedule a portion of the stash to be unlocked ready for transfer out after the bond", " period ends. If this leaves an amount actively bonded less than", " T::Currency::existential_deposit(), then it is increased to the full amount.", "", " Once the unlock period is done, you can call `withdraw_unbonded` to actually move", " the funds out of management ready for transfer.", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash.", "", " See also [`Call::withdraw_unbonded`]."}}, {Name: "withdraw_unbonded", Args: []FunctionArgumentMetadata(nil), Documentation: []Text{" Remove any unlocked chunks from the `unlocking` queue from our management.", "", " This essentially frees up that balance to be used by the stash account to do", " whatever it wants.", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash.", "", " See also [`Call::unbond`]."}}, {Name: "validate", Args: []FunctionArgumentMetadata{{Name: "prefs", Type: "ValidatorPrefs<BalanceOf<T>>"}}, Documentation: []Text{" Declare the desire to validate for the origin controller.", "", " Effects will be felt at the beginning of the next era.", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash."}}, {Name: "nominate", Args: []FunctionArgumentMetadata{{Name: "targets", Type: "Vec<<T::Lookup as StaticLookup>::Source>"}}, Documentation: []Text{" Declare the desire to nominate `targets` for the origin controller.", "", " Effects will be felt at the beginning of the next era.", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash."}}, {Name: "chill", Args: []FunctionArgumentMetadata(nil), Documentation: []Text{" Declare no desire to either validate or nominate.", "", " Effects will be felt at the beginning of the next era.", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash."}}, {Name: "set_payee", Args: []FunctionArgumentMetadata{{Name: "payee", Type: "RewardDestination"}}, Documentation: []Text{" (Re-)set the payment target for a controller.", "", " Effects will be felt at the beginning of the next era.", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash."}}, {Name: "set_controller", Args: []FunctionArgumentMetadata{{Name: "controller", Type: "<T::Lookup as StaticLookup>::Source"}}, Documentation: []Text{" (Re-)set the payment target for a controller.", "", " Effects will be felt at the beginning of the next era.", "", " The dispatch origin for this call must be _Signed_ by the stash, not the controller."}}, {Name: "set_sessions_per_era", Args: []FunctionArgumentMetadata{{Name: "new", Type: "Compact<T::BlockNumber>"}}, Documentation: []Text{" Set the number of sessions in an era."}}, {Name: "set_bonding_duration", Args: []FunctionArgumentMetadata{{Name: "new", Type: "Compact<T::BlockNumber>"}}, Documentation: []Text{" The length of the bonding duration in eras."}}, {Name: "set_validator_count", Args: []FunctionArgumentMetadata{{Name: "new", Type: "Compact<u32>"}}, Documentation: []Text{" The ideal number of validators."}}, {Name: "force_new_era", Args: []FunctionArgumentMetadata{{Name: "apply_rewards", Type: "bool"}}, Documentation: []Text{" 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: []FunctionArgumentMetadata{{Name: "new", Type: "Compact<u32>"}}, Documentation: []Text{" Set the offline slash grace period."}}, {Name: "set_invulnerables", Args: []FunctionArgumentMetadata{{Name: "validators", Type: "Vec<T::AccountId>"}}, Documentation: []Text{" Set the validators who cannot be slashed (if any)."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Reward", Args: []Type{"Balance"}, Documentation: []Text{" All validators have been rewarded by the given balance."}}, {Name: "OfflineWarning", Args: []Type{"AccountId", "u32"}, Documentation: []Text{" 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{"AccountId", "Balance"}, Documentation: []Text{" One validator (and their nominators) has been slashed by the given amount."}}}}, {Name: "democracy", Prefix: "Democracy", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "PublicPropCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "PropIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The number of (public) proposals that have been made so far."}}, {Name: "PublicProps", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<(PropIndex, T::Proposal, T::AccountId)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The public proposals. Unsorted. `T::AccountId` refers to the account that proposed."}}, {Name: "DepositOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "PropIndex", Value: "(BalanceOf<T>, Vec<T::AccountId>)", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Those who have locked a deposit."}}, {Name: "LaunchPeriod", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0xe8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" How often (in blocks) new public referenda are launched."}}, {Name: "MinimumDeposit", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The minimum amount to be used as a deposit for a public referendum proposal."}}, {Name: "PublicDelay", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The delay before enactment for all public referenda."}}, {Name: "MaxLockPeriods", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "LockPeriods", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The maximum number of additional lock periods a voter may offer to strengthen their vote."}}, {Name: "VotingPeriod", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0xe8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" How often (in blocks) to check for new votes."}}, {Name: "ReferendumCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "ReferendumIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The next free referendum index, aka the number of referenda started so far."}}, {Name: "NextTally", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "ReferendumIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The next referendum index that should be tallied."}}, {Name: "ReferendumInfoOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "ReferendumIndex", Value: "(ReferendumInfo<T::BlockNumber, T::Proposal>)", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Information concerning any given referendum."}}, {Name: "DispatchQueue", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::BlockNumber", Value: "Vec<Option<(T::Proposal, ReferendumIndex)>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Queue of successful referenda to be dispatched."}}, {Name: "VotersFor", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "ReferendumIndex", Value: "Vec<T::AccountId>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Get the voters for the current proposal."}}, {Name: "VoteOf", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "(ReferendumIndex, T::AccountId)", Value: "Vote", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" 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."}}, {Name: "Proxy", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::AccountId", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Who is able to vote for whom. Value is the fund-holding account, key is the vote-transaction-sending account."}}, {Name: "Delegations", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "(T::AccountId, LockPeriods)", Linked: true}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Get the account (and lock periods) to which another account is delegating vote."}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "propose", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Box<T::Proposal>"}, {Name: "value", Type: "Compact<BalanceOf<T>>"}}, Documentation: []Text{" Propose a sensitive action to be taken."}}, {Name: "second", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Compact<PropIndex>"}}, Documentation: []Text{" Second (sponsor) a proposal."}}, {Name: "vote", Args: []FunctionArgumentMetadata{{Name: "ref_index", Type: "Compact<ReferendumIndex>"}, {Name: "vote", Type: "Vote"}}, Documentation: []Text{" Vote on a referendum. If `vote.is_aye`, the vote is to enact the proposal;", " otherwise it is a vote to keep the status quo."}}, {Name: "proxy_vote", Args: []FunctionArgumentMetadata{{Name: "ref_index", Type: "Compact<ReferendumIndex>"}, {Name: "vote", Type: "Vote"}}, Documentation: []Text{" Vote on a referendum using a proxy account on behalf of a stash account. 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: []FunctionArgumentMetadata{{Name: "proposal", Type: "Box<T::Proposal>"}, {Name: "threshold", Type: "VoteThreshold"}, {Name: "delay", Type: "T::BlockNumber"}}, Documentation: []Text{" Start a referendum."}}, {Name: "cancel_referendum", Args: []FunctionArgumentMetadata{{Name: "ref_index", Type: "Compact<ReferendumIndex>"}}, Documentation: []Text{" Remove a referendum."}}, {Name: "cancel_queued", Args: []FunctionArgumentMetadata{{Name: "when", Type: "Compact<T::BlockNumber>"}, {Name: "which", Type: "Compact<u32>"}}, Documentation: []Text{" Cancel a proposal queued for enactment."}}, {Name: "set_proxy", Args: []FunctionArgumentMetadata{{Name: "proxy", Type: "T::AccountId"}}, Documentation: []Text{" Specify a proxy. Called by the stash."}}, {Name: "resign_proxy", Args: []FunctionArgumentMetadata(nil), Documentation: []Text{" Clear the proxy. Called by the proxy."}}, {Name: "remove_proxy", Args: []FunctionArgumentMetadata{{Name: "proxy", Type: "T::AccountId"}}, Documentation: []Text{" Clear the proxy. Called by the stash."}}, {Name: "delegate", Args: []FunctionArgumentMetadata{{Name: "to", Type: "T::AccountId"}, {Name: "lock_periods", Type: "LockPeriods"}}, Documentation: []Text{" Delegate vote."}}, {Name: "undelegate", Args: []FunctionArgumentMetadata(nil), Documentation: []Text{" Undelegate vote."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Proposed", Args: []Type{"PropIndex", "Balance"}, Documentation: []Text(nil)}, {Name: "Tabled", Args: []Type{"PropIndex", "Balance", "Vec<AccountId>"}, Documentation: []Text(nil)}, {Name: "Started", Args: []Type{"ReferendumIndex", "VoteThreshold"}, Documentation: []Text(nil)}, {Name: "Passed", Args: []Type{"ReferendumIndex"}, Documentation: []Text(nil)}, {Name: "NotPassed", Args: []Type{"ReferendumIndex"}, Documentation: []Text(nil)}, {Name: "Cancelled", Args: []Type{"ReferendumIndex"}, Documentation: []Text(nil)}, {Name: "Executed", Args: []Type{"ReferendumIndex", "bool"}, Documentation: []Text(nil)}, {Name: "Delegated", Args: []Type{"AccountId", "AccountId"}, Documentation: []Text(nil)}, {Name: "Undelegated", Args: []Type{"AccountId"}, Documentation: []Text(nil)}}}, {Name: "council", Prefix: "Council", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "CandidacyBond", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x9, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Amount that must be locked up in order to submit one's candidacy."}}, {Name: "VotingBond", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Amount that must be locked up in order to be able to submit votes."}}, {Name: "PresentSlashPerVoter", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The punishment, per voter, if you provide an invalid presentation."}}, {Name: "CarryCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x2, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of runners-up who should have their approvals persist until the next vote."}}, {Name: "PresentationDuration", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0xe8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of blocks to give each top candidate to present themselves after the vote ends."}}, {Name: "InactiveGracePeriod", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "VoteIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x1, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of vote indices that need to go by after a target voter's last vote before they can", " be reaped if their approvals are moot."}}, {Name: "VotingPeriod", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0xe8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" How often (in blocks) to check for new votes."}}, {Name: "TermDuration", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" How long (in blocks) each position is active for."}}, {Name: "DesiredSeats", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of accounts that should be sitting on the council."}}, {Name: "ActiveCouncil", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<(T::AccountId, T::BlockNumber)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The current council. When there's a vote going on, this should still be used for executive", " matters. The block number is the block that the associated account ID's 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: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "VoteIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The total number of votes that have happened or are in progress."}}, {Name: "ApprovalsOf", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "Vec<bool>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" A list of votes for each voter, respecting the last cleared vote index that this voter was", " last active at."}}, {Name: "RegisterInfoOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "(VoteIndex, u32)", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The vote index and list slot in which the candidate account ID was registered or `None` if", " they are not currently registered."}}, {Name: "LastActiveOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "VoteIndex", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The last cleared vote index that this voter was last active at."}}, {Name: "Voters", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<T::AccountId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The present voter list."}}, {Name: "Candidates", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<T::AccountId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The present candidate list."}}, {Name: "CandidateCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of candidates."}}, {Name: "NextFinalize", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "(T::BlockNumber, u32, Vec<T::AccountId>)", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The accounts holding the seats that will become free on the next tally. Tuple of the block number", " at which the next tally will occur, the number of seats, and a list of the account IDs."}}, {Name: "SnapshotedStakes", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<BalanceOf<T>>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The stakes as they were at the point that the vote ended."}}, {Name: "Leaderboard", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<(BalanceOf<T>, T::AccountId)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Get the leaderboard if we're in the presentation phase."}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "set_approvals", Args: []FunctionArgumentMetadata{{Name: "votes", Type: "Vec<bool>"}, {Name: "index", Type: "Compact<VoteIndex>"}}, Documentation: []Text{" Set candidate approvals. Approval slots stay valid as long as candidates in those slots", " are registered."}}, {Name: "proxy_set_approvals", Args: []FunctionArgumentMetadata{{Name: "votes", Type: "Vec<bool>"}, {Name: "index", Type: "Compact<VoteIndex>"}}, Documentation: []Text{" Set candidate approvals from a proxy. Approval slots stay valid as long as candidates in those slots", " are registered."}}, {Name: "reap_inactive_voter", Args: []FunctionArgumentMetadata{{Name: "reporter_index", Type: "Compact<u32>"}, {Name: "who", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "who_index", Type: "Compact<u32>"}, {Name: "assumed_vote_index", Type: "Compact<VoteIndex>"}}, Documentation: []Text{" 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: []FunctionArgumentMetadata{{Name: "index", Type: "Compact<u32>"}}, Documentation: []Text{" Remove a voter. All votes are cancelled and the voter deposit is returned."}}, {Name: "submit_candidacy", Args: []FunctionArgumentMetadata{{Name: "slot", Type: "Compact<u32>"}}, Documentation: []Text{" Submit oneself for candidacy.", "", " Account must have enough transferrable funds in it to pay the bond."}}, {Name: "present_winner", Args: []FunctionArgumentMetadata{{Name: "candidate", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "total", Type: "Compact<BalanceOf<T>>"}, {Name: "index", Type: "Compact<VoteIndex>"}}, Documentation: []Text{" Present a candidate to be inserted into the leaderboard.", "", " The presenter (`origin`) must be slashable and will be slashed in the cases", " of an incorrect total or a duplicate presentation."}}, {Name: "set_desired_seats", Args: []FunctionArgumentMetadata{{Name: "count", Type: "Compact<u32>"}}, Documentation: []Text{" Set the desired member count; if less than or equal to the number of seats to be retained,", " then seats will not be up for election when they expire. If more, then a new vote will be", " started if one is not already in progress."}}, {Name: "remove_member", Args: []FunctionArgumentMetadata{{Name: "who", Type: "<T::Lookup as StaticLookup>::Source"}}, Documentation: []Text{" 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 number of members is not met.", " This is effective immediately."}}, {Name: "set_presentation_duration", Args: []FunctionArgumentMetadata{{Name: "count", Type: "Compact<T::BlockNumber>"}}, Documentation: []Text{" Set the presentation duration (number of blocks)."}}, {Name: "set_term_duration", Args: []FunctionArgumentMetadata{{Name: "count", Type: "Compact<T::BlockNumber>"}}, Documentation: []Text{" Set the term duration (number of blocks)."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "VoterReaped", Args: []Type{"AccountId", "AccountId"}, Documentation: []Text{" A voter has been reaped. The tuple corresponds to the reaped voter and reaper, respectively."}}, {Name: "BadReaperSlashed", Args: []Type{"AccountId"}, Documentation: []Text{" A reaper has been slashed."}}, {Name: "TallyStarted", Args: []Type{"u32"}, Documentation: []Text{" A tally (for approval votes of council seat(s)) has started."}}, {Name: "TallyFinalized", Args: []Type{"Vec<AccountId>", "Vec<AccountId>"}, Documentation: []Text{" A tally (for approval votes of council seat(s)) has ended (with one or more new members)."}}}}, {Name: "council_voting", Prefix: "CouncilVoting", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "CooloffPeriod", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0xe8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Period (in blocks) that a veto is in effect."}}, {Name: "VotingPeriod", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Period (in blocks) that a vote is open for."}}, {Name: "EnactDelayPeriod", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of blocks by which to delay enactment of successful,", " non-unanimous, council-instigated referendum proposals."}}, {Name: "Proposals", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<(T::BlockNumber, T::Hash)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" A list of proposals by block number and proposal ID."}}, {Name: "ProposalOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::Hash", Value: "T::Proposal", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Map from proposal ID to the proposal."}}, {Name: "ProposalVoters", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::Hash", Value: "Vec<T::AccountId>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" List of voters that have voted on a proposal ID."}}, {Name: "CouncilVoteOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "(T::Hash, T::AccountId)", Value: "bool", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Map from a proposal ID and voter to the outcome of the vote. True indicates that it passed."}}, {Name: "VetoedProposal", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::Hash", Value: "(T::BlockNumber, Vec<T::AccountId>)", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" A veto of a proposal. The veto has an expiry (block number) and a list of vetoers."}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "propose", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Box<T::Proposal>"}}, Documentation: []Text{" Make a proposal.", "", " A councillor vote of yay from `origin` is applied by default.", "", " The dispatch origin of this call must be signed by a _councillor_ by the time", " the proposal is subject to voting. See [`voting_period`](./voting/struct.VotingPeriod.html)."}}, {Name: "vote", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "T::Hash"}, {Name: "approve", Type: "bool"}}, Documentation: []Text{" Vote on a proposal.", "", " The dispatch origin of this call must be signed by a _councillor_."}}, {Name: "veto", Args: []FunctionArgumentMetadata{{Name: "proposal_hash", Type: "T::Hash"}}, Documentation: []Text{" Veto a proposal.", "", " A proposal cannot be vetoed while in the cooloff period.", " A proposal cannot be vetoed twice by the same account.", "", " The proposal information, including voters, is removed and only veto information is kept", " to indicate when the proposal can be re-proposed, and to make sure that no single councillor", " can veto it twice.", "", " The dispatch origin of this call must be signed by a _councillor_."}}, {Name: "set_cooloff_period", Args: []FunctionArgumentMetadata{{Name: "blocks", Type: "Compact<T::BlockNumber>"}}, Documentation: []Text{" Set the cooloff period."}}, {Name: "set_voting_period", Args: []FunctionArgumentMetadata{{Name: "blocks", Type: "Compact<T::BlockNumber>"}}, Documentation: []Text{" Set the voting period."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "TallyCancellation", Args: []Type{"Hash", "u32", "u32", "u32"}, Documentation: []Text{" A voting tally has happened for a referendum cancellation vote.", " Last three are yes, no, abstain counts."}}, {Name: "TallyReferendum", Args: []Type{"Hash", "u32", "u32", "u32"}, Documentation: []Text{" A voting tally has happened for a referendum vote.", " Last three are yes, no, abstain counts."}}}}, {Name: "council_motions", Prefix: "CouncilMotions", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "Proposals", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<T::Hash>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The (hashes of) the active proposals."}}, {Name: "ProposalOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::Hash", Value: "<T as Trait>::Proposal", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Actual proposal for a given hash, if it's current."}}, {Name: "Voting", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::Hash", Value: "(ProposalIndex, u32, Vec<T::AccountId>, Vec<T::AccountId>)", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Votes for a given proposal: (Proposal index, required number of yes votes, yes voters, no voters)."}}, {Name: "ProposalCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Proposals so far."}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "propose", Args: []FunctionArgumentMetadata{{Name: "threshold", Type: "Compact<u32>"}, {Name: "proposal", Type: "Box<<T as Trait>::Proposal>"}}, Documentation: []Text{" Make a proposal. `threshold` indicates the number of yes-votes needed for the proposal", " to execute.", "", " The proposal must be unique.", "", " The dispatch origin of this call must be signed by a _councillor_."}}, {Name: "vote", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "T::Hash"}, {Name: "index", Type: "Compact<ProposalIndex>"}, {Name: "approve", Type: "bool"}}, Documentation: []Text{" Vote on a proposal.", "", " The proposal hash and the index of the vote must be correctly provided.", " A voter can change their vote from yes to no, but duplicate votes will raise an error.", "", " Each submitted vote _may_ cause the proposal to be executed, if the required", " threshold is reached. Similarly, enough no-votes can cause the proposal to be", " removed from storage.", "", " The dispatch origin of this call must be signed by a _councillor_."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Proposed", Args: []Type{"AccountId", "ProposalIndex", "Hash", "u32"}, Documentation: []Text{" A motion (given hash) has been proposed (by given account) with a threshold (given `u32`)."}}, {Name: "Voted", Args: []Type{"AccountId", "Hash", "bool", "u32", "u32"}, Documentation: []Text{" A motion (given hash) has been voted on by given account, leaving", " a tally (yes votes and no votes given as `u32`s respectively)."}}, {Name: "Approved", Args: []Type{"Hash"}, Documentation: []Text{" A motion was approved by the required threshold."}}, {Name: "Disapproved", Args: []Type{"Hash"}, Documentation: []Text{" A motion was not approved by the required threshold."}}, {Name: "Executed", Args: []Type{"Hash", "bool"}, Documentation: []Text{" A motion was executed; `bool` is true if returned without error."}}}}, {Name: "finality_tracker", Prefix: "", HasStorage: false, Storage: []StorageFunctionMetadataV4(nil), HasCalls: true, Calls: []FunctionMetadataV4{{Name: "final_hint", Args: []FunctionArgumentMetadata{{Name: "hint", Type: "Compact<T::BlockNumber>"}}, Documentation: []Text{" Hint that the author of this block thinks the best finalized", " block is the given number."}}}, HasEvents: false, Events: []EventMetadataV4(nil)}, {Name: "grandpa", Prefix: "GrandpaFinality", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "PendingChange", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "StoredPendingChange<T::BlockNumber, T::SessionKey>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text(nil)}, {Name: "NextForced", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text(nil)}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "report_misbehavior", Args: []FunctionArgumentMetadata{{Name: "_report", Type: "Vec<u8>"}}, Documentation: []Text{" Report some misbehavior."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "NewAuthorities", Args: []Type{"Vec<(SessionKey, u64)>"}, Documentation: []Text{" New authority set has been applied."}}}}, {Name: "treasury", Prefix: "Treasury", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "ProposalBond", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Permill", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" 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: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Minimum amount of funds that should be placed in a deposit for making a proposal."}}, {Name: "SpendPeriod", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Period between successive spends."}}, {Name: "Burn", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Permill", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Percentage of spare funds (if any) that are burnt per spend period."}}, {Name: "Pot", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Total funds available to this module for spending."}}, {Name: "ProposalCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "ProposalIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of proposals that have been made."}}, {Name: "Proposals", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "ProposalIndex", Value: "Proposal<T::AccountId, BalanceOf<T>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Proposals that have been made."}}, {Name: "Approvals", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Vec<ProposalIndex>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" Proposal indices that have been approved but not yet awarded."}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "propose_spend", Args: []FunctionArgumentMetadata{{Name: "value", Type: "Compact<BalanceOf<T>>"}, {Name: "beneficiary", Type: "<T::Lookup as StaticLookup>::Source"}}, Documentation: []Text{" 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: []FunctionArgumentMetadata{{Name: "new_pot", Type: "Compact<BalanceOf<T>>"}}, Documentation: []Text{" Set the balance of funds available to spend."}}, {Name: "configure", Args: []FunctionArgumentMetadata{{Name: "proposal_bond", Type: "Compact<Permill>"}, {Name: "proposal_bond_minimum", Type: "Compact<BalanceOf<T>>"}, {Name: "spend_period", Type: "Compact<T::BlockNumber>"}, {Name: "burn", Type: "Compact<Permill>"}}, Documentation: []Text{" (Re-)configure this module."}}, {Name: "reject_proposal", Args: []FunctionArgumentMetadata{{Name: "proposal_id", Type: "Compact<ProposalIndex>"}}, Documentation: []Text{" Reject a proposed spend. The original deposit will be slashed."}}, {Name: "approve_proposal", Args: []FunctionArgumentMetadata{{Name: "proposal_id", Type: "Compact<ProposalIndex>"}}, Documentation: []Text{" Approve a proposal. At a later time, the proposal will be allocated to the beneficiary", " and the original deposit will be returned."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Proposed", Args: []Type{"ProposalIndex"}, Documentation: []Text{" New proposal."}}, {Name: "Spending", Args: []Type{"Balance"}, Documentation: []Text{" We have ended a spend period and will now allocate funds."}}, {Name: "Awarded", Args: []Type{"ProposalIndex", "Balance", "AccountId"}, Documentation: []Text{" Some funds have been allocated."}}, {Name: "Burnt", Args: []Type{"Balance"}, Documentation: []Text{" Some of our funds have been burnt."}}, {Name: "Rollover", Args: []Type{"Balance"}, Documentation: []Text{" Spending has finished; this is the amount that rolls over until next spend."}}}}, {Name: "contract", Prefix: "Contract", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "TransferFee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee required to make a transfer."}}, {Name: "CreationFee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee required to create an account."}}, {Name: "TransactionBaseFee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee to be paid for making a transaction; the base."}}, {Name: "TransactionByteFee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee to be paid for making a transaction; the per-byte portion."}}, {Name: "ContractFee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x15, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee required to create a contract instance."}}, {Name: "CallBaseFee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Gas", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x87, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The base fee charged for calling into a contract."}}, {Name: "CreateBaseFee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Gas", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0xaf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The base fee charged for creating a contract."}}, {Name: "GasPrice", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The price of one unit of gas."}}, {Name: "MaxDepth", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x64, 0x0, 0x0, 0x0}, Documentation: []Text{" The maximum nesting level of a call/create stack."}}, {Name: "BlockGasLimit", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Gas", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x80, 0x96, 0x98, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The maximum amount of gas that could be expended per block."}}, {Name: "GasSpent", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::Gas", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Gas spent so far in this block."}}, {Name: "CurrentSchedule", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "Schedule<T::Gas>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x10, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Current cost schedule for contracts."}}, {Name: "CodeHashOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "CodeHash<T>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The code associated with a given account."}}, {Name: "PristineCode", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "CodeHash<T>", Value: "Vec<u8>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" A mapping from an original code hash to the original code, untouched by instrumentation."}}, {Name: "CodeStorage", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "CodeHash<T>", Value: "wasm::PrefabWasmModule", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" A mapping between an original code hash and instrumented wasm code, ready for the execution."}}, {Name: "AccountCounter", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "u64", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The subtrie counter"}}, {Name: "AccountInfoOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "AccountInfo", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0}, Documentation: []Text{" The code associated with a given account."}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "update_schedule", Args: []FunctionArgumentMetadata{{Name: "schedule", Type: "Schedule<T::Gas>"}}, Documentation: []Text{" Updates the schedule for metering contracts.", "", " The schedule must have a greater version than the stored schedule."}}, {Name: "put_code", Args: []FunctionArgumentMetadata{{Name: "gas_limit", Type: "Compact<T::Gas>"}, {Name: "code", Type: "Vec<u8>"}}, Documentation: []Text{" Stores the given binary Wasm code into the chains storage and returns its `codehash`.", " You can instantiate contracts only with stored code."}}, {Name: "call", Args: []FunctionArgumentMetadata{{Name: "dest", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "value", Type: "Compact<BalanceOf<T>>"}, {Name: "gas_limit", Type: "Compact<T::Gas>"}, {Name: "data", Type: "Vec<u8>"}}, Documentation: []Text{" Makes a call to an account, optionally transferring some balance.", "", " * If the account is a smart-contract account, the associated code will be", " executed and any value will be transferred.", " * If the account is a regular account, any value will be transferred.", " * If no account exists and the call value is not less than `existential_deposit`,", " a regular account will be created and any value will be transferred."}}, {Name: "create", Args: []FunctionArgumentMetadata{{Name: "endowment", Type: "Compact<BalanceOf<T>>"}, {Name: "gas_limit", Type: "Compact<T::Gas>"}, {Name: "code_hash", Type: "CodeHash<T>"}, {Name: "data", Type: "Vec<u8>"}}, Documentation: []Text{" Creates a new contract from the `codehash` generated by `put_code`, optionally transferring some balance.", "", " Creation is executed as follows:", "", " - the destination address is computed based on the sender and hash of the code.", " - the smart-contract account is created at the computed address.", " - the `ctor_code` is executed in the context of the newly created account. Buffer returned", "   after the execution is saved as the `code` of the account. That code will be invoked", "   upon any call received by this account.", " - The contract is initialized."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Transfer", Args: []Type{"AccountId", "AccountId", "Balance"}, Documentation: []Text{" Transfer happened `from` to `to` with given `value` as part of a `call` or `create`."}}, {Name: "Instantiated", Args: []Type{"AccountId", "AccountId"}, Documentation: []Text{" Contract deployed by address at the specified address."}}, {Name: "CodeStored", Args: []Type{"Hash"}, Documentation: []Text{" Code with the specified hash has been stored."}}, {Name: "ScheduleUpdated", Args: []Type{"u32"}, Documentation: []Text{" Triggered when the current schedule is updated."}}, {Name: "Dispatched", Args: []Type{"AccountId", "bool"}, Documentation: []Text{" A call was dispatched from the given account. The bool signals whether it was", " successful execution or not."}}, {Name: "Contract", Args: []Type{"AccountId", "Vec<u8>"}, Documentation: []Text{" An event from contract of account."}}}}, {Name: "sudo", Prefix: "Sudo", HasStorage: true, Storage: []StorageFunctionMetadataV4{{Name: "Key", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV4{IsType: true, AsType: "T::AccountId", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: ""}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The `AccountId` of the sudo key."}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "sudo", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Box<T::Proposal>"}}, Documentation: []Text{" Authenticates the sudo key and dispatches a function call with `Root` origin.", "", " The dispatch origin for this call must be _Signed_."}}, {Name: "set_key", Args: []FunctionArgumentMetadata{{Name: "new", Type: "<T::Lookup as StaticLookup>::Source"}}, Documentation: []Text{" Authenticates the current sudo key and sets the given AccountId (`new`) as the new sudo key.", "", " The dispatch origin for this call must be _Signed_."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Sudid", Args: []Type{"bool"}, Documentation: []Text{" A sudo just took place."}}, {Name: "KeyChanged", Args: []Type{"AccountId"}, Documentation: []Text{" The sudoer just switched identity; the old key is supplied."}}}}}}, IsMetadataV7: false, AsMetadataV7: MetadataV7{Modules: []ModuleMetadataV7(nil)}} //nolint:lll,dupl
View Source
var ExamplaryMetadataV4String = "" //nolint:lll

/* 67752-byte string literal not displayed */
View Source
var ExamplaryMetadataV8 = &Metadata{MagicNumber: 0x6174656d, Version: 0x8, IsMetadataV4: false, AsMetadataV4: MetadataV4{Modules: []ModuleMetadataV4(nil)}, IsMetadataV7: false, AsMetadataV7: MetadataV7{Modules: []ModuleMetadataV7(nil)}, IsMetadataV8: true, AsMetadataV8: MetadataV8{Modules: []ModuleMetadataV8{{Name: "System", HasStorage: true, Storage: StorageMetadata{Prefix: "System", Items: []StorageFunctionMetadataV5{{Name: "AccountNonce", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::Index", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Extrinsics nonce for accounts."}}, {Name: "ExtrinsicCount", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Total extrinsics count for the current block."}}, {Name: "AllExtrinsicsWeight", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Weight", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Total weight for all extrinsics put together, for the current block."}}, {Name: "AllExtrinsicsLen", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Total length (in bytes) for all extrinsics put together, for the current block."}}, {Name: "NextWeightMultiplier", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "WeightMultiplier", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The next weight multiplier. This should be updated at the end of each block based on the", " saturation level (weight)."}}, {Name: "BlockHash", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::BlockNumber", Value: "T::Hash", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Map of block numbers to block hashes."}}, {Name: "ExtrinsicData", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "u32", Value: "Vec<u8>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Extrinsics data for the current block (maps an extrinsic's index to its data)."}}, {Name: "Number", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The current block number being processed. Set by `execute_block`."}}, {Name: "ParentHash", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::Hash", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Hash of the previous block."}}, {Name: "ExtrinsicsRoot", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::Hash", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Extrinsics root of the current block, also part of the block header."}}, {Name: "Digest", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "DigestOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Digest of the current block, also part of the block header."}}, {Name: "Events", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<EventRecord<T::Event, T::Hash>>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Events deposited for the current block."}}, {Name: "EventCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "EventIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The number of events in the `Events<T>` list."}}, {Name: "EventTopics", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: true, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "()", Key2: "T::Hash", Value: "Vec<(T::BlockNumber, EventIndex)>", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Mapping between a topic (represented by T::Hash) and a vector of indexes", " of events in the `<Events<T>>` list.", "", " The first key serves no purpose. This field is declared as double_map just", " for convenience of using `remove_prefix`.", "", " All topic vectors have deterministic storage locations depending on the topic. This", " allows light-clients to leverage the changes trie storage tracking mechanism and", " in case of changes fetch the list of events of interest.", "", " The value has the type `(T::BlockNumber, EventIndex)` because if we used only just", " the `EventIndex` then in case if the topic has the same contents on the next block", " no notification will be triggered thus the event might be lost."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "fill_block", Args: []FunctionArgumentMetadata(nil), Documentation: []Text{" A big dispatch that will disallow any other transaction to be included."}}, {Name: "remark", Args: []FunctionArgumentMetadata{{Name: "_remark", Type: "Vec<u8>"}}, Documentation: []Text{" Make some on-chain remark."}}, {Name: "set_heap_pages", Args: []FunctionArgumentMetadata{{Name: "pages", Type: "u64"}}, Documentation: []Text{" Set the number of pages in the WebAssembly environment's heap."}}, {Name: "set_code", Args: []FunctionArgumentMetadata{{Name: "new", Type: "Vec<u8>"}}, Documentation: []Text{" Set the new code."}}, {Name: "set_storage", Args: []FunctionArgumentMetadata{{Name: "items", Type: "Vec<KeyValue>"}}, Documentation: []Text{" Set some items of storage."}}, {Name: "kill_storage", Args: []FunctionArgumentMetadata{{Name: "keys", Type: "Vec<Key>"}}, Documentation: []Text{" Kill some items from storage."}}, {Name: "kill_prefix", Args: []FunctionArgumentMetadata{{Name: "prefix", Type: "Key"}}, Documentation: []Text{" Kill all storage items with a key that starts with the given prefix."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "ExtrinsicSuccess", Args: []Type(nil), Documentation: []Text{" An extrinsic completed successfully."}}, {Name: "ExtrinsicFailed", Args: []Type{"DispatchError"}, Documentation: []Text{" An extrinsic failed."}}}, Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8{{Name: "BadSignature", Documentation: []Text(nil)}, {Name: "BlockFull", Documentation: []Text(nil)}, {Name: "RequireSignedOrigin", Documentation: []Text(nil)}, {Name: "RequireRootOrigin", Documentation: []Text(nil)}, {Name: "RequireNoOrigin", Documentation: []Text(nil)}}}, {Name: "Utility", HasStorage: false, Storage: StorageMetadata{Prefix: "", Items: []StorageFunctionMetadataV5(nil)}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "batch", Args: []FunctionArgumentMetadata{{Name: "calls", Type: "Vec<<T as Trait>::Call>"}}, Documentation: []Text{" Send a batch of dispatch calls (only root)."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "BatchExecuted", Args: []Type{"Vec<Result<(), DispatchError>>"}, Documentation: []Text(nil)}}, Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}, {Name: "Babe", HasStorage: true, Storage: StorageMetadata{Prefix: "Babe", Items: []StorageFunctionMetadataV5{{Name: "EpochIndex", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u64", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Current epoch index."}}, {Name: "Authorities", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<(AuthorityId, BabeAuthorityWeight)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Current epoch authorities."}}, {Name: "GenesisSlot", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u64", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The slot at which the first epoch actually started. This is 0", " until the first block of the chain."}}, {Name: "CurrentSlot", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u64", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Current slot number."}}, {Name: "Randomness", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "[u8; 32]", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The epoch randomness for the *current* epoch.", "", " # Security", "", " This MUST NOT be used for gambling, as it can be influenced by a", " malicious validator in the short term. It MAY be used in many", " cryptographic protocols, however, so long as one remembers that this", " (like everything else on-chain) it is public. For example, it can be", " used where a number is needed that cannot have been chosen by an", " adversary, for purposes such as public-coin zero-knowledge proofs."}}, {Name: "NextRandomness", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "[u8; 32]", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Next epoch randomness."}}, {Name: "SegmentIndex", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Randomness under construction.", "", " We make a tradeoff between storage accesses and list length.", " We store the under-construction randomness in segments of up to", " `UNDER_CONSTRUCTION_SEGMENT_LENGTH`.", "", " Once a segment reaches this length, we begin the next one.", " We reset all segments and return to `0` at the beginning of every", " epoch."}}, {Name: "UnderConstruction", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "u32", Value: "Vec<[u8; 32]>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text(nil)}, {Name: "Initialized", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "MaybeVrf", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Temporary value (cleared at block finalization) which is `Some`", " if per-block initialization has already been called for current block."}}}}, HasCalls: true, Calls: []FunctionMetadataV4(nil), HasEvents: false, Events: []EventMetadataV4(nil), Constants: []ModuleConstantMetadataV6{{Name: "EpochDuration", Type: "u64", Value: Bytes{0xc8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The number of **slots** that an epoch takes. We couple sessions to", " epochs, i.e. we start a new session once the new epoch begins."}}, {Name: "ExpectedBlockTime", Type: "T::Moment", Value: Bytes{0xb8, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The expected average block time at which BABE should be creating", " blocks. Since BABE is probabilistic it is not trivial to figure out", " what the expected average block time should be based on the slot", " duration and the security parameter `c` (where `1 - c` represents", " the probability of a slot being empty)."}}}, Errors: []ErrorMetadataV8(nil)}, {Name: "Timestamp", HasStorage: true, Storage: StorageMetadata{Prefix: "Timestamp", Items: []StorageFunctionMetadataV5{{Name: "Now", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::Moment", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Current time for the current block."}}, {Name: "DidUpdate", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "bool", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Did the timestamp get updated in this block?"}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "set", Args: []FunctionArgumentMetadata{{Name: "now", Type: "Compact<T::Moment>"}}, Documentation: []Text{" Set the current time.", "", " 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", " `MinimumPeriod`.", "", " The dispatch origin for this call must be `Inherent`."}}}, HasEvents: false, Events: []EventMetadataV4(nil), Constants: []ModuleConstantMetadataV6{{Name: "MinimumPeriod", Type: "T::Moment", Value: Bytes{0xdc, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The minimum period between blocks. Beware that this is different to the *expected* period", " that the block production apparatus provides. Your chosen consensus system will generally", " work with this to determine a sensible block time. e.g. For Aura, it will be double this", " period on default settings."}}}, Errors: []ErrorMetadataV8(nil)}, {Name: "Authorship", HasStorage: true, Storage: StorageMetadata{Prefix: "Authorship", Items: []StorageFunctionMetadataV5{{Name: "Uncles", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<UncleEntryItem<T::BlockNumber, T::Hash, T::AccountId>>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Uncles"}}, {Name: "Author", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::AccountId", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Author of current block."}}, {Name: "DidSetUncles", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "bool", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Whether uncles were already set in this block."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "set_uncles", Args: []FunctionArgumentMetadata{{Name: "new_uncles", Type: "Vec<T::Header>"}}, Documentation: []Text{" Provide a set of uncles."}}}, HasEvents: false, Events: []EventMetadataV4(nil), Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}, {Name: "Indices", HasStorage: true, Storage: StorageMetadata{Prefix: "Indices", Items: []StorageFunctionMetadataV5{{Name: "NextEnumSet", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::AccountIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The next free enumeration set."}}, {Name: "EnumSet", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountIndex", Value: "Vec<T::AccountId>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The enumeration sets."}}}}, HasCalls: true, Calls: []FunctionMetadataV4(nil), HasEvents: true, Events: []EventMetadataV4{{Name: "NewAccountIndex", Args: []Type{"AccountId", "AccountIndex"}, Documentation: []Text{" A new account index was assigned.", "", " This event is not triggered when an existing index is reassigned", " to another `AccountId`."}}}, Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}, {Name: "Balances", HasStorage: true, Storage: StorageMetadata{Prefix: "Balances", Items: []StorageFunctionMetadataV5{{Name: "TotalIssuance", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::Balance", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The total units issued in the system."}}, {Name: "Vesting", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "VestingSchedule<T::Balance, T::BlockNumber>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Information regarding the vesting of a given account."}}, {Name: "FreeBalance", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::Balance", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The 'free' balance of a given account.", "", " This is the only balance that matters in terms of most operations on tokens. It", " alone is 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`. Further, the `OnFreeBalanceZero` callback", " is invoked, giving a chance to external modules to clean up 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: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::Balance", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" 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.", "", " 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`.)"}}, {Name: "Locks", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "Vec<BalanceLock<T::Balance, T::BlockNumber>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Any liquidity locks on some account balances."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "transfer", Args: []FunctionArgumentMetadata{{Name: "dest", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "value", Type: "Compact<T::Balance>"}}, Documentation: []Text{" Transfer some liquid free balance to another account.", "", " `transfer` will set the `FreeBalance` of the sender and receiver.", " It will decrease the total issuance of the system by the `TransferFee`.", " If the sender's account is below the existential deposit as a result", " of the transfer, the account will be reaped.", "", " The dispatch origin for this call must be `Signed` by the transactor.", "", " # <weight>", " - Dependent on arguments but not critical, given proper implementations for", "   input config  See related functions below.", " - It contains a limited number of reads and writes internally and no complex computation.", "", " Related functions:", "", "   - `ensure_can_withdraw` is always called internally but has a bounded complexity.", "   - Transferring balances to accounts that did not exist before will cause", "      `T::OnNewAccount::on_new_account` to be called.", "   - Removing enough funds from an account will trigger", "     `T::DustRemoval::on_unbalanced` and `T::OnFreeBalanceZero::on_free_balance_zero`.", "", " # </weight>"}}, {Name: "set_balance", Args: []FunctionArgumentMetadata{{Name: "who", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "new_free", Type: "Compact<T::Balance>"}, {Name: "new_reserved", Type: "Compact<T::Balance>"}}, Documentation: []Text{" Set the balances of a given account.", "", " This will alter `FreeBalance` and `ReservedBalance` in storage. it will", " also decrease the total issuance of the system (`TotalIssuance`).", " If the new free or reserved balance is below the existential deposit,", " it will reset the account nonce (`system::AccountNonce`).", "", " The dispatch origin for this call is `root`.", "", " # <weight>", " - Independent of the arguments.", " - Contains a limited number of reads and writes.", " # </weight>"}}, {Name: "force_transfer", Args: []FunctionArgumentMetadata{{Name: "source", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "dest", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "value", Type: "Compact<T::Balance>"}}, Documentation: []Text{" Exactly as `transfer`, except the origin must be root and the source account may be", " specified."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "NewAccount", Args: []Type{"AccountId", "Balance"}, Documentation: []Text{" A new account was created."}}, {Name: "ReapedAccount", Args: []Type{"AccountId"}, Documentation: []Text{" An account was reaped."}}, {Name: "Transfer", Args: []Type{"AccountId", "AccountId", "Balance", "Balance"}, Documentation: []Text{" Transfer succeeded (from, to, value, fees)."}}}, Constants: []ModuleConstantMetadataV6{{Name: "ExistentialDeposit", Type: "T::Balance", Value: Bytes{0x0, 0x40, 0x7a, 0x10, 0xf3, 0x5a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The minimum amount required to keep an account open."}}, {Name: "TransferFee", Type: "T::Balance", Value: Bytes{0x0, 0x10, 0xa5, 0xd4, 0xe8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee required to make a transfer."}}, {Name: "CreationFee", Type: "T::Balance", Value: Bytes{0x0, 0x10, 0xa5, 0xd4, 0xe8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee required to create an account."}}, {Name: "TransactionBaseFee", Type: "T::Balance", Value: Bytes{0x0, 0x10, 0xa5, 0xd4, 0xe8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee to be paid for making a transaction; the base."}}, {Name: "TransactionByteFee", Type: "T::Balance", Value: Bytes{0x0, 0xe4, 0xb, 0x54, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee to be paid for making a transaction; the per-byte portion."}}}, Errors: []ErrorMetadataV8(nil)}, {Name: "Staking", HasStorage: true, Storage: StorageMetadata{Prefix: "Staking", Items: []StorageFunctionMetadataV5{{Name: "ValidatorCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The ideal number of staking participants."}}, {Name: "MinimumValidatorCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x4, 0x0, 0x0, 0x0}, Documentation: []Text{" Minimum number of staking participants before emergency conditions are imposed."}}, {Name: "Invulnerables", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<T::AccountId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Any validators that may never be slashed or forcibly kicked. It's a Vec since they're", " easy to initialize and the performance hit is minimal (we expect no more than four", " invulnerables) and restricted to testnets."}}, {Name: "Bonded", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::AccountId", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Map from all locked \"stash\" accounts to the controller account."}}, {Name: "Ledger", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "StakingLedger<T::AccountId, BalanceOf<T>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Map from all (unlocked) \"controller\" accounts to the info regarding the staking."}}, {Name: "Payee", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "RewardDestination", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Where the reward payment should be made. Keyed by stash."}}, {Name: "Validators", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "ValidatorPrefs<BalanceOf<T>>", Linked: true}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The map from (wannabe) validator stash key to the preferences of that validator."}}, {Name: "Nominators", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "Vec<T::AccountId>", Linked: true}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The map from nominator stash key to the set of stash keys of all validators to nominate."}}, {Name: "Stakers", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "Exposure<T::AccountId, BalanceOf<T>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0}, Documentation: []Text{" Nominators for a particular account that is in action right now. You can't iterate", " through validators here, but you can find them in the Session module.", "", " This is keyed by the stash account."}}, {Name: "CurrentElected", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<T::AccountId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The currently elected validator set keyed by stash account ID."}}, {Name: "CurrentEra", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "EraIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The current era index."}}, {Name: "CurrentEraStart", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "MomentOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The start of the current era."}}, {Name: "CurrentEraStartSessionIndex", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "SessionIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The session index at which the current era started."}}, {Name: "CurrentEraPointsEarned", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "EraPoints", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Rewards for the current era. Using indices of current elected set."}}, {Name: "SlotStake", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The amount of balance actively at stake for each validator slot, currently.", "", " This is used to derive rewards and punishments."}}, {Name: "ForceEra", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Forcing", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" True if the next session change will be a new era regardless of index."}}, {Name: "SlashRewardFraction", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Perbill", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The percentage of the slash that is distributed to reporters.", "", " The rest of the slashed value is handled by the `Slash`."}}, {Name: "BondedEras", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<(EraIndex, SessionIndex)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" A mapping from still-bonded eras to the first session index of that era."}}, {Name: "EraSlashJournal", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "EraIndex", Value: "Vec<SlashJournalEntry<T::AccountId, BalanceOf<T>>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" All slashes that have occurred in a given era."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "bond", Args: []FunctionArgumentMetadata{{Name: "controller", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "value", Type: "Compact<BalanceOf<T>>"}, {Name: "payee", Type: "RewardDestination"}}, Documentation: []Text{" Take the origin account as a stash and lock up `value` of its balance. `controller` will", " be the account that controls it.", "", " `value` must be more than the `minimum_balance` specified by `T::Currency`.", "", " The dispatch origin for this call must be _Signed_ by the stash account.", "", " # <weight>", " - Independent of the arguments. Moderate complexity.", " - O(1).", " - Three extra DB entries.", "", " NOTE: Two of the storage writes (`Self::bonded`, `Self::payee`) are _never_ cleaned unless", " the `origin` falls below _existential deposit_ and gets removed as dust.", " # </weight>"}}, {Name: "bond_extra", Args: []FunctionArgumentMetadata{{Name: "max_additional", Type: "Compact<BalanceOf<T>>"}}, Documentation: []Text{" Add some extra amount that have appeared in the stash `free_balance` into the balance up", " for staking.", "", " Use this if there are additional funds in your stash account that you wish to bond.", " Unlike [`bond`] or [`unbond`] this function does not impose any limitation on the amount", " that can be added.", "", " The dispatch origin for this call must be _Signed_ by the stash, not the controller.", "", " # <weight>", " - Independent of the arguments. Insignificant complexity.", " - O(1).", " - One DB entry.", " # </weight>"}}, {Name: "unbond", Args: []FunctionArgumentMetadata{{Name: "value", Type: "Compact<BalanceOf<T>>"}}, Documentation: []Text{" Schedule a portion of the stash to be unlocked ready for transfer out after the bond", " period ends. If this leaves an amount actively bonded less than", " T::Currency::minimum_balance(), then it is increased to the full amount.", "", " Once the unlock period is done, you can call `withdraw_unbonded` to actually move", " the funds out of management ready for transfer.", "", " No more than a limited number of unlocking chunks (see `MAX_UNLOCKING_CHUNKS`)", " can co-exists at the same time. In that case, [`Call::withdraw_unbonded`] need", " to be called first to remove some of the chunks (if possible).", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash.", "", " See also [`Call::withdraw_unbonded`].", "", " # <weight>", " - Independent of the arguments. Limited but potentially exploitable complexity.", " - Contains a limited number of reads.", " - Each call (requires the remainder of the bonded balance to be above `minimum_balance`)", "   will cause a new entry to be inserted into a vector (`Ledger.unlocking`) kept in storage.", "   The only way to clean the aforementioned storage item is also user-controlled via `withdraw_unbonded`.", " - One DB entry.", " </weight>"}}, {Name: "withdraw_unbonded", Args: []FunctionArgumentMetadata(nil), Documentation: []Text{" Remove any unlocked chunks from the `unlocking` queue from our management.", "", " This essentially frees up that balance to be used by the stash account to do", " whatever it wants.", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash.", "", " See also [`Call::unbond`].", "", " # <weight>", " - Could be dependent on the `origin` argument and how much `unlocking` chunks exist.", "  It implies `consolidate_unlocked` which loops over `Ledger.unlocking`, which is", "  indirectly user-controlled. See [`unbond`] for more detail.", " - Contains a limited number of reads, yet the size of which could be large based on `ledger`.", " - Writes are limited to the `origin` account key.", " # </weight>"}}, {Name: "validate", Args: []FunctionArgumentMetadata{{Name: "prefs", Type: "ValidatorPrefs<BalanceOf<T>>"}}, Documentation: []Text{" Declare the desire to validate for the origin controller.", "", " Effects will be felt at the beginning of the next era.", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash.", "", " # <weight>", " - Independent of the arguments. Insignificant complexity.", " - Contains a limited number of reads.", " - Writes are limited to the `origin` account key.", " # </weight>"}}, {Name: "nominate", Args: []FunctionArgumentMetadata{{Name: "targets", Type: "Vec<<T::Lookup as StaticLookup>::Source>"}}, Documentation: []Text{" Declare the desire to nominate `targets` for the origin controller.", "", " Effects will be felt at the beginning of the next era.", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash.", "", " # <weight>", " - The transaction's complexity is proportional to the size of `targets`,", " which is capped at `MAX_NOMINATIONS`.", " - Both the reads and writes follow a similar pattern.", " # </weight>"}}, {Name: "chill", Args: []FunctionArgumentMetadata(nil), Documentation: []Text{" Declare no desire to either validate or nominate.", "", " Effects will be felt at the beginning of the next era.", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash.", "", " # <weight>", " - Independent of the arguments. Insignificant complexity.", " - Contains one read.", " - Writes are limited to the `origin` account key.", " # </weight>"}}, {Name: "set_payee", Args: []FunctionArgumentMetadata{{Name: "payee", Type: "RewardDestination"}}, Documentation: []Text{" (Re-)set the payment target for a controller.", "", " Effects will be felt at the beginning of the next era.", "", " The dispatch origin for this call must be _Signed_ by the controller, not the stash.", "", " # <weight>", " - Independent of the arguments. Insignificant complexity.", " - Contains a limited number of reads.", " - Writes are limited to the `origin` account key.", " # </weight>"}}, {Name: "set_controller", Args: []FunctionArgumentMetadata{{Name: "controller", Type: "<T::Lookup as StaticLookup>::Source"}}, Documentation: []Text{" (Re-)set the controller of a stash.", "", " Effects will be felt at the beginning of the next era.", "", " The dispatch origin for this call must be _Signed_ by the stash, not the controller.", "", " # <weight>", " - Independent of the arguments. Insignificant complexity.", " - Contains a limited number of reads.", " - Writes are limited to the `origin` account key.", " # </weight>"}}, {Name: "set_validator_count", Args: []FunctionArgumentMetadata{{Name: "new", Type: "Compact<u32>"}}, Documentation: []Text{" The ideal number of validators."}}, {Name: "force_no_eras", Args: []FunctionArgumentMetadata(nil), Documentation: []Text{" Force there to be no new eras indefinitely.", "", " # <weight>", " - No arguments.", " # </weight>"}}, {Name: "force_new_era", Args: []FunctionArgumentMetadata(nil), Documentation: []Text{" Force there to be a new era at the end of the next session. After this, it will be", " reset to normal (non-forced) behaviour.", "", " # <weight>", " - No arguments.", " # </weight>"}}, {Name: "set_invulnerables", Args: []FunctionArgumentMetadata{{Name: "validators", Type: "Vec<T::AccountId>"}}, Documentation: []Text{" Set the validators who cannot be slashed (if any)."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Reward", Args: []Type{"Balance"}, Documentation: []Text{" All validators have been rewarded by the given balance."}}, {Name: "Slash", Args: []Type{"AccountId", "Balance"}, Documentation: []Text{" One validator (and its nominators) has been slashed by the given amount."}}, {Name: "OldSlashingReportDiscarded", Args: []Type{"SessionIndex"}, Documentation: []Text{" An old slashing report from a prior era was discarded because it could", " not be processed."}}}, Constants: []ModuleConstantMetadataV6{{Name: "SessionsPerEra", Type: "SessionIndex", Value: Bytes{0x6, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of sessions per era."}}, {Name: "BondingDuration", Type: "EraIndex", Value: Bytes{0xa0, 0x2, 0x0, 0x0}, Documentation: []Text{" Number of eras that staked funds must remain bonded for."}}}, Errors: []ErrorMetadataV8(nil)}, {Name: "Session", HasStorage: true, Storage: StorageMetadata{Prefix: "Session", Items: []StorageFunctionMetadataV5{{Name: "Validators", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<T::ValidatorId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The current set of validators."}}, {Name: "CurrentIndex", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "SessionIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Current index of the session."}}, {Name: "QueuedChanged", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "bool", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" True if the underlying economic identities or weighting behind the validators", " has changed in the queued validator set."}}, {Name: "QueuedKeys", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<(T::ValidatorId, T::Keys)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The queued keys for the next session. When the next session begins, these keys", " will be used to determine the validator's session keys."}}, {Name: "DisabledValidators", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<u32>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Indices of disabled validators.", "", " The set is cleared when `on_session_ending` returns a new set of identities."}}, {Name: "NextKeys", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: true, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: true}, Key1: "Vec<u8>", Key2: "T::ValidatorId", Value: "T::Keys", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The next session keys for a validator.", "", " The first key is always `DEDUP_KEY_PREFIX` to have all the data in the same branch of", " the trie. Having all data in the same branch should prevent slowing down other queries."}}, {Name: "KeyOwner", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: true, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: true}, Key1: "Vec<u8>", Key2: "(KeyTypeId, Vec<u8>)", Value: "T::ValidatorId", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The owner of a key. The second key is the `KeyTypeId` + the encoded key.", "", " The first key is always `DEDUP_KEY_PREFIX` to have all the data in the same branch of", " the trie. Having all data in the same branch should prevent slowing down other queries."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "set_keys", Args: []FunctionArgumentMetadata{{Name: "keys", Type: "T::Keys"}, {Name: "proof", Type: "Vec<u8>"}}, Documentation: []Text{" Sets the session key(s) of the function caller to `key`.", " Allows an account to set its session key prior to becoming a validator.", " This doesn't take effect until the next session.", "", " The dispatch origin of this function must be signed.", "", " # <weight>", " - O(log n) in number of accounts.", " - One extra DB entry.", " # </weight>"}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "NewSession", Args: []Type{"SessionIndex"}, Documentation: []Text{" New session has happened. Note that the argument is the session index, not the block", " number as the type might suggest."}}}, Constants: []ModuleConstantMetadataV6{{Name: "DEDUP_KEY_PREFIX", Type: "&[u8]", Value: Bytes{0x34, 0x3a, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x6b, 0x65, 0x79, 0x73}, Documentation: []Text{" Used as first key for `NextKeys` and `KeyOwner` to put all the data into the same branch", " of the trie."}}}, Errors: []ErrorMetadataV8(nil)}, {Name: "Democracy", HasStorage: true, Storage: StorageMetadata{Prefix: "Democracy", Items: []StorageFunctionMetadataV5{{Name: "PublicPropCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "PropIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The number of (public) proposals that have been made so far."}}, {Name: "PublicProps", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<(PropIndex, T::Proposal, T::AccountId)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The public proposals. Unsorted."}}, {Name: "DepositOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "PropIndex", Value: "(BalanceOf<T>, Vec<T::AccountId>)", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Those who have locked a deposit."}}, {Name: "ReferendumCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "ReferendumIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The next free referendum index, aka the number of referenda started so far."}}, {Name: "NextTally", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "ReferendumIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The next referendum index that should be tallied."}}, {Name: "ReferendumInfoOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "ReferendumIndex", Value: "(ReferendumInfo<T::BlockNumber, T::Proposal>)", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Information concerning any given referendum."}}, {Name: "DispatchQueue", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::BlockNumber", Value: "Vec<Option<(T::Proposal, ReferendumIndex)>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Queue of successful referenda to be dispatched."}}, {Name: "VotersFor", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "ReferendumIndex", Value: "Vec<T::AccountId>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Get the voters for the current proposal."}}, {Name: "VoteOf", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "(ReferendumIndex, T::AccountId)", Value: "Vote", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" 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."}}, {Name: "Proxy", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::AccountId", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Who is able to vote for whom. Value is the fund-holding account, key is the", " vote-transaction-sending account."}}, {Name: "Delegations", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "(T::AccountId, Conviction)", Linked: true}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Get the account (and lock periods) to which another account is delegating vote."}}, {Name: "LastTabledWasExternal", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "bool", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" True if the last referendum tabled was submitted externally. False if it was a public", " proposal."}}, {Name: "NextExternal", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "(T::Proposal, VoteThreshold)", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The referendum to be tabled whenever it would be valid to table an external proposal.", " This happens when a referendum needs to be tabled and one of two conditions are met:", " - `LastTabledWasExternal` is `false`; or", " - `PublicProps` is empty."}}, {Name: "Blacklist", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::Hash", Value: "(T::BlockNumber, Vec<T::AccountId>)", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" A record of who vetoed what. Maps proposal hash to a possible existent block number", " (until when it may not be resubmitted) and who vetoed it."}}, {Name: "Cancellations", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::Hash", Value: "bool", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Record of all proposals that have been subject to emergency cancellation."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "propose", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Box<T::Proposal>"}, {Name: "value", Type: "Compact<BalanceOf<T>>"}}, Documentation: []Text{" Propose a sensitive action to be taken.", "", " # <weight>", " - O(1).", " - Two DB changes, one DB entry.", " # </weight>"}}, {Name: "second", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Compact<PropIndex>"}}, Documentation: []Text{" Propose a sensitive action to be taken.", "", " # <weight>", " - O(1).", " - One DB entry.", " # </weight>"}}, {Name: "vote", Args: []FunctionArgumentMetadata{{Name: "ref_index", Type: "Compact<ReferendumIndex>"}, {Name: "vote", Type: "Vote"}}, Documentation: []Text{" 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.", "", " # <weight>", " - O(1).", " - One DB change, one DB entry.", " # </weight>"}}, {Name: "proxy_vote", Args: []FunctionArgumentMetadata{{Name: "ref_index", Type: "Compact<ReferendumIndex>"}, {Name: "vote", Type: "Vote"}}, Documentation: []Text{" Vote in a referendum on behalf of a stash. If `vote.is_aye()`, the vote is to enact", " the proposal;  otherwise it is a vote to keep the status quo.", "", " # <weight>", " - O(1).", " - One DB change, one DB entry.", " # </weight>"}}, {Name: "emergency_cancel", Args: []FunctionArgumentMetadata{{Name: "ref_index", Type: "ReferendumIndex"}}, Documentation: []Text{" Schedule an emergency cancellation of a referendum. Cannot happen twice to the same", " referendum."}}, {Name: "external_propose", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Box<T::Proposal>"}}, Documentation: []Text{" Schedule a referendum to be tabled once it is legal to schedule an external", " referendum."}}, {Name: "external_propose_majority", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Box<T::Proposal>"}}, Documentation: []Text{" Schedule a majority-carries referendum to be tabled next once it is legal to schedule", " an external referendum.", "", " Unlike `external_propose`, blacklisting has no effect on this and it may replace a", " pre-scheduled `external_propose` call."}}, {Name: "external_propose_default", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Box<T::Proposal>"}}, Documentation: []Text{" Schedule a negative-turnout-bias referendum to be tabled next once it is legal to", " schedule an external referendum.", "", " Unlike `external_propose`, blacklisting has no effect on this and it may replace a", " pre-scheduled `external_propose` call."}}, {Name: "fast_track", Args: []FunctionArgumentMetadata{{Name: "proposal_hash", Type: "T::Hash"}, {Name: "voting_period", Type: "T::BlockNumber"}, {Name: "delay", Type: "T::BlockNumber"}}, Documentation: []Text{" Schedule the currently externally-proposed majority-carries referendum to be tabled", " immediately. If there is no externally-proposed referendum currently, or if there is one", " but it is not a majority-carries referendum then it fails.", "", " - `proposal_hash`: The hash of the current external proposal.", " - `voting_period`: The period that is allowed for voting on this proposal.", " - `delay`: The number of block after voting has ended in approval and this should be", "   enacted. Increased to `EmergencyVotingPeriod` if too low."}}, {Name: "veto_external", Args: []FunctionArgumentMetadata{{Name: "proposal_hash", Type: "T::Hash"}}, Documentation: []Text{" Veto and blacklist the external proposal hash."}}, {Name: "cancel_referendum", Args: []FunctionArgumentMetadata{{Name: "ref_index", Type: "Compact<ReferendumIndex>"}}, Documentation: []Text{" Remove a referendum."}}, {Name: "cancel_queued", Args: []FunctionArgumentMetadata{{Name: "when", Type: "Compact<T::BlockNumber>"}, {Name: "which", Type: "Compact<u32>"}, {Name: "what", Type: "Compact<ReferendumIndex>"}}, Documentation: []Text{" Cancel a proposal queued for enactment."}}, {Name: "set_proxy", Args: []FunctionArgumentMetadata{{Name: "proxy", Type: "T::AccountId"}}, Documentation: []Text{" Specify a proxy. Called by the stash.", "", " # <weight>", " - One extra DB entry.", " # </weight>"}}, {Name: "resign_proxy", Args: []FunctionArgumentMetadata(nil), Documentation: []Text{" Clear the proxy. Called by the proxy.", "", " # <weight>", " - One DB clear.", " # </weight>"}}, {Name: "remove_proxy", Args: []FunctionArgumentMetadata{{Name: "proxy", Type: "T::AccountId"}}, Documentation: []Text{" Clear the proxy. Called by the stash.", "", " # <weight>", " - One DB clear.", " # </weight>"}}, {Name: "delegate", Args: []FunctionArgumentMetadata{{Name: "to", Type: "T::AccountId"}, {Name: "conviction", Type: "Conviction"}}, Documentation: []Text{" Delegate vote.", "", " # <weight>", " - One extra DB entry.", " # </weight>"}}, {Name: "undelegate", Args: []FunctionArgumentMetadata(nil), Documentation: []Text{" Undelegate vote.", "", " # <weight>", " - O(1).", " # </weight>"}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Proposed", Args: []Type{"PropIndex", "Balance"}, Documentation: []Text(nil)}, {Name: "Tabled", Args: []Type{"PropIndex", "Balance", "Vec<AccountId>"}, Documentation: []Text(nil)}, {Name: "ExternalTabled", Args: []Type(nil), Documentation: []Text(nil)}, {Name: "Started", Args: []Type{"ReferendumIndex", "VoteThreshold"}, Documentation: []Text(nil)}, {Name: "Passed", Args: []Type{"ReferendumIndex"}, Documentation: []Text(nil)}, {Name: "NotPassed", Args: []Type{"ReferendumIndex"}, Documentation: []Text(nil)}, {Name: "Cancelled", Args: []Type{"ReferendumIndex"}, Documentation: []Text(nil)}, {Name: "Executed", Args: []Type{"ReferendumIndex", "bool"}, Documentation: []Text(nil)}, {Name: "Delegated", Args: []Type{"AccountId", "AccountId"}, Documentation: []Text(nil)}, {Name: "Undelegated", Args: []Type{"AccountId"}, Documentation: []Text(nil)}, {Name: "Vetoed", Args: []Type{"AccountId", "Hash", "BlockNumber"}, Documentation: []Text(nil)}}, Constants: []ModuleConstantMetadataV6{{Name: "EnactmentPeriod", Type: "T::BlockNumber", Value: Bytes{0x0, 0x2f, 0xd, 0x0}, Documentation: []Text{" The minimum period of locking and the period between a proposal being approved and enacted.", "", " It should generally be a little more than the unstake period to ensure that", " voting stakers have an opportunity to remove themselves from the system in the case where", " they are on the losing side of a vote."}}, {Name: "LaunchPeriod", Type: "T::BlockNumber", Value: Bytes{0x0, 0x4e, 0xc, 0x0}, Documentation: []Text{" How often (in blocks) new public referenda are launched."}}, {Name: "VotingPeriod", Type: "T::BlockNumber", Value: Bytes{0x0, 0x4e, 0xc, 0x0}, Documentation: []Text{" How often (in blocks) to check for new votes."}}, {Name: "MinimumDeposit", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x0, 0xc1, 0x6f, 0xf2, 0x86, 0x23, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The minimum amount to be used as a deposit for a public referendum proposal."}}, {Name: "EmergencyVotingPeriod", Type: "T::BlockNumber", Value: Bytes{0x80, 0x51, 0x1, 0x0}, Documentation: []Text{" Minimum voting period allowed for an emergency referendum."}}, {Name: "CooloffPeriod", Type: "T::BlockNumber", Value: Bytes{0x0, 0x4e, 0xc, 0x0}, Documentation: []Text{" Period in blocks where an external proposal may not be re-submitted after being vetoed."}}}, Errors: []ErrorMetadataV8(nil)}, {Name: "Council", HasStorage: true, Storage: StorageMetadata{Prefix: "Instance1Collective", Items: []StorageFunctionMetadataV5{{Name: "Proposals", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<T::Hash>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The hashes of the active proposals."}}, {Name: "ProposalOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::Hash", Value: "<T as Trait<I>>::Proposal", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Actual proposal for a given hash, if it's current."}}, {Name: "Voting", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::Hash", Value: "Votes<T::AccountId>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Votes on a given proposal, if it is ongoing."}}, {Name: "ProposalCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Proposals so far."}}, {Name: "Members", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<T::AccountId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The current members of the collective. This is stored sorted (just by value)."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "set_members", Args: []FunctionArgumentMetadata{{Name: "new_members", Type: "Vec<T::AccountId>"}}, Documentation: []Text{" Set the collective's membership manually to `new_members`. Be nice to the chain and", " provide it pre-sorted.", "", " Requires root origin."}}, {Name: "execute", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Box<<T as Trait<I>>::Proposal>"}}, Documentation: []Text{" Dispatch a proposal from a member using the `Member` origin.", "", " Origin must be a member of the collective."}}, {Name: "propose", Args: []FunctionArgumentMetadata{{Name: "threshold", Type: "Compact<MemberCount>"}, {Name: "proposal", Type: "Box<<T as Trait<I>>::Proposal>"}}, Documentation: []Text{" # <weight>", " - Bounded storage reads and writes.", " - Argument `threshold` has bearing on weight.", " # </weight>"}}, {Name: "vote", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "T::Hash"}, {Name: "index", Type: "Compact<ProposalIndex>"}, {Name: "approve", Type: "bool"}}, Documentation: []Text{" # <weight>", " - Bounded storage read and writes.", " - Will be slightly heavier if the proposal is approved / disapproved after the vote.", " # </weight>"}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Proposed", Args: []Type{"AccountId", "ProposalIndex", "Hash", "MemberCount"}, Documentation: []Text{" A motion (given hash) has been proposed (by given account) with a threshold (given", " `MemberCount`)."}}, {Name: "Voted", Args: []Type{"AccountId", "Hash", "bool", "MemberCount", "MemberCount"}, Documentation: []Text{" A motion (given hash) has been voted on by given account, leaving", " a tally (yes votes and no votes given respectively as `MemberCount`)."}}, {Name: "Approved", Args: []Type{"Hash"}, Documentation: []Text{" A motion was approved by the required threshold."}}, {Name: "Disapproved", Args: []Type{"Hash"}, Documentation: []Text{" A motion was not approved by the required threshold."}}, {Name: "Executed", Args: []Type{"Hash", "bool"}, Documentation: []Text{" A motion was executed; `bool` is true if returned without error."}}, {Name: "MemberExecuted", Args: []Type{"Hash", "bool"}, Documentation: []Text{" A single member did some action; `bool` is true if returned without error."}}}, Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}, {Name: "TechnicalCommittee", HasStorage: true, Storage: StorageMetadata{Prefix: "Instance2Collective", Items: []StorageFunctionMetadataV5{{Name: "Proposals", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<T::Hash>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The hashes of the active proposals."}}, {Name: "ProposalOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::Hash", Value: "<T as Trait<I>>::Proposal", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Actual proposal for a given hash, if it's current."}}, {Name: "Voting", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::Hash", Value: "Votes<T::AccountId>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Votes on a given proposal, if it is ongoing."}}, {Name: "ProposalCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Proposals so far."}}, {Name: "Members", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<T::AccountId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The current members of the collective. This is stored sorted (just by value)."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "set_members", Args: []FunctionArgumentMetadata{{Name: "new_members", Type: "Vec<T::AccountId>"}}, Documentation: []Text{" Set the collective's membership manually to `new_members`. Be nice to the chain and", " provide it pre-sorted.", "", " Requires root origin."}}, {Name: "execute", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Box<<T as Trait<I>>::Proposal>"}}, Documentation: []Text{" Dispatch a proposal from a member using the `Member` origin.", "", " Origin must be a member of the collective."}}, {Name: "propose", Args: []FunctionArgumentMetadata{{Name: "threshold", Type: "Compact<MemberCount>"}, {Name: "proposal", Type: "Box<<T as Trait<I>>::Proposal>"}}, Documentation: []Text{" # <weight>", " - Bounded storage reads and writes.", " - Argument `threshold` has bearing on weight.", " # </weight>"}}, {Name: "vote", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "T::Hash"}, {Name: "index", Type: "Compact<ProposalIndex>"}, {Name: "approve", Type: "bool"}}, Documentation: []Text{" # <weight>", " - Bounded storage read and writes.", " - Will be slightly heavier if the proposal is approved / disapproved after the vote.", " # </weight>"}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Proposed", Args: []Type{"AccountId", "ProposalIndex", "Hash", "MemberCount"}, Documentation: []Text{" A motion (given hash) has been proposed (by given account) with a threshold (given", " `MemberCount`)."}}, {Name: "Voted", Args: []Type{"AccountId", "Hash", "bool", "MemberCount", "MemberCount"}, Documentation: []Text{" A motion (given hash) has been voted on by given account, leaving", " a tally (yes votes and no votes given respectively as `MemberCount`)."}}, {Name: "Approved", Args: []Type{"Hash"}, Documentation: []Text{" A motion was approved by the required threshold."}}, {Name: "Disapproved", Args: []Type{"Hash"}, Documentation: []Text{" A motion was not approved by the required threshold."}}, {Name: "Executed", Args: []Type{"Hash", "bool"}, Documentation: []Text{" A motion was executed; `bool` is true if returned without error."}}, {Name: "MemberExecuted", Args: []Type{"Hash", "bool"}, Documentation: []Text{" A single member did some action; `bool` is true if returned without error."}}}, Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}, {Name: "Elections", HasStorage: true, Storage: StorageMetadata{Prefix: "Council", Items: []StorageFunctionMetadataV5{{Name: "PresentationDuration", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" How long to give each top candidate to present themselves after the vote ends."}}, {Name: "TermDuration", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" How long each position is active for."}}, {Name: "DesiredSeats", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of accounts that should constitute the collective."}}, {Name: "Members", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<(T::AccountId, T::BlockNumber)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{"  The current membership. 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", "  member was elected and their term duration)."}}, {Name: "VoteCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "VoteIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The total number of vote rounds that have happened or are in progress."}}, {Name: "ApprovalsOf", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "(T::AccountId, SetIndex)", Value: "Vec<ApprovalFlag>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text(nil)}, {Name: "RegisterInfoOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "(VoteIndex, u32)", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The vote index and list slot that the candidate `who` was registered or `None` if they", " are not currently registered."}}, {Name: "VoterInfoOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "VoterInfo<BalanceOf<T>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Basic information about a voter."}}, {Name: "Voters", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "SetIndex", Value: "Vec<Option<T::AccountId>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The present voter list (chunked and capped at [`VOTER_SET_SIZE`])."}}, {Name: "NextVoterSet", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "SetIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" the next free set to store a voter in. This will keep growing."}}, {Name: "VoterCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "SetIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Current number of Voters."}}, {Name: "Candidates", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<T::AccountId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The present candidate list."}}, {Name: "CandidateCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u32", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Current number of active candidates"}}, {Name: "NextFinalize", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "(T::BlockNumber, u32, Vec<T::AccountId>)", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The accounts holding the seats that will become free on the next tally."}}, {Name: "Leaderboard", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<(BalanceOf<T>, T::AccountId)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Get the leaderboard if we're in the presentation phase. The first element is the weight", " of each entry; It may be the direct summed approval stakes, or a weighted version of it.", " Sorted from low to high."}}, {Name: "Proxy", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "T::AccountId", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Who is able to vote for whom. Value is the fund-holding account, key is the", " vote-transaction-sending account."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "set_approvals", Args: []FunctionArgumentMetadata{{Name: "votes", Type: "Vec<bool>"}, {Name: "index", Type: "Compact<VoteIndex>"}, {Name: "hint", Type: "SetIndex"}, {Name: "value", Type: "Compact<BalanceOf<T>>"}}, Documentation: []Text{" Set candidate approvals. Approval slots stay valid as long as candidates in those slots", " are registered.", "", " Locks `value` from the balance of `origin` indefinitely. Only [`retract_voter`] or", " [`reap_inactive_voter`] can unlock the balance.", "", " `hint` argument is interpreted differently based on:", " - if `origin` is setting approvals for the first time: The index will be checked for", "   being a valid _hole_ in the voter list.", "   - if the hint is correctly pointing to a hole, no fee is deducted from `origin`.", "   - Otherwise, the call will succeed but the index is ignored and simply a push to the", "     last chunk with free space happens. If the new push causes a new chunk to be", "     created, a fee indicated by [`VotingFee`] is deducted.", " - if `origin` is already a voter: the index __must__ be valid and point to the correct", "   position of the `origin` in the current voters list.", "", " Note that any trailing `false` votes in `votes` is ignored; In approval voting, not", " voting for a candidate and voting false, are equal.", "", " # <weight>", " - O(1).", " - Two extra DB entries, one DB change.", " - Argument `votes` is limited in length to number of candidates.", " # </weight>"}}, {Name: "proxy_set_approvals", Args: []FunctionArgumentMetadata{{Name: "votes", Type: "Vec<bool>"}, {Name: "index", Type: "Compact<VoteIndex>"}, {Name: "hint", Type: "SetIndex"}, {Name: "value", Type: "Compact<BalanceOf<T>>"}}, Documentation: []Text{" Set candidate approvals from a proxy. Approval slots stay valid as long as candidates in", " those slots are registered.", "", " # <weight>", " - Same as `set_approvals` with one additional storage read.", " # </weight>"}}, {Name: "reap_inactive_voter", Args: []FunctionArgumentMetadata{{Name: "reporter_index", Type: "Compact<u32>"}, {Name: "who", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "who_index", Type: "Compact<u32>"}, {Name: "assumed_vote_index", Type: "Compact<VoteIndex>"}}, Documentation: []Text{" 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.", "", " Both indices must be provided as explained in [`voter_at`] function.", "", " May be called by anyone. Returns the voter deposit to `signed`.", "", " # <weight>", " - O(1).", " - Two fewer DB entries, one DB change.", " # </weight>"}}, {Name: "retract_voter", Args: []FunctionArgumentMetadata{{Name: "index", Type: "Compact<u32>"}}, Documentation: []Text{" Remove a voter. All votes are cancelled and the voter deposit is returned.", "", " The index must be provided as explained in [`voter_at`] function.", "", " Also removes the lock on the balance of the voter. See [`do_set_approvals()`].", "", " # <weight>", " - O(1).", " - Two fewer DB entries, one DB change.", " # </weight>"}}, {Name: "submit_candidacy", Args: []FunctionArgumentMetadata{{Name: "slot", Type: "Compact<u32>"}}, Documentation: []Text{" Submit oneself for candidacy.", "", " Account must have enough transferrable funds in it to pay the bond.", "", " NOTE: if `origin` has already assigned approvals via [`set_approvals`],", " it will NOT have any usable funds to pass candidacy bond and must first retract.", " Note that setting approvals will lock the entire balance of the voter until", " retraction or being reported.", "", " # <weight>", " - Independent of input.", " - Three DB changes.", " # </weight>"}}, {Name: "present_winner", Args: []FunctionArgumentMetadata{{Name: "candidate", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "total", Type: "Compact<BalanceOf<T>>"}, {Name: "index", Type: "Compact<VoteIndex>"}}, Documentation: []Text{" Claim that `candidate` is one of the top `carry_count + desired_seats` candidates. Only", " works iff the presentation period is active. `candidate` should have at least collected", " some non-zero `total` votes and `origin` must have enough funds to pay for a potential", " slash.", "", " # <weight>", " - O(voters) compute.", " - One DB change.", " # </weight>"}}, {Name: "set_desired_seats", Args: []FunctionArgumentMetadata{{Name: "count", Type: "Compact<u32>"}}, Documentation: []Text{" 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: []FunctionArgumentMetadata{{Name: "who", Type: "<T::Lookup as StaticLookup>::Source"}}, Documentation: []Text{" Remove a particular member from the set. This is effective immediately.", "", " Note: A tally should happen instantly (if not already in a presentation", " period) to fill the seat if removal means that the desired members are not met."}}, {Name: "set_presentation_duration", Args: []FunctionArgumentMetadata{{Name: "count", Type: "Compact<T::BlockNumber>"}}, Documentation: []Text{" Set the presentation duration. If there is currently a vote being presented for, will", " invoke `finalize_vote`."}}, {Name: "set_term_duration", Args: []FunctionArgumentMetadata{{Name: "count", Type: "Compact<T::BlockNumber>"}}, Documentation: []Text{" Set the presentation duration. If there is current a vote being presented for, will", " invoke `finalize_vote`."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "VoterReaped", Args: []Type{"AccountId", "AccountId"}, Documentation: []Text{" reaped voter, reaper"}}, {Name: "BadReaperSlashed", Args: []Type{"AccountId"}, Documentation: []Text{" slashed reaper"}}, {Name: "TallyStarted", Args: []Type{"u32"}, Documentation: []Text{" A tally (for approval votes of seat(s)) has started."}}, {Name: "TallyFinalized", Args: []Type{"Vec<AccountId>", "Vec<AccountId>"}, Documentation: []Text{" A tally (for approval votes of seat(s)) has ended (with one or more new members)."}}}, Constants: []ModuleConstantMetadataV6{{Name: "CandidacyBond", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x80, 0xc6, 0xa4, 0x7e, 0x8d, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" How much should be locked up in order to submit one's candidacy. A reasonable", " default value is 9."}}, {Name: "VotingBond", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x40, 0x7a, 0x10, 0xf3, 0x5a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" How much should be locked up in order to be able to submit votes."}}, {Name: "VotingFee", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x80, 0xf4, 0x20, 0xe6, 0xb5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The amount of fee paid upon each vote submission, unless if they submit a", " _hole_ index and replace it."}}, {Name: "PresentSlashPerVoter", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x10, 0xa5, 0xd4, 0xe8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The punishment, per voter, if you provide an invalid presentation. A", " reasonable default value is 1."}}, {Name: "CarryCount", Type: "u32", Value: Bytes{0x6, 0x0, 0x0, 0x0}, Documentation: []Text{" How many runners-up should have their approvals persist until the next", " vote. A reasonable default value is 2."}}, {Name: "InactiveGracePeriod", Type: "VoteIndex", Value: Bytes{0x1, 0x0, 0x0, 0x0}, Documentation: []Text{" How many vote indices need to go by after a target voter's last vote before", " they can be reaped if their approvals are moot. A reasonable default value", " is 1."}}, {Name: "VotingPeriod", Type: "T::BlockNumber", Value: Bytes{0x0, 0xe1, 0x0, 0x0}, Documentation: []Text{" How often (in blocks) to check for new votes. A reasonable default value", " is 1000."}}, {Name: "MinimumVotingLock", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x40, 0x7a, 0x10, 0xf3, 0x5a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Minimum about that can be used as the locked value for voting."}}, {Name: "DecayRatio", Type: "u32", Value: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Decay factor of weight when being accumulated. It should typically be set to", " __at least__ `membership_size -1` to keep the collective secure.", " When set to `N`, it indicates `(1/N)^t` of staked is decayed at weight", " increment step `t`. 0 will result in no weight being added at all (normal", " approval voting). A reasonable default value is 24."}}, {Name: "VOTER_SET_SIZE", Type: "u32", Value: Bytes{0x40, 0x0, 0x0, 0x0}, Documentation: []Text{" The chunk size of the voter vector."}}, {Name: "APPROVAL_SET_SIZE", Type: "u32", Value: Bytes{0x8, 0x0, 0x0, 0x0}, Documentation: []Text{" The chunk size of the approval vector."}}}, Errors: []ErrorMetadataV8(nil)}, {Name: "TechnicalMembership", HasStorage: true, Storage: StorageMetadata{Prefix: "Instance1Membership", Items: []StorageFunctionMetadataV5{{Name: "Members", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<T::AccountId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The current membership, stored as an ordered Vec."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "add_member", Args: []FunctionArgumentMetadata{{Name: "who", Type: "T::AccountId"}}, Documentation: []Text{" Add a member `who` to the set.", "", " May only be called from `AddOrigin` or root."}}, {Name: "remove_member", Args: []FunctionArgumentMetadata{{Name: "who", Type: "T::AccountId"}}, Documentation: []Text{" Remove a member `who` from the set.", "", " May only be called from `RemoveOrigin` or root."}}, {Name: "swap_member", Args: []FunctionArgumentMetadata{{Name: "remove", Type: "T::AccountId"}, {Name: "add", Type: "T::AccountId"}}, Documentation: []Text{" Swap out one member `remove` for another `add`.", "", " May only be called from `SwapOrigin` or root."}}, {Name: "reset_members", Args: []FunctionArgumentMetadata{{Name: "members", Type: "Vec<T::AccountId>"}}, Documentation: []Text{" Change the membership to a new set, disregarding the existing membership. Be nice and", " pass `members` pre-sorted.", "", " May only be called from `ResetOrigin` or root."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "MemberAdded", Args: []Type(nil), Documentation: []Text{" The given member was added; see the transaction for who."}}, {Name: "MemberRemoved", Args: []Type(nil), Documentation: []Text{" The given member was removed; see the transaction for who."}}, {Name: "MembersSwapped", Args: []Type(nil), Documentation: []Text{" Two members were swapped; see the transaction for who."}}, {Name: "MembersReset", Args: []Type(nil), Documentation: []Text{" The membership was reset; see the transaction for who the new set is."}}, {Name: "Dummy", Args: []Type{"rstd::marker::PhantomData<(AccountId, Event)>"}, Documentation: []Text{" Phantom member, never used."}}}, Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}, {Name: "FinalityTracker", HasStorage: false, Storage: StorageMetadata{Prefix: "", Items: []StorageFunctionMetadataV5(nil)}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "final_hint", Args: []FunctionArgumentMetadata{{Name: "hint", Type: "Compact<T::BlockNumber>"}}, Documentation: []Text{" Hint that the author of this block thinks the best finalized", " block is the given number."}}}, HasEvents: false, Events: []EventMetadataV4(nil), Constants: []ModuleConstantMetadataV6{{Name: "WindowSize", Type: "T::BlockNumber", Value: Bytes{0x65, 0x0, 0x0, 0x0}, Documentation: []Text{" The number of recent samples to keep from this chain. Default is 101."}}, {Name: "ReportLatency", Type: "T::BlockNumber", Value: Bytes{0xe8, 0x3, 0x0, 0x0}, Documentation: []Text{" The delay after which point things become suspicious. Default is 1000."}}}, Errors: []ErrorMetadataV8(nil)}, {Name: "Grandpa", HasStorage: true, Storage: StorageMetadata{Prefix: "GrandpaFinality", Items: []StorageFunctionMetadataV5{{Name: "Authorities", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<(AuthorityId, AuthorityWeight)>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The current authority set."}}, {Name: "State", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "StoredState<T::BlockNumber>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" State of the current authority set."}}, {Name: "PendingChange", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "StoredPendingChange<T::BlockNumber>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Pending change: (signaled at, scheduled change)."}}, {Name: "NextForced", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" next block number where we can force a change."}}, {Name: "Stalled", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "(T::BlockNumber, T::BlockNumber)", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" `true` if we are currently stalled."}}, {Name: "CurrentSetId", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "SetId", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The number of changes (both in terms of keys and underlying economic responsibilities)", " in the \"set\" of Grandpa validators from genesis."}}, {Name: "SetIdSession", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "SetId", Value: "SessionIndex", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" A mapping from grandpa set ID to the index of the *most recent* session for which its members were responsible."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "report_misbehavior", Args: []FunctionArgumentMetadata{{Name: "_report", Type: "Vec<u8>"}}, Documentation: []Text{" Report some misbehavior."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "NewAuthorities", Args: []Type{"Vec<(AuthorityId, AuthorityWeight)>"}, Documentation: []Text{" New authority set has been applied."}}, {Name: "Paused", Args: []Type(nil), Documentation: []Text{" Current authority set has been paused."}}, {Name: "Resumed", Args: []Type(nil), Documentation: []Text{" Current authority set has been resumed."}}}, Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}, {Name: "Treasury", HasStorage: true, Storage: StorageMetadata{Prefix: "Treasury", Items: []StorageFunctionMetadataV5{{Name: "ProposalCount", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "ProposalIndex", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of proposals that have been made."}}, {Name: "Proposals", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "ProposalIndex", Value: "Proposal<T::AccountId, BalanceOf<T>>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Proposals that have been made."}}, {Name: "Approvals", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<ProposalIndex>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Proposal indices that have been approved but not yet awarded."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "propose_spend", Args: []FunctionArgumentMetadata{{Name: "value", Type: "Compact<BalanceOf<T>>"}, {Name: "beneficiary", Type: "<T::Lookup as StaticLookup>::Source"}}, Documentation: []Text{" 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.", "", " # <weight>", " - O(1).", " - Limited storage reads.", " - One DB change, one extra DB entry.", " # </weight>"}}, {Name: "reject_proposal", Args: []FunctionArgumentMetadata{{Name: "proposal_id", Type: "Compact<ProposalIndex>"}}, Documentation: []Text{" Reject a proposed spend. The original deposit will be slashed.", "", " # <weight>", " - O(1).", " - Limited storage reads.", " - One DB clear.", " # </weight>"}}, {Name: "approve_proposal", Args: []FunctionArgumentMetadata{{Name: "proposal_id", Type: "Compact<ProposalIndex>"}}, Documentation: []Text{" Approve a proposal. At a later time, the proposal will be allocated to the beneficiary", " and the original deposit will be returned.", "", " # <weight>", " - O(1).", " - Limited storage reads.", " - One DB change.", " # </weight>"}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Proposed", Args: []Type{"ProposalIndex"}, Documentation: []Text{" New proposal."}}, {Name: "Spending", Args: []Type{"Balance"}, Documentation: []Text{" We have ended a spend period and will now allocate funds."}}, {Name: "Awarded", Args: []Type{"ProposalIndex", "Balance", "AccountId"}, Documentation: []Text{" Some funds have been allocated."}}, {Name: "Burnt", Args: []Type{"Balance"}, Documentation: []Text{" Some of our funds have been burnt."}}, {Name: "Rollover", Args: []Type{"Balance"}, Documentation: []Text{" Spending has finished; this is the amount that rolls over until next spend."}}}, Constants: []ModuleConstantMetadataV6{{Name: "ProposalBond", Type: "Permill", Value: Bytes{0x50, 0xc3, 0x0, 0x0}, Documentation: []Text{" Fraction of a proposal's value that should be bonded in order to place the proposal.", " An accepted proposal gets these back. A rejected proposal does not."}}, {Name: "ProposalBondMinimum", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x40, 0x7a, 0x10, 0xf3, 0x5a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Minimum amount of funds that should be placed in a deposit for making a proposal."}}, {Name: "SpendPeriod", Type: "T::BlockNumber", Value: Bytes{0x80, 0x70, 0x0, 0x0}, Documentation: []Text{" Period between successive spends."}}, {Name: "Burn", Type: "Permill", Value: Bytes{0x20, 0xa1, 0x7, 0x0}, Documentation: []Text{" Percentage of spare funds (if any) that are burnt per spend period."}}}, Errors: []ErrorMetadataV8(nil)}, {Name: "Contracts", HasStorage: true, Storage: StorageMetadata{Prefix: "Contract", Items: []StorageFunctionMetadataV5{{Name: "GasSpent", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Gas", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Gas spent so far in this block."}}, {Name: "CurrentSchedule", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Schedule", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x87, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xaf, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x10, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0, 0x0, 0x20, 0x0, 0x0, 0x0}, Documentation: []Text{" Current cost schedule for contracts."}}, {Name: "PristineCode", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "CodeHash<T>", Value: "Vec<u8>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" A mapping from an original code hash to the original code, untouched by instrumentation."}}, {Name: "CodeStorage", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "CodeHash<T>", Value: "wasm::PrefabWasmModule", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" A mapping between an original code hash and instrumented wasm code, ready for execution."}}, {Name: "AccountCounter", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "u64", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The subtrie counter."}}, {Name: "ContractInfoOf", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "T::AccountId", Value: "ContractInfo<T>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The code associated with a given account."}}, {Name: "GasPrice", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "BalanceOf<T>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The price of one unit of gas."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "update_schedule", Args: []FunctionArgumentMetadata{{Name: "schedule", Type: "Schedule"}}, Documentation: []Text{" Updates the schedule for metering contracts.", "", " The schedule must have a greater version than the stored schedule."}}, {Name: "put_code", Args: []FunctionArgumentMetadata{{Name: "gas_limit", Type: "Compact<Gas>"}, {Name: "code", Type: "Vec<u8>"}}, Documentation: []Text{" Stores the given binary Wasm code into the chain's storage and returns its `codehash`.", " You can instantiate contracts only with stored code."}}, {Name: "call", Args: []FunctionArgumentMetadata{{Name: "dest", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "value", Type: "Compact<BalanceOf<T>>"}, {Name: "gas_limit", Type: "Compact<Gas>"}, {Name: "data", Type: "Vec<u8>"}}, Documentation: []Text{" Makes a call to an account, optionally transferring some balance.", "", " * If the account is a smart-contract account, the associated code will be", " executed and any value will be transferred.", " * If the account is a regular account, any value will be transferred.", " * If no account exists and the call value is not less than `existential_deposit`,", " a regular account will be created and any value will be transferred."}}, {Name: "instantiate", Args: []FunctionArgumentMetadata{{Name: "endowment", Type: "Compact<BalanceOf<T>>"}, {Name: "gas_limit", Type: "Compact<Gas>"}, {Name: "code_hash", Type: "CodeHash<T>"}, {Name: "data", Type: "Vec<u8>"}}, Documentation: []Text{" Instantiates a new contract from the `codehash` generated by `put_code`, optionally transferring some balance.", "", " Instantiation is executed as follows:", "", " - The destination address is computed based on the sender and hash of the code.", " - The smart-contract account is created at the computed address.", " - The `ctor_code` is executed in the context of the newly-created account. Buffer returned", "   after the execution is saved as the `code` of the account. That code will be invoked", "   upon any call received by this account.", " - The contract is initialized."}}, {Name: "claim_surcharge", Args: []FunctionArgumentMetadata{{Name: "dest", Type: "T::AccountId"}, {Name: "aux_sender", Type: "Option<T::AccountId>"}}, Documentation: []Text{" Allows block producers to claim a small reward for evicting a contract. If a block producer", " fails to do so, a regular users will be allowed to claim the reward.", "", " If contract is not evicted as a result of this call, no actions are taken and", " the sender is not eligible for the reward."}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Transfer", Args: []Type{"AccountId", "AccountId", "Balance"}, Documentation: []Text{" Transfer happened `from` to `to` with given `value` as part of a `call` or `instantiate`."}}, {Name: "Instantiated", Args: []Type{"AccountId", "AccountId"}, Documentation: []Text{" Contract deployed by address at the specified address."}}, {Name: "CodeStored", Args: []Type{"Hash"}, Documentation: []Text{" Code with the specified hash has been stored."}}, {Name: "ScheduleUpdated", Args: []Type{"u32"}, Documentation: []Text{" Triggered when the current schedule is updated."}}, {Name: "Dispatched", Args: []Type{"AccountId", "bool"}, Documentation: []Text{" A call was dispatched from the given account. The bool signals whether it was", " successful execution or not."}}, {Name: "Contract", Args: []Type{"AccountId", "Vec<u8>"}, Documentation: []Text{" An event from contract of account."}}}, Constants: []ModuleConstantMetadataV6{{Name: "SignedClaimHandicap", Type: "T::BlockNumber", Value: Bytes{0x2, 0x0, 0x0, 0x0}, Documentation: []Text{" Number of block delay an extrinsic claim surcharge has.", "", " When claim surcharge is called by an extrinsic the rent is checked", " for current_block - delay"}}, {Name: "TombstoneDeposit", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x40, 0x7a, 0x10, 0xf3, 0x5a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The minimum amount required to generate a tombstone."}}, {Name: "StorageSizeOffset", Type: "u32", Value: Bytes{0x8, 0x0, 0x0, 0x0}, Documentation: []Text{" Size of a contract at the time of instantiaion. This is a simple way to ensure that", " empty contracts eventually gets deleted."}}, {Name: "RentByteFee", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x40, 0x7a, 0x10, 0xf3, 0x5a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Price of a byte of storage per one block interval. Should be greater than 0."}}, {Name: "RentDepositOffset", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x0, 0x8a, 0x5d, 0x78, 0x45, 0x63, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The amount of funds a contract should deposit in order to offset", " the cost of one byte.", "", " Let's suppose the deposit is 1,000 BU (balance units)/byte and the rent is 1 BU/byte/day,", " then a contract with 1,000,000 BU that uses 1,000 bytes of storage would pay no rent.", " But if the balance reduced to 500,000 BU and the storage stayed the same at 1,000,", " then it would pay 500 BU/day."}}, {Name: "SurchargeReward", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x80, 0xa1, 0xa7, 0x6b, 0x4a, 0x35, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" Reward that is received by the party whose touch has led", " to removal of a contract."}}, {Name: "TransferFee", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x10, 0xa5, 0xd4, 0xe8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee required to make a transfer."}}, {Name: "CreationFee", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x10, 0xa5, 0xd4, 0xe8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee required to create an account."}}, {Name: "TransactionBaseFee", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x10, 0xa5, 0xd4, 0xe8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee to be paid for making a transaction; the base."}}, {Name: "TransactionByteFee", Type: "BalanceOf<T>", Value: Bytes{0x0, 0xe4, 0xb, 0x54, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee to be paid for making a transaction; the per-byte portion."}}, {Name: "ContractFee", Type: "BalanceOf<T>", Value: Bytes{0x0, 0x10, 0xa5, 0xd4, 0xe8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The fee required to instantiate a contract instance. A reasonable default value", " is 21."}}, {Name: "CallBaseFee", Type: "Gas", Value: Bytes{0xe8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The base fee charged for calling into a contract. A reasonable default", " value is 135."}}, {Name: "InstantiateBaseFee", Type: "Gas", Value: Bytes{0xe8, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The base fee charged for instantiating a contract. A reasonable default value", " is 175."}}, {Name: "MaxDepth", Type: "u32", Value: Bytes{0x0, 0x4, 0x0, 0x0}, Documentation: []Text{" The maximum nesting level of a call/instantiate stack. A reasonable default", " value is 100."}}, {Name: "MaxValueSize", Type: "u32", Value: Bytes{0x0, 0x40, 0x0, 0x0}, Documentation: []Text{" The maximum size of a storage value in bytes. A reasonable default is 16 KiB."}}, {Name: "BlockGasLimit", Type: "Gas", Value: Bytes{0x80, 0x96, 0x98, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The maximum amount of gas that could be expended per block. A reasonable", " default value is 10_000_000."}}}, Errors: []ErrorMetadataV8(nil)}, {Name: "Sudo", HasStorage: true, Storage: StorageMetadata{Prefix: "Sudo", Items: []StorageFunctionMetadataV5{{Name: "Key", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::AccountId", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The `AccountId` of the sudo key."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "sudo", Args: []FunctionArgumentMetadata{{Name: "proposal", Type: "Box<T::Proposal>"}}, Documentation: []Text{" Authenticates the sudo key and dispatches a function call with `Root` origin.", "", " The dispatch origin for this call must be _Signed_.", "", " # <weight>", " - O(1).", " - Limited storage reads.", " - One DB write (event).", " - Unknown weight of derivative `proposal` execution.", " # </weight>"}}, {Name: "set_key", Args: []FunctionArgumentMetadata{{Name: "new", Type: "<T::Lookup as StaticLookup>::Source"}}, Documentation: []Text{" Authenticates the current sudo key and sets the given AccountId (`new`) as the new sudo key.", "", " The dispatch origin for this call must be _Signed_.", "", " # <weight>", " - O(1).", " - Limited storage reads.", " - One DB change.", " # </weight>"}}, {Name: "sudo_as", Args: []FunctionArgumentMetadata{{Name: "who", Type: "<T::Lookup as StaticLookup>::Source"}, {Name: "proposal", Type: "Box<T::Proposal>"}}, Documentation: []Text{" Authenticates the sudo key and dispatches a function call with `Signed` origin from", " a given account.", "", " The dispatch origin for this call must be _Signed_.", "", " # <weight>", " - O(1).", " - Limited storage reads.", " - One DB write (event).", " - Unknown weight of derivative `proposal` execution.", " # </weight>"}}}, HasEvents: true, Events: []EventMetadataV4{{Name: "Sudid", Args: []Type{"bool"}, Documentation: []Text{" A sudo just took place."}}, {Name: "KeyChanged", Args: []Type{"AccountId"}, Documentation: []Text{" The sudoer just switched identity; the old key is supplied."}}, {Name: "SudoAsDone", Args: []Type{"bool"}, Documentation: []Text{" A sudo just took place."}}}, Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}, {Name: "ImOnline", HasStorage: true, Storage: StorageMetadata{Prefix: "ImOnline", Items: []StorageFunctionMetadataV5{{Name: "GossipAt", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "T::BlockNumber", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0, 0x0, 0x0, 0x0}, Documentation: []Text{" The block number when we should gossip."}}, {Name: "Keys", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<T::AuthorityId>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The current set of keys that may issue a heartbeat."}}, {Name: "ReceivedHeartbeats", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: true, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "SessionIndex", Key2: "AuthIndex", Value: "Vec<u8>", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" For each session index we keep a mapping of `AuthorityId`", " to `offchain::OpaqueNetworkState`."}}}}, HasCalls: true, Calls: []FunctionMetadataV4{{Name: "heartbeat", Args: []FunctionArgumentMetadata{{Name: "heartbeat", Type: "Heartbeat<T::BlockNumber>"}, {Name: "signature", Type: "<T::AuthorityId as RuntimeAppPublic>::Signature"}}, Documentation: []Text(nil)}}, HasEvents: true, Events: []EventMetadataV4{{Name: "HeartbeatReceived", Args: []Type{"AuthorityId"}, Documentation: []Text{" A new heartbeat was received from `AuthorityId`"}}}, Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}, {Name: "AuthorityDiscovery", HasStorage: false, Storage: StorageMetadata{Prefix: "", Items: []StorageFunctionMetadataV5(nil)}, HasCalls: true, Calls: []FunctionMetadataV4(nil), HasEvents: false, Events: []EventMetadataV4(nil), Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}, {Name: "Offences", HasStorage: true, Storage: StorageMetadata{Prefix: "Offences", Items: []StorageFunctionMetadataV5{{Name: "Reports", Modifier: StorageFunctionModifierV0{IsOptional: true, IsDefault: false, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "ReportIdOf<T>", Value: "OffenceDetails<T::AccountId, T::IdentificationTuple>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" The primary structure that holds all offence records keyed by report identifiers."}}, {Name: "ConcurrentReportsIndex", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: true, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "Kind", Key2: "OpaqueTimeSlot", Value: "Vec<ReportIdOf<T>>", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" A vector of reports of the same kind that happened at the same time slot."}}, {Name: "ReportsByKindIndex", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: false, AsType: "", IsMap: true, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: true, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "Kind", Value: "Vec<u8>", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Enumerates all reports of a kind along with the time they happened.", "", " All reports are sorted by the time of offence.", "", " Note that the actual type of this mapping is `Vec<u8>`, this is because values of", " different types are not supported at the moment so we are doing the manual serialization."}}}}, HasCalls: true, Calls: []FunctionMetadataV4(nil), HasEvents: true, Events: []EventMetadataV4{{Name: "Offence", Args: []Type{"Kind", "OpaqueTimeSlot"}, Documentation: []Text{" There is an offence reported of the given `kind` happened at the `session_index` and", " (kind-specific) time slot. This event is not deposited for duplicate slashes."}}}, Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}, {Name: "RandomnessCollectiveFlip", HasStorage: true, Storage: StorageMetadata{Prefix: "RandomnessCollectiveFlip", Items: []StorageFunctionMetadataV5{{Name: "RandomMaterial", Modifier: StorageFunctionModifierV0{IsOptional: false, IsDefault: true, IsRequired: false}, Type: StorageFunctionTypeV5{IsType: true, AsType: "Vec<T::Hash>", IsMap: false, AsMap: MapTypeV4{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key: "", Value: "", Linked: false}, IsDoubleMap: false, AsDoubleMap: DoubleMapTypeV5{Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}, Key1: "", Key2: "", Value: "", Key2Hasher: StorageHasher{IsBlake2_128: false, IsBlake2_256: false, IsTwox128: false, IsTwox256: false, IsTwox64Concat: false}}}, Fallback: Bytes{0x0}, Documentation: []Text{" Series of block headers from the last 81 blocks that acts as random seed material. This", " is arranged as a ring buffer with `block_number % 81` being the index into the `Vec` of", " the oldest hash."}}}}, HasCalls: true, Calls: []FunctionMetadataV4(nil), HasEvents: false, Events: []EventMetadataV4(nil), Constants: []ModuleConstantMetadataV6(nil), Errors: []ErrorMetadataV8(nil)}}}} //nolint:lll,dupl
View Source
var ExamplarySignedBlock = SignedBlock{Block: Block{Header: ExamplaryHeader, Extrinsics: nil}, Justification: Justification{0xc1, 0x13}} //nolint:lll

Functions

func BigIntToIntBytes added in v0.0.3

func BigIntToIntBytes(i *big.Int, bytelen int) ([]byte, error)

BigIntToIntBytes encodes the given big.Int to a big endian encoded signed integer byte slice of the given byte length, using a two's complement if the big.Int is negative and returning an error if the given big.Int would be bigger than the maximum positive (negative) numbers the byte slice of the given length could hold

func BigIntToUintBytes added in v0.0.3

func BigIntToUintBytes(i *big.Int, bytelen int) ([]byte, error)

BigIntToUintBytes encodes the given big.Int to a big endian encoded unsigned integer byte slice of the given byte length, returning an error if the given big.Int would be bigger than the maximum number the byte slice of the given length could hold

func DecodeFromBytes

func DecodeFromBytes(bz []byte, target interface{}) error

DecodeFromBytes decodes `bz` with the scale codec into `target`. `target` should be a pointer.

func DecodeFromHexString

func DecodeFromHexString(str string, target interface{}) error

DecodeFromHexString decodes `str` with the scale codec into `target`. `target` should be a pointer.

func EncodeToBytes

func EncodeToBytes(value interface{}) ([]byte, error)

EncodeToBytes encodes `value` with the scale codec, returning []byte

func EncodeToHexString

func EncodeToHexString(value interface{}) (string, error)

EncodeToHexString encodes `value` with the scale codec, returning a hex string (prefixed by 0x)

func EncodedLength

func EncodedLength(value interface{}) (int, error)

EncodedLength returns the length of the value when encoded as a byte array

func Eq

func Eq(one, other interface{}) bool

Eq compares the value of the input to see if there is a match

func Hex

func Hex(value interface{}) (string, error)

Hex returns a hex string representation of the value (not of the encoded value)

func HexDecodeString added in v0.0.3

func HexDecodeString(s string) ([]byte, error)

HexDecodeString decodes bytes from a hex string. Contrary to hex.DecodeString, this function does not error if "0x" is prefixed, and adds an extra 0 if the hex string has an odd length.

func HexEncodeToString added in v0.0.3

func HexEncodeToString(b []byte) string

HexEncode encodes bytes to a hex string. Contrary to hex.EncodeToString, this function prefixes the hex string with "0x"

func IntBytesToBigInt added in v0.0.3

func IntBytesToBigInt(b []byte) (*big.Int, error)

IntBytesToBigInt decodes the given byte slice containing a big endian encoded signed integer to a big.Int, using a two's complement if the most significant bit is 1

func MustHexDecodeString added in v0.0.3

func MustHexDecodeString(str string) []byte

MustHexDecodeString panics if str cannot be decoded

func UintBytesToBigInt added in v0.0.3

func UintBytesToBigInt(b []byte) (*big.Int, error)

UintBytesToBigInt decodes the given byte slice containing a big endian encoded unsigned integer to a big.Int

Types

type AccountID added in v0.0.3

type AccountID [32]byte

AccountID represents a public key (an 32 byte array)

func NewAccountID added in v0.0.3

func NewAccountID(b []byte) AccountID

NewAccountID creates a new AccountID type

type AccountIndex added in v0.0.3

type AccountIndex uint32

AccountIndex is a shortened, variable-length encoding for an Account

func NewAccountIndex added in v0.0.3

func NewAccountIndex(i uint32) AccountIndex

NewAccountIndex creates a new AccountIndex type

type AccountInfo deprecated added in v0.0.3

type AccountInfo struct {
	TrieID           []byte
	CurrentMemStored uint64
}

Deprecated: AccountInfo is an account information structure for contracts

func NewAccountInfo deprecated added in v0.0.3

func NewAccountInfo(trieID []byte, currentMemStored uint64) AccountInfo

Deprecated: NewAccountInfo creates a new AccountInfo type

type Address added in v0.0.3

type Address struct {
	IsAccountID    bool
	AsAccountID    AccountID
	IsAccountIndex bool
	AsAccountIndex AccountIndex
}

Address is a wrapper around an AccountId or an AccountIndex. It is encoded with a prefix in case of an AccountID. Basically the Address is encoded as `[ <prefix-byte>, ...publicKey/...bytes ]` as per spec

func NewAddressFromAccountID added in v0.0.3

func NewAddressFromAccountID(b []byte) Address

NewAddressFromAccountID creates an Address from the given AccountID (public key)

func NewAddressFromAccountIndex added in v0.0.3

func NewAddressFromAccountIndex(u uint32) Address

NewAddressFromAccountIndex creates an Address from the given AccountIndex

func NewAddressFromHexAccountID added in v0.0.3

func NewAddressFromHexAccountID(str string) (Address, error)

NewAddressFromHexAccountID creates an Address from the given hex string that contains an AccountID (public key)

func (*Address) Decode added in v0.0.3

func (a *Address) Decode(decoder scale.Decoder) error

func (Address) Encode added in v0.0.3

func (a Address) Encode(encoder scale.Encoder) error

type Args added in v0.0.3

type Args []byte

Args are the encoded arguments for a Call

func (*Args) Decode added in v0.0.3

func (a *Args) Decode(decoder scale.Decoder) error

Decode implements decoding for Args, which just reads all the remaining bytes into Args

func (Args) Encode added in v0.0.3

func (a Args) Encode(encoder scale.Encoder) error

Encode implements encoding for Args, which just unwraps the bytes of Args

type AuthorityID added in v0.0.3

type AuthorityID [32]byte

AuthorityID represents a public key (an 32 byte array)

func NewAuthorityID added in v0.0.3

func NewAuthorityID(b [32]byte) AuthorityID

NewAuthorityID creates a new AuthorityID type

type Block added in v0.0.3

type Block struct {
	Header     Header
	Extrinsics []Extrinsic
}

Block encoded with header and extrinsics

type BlockNumber added in v0.0.3

type BlockNumber U32

func (*BlockNumber) Decode added in v0.0.3

func (b *BlockNumber) Decode(decoder scale.Decoder) error

Decode implements decoding for BlockNumber, which just wraps the bytes in BlockNumber

func (BlockNumber) Encode added in v0.0.3

func (b BlockNumber) Encode(encoder scale.Encoder) error

Encode implements encoding for BlockNumber, which just unwraps the bytes of BlockNumber

func (BlockNumber) MarshalJSON added in v0.0.3

func (b BlockNumber) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of BlockNumber

func (*BlockNumber) UnmarshalJSON added in v0.0.3

func (b *BlockNumber) UnmarshalJSON(bz []byte) error

UnmarshalJSON fills BlockNumber with the JSON encoded byte array given by bz

type Bool

type Bool bool

Bool represents boolean values

func NewBool

func NewBool(b bool) Bool

NewBool creates a new Bool

type Bytes

type Bytes []byte

Bytes represents byte slices. Bytes has a variable length, it is encoded with a scale prefix

func NewBytes

func NewBytes(b []byte) Bytes

NewBytes creates a new Bytes type

type Bytes1024

type Bytes1024 [1024]byte

Bytes1024 represents an 1024 byte array

func NewBytes1024

func NewBytes1024(b [1024]byte) Bytes1024

NewBytes1024 creates a new Bytes1024 type

type Bytes128

type Bytes128 [128]byte

Bytes128 represents an 128 byte array

func NewBytes128

func NewBytes128(b [128]byte) Bytes128

NewBytes128 creates a new Bytes128 type

type Bytes16

type Bytes16 [16]byte

Bytes16 represents an 16 byte array

func NewBytes16

func NewBytes16(b [16]byte) Bytes16

NewBytes16 creates a new Bytes16 type

type Bytes2048

type Bytes2048 [2048]byte

Bytes2048 represents an 2048 byte array

func NewBytes2048

func NewBytes2048(b [2048]byte) Bytes2048

NewBytes2048 creates a new Bytes2048 type

type Bytes256

type Bytes256 [256]byte

Bytes256 represents an 256 byte array

func NewBytes256

func NewBytes256(b [256]byte) Bytes256

NewBytes256 creates a new Bytes256 type

type Bytes32

type Bytes32 [32]byte

Bytes32 represents an 32 byte array

func NewBytes32

func NewBytes32(b [32]byte) Bytes32

NewBytes32 creates a new Bytes32 type

type Bytes512

type Bytes512 [512]byte

Bytes512 represents an 512 byte array

func NewBytes512

func NewBytes512(b [512]byte) Bytes512

NewBytes512 creates a new Bytes512 type

type Bytes64

type Bytes64 [64]byte

Bytes64 represents an 64 byte array

func NewBytes64

func NewBytes64(b [64]byte) Bytes64

NewBytes64 creates a new Bytes64 type

type Bytes8

type Bytes8 [8]byte

Bytes8 represents an 8 byte array

func NewBytes8

func NewBytes8(b [8]byte) Bytes8

NewBytes8 creates a new Bytes8 type

type BytesBare added in v0.0.3

type BytesBare []byte

BytesBare represents byte slices that will be encoded bare, i. e. without a compact length prefix. This makes it impossible to decode the bytes, but is used as the payload for signing.

func (*BytesBare) Decode added in v0.0.3

func (b *BytesBare) Decode(decoder scale.Decoder) error

Decode does nothing and always returns an error. BytesBare is only used for encoding, not for decoding

func (BytesBare) Encode added in v0.0.3

func (b BytesBare) Encode(encoder scale.Encoder) error

Encode implements encoding for BytesBare, which just unwraps the bytes of BytesBare without adding a compact length prefix

type Call added in v0.0.3

type Call struct {
	CallIndex CallIndex
	Args      Args
}

Call is the extrinsic function descriptor

func NewCall added in v0.0.3

func NewCall(m *Metadata, call string, args ...interface{}) (Call, error)

type CallIndex added in v0.0.3

type CallIndex struct {
	SectionIndex uint8
	MethodIndex  uint8
}

Callindex is a 16 bit wrapper around the `[sectionIndex, methodIndex]` value that uniquely identifies a method

func (*CallIndex) Decode added in v0.0.3

func (m *CallIndex) Decode(decoder scale.Decoder) error

func (CallIndex) Encode added in v0.0.3

func (m CallIndex) Encode(encoder scale.Encoder) error

type Consensus added in v0.0.3

type Consensus struct {
	ConsensusEngineID ConsensusEngineID
	Bytes             Bytes
}

type ConsensusEngineID added in v0.0.3

type ConsensusEngineID U32

ConsensusEngineID is a 4-byte identifier (actually a [u8; 4]) identifying the engine, e.g. for Aura it would be [b'a', b'u', b'r', b'a']

type Data added in v0.0.3

type Data []byte

Data is a raw data structure, containing raw bytes that are not decoded/encoded (without any length encoding). Be careful using this in your own structs – it only works as the last value in a struct since it will consume the remainder of the encoded data. The reason for this is that it does not contain any length encoding, so it would not know where to stop.

func NewData added in v0.0.3

func NewData(b []byte) Data

NewData creates a new Data type

func (*Data) Decode added in v0.0.3

func (d *Data) Decode(decoder scale.Decoder) error

Decode implements decoding for Data, which just reads all the remaining bytes into Data

func (Data) Encode added in v0.0.3

func (d Data) Encode(encoder scale.Encoder) error

Encode implements encoding for Data, which just unwraps the bytes of Data

func (Data) Hex added in v0.0.3

func (d Data) Hex() string

Hex returns a hex string representation of the value

type Digest added in v0.0.3

type Digest []DigestItem

Digest contains logs

func (Digest) MarshalJSON added in v0.0.3

func (d Digest) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of u

func (*Digest) UnmarshalJSON added in v0.0.3

func (d *Digest) UnmarshalJSON(bz []byte) error

UnmarshalJSON fills u with the JSON encoded byte array given by b

type DigestItem added in v0.0.3

type DigestItem struct {
	IsOther             bool
	AsOther             Bytes // 0
	IsAuthoritiesChange bool
	AsAuthoritiesChange []AuthorityID // 1
	IsChangesTrieRoot   bool
	AsChangesTrieRoot   Hash // 2
	IsSealV0            bool
	AsSealV0            SealV0 // 3
	IsConsensus         bool
	AsConsensus         Consensus // 4
	IsSeal              bool
	AsSeal              Seal // 5
	IsPreRuntime        bool
	AsPreRuntime        PreRuntime // 6
}

DigestItem speciefies the item in the logs of a digest

func (*DigestItem) Decode added in v0.0.3

func (m *DigestItem) Decode(decoder scale.Decoder) error

func (DigestItem) Encode added in v0.0.3

func (m DigestItem) Encode(encoder scale.Encoder) error

type DispatchError added in v0.0.3

type DispatchError struct {
	HasModule bool
	Module    uint8
	Error     uint8
}

DispatchError is an error occurring during extrinsic dispatch

func (*DispatchError) Decode added in v0.0.3

func (d *DispatchError) Decode(decoder scale.Decoder) error

func (DispatchError) Encode added in v0.0.3

func (d DispatchError) Encode(encoder scale.Encoder) error

type DoubleMapTypeV4 added in v0.0.3

type DoubleMapTypeV4 struct {
	Hasher     StorageHasher
	Key1       Type
	Key2       Type
	Value      Type
	Key2Hasher Text
}

type DoubleMapTypeV5 added in v0.0.3

type DoubleMapTypeV5 struct {
	Hasher     StorageHasher
	Key1       Type
	Key2       Type
	Value      Type
	Key2Hasher StorageHasher
}

type ErrorMetadataV8 added in v0.0.3

type ErrorMetadataV8 struct {
	Name          Text
	Documentation []Text
}

type EventBalancesNewAccount added in v0.0.3

type EventBalancesNewAccount struct {
	Phase     Phase
	AccountID AccountID
	Balance   U128
	Topics    []Hash
}

type EventBalancesReapedAccount added in v0.0.3

type EventBalancesReapedAccount struct {
	Phase     Phase
	AccountID AccountID
	Topics    []Hash
}

type EventBalancesTransfer added in v0.0.3

type EventBalancesTransfer struct {
	Phase  Phase
	From   AccountID
	To     AccountID
	Value  U128
	Fees   U128
	Topics []Hash
}

type EventID added in v0.0.3

type EventID [2]byte

type EventIndicesNewAccountIndex added in v0.0.3

type EventIndicesNewAccountIndex struct {
	Phase        Phase
	AccountID    AccountID
	AccountIndex AccountIndex
	Topics       []Hash
}

type EventMetadataV4 added in v0.0.3

type EventMetadataV4 struct {
	Name          Text
	Args          []Type
	Documentation []Text
}

type EventRecords added in v0.0.3

type EventRecords struct {
	System_ExtrinsicSuccess []EventSystemExtrinsicSuccess //nolint:stylecheck,golint
	System_ExtrinsicFailed  []EventSystemExtrinsicFailed  //nolint:stylecheck,golint
	Indices_NewAccountIndex []EventIndicesNewAccountIndex //nolint:stylecheck,golint
	Balances_NewAccount     []EventBalancesNewAccount     //nolint:stylecheck,golint
	Balances_ReapedAccount  []EventBalancesReapedAccount  //nolint:stylecheck,golint
	Balances_Transfer       []EventBalancesTransfer       //nolint:stylecheck,golint
	Session_NewSession      []EventSessionNewSession      //nolint:stylecheck,golint
}

EventRecords is a default set of possible event records that can be used as a target for `func (e EventRecordsRaw) Decode(...`

type EventRecordsRaw added in v0.0.3

type EventRecordsRaw []byte

EventRecordsRaw is a raw record for a set of events, represented as the raw bytes. It exists since decoding of events can only be done with metadata, so events can't follow the static way of decoding other types do. It exposes functions to decode events using metadata and targets. Be careful using this in your own structs – it only works as the last value in a struct since it will consume the remainder of the encoded data. The reason for this is that it does not contain any length encoding, so it would not know where to stop.

func (*EventRecordsRaw) Decode added in v0.0.3

func (e *EventRecordsRaw) Decode(decoder scale.Decoder) error

Decode implements decoding for Data, which just reads all the remaining bytes into Data

Example
e := EventRecordsRaw(MustHexDecodeString("0x100000000000000000000100000000000000020000000302d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48266d00000000000000000000000000000010a5d4e80000000000000000000000000002000000000000")) //nolint:lll

events := EventRecords{}
err := e.DecodeEventRecords(ExamplaryMetadataV8, &events)
if err != nil {
	panic(err)
}

fmt.Printf("Got %v System_ExtrinsicSuccess events\n", len(events.System_ExtrinsicSuccess))
fmt.Printf("Got %v System_ExtrinsicFailed events\n", len(events.System_ExtrinsicFailed))
fmt.Printf("Got %v Indices_NewAccountIndex events\n", len(events.Indices_NewAccountIndex))
fmt.Printf("Got %v Balances_Transfer events\n", len(events.Balances_Transfer))
t := events.Balances_Transfer[0]
fmt.Printf("Transfer: %v tokens from %#x to\n%#x with a fee of %v", t.Value, t.From, t.To, t.Fees)
Output:

Got 1 System_ExtrinsicSuccess events
Got 1 System_ExtrinsicFailed events
Got 1 Indices_NewAccountIndex events
Got 1 Balances_Transfer events
Transfer: 109 tokens from 0x3593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d8e to
0xaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a4826 with a fee of 3906250000

func (EventRecordsRaw) DecodeEventRecords added in v0.0.3

func (e EventRecordsRaw) DecodeEventRecords(m *Metadata, t interface{}) error

DecodeEventRecords decodes the events records from an EventRecordRaw into a target t using the given Metadata m

func (EventRecordsRaw) Encode added in v0.0.3

func (e EventRecordsRaw) Encode(encoder scale.Encoder) error

Encode implements encoding for Data, which just unwraps the bytes of Data

type EventSessionNewSession added in v0.0.3

type EventSessionNewSession struct {
	Phase        Phase
	SessionIndex U32
	Topics       []Hash
}

type EventSystemExtrinsicFailed added in v0.0.3

type EventSystemExtrinsicFailed struct {
	Phase         Phase
	DispatchError DispatchError
	Topics        []Hash
}

type EventSystemExtrinsicSuccess added in v0.0.3

type EventSystemExtrinsicSuccess struct {
	Phase  Phase
	Topics []Hash
}

type ExampleEnum

type ExampleEnum struct{}

ExampleEnum - Enum types can be represented using Go's structs. The ExampleEnum type itself is not used anywhere, it's just here for documentation purposes.

Example (ApplyExtrinsic)
applyExtrinsic := PhaseEnum{
	IsApplyExtrinsic: true,
	AsApplyExtrinsic: 1234,
}

enc, err := EncodeToHexString(applyExtrinsic)
if err != nil {
	panic(err)
}

var dec PhaseEnum
err = DecodeFromHexString(enc, &dec)
if err != nil {
	panic(err)
}

fmt.Println(reflect.DeepEqual(applyExtrinsic, dec))
Output:

Example (Finalization)
finalization := PhaseEnum{
	IsFinalization: true,
}

enc, err := EncodeToHexString(finalization)
if err != nil {
	panic(err)
}

var dec PhaseEnum
err = DecodeFromHexString(enc, &dec)
if err != nil {
	panic(err)
}

fmt.Println(reflect.DeepEqual(finalization, dec))
Output:

type ExampleStruct

type ExampleStruct struct{}

ExampleStruct - Struct types (fixed-sized series of values with predetermined and fixed types, typically without names/labels/keys) can be represented using Go's structs. The ExampleStruct type itself is not used anywhere, it's just here for documentation purposes.

Example
type Animal struct {
	Name     string
	Legs     U8
	Children []string
}

dog := Animal{Name: "Bello", Legs: 2, Children: []string{"Sam"}}

encoded, err := EncodeToHexString(dog)
if err != nil {
	panic(err)
}
fmt.Println(encoded)

var decoded Animal
err = DecodeFromHexString(encoded, &decoded)
if err != nil {
	panic(err)
}
fmt.Println(decoded)
Output:

0x1442656c6c6f02040c53616d
{Bello 2 [Sam]}

type ExampleTuple

type ExampleTuple struct{}

ExampleTuple - Tuple types (fixed-sized series of values with predetermined and fixed types, typically without names/labels/keys) can be represented using Go's structs. To use tuples, just define a struct that has exported fields with the right types for each value in the tuple, and the encoding manages the rest for you. The ExampleTuple type itself is not used anywhere, it's just here for documentation purposes.

Example
// This represents a document tuple of types [uint64, hash]
type Doc struct {
	ID   U64
	Hash Hash
}

doc := Doc{12, blake2b.Sum256([]byte("My document"))}

encoded, err := EncodeToHexString(doc)
if err != nil {
	panic(err)
}
fmt.Println(encoded)

var decoded Doc
err = DecodeFromHexString(encoded, &decoded)
if err != nil {
	panic(err)
}
fmt.Println(decoded)
Output:

0x0c000000000000009199a254aedc9d92a3157cd27bd21ceccc1e2ecee5760788663a3e523bc1a759
{12 [145 153 162 84 174 220 157 146 163 21 124 210 123 210 28 236 204 30 46 206 229 118 7 136 102 58 62 82 59 193 167 89]}

type ExampleVec

type ExampleVec struct{}

ExampleVec - Vec types (vectors, lists, series, sets, arrays, slices) can be represented using Go's native slices and arrays. The ExampleVec type itself is not used anywhere, it's just here for documentation purposes.

Example (Simple)
ingredients := []string{"salt", "sugar"}

encoded, err := EncodeToHexString(ingredients)
if err != nil {
	panic(err)
}
fmt.Println(encoded)

var decoded []string
err = DecodeFromHexString(encoded, &decoded)
if err != nil {
	panic(err)
}
fmt.Println(decoded)
Output:

0x081073616c74147375676172
[salt sugar]
Example (Struct)
type Votes struct {
	Options     [2]string
	Yay         []string
	Nay         []string
	Outstanding []string
}

votes := Votes{
	Options:     [2]string{"no deal", "muddle through"},
	Yay:         []string{"Alice"},
	Nay:         nil,
	Outstanding: []string{"Bob", "Carol"},
}

encoded, err := EncodeToBytes(votes)
if err != nil {
	panic(err)
}
var decoded Votes
err = DecodeFromBytes(encoded, &decoded)
if err != nil {
	panic(err)
}

fmt.Println(reflect.DeepEqual(votes, decoded))
Output:

true

type ExampleVecAny

type ExampleVecAny struct{}

ExampleVecAny - VecAny is used in polkadot-js as a list of elements that are of any type, while Vec and VecFixed require fixed types. Albeit Go has no dynamic types, VecAny can be implemented using arrays/slices of custom types with custom encoding. An example is provided here. The ExampleVecAny type itself is not used anywhere, it's just here for documentation purposes.

Example
// Go Substrate RPC Client (GSRPC) provides APIs and types around Polkadot and any Substrate-based chain RPC calls
//
// Copyright 2019 Centrifuge GmbH
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package main

import (
	"fmt"
	"reflect"

	"github.com/centrifuge/go-substrate-rpc-client/scale"
	. "github.com/centrifuge/go-substrate-rpc-client/types"
)

// MyVal is a custom type that is used to hold arbitrarily encoded data. In this example, we encode uint8s with a 0x00
// and strings with 0x01 as the first byte.
type MyVal struct {
	Value interface{}
}

func (a *MyVal) Decode(decoder scale.Decoder) error {
	b, err := decoder.ReadOneByte()

	if err != nil {
		return err
	}

	if b == 0 {
		var u uint8
		err = decoder.Decode(&u)
		a.Value = u
	} else if b == 1 {
		var s string
		err = decoder.Decode(&s)
		a.Value = s
	}

	if err != nil {
		return err
	}

	return nil
}

func (a MyVal) Encode(encoder scale.Encoder) error {
	var err1, err2 error

	switch v := a.Value.(type) {
	case uint8:
		err1 = encoder.PushByte(0)
		err2 = encoder.Encode(v)
	case string:
		err1 = encoder.PushByte(1)
		err2 = encoder.Encode(v)
	default:
		return fmt.Errorf("unknown type %T", v)
	}

	if err1 != nil {
		return err1
	}
	if err2 != nil {
		return err2
	}

	return nil
}

func main() {
	myValSlice := []MyVal{{uint8(12)}, {"Abc"}}

	encoded, err := EncodeToBytes(myValSlice)
	if err != nil {
		panic(err)
	}
	fmt.Println(encoded)

	var decoded []MyVal
	err = DecodeFromBytes(encoded, &decoded)
	if err != nil {
		panic(err)
	}

	fmt.Println(reflect.DeepEqual(myValSlice, decoded))
}
Output:

[8 0 12 1 12 65 98 99]
true

type Extrinsic added in v0.0.3

type Extrinsic struct {
	// Version is the encoded version flag (which encodes the raw transaction version and signing information in one byte)
	Version byte
	// Signature is the ExtrinsicSignatureV3, it's present depends on the Version flag
	Signature ExtrinsicSignatureV3
	// Method is the call this extrinsic wraps
	Method Call
}

Extrinsic is a piece of Args bundled into a block that expresses something from the "external" (i.e. off-chain) world. There are, broadly speaking, two types of extrinsic: transactions (which tend to be signed) and inherents (which don't).

Example
bob, err := NewAddressFromHexAccountID("0x8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48")
if err != nil {
	panic(err)
}

c, err := NewCall(ExamplaryMetadataV4, "balances.transfer", bob, UCompact(6969))
if err != nil {
	panic(err)
}

ext := NewExtrinsic(c)
if err != nil {
	panic(err)
}

ext.Method.CallIndex.SectionIndex = 5
ext.Method.CallIndex.MethodIndex = 0

era := ExtrinsicEra{IsMortalEra: true, AsMortalEra: MortalEra{0x95, 0x00}}

o := SignatureOptions{
	BlockHash:   NewHash(MustHexDecodeString("0x223e3eb79416e6258d262b3a76e827aa0886b884a96bf96395cdd1c52d0eeb45")),
	Era:         era,
	GenesisHash: NewHash(MustHexDecodeString("0x81ad0bfe2a0bccd91d2e89852d79b7ff696d4714758e5f7c6f17ec7527e1f550")),
	Nonce:       1,
	SpecVersion: 170,
	Tip:         0,
}

err = ext.Sign(signature.TestKeyringPairAlice, o)
if err != nil {
	panic(err)
}

fmt.Printf("%#v", ext)

extEnc, err := EncodeToHexString(ext)
if err != nil {
	panic(err)
}

fmt.Printf("%#v", extEnc)
Output:

func NewExtrinsic added in v0.0.3

func NewExtrinsic(c Call) Extrinsic

NewExtrinsic creates a new Extrinsic from the provided Call

func (*Extrinsic) Decode added in v0.0.3

func (e *Extrinsic) Decode(decoder scale.Decoder) error

func (Extrinsic) Encode added in v0.0.3

func (e Extrinsic) Encode(encoder scale.Encoder) error

func (Extrinsic) IsSigned added in v0.0.3

func (e Extrinsic) IsSigned() bool

IsSigned returns true if the extrinsic is signed

func (Extrinsic) MarshalJSON added in v0.0.3

func (e Extrinsic) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of Extrinsic

func (*Extrinsic) Sign added in v0.0.3

Sign adds a signature to the extrinsic

func (Extrinsic) Type added in v0.0.3

func (e Extrinsic) Type() uint8

Type returns the raw transaction version (not flagged with signing information)

func (*Extrinsic) UnmarshalJSON added in v0.0.3

func (e *Extrinsic) UnmarshalJSON(bz []byte) error

UnmarshalJSON fills Extrinsic with the JSON encoded byte array given by bz

type ExtrinsicEra added in v0.0.3

type ExtrinsicEra struct {
	IsImmortalEra bool
	// AsImmortalEra ImmortalEra
	IsMortalEra bool
	AsMortalEra MortalEra
}

ExtrinsicEra indicates either a mortal or immortal extrinsic

func (*ExtrinsicEra) Decode added in v0.0.3

func (e *ExtrinsicEra) Decode(decoder scale.Decoder) error

func (ExtrinsicEra) Encode added in v0.0.3

func (e ExtrinsicEra) Encode(encoder scale.Encoder) error

type ExtrinsicPayloadV3 added in v0.0.3

type ExtrinsicPayloadV3 struct {
	Method      BytesBare
	Era         ExtrinsicEra // extra via system::CheckEra
	Nonce       UCompact     // extra via system::CheckNonce (Compact<Index> where Index is u32)
	Tip         UCompact     // extra via balances::TakeFees (Compact<Balance> where Balance is u128)
	SpecVersion U32          // additional via system::CheckVersion
	GenesisHash Hash         // additional via system::CheckGenesis
	BlockHash   Hash         // additional via system::CheckEra
}

ExtrinsicPayloadV3 is a signing payload for an Extrinsic. For the final encoding, it is variable length based on the contents included. Note that `BytesBare` is absolutely critical – we don't want the method (Bytes) to have the length prefix included. This means that the data-as-signed is un-decodable, but is also doesn't need the extra information, only the pure data (and is not decoded) ... The same applies to V1 & V1, if we have a V4, carry move this comment to latest

func (*ExtrinsicPayloadV3) Decode added in v0.0.3

func (e *ExtrinsicPayloadV3) Decode(decoder scale.Decoder) error

Decode does nothing and always returns an error. ExtrinsicPayloadV3 is only used for encoding, not for decoding

func (ExtrinsicPayloadV3) Encode added in v0.0.3

func (e ExtrinsicPayloadV3) Encode(encoder scale.Encoder) error

Encode implements encoding for ExtrinsicPayloadV3, which just unwraps the bytes of ExtrinsicPayloadV3 without adding a compact length prefix

func (ExtrinsicPayloadV3) Sign added in v0.0.3

Sign the extrinsic payload with the given derivation path

type ExtrinsicSignatureV3 added in v0.0.3

type ExtrinsicSignatureV3 struct {
	Signer    Address
	Signature Signature
	Era       ExtrinsicEra // extra via system::CheckEra
	Nonce     UCompact     // extra via system::CheckNonce (Compact<Index> where Index is u32))
	Tip       UCompact     // extra via balances::TakeFees (Compact<Balance> where Balance is u128))
}

type FunctionArgumentMetadata

type FunctionArgumentMetadata struct {
	Name Text
	Type Type
}

type FunctionMetadataV4 added in v0.0.3

type FunctionMetadataV4 struct {
	Name          Text
	Args          []FunctionArgumentMetadata
	Documentation []Text
}

type H160

type H160 [20]byte

H160 is a hash containing 160 bits (20 bytes), typically used in blocks, extrinsics and as a sane default

func NewH160

func NewH160(b []byte) H160

NewH160 creates a new H160 type

func (H160) Hex

func (h H160) Hex() string

Hex returns a hex string representation of the value (not of the encoded value)

type H256

type H256 [32]byte

H256 is a hash containing 256 bits (32 bytes), typically used in blocks, extrinsics and as a sane default

func NewH256

func NewH256(b []byte) H256

NewH256 creates a new H256 type

func (H256) Hex

func (h H256) Hex() string

Hex returns a hex string representation of the value (not of the encoded value)

type H512

type H512 [64]byte

H512 is a hash containing 512 bits (64 bytes), typically used for signature

func NewH512

func NewH512(b []byte) H512

NewH512 creates a new H512 type

func (H512) Hex

func (h H512) Hex() string

Hex returns a hex string representation of the value (not of the encoded value)

type Hash

type Hash H256

Hash is the default hash that is used across the system. It is just a thin wrapper around H256

func GetHash

func GetHash(value interface{}) (Hash, error)

GetHash returns a hash of the value

func NewHash

func NewHash(b []byte) Hash

NewHash creates a new Hash type

func NewHashFromHexString added in v0.0.3

func NewHashFromHexString(s string) (Hash, error)

NewHashFromHexString creates a new Hash type from a hex string

func (Hash) Hex

func (h Hash) Hex() string

Hex returns a hex string representation of the value (not of the encoded value)

func (Hash) MarshalJSON added in v0.0.3

func (h Hash) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of h

func (*Hash) UnmarshalJSON added in v0.0.3

func (h *Hash) UnmarshalJSON(b []byte) error

UnmarshalJSON fills h with the JSON encoded byte array given by b

type Header struct {
	ParentHash     Hash        `json:"parentHash"`
	Number         BlockNumber `json:"number"`
	StateRoot      Hash        `json:"stateRoot"`
	ExtrinsicsRoot Hash        `json:"extrinsicsRoot"`
	Digest         Digest      `json:"digest"`
}

type Hexer

type Hexer interface {
	Hex() string
}

Hexer interface is implemented by any type that has a Hex() function returning a string

type I128 added in v0.0.3

type I128 struct {
	*big.Int
}

I128 is a signed 128-bit integer, it is represented as a big.Int in Go.

func NewI128 added in v0.0.3

func NewI128(i big.Int) I128

NewI128 creates a new I128 type

func (*I128) Decode added in v0.0.3

func (i *I128) Decode(decoder scale.Decoder) error

Decode implements decoding as per the Scale specification

func (I128) Encode added in v0.0.3

func (i I128) Encode(encoder scale.Encoder) error

Encode implements encoding as per the Scale specification

type I16

type I16 int16

I16 is a signed 16-bit integer

func NewI16

func NewI16(i int16) I16

NewI16 creates a new I16 type

func (I16) MarshalJSON

func (i I16) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of i

func (*I16) UnmarshalJSON

func (i *I16) UnmarshalJSON(b []byte) error

UnmarshalJSON fills i with the JSON encoded byte array given by b

type I256 added in v0.0.3

type I256 struct {
	*big.Int
}

I256 is a signed 256-bit integer, it is represented as a big.Int in Go.

func NewI256 added in v0.0.3

func NewI256(i big.Int) I256

NewI256 creates a new I256 type

func (*I256) Decode added in v0.0.3

func (i *I256) Decode(decoder scale.Decoder) error

Decode implements decoding as per the Scale specification

func (I256) Encode added in v0.0.3

func (i I256) Encode(encoder scale.Encoder) error

Encode implements encoding as per the Scale specification

type I32

type I32 int32

I32 is a signed 32-bit integer

func NewI32

func NewI32(i int32) I32

NewI32 creates a new I32 type

func (I32) MarshalJSON

func (i I32) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of i

func (*I32) UnmarshalJSON

func (i *I32) UnmarshalJSON(b []byte) error

UnmarshalJSON fills i with the JSON encoded byte array given by b

type I64

type I64 int64

I64 is a signed 64-bit integer

func NewI64

func NewI64(i int64) I64

NewI64 creates a new I64 type

func (I64) MarshalJSON

func (i I64) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of i

func (*I64) UnmarshalJSON

func (i *I64) UnmarshalJSON(b []byte) error

UnmarshalJSON fills i with the JSON encoded byte array given by b

type I8

type I8 int8

I8 is a signed 8-bit integer

func NewI8

func NewI8(i int8) I8

NewI8 creates a new I8 type

func (I8) MarshalJSON

func (i I8) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of i

func (*I8) UnmarshalJSON

func (i *I8) UnmarshalJSON(b []byte) error

UnmarshalJSON fills i with the JSON encoded byte array given by b

type Justification added in v0.0.3

type Justification Bytes

type MapTypeV4 added in v0.0.3

type MapTypeV4 struct {
	Hasher StorageHasher
	Key    Type
	Value  Type
	Linked bool
}

type Metadata

type Metadata struct {
	MagicNumber  uint32
	Version      uint8
	IsMetadataV4 bool
	AsMetadataV4 MetadataV4
	IsMetadataV7 bool
	AsMetadataV7 MetadataV7
	IsMetadataV8 bool
	AsMetadataV8 MetadataV8
}

func NewMetadataV4 added in v0.0.3

func NewMetadataV4() *Metadata

func NewMetadataV7 added in v0.0.3

func NewMetadataV7() *Metadata

func NewMetadataV8 added in v0.0.3

func NewMetadataV8() *Metadata

func (*Metadata) Decode

func (m *Metadata) Decode(decoder scale.Decoder) error

func (Metadata) Encode

func (m Metadata) Encode(encoder scale.Encoder) error

func (*Metadata) FindCallIndex added in v0.0.3

func (m *Metadata) FindCallIndex(call string) (CallIndex, error)

func (*Metadata) FindEventNamesForEventID added in v0.0.3

func (m *Metadata) FindEventNamesForEventID(eventID EventID) (Text, Text, error)

func (*Metadata) FindStorageKeyHasher added in v0.0.3

func (m *Metadata) FindStorageKeyHasher(module string, fn string) (hash.Hash, error)

type MetadataV4 added in v0.0.3

type MetadataV4 struct {
	Modules []ModuleMetadataV4
}

Modelled after https://github.com/paritytech/substrate/blob/v1.0.0rc2/srml/metadata/src/lib.rs

func (*MetadataV4) Decode added in v0.0.3

func (m *MetadataV4) Decode(decoder scale.Decoder) error

func (MetadataV4) Encode added in v0.0.3

func (m MetadataV4) Encode(encoder scale.Encoder) error

func (*MetadataV4) FindCallIndex added in v0.0.3

func (m *MetadataV4) FindCallIndex(call string) (CallIndex, error)

func (*MetadataV4) FindEventNamesForEventID added in v0.0.3

func (m *MetadataV4) FindEventNamesForEventID(eventID EventID) (Text, Text, error)

func (*MetadataV4) FindStorageKeyHasher added in v0.0.3

func (m *MetadataV4) FindStorageKeyHasher(module string, fn string) (hash.Hash, error)

type MetadataV7 added in v0.0.3

type MetadataV7 struct {
	Modules []ModuleMetadataV7
}

Modelled after packages/types/src/Metadata/v7/Metadata.ts

func (*MetadataV7) Decode added in v0.0.3

func (m *MetadataV7) Decode(decoder scale.Decoder) error

func (MetadataV7) Encode added in v0.0.3

func (m MetadataV7) Encode(encoder scale.Encoder) error

func (*MetadataV7) FindCallIndex added in v0.0.3

func (m *MetadataV7) FindCallIndex(call string) (CallIndex, error)

func (*MetadataV7) FindEventNamesForEventID added in v0.0.3

func (m *MetadataV7) FindEventNamesForEventID(eventID EventID) (Text, Text, error)

func (*MetadataV7) FindStorageKeyHasher added in v0.0.3

func (m *MetadataV7) FindStorageKeyHasher(module string, fn string) (hash.Hash, error)

type MetadataV8 added in v0.0.3

type MetadataV8 struct {
	Modules []ModuleMetadataV8
}

Modelled after packages/types/src/Metadata/v8/Metadata.ts

func (*MetadataV8) Decode added in v0.0.3

func (m *MetadataV8) Decode(decoder scale.Decoder) error

func (MetadataV8) Encode added in v0.0.3

func (m MetadataV8) Encode(encoder scale.Encoder) error

func (*MetadataV8) FindCallIndex added in v0.0.3

func (m *MetadataV8) FindCallIndex(call string) (CallIndex, error)

func (*MetadataV8) FindEventNamesForEventID added in v0.0.3

func (m *MetadataV8) FindEventNamesForEventID(eventID EventID) (Text, Text, error)

func (*MetadataV8) FindStorageKeyHasher added in v0.0.3

func (m *MetadataV8) FindStorageKeyHasher(module string, fn string) (hash.Hash, error)

type ModuleConstantMetadataV6 added in v0.0.3

type ModuleConstantMetadataV6 struct {
	Name          Text
	Type          Type
	Value         Bytes
	Documentation []Text
}

type ModuleMetadataV4 added in v0.0.3

type ModuleMetadataV4 struct {
	Name       Text
	Prefix     Text
	HasStorage bool
	Storage    []StorageFunctionMetadataV4
	HasCalls   bool
	Calls      []FunctionMetadataV4
	HasEvents  bool
	Events     []EventMetadataV4
}

func (*ModuleMetadataV4) Decode added in v0.0.3

func (m *ModuleMetadataV4) Decode(decoder scale.Decoder) error

func (ModuleMetadataV4) Encode added in v0.0.3

func (m ModuleMetadataV4) Encode(encoder scale.Encoder) error

type ModuleMetadataV7 added in v0.0.3

type ModuleMetadataV7 struct {
	Name       Text
	HasStorage bool
	Storage    StorageMetadata
	HasCalls   bool
	Calls      []FunctionMetadataV4
	HasEvents  bool
	Events     []EventMetadataV4
	Constants  []ModuleConstantMetadataV6
}

func (*ModuleMetadataV7) Decode added in v0.0.3

func (m *ModuleMetadataV7) Decode(decoder scale.Decoder) error

func (ModuleMetadataV7) Encode added in v0.0.3

func (m ModuleMetadataV7) Encode(encoder scale.Encoder) error

type ModuleMetadataV8 added in v0.0.3

type ModuleMetadataV8 struct {
	Name       Text
	HasStorage bool
	Storage    StorageMetadata
	HasCalls   bool
	Calls      []FunctionMetadataV4
	HasEvents  bool
	Events     []EventMetadataV4
	Constants  []ModuleConstantMetadataV6
	Errors     []ErrorMetadataV8
}

func (*ModuleMetadataV8) Decode added in v0.0.3

func (m *ModuleMetadataV8) Decode(decoder scale.Decoder) error

func (ModuleMetadataV8) Encode added in v0.0.3

func (m ModuleMetadataV8) Encode(encoder scale.Encoder) error

type Moment added in v0.0.3

type Moment struct {
	time.Time
}

Moment is a wrapper around seconds/timestamps using the `time.Time` type. Internally the representation only has second precicion (aligning with Rust), so any numbers passed an/out are always per-second. For any encoding/decoding the 1000 multiplier would be applied to get it in line with time.Time.

func NewMoment added in v0.0.3

func NewMoment(t time.Time) Moment

NewMoment creates a new Moment type

func (*Moment) Decode added in v0.0.3

func (m *Moment) Decode(decoder scale.Decoder) error

func (Moment) Encode added in v0.0.3

func (m Moment) Encode(encoder scale.Encoder) error

type MortalEra added in v0.0.3

type MortalEra struct {
	First  byte
	Second byte
}

MortalEra for an extrinsic, indicating period and phase

type Null added in v0.0.3

type Null byte

Null is a type that does not contain anything (apart from null)

func NewNull added in v0.0.3

func NewNull() Null

NewNull creates a new Null type

func (*Null) Decode added in v0.0.3

func (n *Null) Decode(decoder scale.Decoder) error

Decode implements decoding for Null, which does nothing

func (Null) Encode added in v0.0.3

func (n Null) Encode(encoder scale.Encoder) error

Encode implements encoding for Null, which does nothing

func (Null) String added in v0.0.3

func (n Null) String() string

String returns a string representation of the value

type OptionBool

type OptionBool struct {
	// contains filtered or unexported fields
}

OptionBool is a structure that can store a Bool or a missing value Note that encoding rules are slightly different from other "option" fields This implementation was adopted from https://github.com/Joystream/parity-codec-go/blob/develop/noreflect/codec.go

func NewOptionBool

func NewOptionBool(value Bool) OptionBool

NewOptionBool creates an OptionBool with a value

func NewOptionBoolEmpty

func NewOptionBoolEmpty() OptionBool

NewOptionBoolEmpty creates an OptionBool without a value

func (*OptionBool) Decode

func (o *OptionBool) Decode(decoder scale.Decoder) error

Decode implements decoding for OptionBool as per Rust implementation

func (OptionBool) Encode

func (o OptionBool) Encode(encoder scale.Encoder) error

Encode implements encoding for OptionBool as per Rust implementation

func (OptionBool) IsNone

func (o OptionBool) IsNone() bool

IsNone returns true if the value is missing

func (OptionBool) IsSome

func (o OptionBool) IsSome() bool

IsNone returns true if a value is present

func (*OptionBool) SetNone

func (o *OptionBool) SetNone()

SetNone removes a value and marks it as missing

func (*OptionBool) SetSome

func (o *OptionBool) SetSome(value Bool)

SetSome sets a value

func (OptionBool) Unwrap

func (o OptionBool) Unwrap() (ok bool, value Bool)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionBytes

type OptionBytes struct {
	// contains filtered or unexported fields
}

OptionBytes is a structure that can store a Bytes or a missing value

func NewOptionBytes

func NewOptionBytes(value Bytes) OptionBytes

NewOptionBytes creates an OptionBytes with a value

func NewOptionBytesEmpty

func NewOptionBytesEmpty() OptionBytes

NewOptionBytesEmpty creates an OptionBytes without a value

func (*OptionBytes) Decode

func (o *OptionBytes) Decode(decoder scale.Decoder) error

func (OptionBytes) Encode

func (o OptionBytes) Encode(encoder scale.Encoder) error

func (OptionBytes) IsNone

func (o OptionBytes) IsNone() bool

IsNone returns true if the value is missing

func (OptionBytes) IsSome

func (o OptionBytes) IsSome() bool

IsNone returns true if a value is present

func (*OptionBytes) SetNone

func (o *OptionBytes) SetNone()

SetNone removes a value and marks it as missing

func (*OptionBytes) SetSome

func (o *OptionBytes) SetSome(value Bytes)

SetSome sets a value

func (OptionBytes) Unwrap

func (o OptionBytes) Unwrap() (ok bool, value Bytes)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionBytes1024

type OptionBytes1024 struct {
	// contains filtered or unexported fields
}

OptionBytes1024 is a structure that can store a Bytes1024 or a missing value

func NewOptionBytes1024

func NewOptionBytes1024(value Bytes1024) OptionBytes1024

NewOptionBytes1024 creates an OptionBytes1024 with a value

func NewOptionBytes1024Empty

func NewOptionBytes1024Empty() OptionBytes1024

NewOptionBytes1024Empty creates an OptionBytes1024 without a value

func (*OptionBytes1024) Decode

func (o *OptionBytes1024) Decode(decoder scale.Decoder) error

func (OptionBytes1024) Encode

func (o OptionBytes1024) Encode(encoder scale.Encoder) error

func (OptionBytes1024) IsNone

func (o OptionBytes1024) IsNone() bool

IsNone returns true if the value is missing

func (OptionBytes1024) IsSome

func (o OptionBytes1024) IsSome() bool

IsNone returns true if a value is present

func (*OptionBytes1024) SetNone

func (o *OptionBytes1024) SetNone()

SetNone removes a value and marks it as missing

func (*OptionBytes1024) SetSome

func (o *OptionBytes1024) SetSome(value Bytes1024)

SetSome sets a value

func (OptionBytes1024) Unwrap

func (o OptionBytes1024) Unwrap() (ok bool, value Bytes1024)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionBytes128

type OptionBytes128 struct {
	// contains filtered or unexported fields
}

OptionBytes128 is a structure that can store a Bytes128 or a missing value

func NewOptionBytes128

func NewOptionBytes128(value Bytes128) OptionBytes128

NewOptionBytes128 creates an OptionBytes128 with a value

func NewOptionBytes128Empty

func NewOptionBytes128Empty() OptionBytes128

NewOptionBytes128Empty creates an OptionBytes128 without a value

func (*OptionBytes128) Decode

func (o *OptionBytes128) Decode(decoder scale.Decoder) error

func (OptionBytes128) Encode

func (o OptionBytes128) Encode(encoder scale.Encoder) error

func (OptionBytes128) IsNone

func (o OptionBytes128) IsNone() bool

IsNone returns true if the value is missing

func (OptionBytes128) IsSome

func (o OptionBytes128) IsSome() bool

IsNone returns true if a value is present

func (*OptionBytes128) SetNone

func (o *OptionBytes128) SetNone()

SetNone removes a value and marks it as missing

func (*OptionBytes128) SetSome

func (o *OptionBytes128) SetSome(value Bytes128)

SetSome sets a value

func (OptionBytes128) Unwrap

func (o OptionBytes128) Unwrap() (ok bool, value Bytes128)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionBytes16

type OptionBytes16 struct {
	// contains filtered or unexported fields
}

OptionBytes16 is a structure that can store a Bytes16 or a missing value

func NewOptionBytes16

func NewOptionBytes16(value Bytes16) OptionBytes16

NewOptionBytes16 creates an OptionBytes16 with a value

func NewOptionBytes16Empty

func NewOptionBytes16Empty() OptionBytes16

NewOptionBytes16Empty creates an OptionBytes16 without a value

func (*OptionBytes16) Decode

func (o *OptionBytes16) Decode(decoder scale.Decoder) error

func (OptionBytes16) Encode

func (o OptionBytes16) Encode(encoder scale.Encoder) error

func (OptionBytes16) IsNone

func (o OptionBytes16) IsNone() bool

IsNone returns true if the value is missing

func (OptionBytes16) IsSome

func (o OptionBytes16) IsSome() bool

IsNone returns true if a value is present

func (*OptionBytes16) SetNone

func (o *OptionBytes16) SetNone()

SetNone removes a value and marks it as missing

func (*OptionBytes16) SetSome

func (o *OptionBytes16) SetSome(value Bytes16)

SetSome sets a value

func (OptionBytes16) Unwrap

func (o OptionBytes16) Unwrap() (ok bool, value Bytes16)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionBytes2048

type OptionBytes2048 struct {
	// contains filtered or unexported fields
}

OptionBytes2048 is a structure that can store a Bytes2048 or a missing value

func NewOptionBytes2048

func NewOptionBytes2048(value Bytes2048) OptionBytes2048

NewOptionBytes2048 creates an OptionBytes2048 with a value

func NewOptionBytes2048Empty

func NewOptionBytes2048Empty() OptionBytes2048

NewOptionBytes2048Empty creates an OptionBytes2048 without a value

func (*OptionBytes2048) Decode

func (o *OptionBytes2048) Decode(decoder scale.Decoder) error

func (OptionBytes2048) Encode

func (o OptionBytes2048) Encode(encoder scale.Encoder) error

func (OptionBytes2048) IsNone

func (o OptionBytes2048) IsNone() bool

IsNone returns true if the value is missing

func (OptionBytes2048) IsSome

func (o OptionBytes2048) IsSome() bool

IsNone returns true if a value is present

func (*OptionBytes2048) SetNone

func (o *OptionBytes2048) SetNone()

SetNone removes a value and marks it as missing

func (*OptionBytes2048) SetSome

func (o *OptionBytes2048) SetSome(value Bytes2048)

SetSome sets a value

func (OptionBytes2048) Unwrap

func (o OptionBytes2048) Unwrap() (ok bool, value Bytes2048)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionBytes256

type OptionBytes256 struct {
	// contains filtered or unexported fields
}

OptionBytes256 is a structure that can store a Bytes256 or a missing value

func NewOptionBytes256

func NewOptionBytes256(value Bytes256) OptionBytes256

NewOptionBytes256 creates an OptionBytes256 with a value

func NewOptionBytes256Empty

func NewOptionBytes256Empty() OptionBytes256

NewOptionBytes256Empty creates an OptionBytes256 without a value

func (*OptionBytes256) Decode

func (o *OptionBytes256) Decode(decoder scale.Decoder) error

func (OptionBytes256) Encode

func (o OptionBytes256) Encode(encoder scale.Encoder) error

func (OptionBytes256) IsNone

func (o OptionBytes256) IsNone() bool

IsNone returns true if the value is missing

func (OptionBytes256) IsSome

func (o OptionBytes256) IsSome() bool

IsNone returns true if a value is present

func (*OptionBytes256) SetNone

func (o *OptionBytes256) SetNone()

SetNone removes a value and marks it as missing

func (*OptionBytes256) SetSome

func (o *OptionBytes256) SetSome(value Bytes256)

SetSome sets a value

func (OptionBytes256) Unwrap

func (o OptionBytes256) Unwrap() (ok bool, value Bytes256)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionBytes32

type OptionBytes32 struct {
	// contains filtered or unexported fields
}

OptionBytes32 is a structure that can store a Bytes32 or a missing value

func NewOptionBytes32

func NewOptionBytes32(value Bytes32) OptionBytes32

NewOptionBytes32 creates an OptionBytes32 with a value

func NewOptionBytes32Empty

func NewOptionBytes32Empty() OptionBytes32

NewOptionBytes32Empty creates an OptionBytes32 without a value

func (*OptionBytes32) Decode

func (o *OptionBytes32) Decode(decoder scale.Decoder) error

func (OptionBytes32) Encode

func (o OptionBytes32) Encode(encoder scale.Encoder) error

func (OptionBytes32) IsNone

func (o OptionBytes32) IsNone() bool

IsNone returns true if the value is missing

func (OptionBytes32) IsSome

func (o OptionBytes32) IsSome() bool

IsNone returns true if a value is present

func (*OptionBytes32) SetNone

func (o *OptionBytes32) SetNone()

SetNone removes a value and marks it as missing

func (*OptionBytes32) SetSome

func (o *OptionBytes32) SetSome(value Bytes32)

SetSome sets a value

func (OptionBytes32) Unwrap

func (o OptionBytes32) Unwrap() (ok bool, value Bytes32)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionBytes512

type OptionBytes512 struct {
	// contains filtered or unexported fields
}

OptionBytes512 is a structure that can store a Bytes512 or a missing value

func NewOptionBytes512

func NewOptionBytes512(value Bytes512) OptionBytes512

NewOptionBytes512 creates an OptionBytes512 with a value

func NewOptionBytes512Empty

func NewOptionBytes512Empty() OptionBytes512

NewOptionBytes512Empty creates an OptionBytes512 without a value

func (*OptionBytes512) Decode

func (o *OptionBytes512) Decode(decoder scale.Decoder) error

func (OptionBytes512) Encode

func (o OptionBytes512) Encode(encoder scale.Encoder) error

func (OptionBytes512) IsNone

func (o OptionBytes512) IsNone() bool

IsNone returns true if the value is missing

func (OptionBytes512) IsSome

func (o OptionBytes512) IsSome() bool

IsNone returns true if a value is present

func (*OptionBytes512) SetNone

func (o *OptionBytes512) SetNone()

SetNone removes a value and marks it as missing

func (*OptionBytes512) SetSome

func (o *OptionBytes512) SetSome(value Bytes512)

SetSome sets a value

func (OptionBytes512) Unwrap

func (o OptionBytes512) Unwrap() (ok bool, value Bytes512)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionBytes64

type OptionBytes64 struct {
	// contains filtered or unexported fields
}

OptionBytes64 is a structure that can store a Bytes64 or a missing value

func NewOptionBytes64

func NewOptionBytes64(value Bytes64) OptionBytes64

NewOptionBytes64 creates an OptionBytes64 with a value

func NewOptionBytes64Empty

func NewOptionBytes64Empty() OptionBytes64

NewOptionBytes64Empty creates an OptionBytes64 without a value

func (*OptionBytes64) Decode

func (o *OptionBytes64) Decode(decoder scale.Decoder) error

func (OptionBytes64) Encode

func (o OptionBytes64) Encode(encoder scale.Encoder) error

func (OptionBytes64) IsNone

func (o OptionBytes64) IsNone() bool

IsNone returns true if the value is missing

func (OptionBytes64) IsSome

func (o OptionBytes64) IsSome() bool

IsNone returns true if a value is present

func (*OptionBytes64) SetNone

func (o *OptionBytes64) SetNone()

SetNone removes a value and marks it as missing

func (*OptionBytes64) SetSome

func (o *OptionBytes64) SetSome(value Bytes64)

SetSome sets a value

func (OptionBytes64) Unwrap

func (o OptionBytes64) Unwrap() (ok bool, value Bytes64)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionBytes8

type OptionBytes8 struct {
	// contains filtered or unexported fields
}

OptionBytes8 is a structure that can store a Bytes8 or a missing value

func NewOptionBytes8

func NewOptionBytes8(value Bytes8) OptionBytes8

NewOptionBytes8 creates an OptionBytes8 with a value

func NewOptionBytes8Empty

func NewOptionBytes8Empty() OptionBytes8

NewOptionBytes8Empty creates an OptionBytes8 without a value

func (*OptionBytes8) Decode

func (o *OptionBytes8) Decode(decoder scale.Decoder) error

func (OptionBytes8) Encode

func (o OptionBytes8) Encode(encoder scale.Encoder) error

func (OptionBytes8) IsNone

func (o OptionBytes8) IsNone() bool

IsNone returns true if the value is missing

func (OptionBytes8) IsSome

func (o OptionBytes8) IsSome() bool

IsNone returns true if a value is present

func (*OptionBytes8) SetNone

func (o *OptionBytes8) SetNone()

SetNone removes a value and marks it as missing

func (*OptionBytes8) SetSome

func (o *OptionBytes8) SetSome(value Bytes8)

SetSome sets a value

func (OptionBytes8) Unwrap

func (o OptionBytes8) Unwrap() (ok bool, value Bytes8)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionH160

type OptionH160 struct {
	// contains filtered or unexported fields
}

OptionH160 is a structure that can store a H160 or a missing value

func NewOptionH160

func NewOptionH160(value H160) OptionH160

NewOptionH160 creates an OptionH160 with a value

func NewOptionH160Empty

func NewOptionH160Empty() OptionH160

NewOptionH160Empty creates an OptionH160 without a value

func (*OptionH160) Decode

func (o *OptionH160) Decode(decoder scale.Decoder) error

func (OptionH160) Encode

func (o OptionH160) Encode(encoder scale.Encoder) error

func (OptionH160) IsNone

func (o OptionH160) IsNone() bool

IsNone returns true if the value is missing

func (OptionH160) IsSome

func (o OptionH160) IsSome() bool

IsNone returns true if a value is present

func (*OptionH160) SetNone

func (o *OptionH160) SetNone()

SetNone removes a value and marks it as missing

func (*OptionH160) SetSome

func (o *OptionH160) SetSome(value H160)

SetSome sets a value

func (OptionH160) Unwrap

func (o OptionH160) Unwrap() (ok bool, value H160)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionH256

type OptionH256 struct {
	// contains filtered or unexported fields
}

OptionH256 is a structure that can store a H256 or a missing value

func NewOptionH256

func NewOptionH256(value H256) OptionH256

NewOptionH256 creates an OptionH256 with a value

func NewOptionH256Empty

func NewOptionH256Empty() OptionH256

NewOptionH256Empty creates an OptionH256 without a value

func (*OptionH256) Decode

func (o *OptionH256) Decode(decoder scale.Decoder) error

func (OptionH256) Encode

func (o OptionH256) Encode(encoder scale.Encoder) error

func (OptionH256) IsNone

func (o OptionH256) IsNone() bool

IsNone returns true if the value is missing

func (OptionH256) IsSome

func (o OptionH256) IsSome() bool

IsNone returns true if a value is present

func (*OptionH256) SetNone

func (o *OptionH256) SetNone()

SetNone removes a value and marks it as missing

func (*OptionH256) SetSome

func (o *OptionH256) SetSome(value H256)

SetSome sets a value

func (OptionH256) Unwrap

func (o OptionH256) Unwrap() (ok bool, value H256)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionH512

type OptionH512 struct {
	// contains filtered or unexported fields
}

OptionH512 is a structure that can store a H512 or a missing value

func NewOptionH512

func NewOptionH512(value H512) OptionH512

NewOptionH512 creates an OptionH512 with a value

func NewOptionH512Empty

func NewOptionH512Empty() OptionH512

NewOptionH512Empty creates an OptionH512 without a value

func (*OptionH512) Decode

func (o *OptionH512) Decode(decoder scale.Decoder) error

func (OptionH512) Encode

func (o OptionH512) Encode(encoder scale.Encoder) error

func (OptionH512) IsNone

func (o OptionH512) IsNone() bool

IsNone returns true if the value is missing

func (OptionH512) IsSome

func (o OptionH512) IsSome() bool

IsNone returns true if a value is present

func (*OptionH512) SetNone

func (o *OptionH512) SetNone()

SetNone removes a value and marks it as missing

func (*OptionH512) SetSome

func (o *OptionH512) SetSome(value H512)

SetSome sets a value

func (OptionH512) Unwrap

func (o OptionH512) Unwrap() (ok bool, value H512)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionHash

type OptionHash struct {
	// contains filtered or unexported fields
}

OptionHash is a structure that can store a Hash or a missing value

func NewOptionHash

func NewOptionHash(value Hash) OptionHash

NewOptionHash creates an OptionHash with a value

func NewOptionHashEmpty

func NewOptionHashEmpty() OptionHash

NewOptionHashEmpty creates an OptionHash without a value

func (*OptionHash) Decode

func (o *OptionHash) Decode(decoder scale.Decoder) error

func (OptionHash) Encode

func (o OptionHash) Encode(encoder scale.Encoder) error

func (OptionHash) IsNone

func (o OptionHash) IsNone() bool

IsNone returns true if the value is missing

func (OptionHash) IsSome

func (o OptionHash) IsSome() bool

IsNone returns true if a value is present

func (*OptionHash) SetNone

func (o *OptionHash) SetNone()

SetNone removes a value and marks it as missing

func (*OptionHash) SetSome

func (o *OptionHash) SetSome(value Hash)

SetSome sets a value

func (OptionHash) Unwrap

func (o OptionHash) Unwrap() (ok bool, value Hash)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionI16

type OptionI16 struct {
	// contains filtered or unexported fields
}

OptionI16 is a structure that can store a I16 or a missing value

func NewOptionI16

func NewOptionI16(value I16) OptionI16

NewOptionI16 creates an OptionI16 with a value

func NewOptionI16Empty

func NewOptionI16Empty() OptionI16

NewOptionI16Empty creates an OptionI16 without a value

func (*OptionI16) Decode

func (o *OptionI16) Decode(decoder scale.Decoder) error

func (OptionI16) Encode

func (o OptionI16) Encode(encoder scale.Encoder) error

func (OptionI16) IsNone

func (o OptionI16) IsNone() bool

IsNone returns true if the value is missing

func (OptionI16) IsSome

func (o OptionI16) IsSome() bool

IsNone returns true if a value is present

func (*OptionI16) SetNone

func (o *OptionI16) SetNone()

SetNone removes a value and marks it as missing

func (*OptionI16) SetSome

func (o *OptionI16) SetSome(value I16)

SetSome sets a value

func (OptionI16) Unwrap

func (o OptionI16) Unwrap() (ok bool, value I16)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionI32

type OptionI32 struct {
	// contains filtered or unexported fields
}

OptionI32 is a structure that can store a I32 or a missing value

func NewOptionI32

func NewOptionI32(value I32) OptionI32

NewOptionI32 creates an OptionI32 with a value

func NewOptionI32Empty

func NewOptionI32Empty() OptionI32

NewOptionI32Empty creates an OptionI32 without a value

func (*OptionI32) Decode

func (o *OptionI32) Decode(decoder scale.Decoder) error

func (OptionI32) Encode

func (o OptionI32) Encode(encoder scale.Encoder) error

func (OptionI32) IsNone

func (o OptionI32) IsNone() bool

IsNone returns true if the value is missing

func (OptionI32) IsSome

func (o OptionI32) IsSome() bool

IsNone returns true if a value is present

func (*OptionI32) SetNone

func (o *OptionI32) SetNone()

SetNone removes a value and marks it as missing

func (*OptionI32) SetSome

func (o *OptionI32) SetSome(value I32)

SetSome sets a value

func (OptionI32) Unwrap

func (o OptionI32) Unwrap() (ok bool, value I32)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionI64

type OptionI64 struct {
	// contains filtered or unexported fields
}

OptionI64 is a structure that can store a I64 or a missing value

func NewOptionI64

func NewOptionI64(value I64) OptionI64

NewOptionI64 creates an OptionI64 with a value

func NewOptionI64Empty

func NewOptionI64Empty() OptionI64

NewOptionI64Empty creates an OptionI64 without a value

func (*OptionI64) Decode

func (o *OptionI64) Decode(decoder scale.Decoder) error

func (OptionI64) Encode

func (o OptionI64) Encode(encoder scale.Encoder) error

func (OptionI64) IsNone

func (o OptionI64) IsNone() bool

IsNone returns true if the value is missing

func (OptionI64) IsSome

func (o OptionI64) IsSome() bool

IsNone returns true if a value is present

func (*OptionI64) SetNone

func (o *OptionI64) SetNone()

SetNone removes a value and marks it as missing

func (*OptionI64) SetSome

func (o *OptionI64) SetSome(value I64)

SetSome sets a value

func (OptionI64) Unwrap

func (o OptionI64) Unwrap() (ok bool, value I64)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionI8

type OptionI8 struct {
	// contains filtered or unexported fields
}

OptionI8 is a structure that can store a I8 or a missing value

func NewOptionI8

func NewOptionI8(value I8) OptionI8

NewOptionI8 creates an OptionI8 with a value

func NewOptionI8Empty

func NewOptionI8Empty() OptionI8

NewOptionI8Empty creates an OptionI8 without a value

func (*OptionI8) Decode

func (o *OptionI8) Decode(decoder scale.Decoder) error

func (OptionI8) Encode

func (o OptionI8) Encode(encoder scale.Encoder) error

func (OptionI8) IsNone

func (o OptionI8) IsNone() bool

IsNone returns true if the value is missing

func (OptionI8) IsSome

func (o OptionI8) IsSome() bool

IsNone returns true if a value is present

func (*OptionI8) SetNone

func (o *OptionI8) SetNone()

SetNone removes a value and marks it as missing

func (*OptionI8) SetSome

func (o *OptionI8) SetSome(value I8)

SetSome sets a value

func (OptionI8) Unwrap

func (o OptionI8) Unwrap() (ok bool, value I8)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionU16

type OptionU16 struct {
	// contains filtered or unexported fields
}

OptionU16 is a structure that can store a U16 or a missing value

func NewOptionU16

func NewOptionU16(value U16) OptionU16

NewOptionU16 creates an OptionU16 with a value

func NewOptionU16Empty

func NewOptionU16Empty() OptionU16

NewOptionU16Empty creates an OptionU16 without a value

func (*OptionU16) Decode

func (o *OptionU16) Decode(decoder scale.Decoder) error

func (OptionU16) Encode

func (o OptionU16) Encode(encoder scale.Encoder) error

func (OptionU16) IsNone

func (o OptionU16) IsNone() bool

IsNone returns true if the value is missing

func (OptionU16) IsSome

func (o OptionU16) IsSome() bool

IsNone returns true if a value is present

func (*OptionU16) SetNone

func (o *OptionU16) SetNone()

SetNone removes a value and marks it as missing

func (*OptionU16) SetSome

func (o *OptionU16) SetSome(value U16)

SetSome sets a value

func (OptionU16) Unwrap

func (o OptionU16) Unwrap() (ok bool, value U16)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionU32

type OptionU32 struct {
	// contains filtered or unexported fields
}

OptionU32 is a structure that can store a U32 or a missing value

func NewOptionU32

func NewOptionU32(value U32) OptionU32

NewOptionU32 creates an OptionU32 with a value

func NewOptionU32Empty

func NewOptionU32Empty() OptionU32

NewOptionU32Empty creates an OptionU32 without a value

func (*OptionU32) Decode

func (o *OptionU32) Decode(decoder scale.Decoder) error

func (OptionU32) Encode

func (o OptionU32) Encode(encoder scale.Encoder) error

func (OptionU32) IsNone

func (o OptionU32) IsNone() bool

IsNone returns true if the value is missing

func (OptionU32) IsSome

func (o OptionU32) IsSome() bool

IsNone returns true if a value is present

func (*OptionU32) SetNone

func (o *OptionU32) SetNone()

SetNone removes a value and marks it as missing

func (*OptionU32) SetSome

func (o *OptionU32) SetSome(value U32)

SetSome sets a value

func (OptionU32) Unwrap

func (o OptionU32) Unwrap() (ok bool, value U32)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionU64

type OptionU64 struct {
	// contains filtered or unexported fields
}

OptionU64 is a structure that can store a U64 or a missing value

func NewOptionU64

func NewOptionU64(value U64) OptionU64

NewOptionU64 creates an OptionU64 with a value

func NewOptionU64Empty

func NewOptionU64Empty() OptionU64

NewOptionU64Empty creates an OptionU64 without a value

func (*OptionU64) Decode

func (o *OptionU64) Decode(decoder scale.Decoder) error

func (OptionU64) Encode

func (o OptionU64) Encode(encoder scale.Encoder) error

func (OptionU64) IsNone

func (o OptionU64) IsNone() bool

IsNone returns true if the value is missing

func (OptionU64) IsSome

func (o OptionU64) IsSome() bool

IsNone returns true if a value is present

func (*OptionU64) SetNone

func (o *OptionU64) SetNone()

SetNone removes a value and marks it as missing

func (*OptionU64) SetSome

func (o *OptionU64) SetSome(value U64)

SetSome sets a value

func (OptionU64) Unwrap

func (o OptionU64) Unwrap() (ok bool, value U64)

Unwrap returns a flag that indicates whether a value is present and the stored value

type OptionU8

type OptionU8 struct {
	// contains filtered or unexported fields
}

OptionU8 is a structure that can store a U8 or a missing value

func NewOptionU8

func NewOptionU8(value U8) OptionU8

NewOptionU8 creates an OptionU8 with a value

func NewOptionU8Empty

func NewOptionU8Empty() OptionU8

NewOptionU8Empty creates an OptionU8 without a value

func (*OptionU8) Decode

func (o *OptionU8) Decode(decoder scale.Decoder) error

func (OptionU8) Encode

func (o OptionU8) Encode(encoder scale.Encoder) error

func (OptionU8) IsNone

func (o OptionU8) IsNone() bool

IsNone returns true if the value is missing

func (OptionU8) IsSome

func (o OptionU8) IsSome() bool

IsNone returns true if a value is present

func (*OptionU8) SetNone

func (o *OptionU8) SetNone()

SetNone removes a value and marks it as missing

func (*OptionU8) SetSome

func (o *OptionU8) SetSome(value U8)

SetSome sets a value

func (OptionU8) Unwrap

func (o OptionU8) Unwrap() (ok bool, value U8)

Unwrap returns a flag that indicates whether a value is present and the stored value

type Origin added in v0.0.3

type Origin byte

Origin is an internal-only value that will be ignored when encoding/decoding

func (*Origin) Decode added in v0.0.3

func (n *Origin) Decode(decoder scale.Decoder) error

Decode implements decoding for Origin, which does nothing

func (Origin) Encode added in v0.0.3

func (n Origin) Encode(encoder scale.Encoder) error

Encode implements encoding for Origin, which does nothing

func (Origin) String added in v0.0.3

func (n Origin) String() string

String returns a string representation of the value

type Phase added in v0.0.3

type Phase struct {
	IsApplyExtrinsic bool
	AsApplyExtrinsic uint32
	IsFinalization   bool
}

Phase is an enum describing the current phase of the event (applying the extrinsic or finalized)

func (*Phase) Decode added in v0.0.3

func (p *Phase) Decode(decoder scale.Decoder) error

func (Phase) Encode added in v0.0.3

func (p Phase) Encode(encoder scale.Encoder) error

type PreRuntime added in v0.0.3

type PreRuntime struct {
	ConsensusEngineID ConsensusEngineID
	Bytes             Bytes
}

type RuntimeVersion

type RuntimeVersion struct {
	APIs             []RuntimeVersionAPI `json:"apis"`
	AuthoringVersion U32                 `json:"authoringVersion"`
	ImplName         string              `json:"implName"`
	ImplVersion      U32                 `json:"implVersion"`
	SpecName         string              `json:"specName"`
	SpecVersion      U32                 `json:"specVersion"`
}

func NewRuntimeVersion

func NewRuntimeVersion() *RuntimeVersion

func (*RuntimeVersion) Decode

func (r *RuntimeVersion) Decode(decoder scale.Decoder) error

func (RuntimeVersion) Encode

func (r RuntimeVersion) Encode(encoder scale.Encoder) error

type RuntimeVersionAPI

type RuntimeVersionAPI struct {
	APIID   string
	Version U32
}

func (*RuntimeVersionAPI) Decode

func (r *RuntimeVersionAPI) Decode(decoder scale.Decoder) error

func (RuntimeVersionAPI) Encode

func (r RuntimeVersionAPI) Encode(encoder scale.Encoder) error

func (RuntimeVersionAPI) MarshalJSON

func (r RuntimeVersionAPI) MarshalJSON() ([]byte, error)

func (*RuntimeVersionAPI) UnmarshalJSON

func (r *RuntimeVersionAPI) UnmarshalJSON(b []byte) error

type Seal added in v0.0.3

type Seal struct {
	ConsensusEngineID ConsensusEngineID
	Bytes             Bytes
}

type SealV0 added in v0.0.3

type SealV0 struct {
	Signer    U64
	Signature Signature
}

type Signature added in v0.0.3

type Signature H512

Signature is a H512

func NewSignature added in v0.0.3

func NewSignature(b []byte) Signature

NewSignature creates a new Signature type

func (Signature) Hex added in v0.0.3

func (h Signature) Hex() string

Hex returns a hex string representation of the value (not of the encoded value)

type SignatureOptions added in v0.0.3

type SignatureOptions struct {
	Era         ExtrinsicEra // extra via system::CheckEra
	Nonce       UCompact     // extra via system::CheckNonce (Compact<Index> where Index is u32)
	Tip         UCompact     // extra via balances::TakeFees (Compact<Balance> where Balance is u128)
	SpecVersion U32          // additional via system::CheckVersion
	GenesisHash Hash         // additional via system::CheckGenesis
	BlockHash   Hash         // additional via system::CheckEra
}

type SignaturePayload added in v0.0.3

type SignaturePayload struct {
	Address        Address
	BlockHash      Hash
	BlockNumber    BlockNumber
	Era            ExtrinsicEra
	GenesisHash    Hash
	Method         Call
	Nonce          UCompact
	RuntimeVersion RuntimeVersion
	Tip            UCompact
	Version        uint8
}

type SignedBlock added in v0.0.3

type SignedBlock struct {
	Block         Block         `json:"block"`
	Justification Justification `json:"justification"`
}

type StorageDataRaw added in v0.0.3

type StorageDataRaw []byte

StorageDataRaw contains raw bytes that are not decoded/encoded. Be careful using this in your own structs – it only works as the last value in a struct since it will consume the remainder of the encoded data. The reason for this is that it does not contain any length encoding, so it would not know where to stop.

func NewStorageDataRaw added in v0.0.3

func NewStorageDataRaw(b []byte) StorageDataRaw

NewStorageDataRaw creates a new StorageDataRaw type

func (*StorageDataRaw) Decode added in v0.0.3

func (s *StorageDataRaw) Decode(decoder scale.Decoder) error

Decode implements decoding for StorageDataRaw, which just reads all the remaining bytes into StorageDataRaw

func (StorageDataRaw) Encode added in v0.0.3

func (s StorageDataRaw) Encode(encoder scale.Encoder) error

Encode implements encoding for StorageDataRaw, which just unwraps the bytes of StorageDataRaw

func (StorageDataRaw) Hex added in v0.0.3

func (s StorageDataRaw) Hex() string

Hex returns a hex string representation of the value

type StorageFunctionMetadataV4 added in v0.0.3

type StorageFunctionMetadataV4 struct {
	Name          Text
	Modifier      StorageFunctionModifierV0
	Type          StorageFunctionTypeV4
	Fallback      Bytes
	Documentation []Text
}

type StorageFunctionMetadataV5 added in v0.0.3

type StorageFunctionMetadataV5 struct {
	Name          Text
	Modifier      StorageFunctionModifierV0
	Type          StorageFunctionTypeV5
	Fallback      Bytes
	Documentation []Text
}

type StorageFunctionModifierV0 added in v0.0.3

type StorageFunctionModifierV0 struct {
	IsOptional bool // 0
	IsDefault  bool // 1
	IsRequired bool // 2
}

func (*StorageFunctionModifierV0) Decode added in v0.0.3

func (s *StorageFunctionModifierV0) Decode(decoder scale.Decoder) error

func (StorageFunctionModifierV0) Encode added in v0.0.3

func (s StorageFunctionModifierV0) Encode(encoder scale.Encoder) error

type StorageFunctionTypeV4 added in v0.0.3

type StorageFunctionTypeV4 struct {
	IsType      bool
	AsType      Type // 0
	IsMap       bool
	AsMap       MapTypeV4 // 1
	IsDoubleMap bool
	AsDoubleMap DoubleMapTypeV4 // 2
}

func (*StorageFunctionTypeV4) Decode added in v0.0.3

func (s *StorageFunctionTypeV4) Decode(decoder scale.Decoder) error

func (StorageFunctionTypeV4) Encode added in v0.0.3

func (s StorageFunctionTypeV4) Encode(encoder scale.Encoder) error

type StorageFunctionTypeV5 added in v0.0.3

type StorageFunctionTypeV5 struct {
	IsType      bool
	AsType      Type // 0
	IsMap       bool
	AsMap       MapTypeV4 // 1
	IsDoubleMap bool
	AsDoubleMap DoubleMapTypeV5 // 2
}

func (*StorageFunctionTypeV5) Decode added in v0.0.3

func (s *StorageFunctionTypeV5) Decode(decoder scale.Decoder) error

func (StorageFunctionTypeV5) Encode added in v0.0.3

func (s StorageFunctionTypeV5) Encode(encoder scale.Encoder) error

type StorageHasher added in v0.0.3

type StorageHasher struct {
	IsBlake2_128   bool // 0
	IsBlake2_256   bool // 1
	IsTwox128      bool // 2
	IsTwox256      bool // 3
	IsTwox64Concat bool // 4
}

func (*StorageHasher) Decode added in v0.0.3

func (s *StorageHasher) Decode(decoder scale.Decoder) error

func (StorageHasher) Encode added in v0.0.3

func (s StorageHasher) Encode(encoder scale.Encoder) error

func (StorageHasher) HashFunc added in v0.0.3

func (s StorageHasher) HashFunc() (hash.Hash, error)

type StorageKey added in v0.0.3

type StorageKey []byte

StorageKey represents typically hashed storage keys of the system. Be careful using this in your own structs – it only works as the last value in a struct since it will consume the remainder of the encoded data. The reason for this is that it does not contain any length encoding, so it would not know where to stop.

func CreateStorageKey added in v0.0.3

func CreateStorageKey(meta *Metadata, module string, fn string, key []byte) (StorageKey, error)

CreateStorageKey uses the given metadata and to derive the right hashing of module, fn names and keys to create a hashed StorageKey

func NewStorageKey added in v0.0.3

func NewStorageKey(b []byte) StorageKey

NewStorageKey creates a new StorageKey type

func (*StorageKey) Decode added in v0.0.3

func (s *StorageKey) Decode(decoder scale.Decoder) error

Decode implements decoding for StorageKey, which just reads all the remaining bytes into StorageKey

func (StorageKey) Encode added in v0.0.3

func (s StorageKey) Encode(encoder scale.Encoder) error

Encode implements encoding for StorageKey, which just unwraps the bytes of StorageKey

func (StorageKey) Hex added in v0.0.3

func (s StorageKey) Hex() string

Hex returns a hex string representation of the value (not of the encoded value)

type StorageMetadata added in v0.0.3

type StorageMetadata struct {
	Prefix Text
	Items  []StorageFunctionMetadataV5
}

type Text added in v0.0.3

type Text string

Text is a string type

func NewText added in v0.0.3

func NewText(s string) Text

NewText creates a new Text type

type Type added in v0.0.3

type Type string

Type is a string, specifically to handle types

type U128 added in v0.0.3

type U128 struct {
	*big.Int
}

U128 is an unsigned 128-bit integer, it is represented as a big.Int in Go.

func NewU128 added in v0.0.3

func NewU128(i big.Int) U128

NewU128 creates a new U128 type

func (*U128) Decode added in v0.0.3

func (i *U128) Decode(decoder scale.Decoder) error

Decode implements decoding as per the Scale specification

func (U128) Encode added in v0.0.3

func (i U128) Encode(encoder scale.Encoder) error

Encode implements encoding as per the Scale specification

type U16

type U16 uint16

U16 is an unsigned 16-bit integer

func NewU16

func NewU16(u uint16) U16

NewU16 creates a new U16 type

func (U16) MarshalJSON

func (u U16) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of u

func (*U16) UnmarshalJSON

func (u *U16) UnmarshalJSON(b []byte) error

UnmarshalJSON fills u with the JSON encoded byte array given by b

type U256 added in v0.0.3

type U256 struct {
	*big.Int
}

U256 is an usigned 256-bit integer, it is represented as a big.Int in Go.

func NewU256 added in v0.0.3

func NewU256(i big.Int) U256

NewU256 creates a new U256 type

func (*U256) Decode added in v0.0.3

func (i *U256) Decode(decoder scale.Decoder) error

Decode implements decoding as per the Scale specification

func (U256) Encode added in v0.0.3

func (i U256) Encode(encoder scale.Encoder) error

Encode implements encoding as per the Scale specification

type U32

type U32 uint32

U32 is an unsigned 32-bit integer

func NewU32

func NewU32(u uint32) U32

NewU32 creates a new U32 type

func (U32) MarshalJSON

func (u U32) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of u

func (*U32) UnmarshalJSON

func (u *U32) UnmarshalJSON(b []byte) error

UnmarshalJSON fills u with the JSON encoded byte array given by b

type U64

type U64 uint64

U64 is an unsigned 64-bit integer

func NewU64

func NewU64(u uint64) U64

NewU64 creates a new U64 type

func (U64) MarshalJSON

func (u U64) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of u

func (*U64) UnmarshalJSON

func (u *U64) UnmarshalJSON(b []byte) error

UnmarshalJSON fills u with the JSON encoded byte array given by b

type U8

type U8 uint8

U8 is an unsigned 8-bit integer

func NewU8

func NewU8(u uint8) U8

NewU8 creates a new U8 type

func (U8) MarshalJSON

func (u U8) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of u

func (*U8) UnmarshalJSON

func (u *U8) UnmarshalJSON(b []byte) error

UnmarshalJSON fills u with the JSON encoded byte array given by b

type UCompact added in v0.0.3

type UCompact uint64

TODO adjust to use U256 or even big ints instead, needs to adopt codec though

func (*UCompact) Decode added in v0.0.3

func (u *UCompact) Decode(decoder scale.Decoder) error

func (UCompact) Encode added in v0.0.3

func (u UCompact) Encode(encoder scale.Encoder) error

type USize deprecated added in v0.0.3

type USize uint32

Deprecated: USize is a system default unsigned number, typically used in RPC to report non-consensus data. It is a wrapper for [U32] as a WASM default (as generated by Rust bindings). It is not to be used, since it created consensus mismatches.

func (USize) MarshalJSON added in v0.0.3

func (u USize) MarshalJSON() ([]byte, error)

MarshalJSON returns a JSON encoded byte array of u

func (*USize) UnmarshalJSON added in v0.0.3

func (u *USize) UnmarshalJSON(b []byte) error

UnmarshalJSON fills u with the JSON encoded byte array given by b

type Weight added in v0.0.3

type Weight uint32

Weight is a numeric range of a transaction weight

func NewWeight added in v0.0.3

func NewWeight(u uint32) Weight

NewWeight creates a new Weight type

type WeightMultiplier added in v0.0.3

type WeightMultiplier int64

WeightMultiplier represents how a fee value can be computed from a weighted transaction

func NewWeightMultiplier added in v0.0.3

func NewWeightMultiplier(i int64) WeightMultiplier

NewWeightMultiplier creates a new WeightMultiplier type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL