#[allow(dead_code, unused_imports, non_camel_case_types)] #[allow(clippy::all)] pub mod api { use super::api as root_mod; pub static PALLETS: [&str; 59usize] = [ "System", "Utility", "Babe", "Timestamp", "Authorship", "Indices", "Balances", "TransactionPayment", "AssetTxPayment", "ElectionProviderMultiPhase", "Staking", "Session", "Democracy", "Council", "TechnicalCommittee", "Elections", "TechnicalMembership", "Grandpa", "Treasury", "Contracts", "Sudo", "ImOnline", "AuthorityDiscovery", "Offences", "Historical", "RandomnessCollectiveFlip", "Identity", "Society", "Recovery", "Vesting", "Scheduler", "Preimage", "Proxy", "Multisig", "Bounties", "Tips", "Assets", "Mmr", "Lottery", "Nis", "Uniques", "Nfts", "TransactionStorage", "VoterList", "StateTrieMigration", "ChildBounties", "Referenda", "Remark", "RootTesting", "ConvictionVoting", "Whitelist", "AllianceMotion", "Alliance", "NominationPools", "RankedPolls", "RankedCollective", "FastUnstake", "MessageQueue", "Pov", ]; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Event { #[codec(index = 0)] System(system::Event), #[codec(index = 1)] Utility(utility::Event), #[codec(index = 5)] Indices(indices::Event), #[codec(index = 6)] Balances(balances::Event), #[codec(index = 7)] TransactionPayment(transaction_payment::Event), #[codec(index = 8)] AssetTxPayment(asset_tx_payment::Event), #[codec(index = 9)] ElectionProviderMultiPhase(election_provider_multi_phase::Event), #[codec(index = 10)] Staking(staking::Event), #[codec(index = 11)] Session(session::Event), #[codec(index = 12)] Democracy(democracy::Event), #[codec(index = 13)] Council(council::Event), #[codec(index = 14)] TechnicalCommittee(technical_committee::Event), #[codec(index = 15)] Elections(elections::Event), #[codec(index = 16)] TechnicalMembership(technical_membership::Event), #[codec(index = 17)] Grandpa(grandpa::Event), #[codec(index = 18)] Treasury(treasury::Event), #[codec(index = 19)] Contracts(contracts::Event), #[codec(index = 20)] Sudo(sudo::Event), #[codec(index = 21)] ImOnline(im_online::Event), #[codec(index = 23)] Offences(offences::Event), #[codec(index = 26)] Identity(identity::Event), #[codec(index = 27)] Society(society::Event), #[codec(index = 28)] Recovery(recovery::Event), #[codec(index = 29)] Vesting(vesting::Event), #[codec(index = 30)] Scheduler(scheduler::Event), #[codec(index = 31)] Preimage(preimage::Event), #[codec(index = 32)] Proxy(proxy::Event), #[codec(index = 33)] Multisig(multisig::Event), #[codec(index = 34)] Bounties(bounties::Event), #[codec(index = 35)] Tips(tips::Event), #[codec(index = 36)] Assets(assets::Event), #[codec(index = 38)] Lottery(lottery::Event), #[codec(index = 39)] Nis(nis::Event), #[codec(index = 40)] Uniques(uniques::Event), #[codec(index = 41)] Nfts(nfts::Event), #[codec(index = 42)] TransactionStorage(transaction_storage::Event), #[codec(index = 43)] VoterList(voter_list::Event), #[codec(index = 44)] StateTrieMigration(state_trie_migration::Event), #[codec(index = 45)] ChildBounties(child_bounties::Event), #[codec(index = 46)] Referenda(referenda::Event), #[codec(index = 47)] Remark(remark::Event), #[codec(index = 49)] ConvictionVoting(conviction_voting::Event), #[codec(index = 50)] Whitelist(whitelist::Event), #[codec(index = 51)] AllianceMotion(alliance_motion::Event), #[codec(index = 52)] Alliance(alliance::Event), #[codec(index = 53)] NominationPools(nomination_pools::Event), #[codec(index = 54)] RankedPolls(ranked_polls::Event), #[codec(index = 55)] RankedCollective(ranked_collective::Event), #[codec(index = 56)] FastUnstake(fast_unstake::Event), #[codec(index = 57)] MessageQueue(message_queue::Event), #[codec(index = 58)] Pov(pov::Event), } pub mod system { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Remark { pub remark: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetHeapPages { pub pages: ::core::primitive::u64, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetCode { pub code: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetCodeWithoutChecks { pub code: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetStorage { pub items: ::std::vec::Vec<( ::std::vec::Vec<::core::primitive::u8>, ::std::vec::Vec<::core::primitive::u8>, )>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct KillStorage { pub keys: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct KillPrefix { pub prefix: ::std::vec::Vec<::core::primitive::u8>, pub subkeys: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemarkWithEvent { pub remark: ::std::vec::Vec<::core::primitive::u8>, } pub struct TransactionApi; impl TransactionApi { #[doc = "Make some on-chain remark."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`"] #[doc = "# "] pub fn remark( &self, remark: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "System", "remark", Remark { remark }, [ 101u8, 80u8, 195u8, 226u8, 224u8, 247u8, 60u8, 128u8, 3u8, 101u8, 51u8, 147u8, 96u8, 126u8, 76u8, 230u8, 194u8, 227u8, 191u8, 73u8, 160u8, 146u8, 87u8, 147u8, 243u8, 28u8, 228u8, 116u8, 224u8, 181u8, 129u8, 160u8, ], ) } #[doc = "Set the number of pages in the WebAssembly environment's heap."] pub fn set_heap_pages( &self, pages: ::core::primitive::u64, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "System", "set_heap_pages", SetHeapPages { pages }, [ 43u8, 103u8, 128u8, 49u8, 156u8, 136u8, 11u8, 204u8, 80u8, 6u8, 244u8, 86u8, 171u8, 44u8, 140u8, 225u8, 142u8, 198u8, 43u8, 87u8, 26u8, 45u8, 125u8, 222u8, 165u8, 254u8, 172u8, 158u8, 39u8, 178u8, 86u8, 87u8, ], ) } #[doc = "Set the new runtime code."] #[doc = ""] #[doc = "# "] #[doc = "- `O(C + S)` where `C` length of `code` and `S` complexity of `can_set_code`"] #[doc = "- 1 call to `can_set_code`: `O(S)` (calls `sp_io::misc::runtime_version` which is"] #[doc = " expensive)."] #[doc = "- 1 storage write (codec `O(C)`)."] #[doc = "- 1 digest item."] #[doc = "- 1 event."] #[doc = "The weight of this function is dependent on the runtime, but generally this is very"] #[doc = "expensive. We will treat this as a full block."] #[doc = "# "] pub fn set_code( &self, code: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "System", "set_code", SetCode { code }, [ 27u8, 104u8, 244u8, 205u8, 188u8, 254u8, 121u8, 13u8, 106u8, 120u8, 244u8, 108u8, 97u8, 84u8, 100u8, 68u8, 26u8, 69u8, 93u8, 128u8, 107u8, 4u8, 3u8, 142u8, 13u8, 134u8, 196u8, 62u8, 113u8, 181u8, 14u8, 40u8, ], ) } #[doc = "Set the new runtime code without doing any checks of the given `code`."] #[doc = ""] #[doc = "# "] #[doc = "- `O(C)` where `C` length of `code`"] #[doc = "- 1 storage write (codec `O(C)`)."] #[doc = "- 1 digest item."] #[doc = "- 1 event."] #[doc = "The weight of this function is dependent on the runtime. We will treat this as a full"] #[doc = "block. # "] pub fn set_code_without_checks( &self, code: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "System", "set_code_without_checks", SetCodeWithoutChecks { code }, [ 102u8, 160u8, 125u8, 235u8, 30u8, 23u8, 45u8, 239u8, 112u8, 148u8, 159u8, 158u8, 42u8, 93u8, 206u8, 94u8, 80u8, 250u8, 66u8, 195u8, 60u8, 40u8, 142u8, 169u8, 183u8, 80u8, 80u8, 96u8, 3u8, 231u8, 99u8, 216u8, ], ) } #[doc = "Set some items of storage."] pub fn set_storage( &self, items: ::std::vec::Vec<( ::std::vec::Vec<::core::primitive::u8>, ::std::vec::Vec<::core::primitive::u8>, )>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "System", "set_storage", SetStorage { items }, [ 74u8, 43u8, 106u8, 255u8, 50u8, 151u8, 192u8, 155u8, 14u8, 90u8, 19u8, 45u8, 165u8, 16u8, 235u8, 242u8, 21u8, 131u8, 33u8, 172u8, 119u8, 78u8, 140u8, 10u8, 107u8, 202u8, 122u8, 235u8, 181u8, 191u8, 22u8, 116u8, ], ) } #[doc = "Kill some items from storage."] pub fn kill_storage( &self, keys: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "System", "kill_storage", KillStorage { keys }, [ 174u8, 174u8, 13u8, 174u8, 75u8, 138u8, 128u8, 235u8, 222u8, 216u8, 85u8, 18u8, 198u8, 1u8, 138u8, 70u8, 19u8, 108u8, 209u8, 41u8, 228u8, 67u8, 130u8, 230u8, 160u8, 207u8, 11u8, 180u8, 139u8, 242u8, 41u8, 15u8, ], ) } #[doc = "Kill all storage items with a key that starts with the given prefix."] #[doc = ""] #[doc = "**NOTE:** We rely on the Root origin to provide us the number of subkeys under"] #[doc = "the prefix we are removing to accurately calculate the weight of this function."] pub fn kill_prefix( &self, prefix: ::std::vec::Vec<::core::primitive::u8>, subkeys: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "System", "kill_prefix", KillPrefix { prefix, subkeys }, [ 203u8, 116u8, 217u8, 42u8, 154u8, 215u8, 77u8, 217u8, 13u8, 22u8, 193u8, 2u8, 128u8, 115u8, 179u8, 115u8, 187u8, 218u8, 129u8, 34u8, 80u8, 4u8, 173u8, 120u8, 92u8, 35u8, 237u8, 112u8, 201u8, 207u8, 200u8, 48u8, ], ) } #[doc = "Make some on-chain remark and emit event."] pub fn remark_with_event( &self, remark: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "System", "remark_with_event", RemarkWithEvent { remark }, [ 123u8, 225u8, 180u8, 179u8, 144u8, 74u8, 27u8, 85u8, 101u8, 75u8, 134u8, 44u8, 181u8, 25u8, 183u8, 158u8, 14u8, 213u8, 56u8, 225u8, 136u8, 88u8, 26u8, 114u8, 178u8, 43u8, 176u8, 43u8, 240u8, 84u8, 116u8, 46u8, ], ) } } } #[doc = "Event for the System pallet."] pub type Event = runtime_types::frame_system::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An extrinsic completed successfully."] pub struct ExtrinsicSuccess { pub dispatch_info: runtime_types::frame_support::dispatch::DispatchInfo, } impl ::subxt::events::StaticEvent for ExtrinsicSuccess { const PALLET: &'static str = "System"; const EVENT: &'static str = "ExtrinsicSuccess"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An extrinsic failed."] pub struct ExtrinsicFailed { pub dispatch_error: runtime_types::sp_runtime::DispatchError, pub dispatch_info: runtime_types::frame_support::dispatch::DispatchInfo, } impl ::subxt::events::StaticEvent for ExtrinsicFailed { const PALLET: &'static str = "System"; const EVENT: &'static str = "ExtrinsicFailed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "`:code` was updated."] pub struct CodeUpdated; impl ::subxt::events::StaticEvent for CodeUpdated { const PALLET: &'static str = "System"; const EVENT: &'static str = "CodeUpdated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new account was created."] pub struct NewAccount { pub account: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for NewAccount { const PALLET: &'static str = "System"; const EVENT: &'static str = "NewAccount"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account was reaped."] pub struct KilledAccount { pub account: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for KilledAccount { const PALLET: &'static str = "System"; const EVENT: &'static str = "KilledAccount"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "On on-chain remark happened."] pub struct Remarked { pub sender: ::subxt::utils::AccountId32, pub hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Remarked { const PALLET: &'static str = "System"; const EVENT: &'static str = "Remarked"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The full account information for a particular account ID."] pub fn account( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_system::AccountInfo< ::core::primitive::u32, runtime_types::pallet_balances::AccountData< ::core::primitive::u128, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "System", "Account", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 176u8, 187u8, 21u8, 220u8, 159u8, 204u8, 127u8, 14u8, 21u8, 69u8, 77u8, 114u8, 230u8, 141u8, 107u8, 79u8, 23u8, 16u8, 174u8, 243u8, 252u8, 42u8, 65u8, 120u8, 229u8, 38u8, 210u8, 255u8, 22u8, 40u8, 109u8, 223u8, ], ) } #[doc = " The full account information for a particular account ID."] pub fn account_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_system::AccountInfo< ::core::primitive::u32, runtime_types::pallet_balances::AccountData< ::core::primitive::u128, >, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "System", "Account", Vec::new(), [ 176u8, 187u8, 21u8, 220u8, 159u8, 204u8, 127u8, 14u8, 21u8, 69u8, 77u8, 114u8, 230u8, 141u8, 107u8, 79u8, 23u8, 16u8, 174u8, 243u8, 252u8, 42u8, 65u8, 120u8, 229u8, 38u8, 210u8, 255u8, 22u8, 40u8, 109u8, 223u8, ], ) } #[doc = " Total extrinsics count for the current block."] pub fn extrinsic_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "ExtrinsicCount", vec![], [ 223u8, 60u8, 201u8, 120u8, 36u8, 44u8, 180u8, 210u8, 242u8, 53u8, 222u8, 154u8, 123u8, 176u8, 249u8, 8u8, 225u8, 28u8, 232u8, 4u8, 136u8, 41u8, 151u8, 82u8, 189u8, 149u8, 49u8, 166u8, 139u8, 9u8, 163u8, 231u8, ], ) } #[doc = " The current weight for the block."] pub fn block_weight( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_support::dispatch::PerDispatchClass< runtime_types::sp_weights::weight_v2::Weight, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "BlockWeight", vec![], [ 120u8, 67u8, 71u8, 163u8, 36u8, 202u8, 52u8, 106u8, 143u8, 155u8, 144u8, 87u8, 142u8, 241u8, 232u8, 183u8, 56u8, 235u8, 27u8, 237u8, 20u8, 202u8, 33u8, 85u8, 189u8, 0u8, 28u8, 52u8, 198u8, 40u8, 219u8, 54u8, ], ) } #[doc = " Total length (in bytes) for all extrinsics put together, for the current block."] pub fn all_extrinsics_len( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "AllExtrinsicsLen", vec![], [ 202u8, 145u8, 209u8, 225u8, 40u8, 220u8, 174u8, 74u8, 93u8, 164u8, 254u8, 248u8, 254u8, 192u8, 32u8, 117u8, 96u8, 149u8, 53u8, 145u8, 219u8, 64u8, 234u8, 18u8, 217u8, 200u8, 203u8, 141u8, 145u8, 28u8, 134u8, 60u8, ], ) } #[doc = " Map of block numbers to block hashes."] pub fn block_hash( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::H256>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "System", "BlockHash", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 50u8, 112u8, 176u8, 239u8, 175u8, 18u8, 205u8, 20u8, 241u8, 195u8, 21u8, 228u8, 186u8, 57u8, 200u8, 25u8, 38u8, 44u8, 106u8, 20u8, 168u8, 80u8, 76u8, 235u8, 12u8, 51u8, 137u8, 149u8, 200u8, 4u8, 220u8, 237u8, ], ) } #[doc = " Map of block numbers to block hashes."] pub fn block_hash_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::H256>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "System", "BlockHash", Vec::new(), [ 50u8, 112u8, 176u8, 239u8, 175u8, 18u8, 205u8, 20u8, 241u8, 195u8, 21u8, 228u8, 186u8, 57u8, 200u8, 25u8, 38u8, 44u8, 106u8, 20u8, 168u8, 80u8, 76u8, 235u8, 12u8, 51u8, 137u8, 149u8, 200u8, 4u8, 220u8, 237u8, ], ) } #[doc = " Extrinsics data for the current block (maps an extrinsic's index to its data)."] pub fn extrinsic_data( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u8>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "System", "ExtrinsicData", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 210u8, 224u8, 211u8, 186u8, 118u8, 210u8, 185u8, 194u8, 238u8, 211u8, 254u8, 73u8, 67u8, 184u8, 31u8, 229u8, 168u8, 125u8, 98u8, 23u8, 241u8, 59u8, 49u8, 86u8, 126u8, 9u8, 114u8, 163u8, 160u8, 62u8, 50u8, 67u8, ], ) } #[doc = " Extrinsics data for the current block (maps an extrinsic's index to its data)."] pub fn extrinsic_data_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u8>, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "System", "ExtrinsicData", Vec::new(), [ 210u8, 224u8, 211u8, 186u8, 118u8, 210u8, 185u8, 194u8, 238u8, 211u8, 254u8, 73u8, 67u8, 184u8, 31u8, 229u8, 168u8, 125u8, 98u8, 23u8, 241u8, 59u8, 49u8, 86u8, 126u8, 9u8, 114u8, 163u8, 160u8, 62u8, 50u8, 67u8, ], ) } #[doc = " The current block number being processed. Set by `execute_block`."] pub fn number( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "Number", vec![], [ 228u8, 96u8, 102u8, 190u8, 252u8, 130u8, 239u8, 172u8, 126u8, 235u8, 246u8, 139u8, 208u8, 15u8, 88u8, 245u8, 141u8, 232u8, 43u8, 204u8, 36u8, 87u8, 211u8, 141u8, 187u8, 68u8, 236u8, 70u8, 193u8, 235u8, 164u8, 191u8, ], ) } #[doc = " Hash of the previous block."] pub fn parent_hash( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::H256>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "ParentHash", vec![], [ 232u8, 206u8, 177u8, 119u8, 38u8, 57u8, 233u8, 50u8, 225u8, 49u8, 169u8, 176u8, 210u8, 51u8, 231u8, 176u8, 234u8, 186u8, 188u8, 112u8, 15u8, 152u8, 195u8, 232u8, 201u8, 97u8, 208u8, 249u8, 9u8, 163u8, 69u8, 36u8, ], ) } #[doc = " Digest of the current block, also part of the block header."] pub fn digest( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_runtime::generic::digest::Digest, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "Digest", vec![], [ 83u8, 141u8, 200u8, 132u8, 182u8, 55u8, 197u8, 122u8, 13u8, 159u8, 31u8, 42u8, 60u8, 191u8, 89u8, 221u8, 242u8, 47u8, 199u8, 213u8, 48u8, 216u8, 131u8, 168u8, 245u8, 82u8, 56u8, 190u8, 62u8, 69u8, 96u8, 37u8, ], ) } #[doc = " Events deposited for the current block."] #[doc = ""] #[doc = " NOTE: The item is unbound and should therefore never be read on chain."] #[doc = " It could otherwise inflate the PoV size of a block."] #[doc = ""] #[doc = " Events have a large in-memory size. Box the events to not go out-of-memory"] #[doc = " just in case someone still reads them from within the runtime."] pub fn events( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec< runtime_types::frame_system::EventRecord< runtime_types::kitchensink_runtime::RuntimeEvent, ::subxt::utils::H256, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "Events", vec![], [ 91u8, 92u8, 49u8, 153u8, 159u8, 210u8, 114u8, 165u8, 211u8, 119u8, 27u8, 182u8, 225u8, 219u8, 252u8, 159u8, 15u8, 63u8, 214u8, 78u8, 107u8, 167u8, 11u8, 221u8, 2u8, 200u8, 151u8, 212u8, 183u8, 184u8, 40u8, 72u8, ], ) } #[doc = " The number of events in the `Events` list."] pub fn event_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "EventCount", vec![], [ 236u8, 93u8, 90u8, 177u8, 250u8, 211u8, 138u8, 187u8, 26u8, 208u8, 203u8, 113u8, 221u8, 233u8, 227u8, 9u8, 249u8, 25u8, 202u8, 185u8, 161u8, 144u8, 167u8, 104u8, 127u8, 187u8, 38u8, 18u8, 52u8, 61u8, 66u8, 112u8, ], ) } #[doc = " Mapping between a topic (represented by T::Hash) and a vector of indexes"] #[doc = " of events in the `>` list."] #[doc = ""] #[doc = " All topic vectors have deterministic storage locations depending on the topic. This"] #[doc = " allows light-clients to leverage the changes trie storage tracking mechanism and"] #[doc = " in case of changes fetch the list of events of interest."] #[doc = ""] #[doc = " The value has the type `(T::BlockNumber, EventIndex)` because if we used only just"] #[doc = " the `EventIndex` then in case if the topic has the same contents on the next block"] #[doc = " no notification will be triggered thus the event might be lost."] pub fn event_topics( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<(::core::primitive::u32, ::core::primitive::u32)>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "System", "EventTopics", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 205u8, 90u8, 142u8, 190u8, 176u8, 37u8, 94u8, 82u8, 98u8, 1u8, 129u8, 63u8, 246u8, 101u8, 130u8, 58u8, 216u8, 16u8, 139u8, 196u8, 154u8, 111u8, 110u8, 178u8, 24u8, 44u8, 183u8, 176u8, 232u8, 82u8, 223u8, 38u8, ], ) } #[doc = " Mapping between a topic (represented by T::Hash) and a vector of indexes"] #[doc = " of events in the `>` list."] #[doc = ""] #[doc = " All topic vectors have deterministic storage locations depending on the topic. This"] #[doc = " allows light-clients to leverage the changes trie storage tracking mechanism and"] #[doc = " in case of changes fetch the list of events of interest."] #[doc = ""] #[doc = " The value has the type `(T::BlockNumber, EventIndex)` because if we used only just"] #[doc = " the `EventIndex` then in case if the topic has the same contents on the next block"] #[doc = " no notification will be triggered thus the event might be lost."] pub fn event_topics_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<(::core::primitive::u32, ::core::primitive::u32)>, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "System", "EventTopics", Vec::new(), [ 205u8, 90u8, 142u8, 190u8, 176u8, 37u8, 94u8, 82u8, 98u8, 1u8, 129u8, 63u8, 246u8, 101u8, 130u8, 58u8, 216u8, 16u8, 139u8, 196u8, 154u8, 111u8, 110u8, 178u8, 24u8, 44u8, 183u8, 176u8, 232u8, 82u8, 223u8, 38u8, ], ) } #[doc = " Stores the `spec_version` and `spec_name` of when the last runtime upgrade happened."] pub fn last_runtime_upgrade( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_system::LastRuntimeUpgradeInfo, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "LastRuntimeUpgrade", vec![], [ 52u8, 37u8, 117u8, 111u8, 57u8, 130u8, 196u8, 14u8, 99u8, 77u8, 91u8, 126u8, 178u8, 249u8, 78u8, 34u8, 9u8, 194u8, 92u8, 105u8, 113u8, 81u8, 185u8, 127u8, 245u8, 184u8, 60u8, 29u8, 234u8, 182u8, 96u8, 196u8, ], ) } #[doc = " True if we have upgraded so that `type RefCount` is `u32`. False (default) if not."] pub fn upgraded_to_u32_ref_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "UpgradedToU32RefCount", vec![], [ 171u8, 88u8, 244u8, 92u8, 122u8, 67u8, 27u8, 18u8, 59u8, 175u8, 175u8, 178u8, 20u8, 150u8, 213u8, 59u8, 222u8, 141u8, 32u8, 107u8, 3u8, 114u8, 83u8, 250u8, 180u8, 233u8, 152u8, 54u8, 187u8, 99u8, 131u8, 204u8, ], ) } #[doc = " True if we have upgraded so that AccountInfo contains three types of `RefCount`. False"] #[doc = " (default) if not."] pub fn upgraded_to_triple_ref_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "UpgradedToTripleRefCount", vec![], [ 90u8, 33u8, 56u8, 86u8, 90u8, 101u8, 89u8, 133u8, 203u8, 56u8, 201u8, 210u8, 244u8, 232u8, 150u8, 18u8, 51u8, 105u8, 14u8, 230u8, 103u8, 155u8, 246u8, 99u8, 53u8, 207u8, 225u8, 128u8, 186u8, 76u8, 40u8, 185u8, ], ) } #[doc = " The execution phase of the block."] pub fn execution_phase( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_system::Phase, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "System", "ExecutionPhase", vec![], [ 230u8, 183u8, 221u8, 135u8, 226u8, 223u8, 55u8, 104u8, 138u8, 224u8, 103u8, 156u8, 222u8, 99u8, 203u8, 199u8, 164u8, 168u8, 193u8, 133u8, 201u8, 155u8, 63u8, 95u8, 17u8, 206u8, 165u8, 123u8, 161u8, 33u8, 172u8, 93u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Block & extrinsics weights: base values and limits."] pub fn block_weights( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_system::limits::BlockWeights, >, > { ::subxt::constants::StaticConstantAddress::new( "System", "BlockWeights", [ 118u8, 253u8, 239u8, 217u8, 145u8, 115u8, 85u8, 86u8, 172u8, 248u8, 139u8, 32u8, 158u8, 126u8, 172u8, 188u8, 197u8, 105u8, 145u8, 235u8, 171u8, 50u8, 31u8, 225u8, 167u8, 187u8, 241u8, 87u8, 6u8, 17u8, 234u8, 185u8, ], ) } #[doc = " The maximum length of a block (in bytes)."] pub fn block_length( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_system::limits::BlockLength, >, > { ::subxt::constants::StaticConstantAddress::new( "System", "BlockLength", [ 116u8, 184u8, 225u8, 228u8, 207u8, 203u8, 4u8, 220u8, 234u8, 198u8, 150u8, 108u8, 205u8, 87u8, 194u8, 131u8, 229u8, 51u8, 140u8, 4u8, 47u8, 12u8, 200u8, 144u8, 153u8, 62u8, 51u8, 39u8, 138u8, 205u8, 203u8, 236u8, ], ) } #[doc = " Maximum number of block number to block hash mappings to keep (oldest pruned first)."] pub fn block_hash_count( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "System", "BlockHashCount", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The weight of runtime database operations the runtime can invoke."] pub fn db_weight( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_weights::RuntimeDbWeight, >, > { ::subxt::constants::StaticConstantAddress::new( "System", "DbWeight", [ 124u8, 162u8, 190u8, 149u8, 49u8, 177u8, 162u8, 231u8, 62u8, 167u8, 199u8, 181u8, 43u8, 232u8, 185u8, 116u8, 195u8, 51u8, 233u8, 223u8, 20u8, 129u8, 246u8, 13u8, 65u8, 180u8, 64u8, 9u8, 157u8, 59u8, 245u8, 118u8, ], ) } #[doc = " Get the chain's current version."] pub fn version( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_version::RuntimeVersion, >, > { ::subxt::constants::StaticConstantAddress::new( "System", "Version", [ 93u8, 98u8, 57u8, 243u8, 229u8, 8u8, 234u8, 231u8, 72u8, 230u8, 139u8, 47u8, 63u8, 181u8, 17u8, 2u8, 220u8, 231u8, 104u8, 237u8, 185u8, 143u8, 165u8, 253u8, 188u8, 76u8, 147u8, 12u8, 170u8, 26u8, 74u8, 200u8, ], ) } #[doc = " The designated SS58 prefix of this chain."] #[doc = ""] #[doc = " This replaces the \"ss58Format\" property declared in the chain spec. Reason is"] #[doc = " that the runtime should know about the prefix in order to make use of it as"] #[doc = " an identifier of the chain."] pub fn ss58_prefix( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u16>, > { ::subxt::constants::StaticConstantAddress::new( "System", "SS58Prefix", [ 116u8, 33u8, 2u8, 170u8, 181u8, 147u8, 171u8, 169u8, 167u8, 227u8, 41u8, 144u8, 11u8, 236u8, 82u8, 100u8, 74u8, 60u8, 184u8, 72u8, 169u8, 90u8, 208u8, 135u8, 15u8, 117u8, 10u8, 123u8, 128u8, 193u8, 29u8, 70u8, ], ) } } } } pub mod utility { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Batch { pub calls: ::std::vec::Vec, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AsDerivative { pub index: ::core::primitive::u16, pub call: ::std::boxed::Box, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BatchAll { pub calls: ::std::vec::Vec, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DispatchAs { pub as_origin: ::std::boxed::Box, pub call: ::std::boxed::Box, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceBatch { pub calls: ::std::vec::Vec, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct WithWeight { pub call: ::std::boxed::Box, pub weight: runtime_types::sp_weights::weight_v2::Weight, } pub struct TransactionApi; impl TransactionApi { #[doc = "Send a batch of dispatch calls."] #[doc = ""] #[doc = "May be called from any origin except `None`."] #[doc = ""] #[doc = "- `calls`: The calls to be dispatched from the same origin. The number of call must not"] #[doc = " exceed the constant: `batched_calls_limit` (available in constant metadata)."] #[doc = ""] #[doc = "If origin is root then the calls are dispatched without checking origin filter. (This"] #[doc = "includes bypassing `frame_system::Config::BaseCallFilter`)."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(C) where C is the number of calls to be batched."] #[doc = "# "] #[doc = ""] #[doc = "This will return `Ok` in all circumstances. To determine the success of the batch, an"] #[doc = "event is deposited. If a call failed and the batch was interrupted, then the"] #[doc = "`BatchInterrupted` event is deposited, along with the number of successful calls made"] #[doc = "and the error of the failed call. If all were successful, then the `BatchCompleted`"] #[doc = "event is deposited."] pub fn batch( &self, calls: ::std::vec::Vec< runtime_types::kitchensink_runtime::RuntimeCall, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Utility", "batch", Batch { calls }, [ 62u8, 21u8, 225u8, 63u8, 112u8, 160u8, 217u8, 217u8, 210u8, 224u8, 3u8, 39u8, 34u8, 100u8, 140u8, 66u8, 175u8, 240u8, 123u8, 175u8, 145u8, 155u8, 143u8, 160u8, 74u8, 52u8, 226u8, 159u8, 207u8, 227u8, 135u8, 127u8, ], ) } #[doc = "Send a call through an indexed pseudonym of the sender."] #[doc = ""] #[doc = "Filter from origin are passed along. The call will be dispatched with an origin which"] #[doc = "use the same filter as the origin of this call."] #[doc = ""] #[doc = "NOTE: If you need to ensure that any account-based filtering is not honored (i.e."] #[doc = "because you expect `proxy` to have been used prior in the call stack and you do not want"] #[doc = "the call restrictions to apply to any sub-accounts), then use `as_multi_threshold_1`"] #[doc = "in the Multisig pallet instead."] #[doc = ""] #[doc = "NOTE: Prior to version *12, this was called `as_limited_sub`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] pub fn as_derivative( &self, index: ::core::primitive::u16, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Utility", "as_derivative", AsDerivative { index, call: ::std::boxed::Box::new(call), }, [ 6u8, 108u8, 208u8, 8u8, 24u8, 200u8, 7u8, 167u8, 176u8, 182u8, 82u8, 0u8, 171u8, 106u8, 68u8, 88u8, 176u8, 160u8, 173u8, 144u8, 165u8, 168u8, 48u8, 177u8, 162u8, 5u8, 30u8, 161u8, 25u8, 55u8, 73u8, 204u8, ], ) } #[doc = "Send a batch of dispatch calls and atomically execute them."] #[doc = "The whole transaction will rollback and fail if any of the calls failed."] #[doc = ""] #[doc = "May be called from any origin except `None`."] #[doc = ""] #[doc = "- `calls`: The calls to be dispatched from the same origin. The number of call must not"] #[doc = " exceed the constant: `batched_calls_limit` (available in constant metadata)."] #[doc = ""] #[doc = "If origin is root then the calls are dispatched without checking origin filter. (This"] #[doc = "includes bypassing `frame_system::Config::BaseCallFilter`)."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(C) where C is the number of calls to be batched."] #[doc = "# "] pub fn batch_all( &self, calls: ::std::vec::Vec< runtime_types::kitchensink_runtime::RuntimeCall, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Utility", "batch_all", BatchAll { calls }, [ 37u8, 115u8, 109u8, 58u8, 133u8, 96u8, 91u8, 125u8, 23u8, 183u8, 213u8, 138u8, 3u8, 3u8, 64u8, 26u8, 183u8, 215u8, 232u8, 60u8, 238u8, 65u8, 61u8, 40u8, 18u8, 148u8, 174u8, 31u8, 140u8, 54u8, 65u8, 186u8, ], ) } #[doc = "Dispatches a function call with a provided origin."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Root_."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "- Limited storage reads."] #[doc = "- One DB write (event)."] #[doc = "- Weight of derivative `call` execution + T::WeightInfo::dispatch_as()."] #[doc = "# "] pub fn dispatch_as( &self, as_origin: runtime_types::kitchensink_runtime::OriginCaller, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Utility", "dispatch_as", DispatchAs { as_origin: ::std::boxed::Box::new(as_origin), call: ::std::boxed::Box::new(call), }, [ 166u8, 100u8, 2u8, 214u8, 121u8, 241u8, 188u8, 76u8, 89u8, 173u8, 122u8, 143u8, 82u8, 213u8, 147u8, 143u8, 191u8, 188u8, 107u8, 50u8, 153u8, 156u8, 176u8, 164u8, 65u8, 72u8, 144u8, 225u8, 53u8, 163u8, 44u8, 27u8, ], ) } #[doc = "Send a batch of dispatch calls."] #[doc = "Unlike `batch`, it allows errors and won't interrupt."] #[doc = ""] #[doc = "May be called from any origin except `None`."] #[doc = ""] #[doc = "- `calls`: The calls to be dispatched from the same origin. The number of call must not"] #[doc = " exceed the constant: `batched_calls_limit` (available in constant metadata)."] #[doc = ""] #[doc = "If origin is root then the calls are dispatch without checking origin filter. (This"] #[doc = "includes bypassing `frame_system::Config::BaseCallFilter`)."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(C) where C is the number of calls to be batched."] #[doc = "# "] pub fn force_batch( &self, calls: ::std::vec::Vec< runtime_types::kitchensink_runtime::RuntimeCall, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Utility", "force_batch", ForceBatch { calls }, [ 99u8, 7u8, 38u8, 78u8, 208u8, 141u8, 220u8, 119u8, 251u8, 140u8, 53u8, 194u8, 14u8, 247u8, 104u8, 44u8, 12u8, 67u8, 251u8, 122u8, 123u8, 129u8, 254u8, 31u8, 162u8, 225u8, 56u8, 231u8, 249u8, 117u8, 250u8, 116u8, ], ) } #[doc = "Dispatch a function call with a specified weight."] #[doc = ""] #[doc = "This function does not check the weight of the call, and instead allows the"] #[doc = "Root origin to specify the weight of the call."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Root_."] pub fn with_weight( &self, call: runtime_types::kitchensink_runtime::RuntimeCall, weight: runtime_types::sp_weights::weight_v2::Weight, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Utility", "with_weight", WithWeight { call: ::std::boxed::Box::new(call), weight, }, [ 143u8, 62u8, 94u8, 208u8, 234u8, 148u8, 151u8, 56u8, 81u8, 45u8, 164u8, 244u8, 234u8, 14u8, 216u8, 252u8, 215u8, 66u8, 150u8, 3u8, 198u8, 11u8, 57u8, 178u8, 136u8, 177u8, 21u8, 173u8, 223u8, 66u8, 127u8, 169u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_utility::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Batch of dispatches did not complete fully. Index of first failing dispatch given, as"] #[doc = "well as the error."] pub struct BatchInterrupted { pub index: ::core::primitive::u32, pub error: runtime_types::sp_runtime::DispatchError, } impl ::subxt::events::StaticEvent for BatchInterrupted { const PALLET: &'static str = "Utility"; const EVENT: &'static str = "BatchInterrupted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Batch of dispatches completed fully with no error."] pub struct BatchCompleted; impl ::subxt::events::StaticEvent for BatchCompleted { const PALLET: &'static str = "Utility"; const EVENT: &'static str = "BatchCompleted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Batch of dispatches completed but has errors."] pub struct BatchCompletedWithErrors; impl ::subxt::events::StaticEvent for BatchCompletedWithErrors { const PALLET: &'static str = "Utility"; const EVENT: &'static str = "BatchCompletedWithErrors"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A single item within a Batch of dispatches has completed with no error."] pub struct ItemCompleted; impl ::subxt::events::StaticEvent for ItemCompleted { const PALLET: &'static str = "Utility"; const EVENT: &'static str = "ItemCompleted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A single item within a Batch of dispatches has completed with error."] pub struct ItemFailed { pub error: runtime_types::sp_runtime::DispatchError, } impl ::subxt::events::StaticEvent for ItemFailed { const PALLET: &'static str = "Utility"; const EVENT: &'static str = "ItemFailed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A call was dispatched."] pub struct DispatchedAs { pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for DispatchedAs { const PALLET: &'static str = "Utility"; const EVENT: &'static str = "DispatchedAs"; } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The limit on the number of batched calls."] pub fn batched_calls_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Utility", "batched_calls_limit", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod babe { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReportEquivocation { pub equivocation_proof: ::std::boxed::Box< runtime_types::sp_consensus_slots::EquivocationProof< runtime_types::sp_runtime::generic::header::Header< ::core::primitive::u32, runtime_types::sp_runtime::traits::BlakeTwo256, >, runtime_types::sp_consensus_babe::app::Public, >, >, pub key_owner_proof: runtime_types::sp_session::MembershipProof, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReportEquivocationUnsigned { pub equivocation_proof: ::std::boxed::Box< runtime_types::sp_consensus_slots::EquivocationProof< runtime_types::sp_runtime::generic::header::Header< ::core::primitive::u32, runtime_types::sp_runtime::traits::BlakeTwo256, >, runtime_types::sp_consensus_babe::app::Public, >, >, pub key_owner_proof: runtime_types::sp_session::MembershipProof, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PlanConfigChange { pub config: runtime_types::sp_consensus_babe::digests::NextConfigDescriptor, } pub struct TransactionApi; impl TransactionApi { #[doc = "Report authority equivocation/misbehavior. This method will verify"] #[doc = "the equivocation proof and validate the given key ownership proof"] #[doc = "against the extracted offender. If both are valid, the offence will"] #[doc = "be reported."] pub fn report_equivocation( &self, equivocation_proof : runtime_types :: sp_consensus_slots :: EquivocationProof < runtime_types :: sp_runtime :: generic :: header :: Header < :: core :: primitive :: u32 , runtime_types :: sp_runtime :: traits :: BlakeTwo256 > , runtime_types :: sp_consensus_babe :: app :: Public >, key_owner_proof: runtime_types::sp_session::MembershipProof, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Babe", "report_equivocation", ReportEquivocation { equivocation_proof: ::std::boxed::Box::new( equivocation_proof, ), key_owner_proof, }, [ 177u8, 237u8, 107u8, 138u8, 237u8, 233u8, 30u8, 195u8, 112u8, 176u8, 185u8, 113u8, 157u8, 221u8, 134u8, 151u8, 62u8, 151u8, 64u8, 164u8, 254u8, 112u8, 2u8, 94u8, 175u8, 79u8, 160u8, 3u8, 72u8, 145u8, 244u8, 137u8, ], ) } #[doc = "Report authority equivocation/misbehavior. This method will verify"] #[doc = "the equivocation proof and validate the given key ownership proof"] #[doc = "against the extracted offender. If both are valid, the offence will"] #[doc = "be reported."] #[doc = "This extrinsic must be called unsigned and it is expected that only"] #[doc = "block authors will call it (validated in `ValidateUnsigned`), as such"] #[doc = "if the block author is defined it will be defined as the equivocation"] #[doc = "reporter."] pub fn report_equivocation_unsigned( &self, equivocation_proof : runtime_types :: sp_consensus_slots :: EquivocationProof < runtime_types :: sp_runtime :: generic :: header :: Header < :: core :: primitive :: u32 , runtime_types :: sp_runtime :: traits :: BlakeTwo256 > , runtime_types :: sp_consensus_babe :: app :: Public >, key_owner_proof: runtime_types::sp_session::MembershipProof, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Babe", "report_equivocation_unsigned", ReportEquivocationUnsigned { equivocation_proof: ::std::boxed::Box::new( equivocation_proof, ), key_owner_proof, }, [ 56u8, 103u8, 238u8, 118u8, 61u8, 192u8, 222u8, 87u8, 254u8, 24u8, 138u8, 219u8, 210u8, 85u8, 201u8, 147u8, 128u8, 49u8, 199u8, 144u8, 46u8, 158u8, 163u8, 31u8, 101u8, 224u8, 72u8, 98u8, 68u8, 120u8, 215u8, 19u8, ], ) } #[doc = "Plan an epoch config change. The epoch config change is recorded and will be enacted on"] #[doc = "the next call to `enact_epoch_change`. The config will be activated one epoch after."] #[doc = "Multiple calls to this method will replace any existing planned config change that had"] #[doc = "not been enacted yet."] pub fn plan_config_change( &self, config : runtime_types :: sp_consensus_babe :: digests :: NextConfigDescriptor, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Babe", "plan_config_change", PlanConfigChange { config }, [ 229u8, 157u8, 41u8, 58u8, 56u8, 4u8, 52u8, 107u8, 104u8, 20u8, 42u8, 110u8, 1u8, 17u8, 45u8, 196u8, 30u8, 135u8, 63u8, 46u8, 40u8, 137u8, 209u8, 37u8, 24u8, 108u8, 251u8, 189u8, 77u8, 208u8, 74u8, 32u8, ], ) } } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Current epoch index."] pub fn epoch_index( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u64>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "EpochIndex", vec![], [ 51u8, 27u8, 91u8, 156u8, 118u8, 99u8, 46u8, 219u8, 190u8, 147u8, 205u8, 23u8, 106u8, 169u8, 121u8, 218u8, 208u8, 235u8, 135u8, 127u8, 243u8, 41u8, 55u8, 243u8, 235u8, 122u8, 57u8, 86u8, 37u8, 90u8, 208u8, 71u8, ], ) } #[doc = " Current epoch authorities."] pub fn authorities( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec< ( runtime_types::sp_consensus_babe::app::Public, ::core::primitive::u64, ), >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "Authorities", vec![], [ 61u8, 8u8, 133u8, 111u8, 169u8, 120u8, 0u8, 213u8, 31u8, 159u8, 204u8, 212u8, 18u8, 205u8, 93u8, 84u8, 140u8, 108u8, 136u8, 209u8, 234u8, 107u8, 145u8, 9u8, 204u8, 224u8, 105u8, 9u8, 238u8, 241u8, 65u8, 30u8, ], ) } #[doc = " The slot at which the first epoch actually started. This is 0"] #[doc = " until the first block of the chain."] pub fn genesis_slot( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_consensus_slots::Slot, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "GenesisSlot", vec![], [ 234u8, 127u8, 243u8, 100u8, 124u8, 160u8, 66u8, 248u8, 48u8, 218u8, 61u8, 52u8, 54u8, 142u8, 158u8, 77u8, 32u8, 63u8, 156u8, 39u8, 94u8, 255u8, 192u8, 238u8, 170u8, 118u8, 58u8, 42u8, 199u8, 61u8, 199u8, 77u8, ], ) } #[doc = " Current slot number."] pub fn current_slot( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_consensus_slots::Slot, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "CurrentSlot", vec![], [ 139u8, 237u8, 185u8, 137u8, 251u8, 179u8, 69u8, 167u8, 133u8, 168u8, 204u8, 64u8, 178u8, 123u8, 92u8, 250u8, 119u8, 190u8, 208u8, 178u8, 208u8, 176u8, 124u8, 187u8, 74u8, 165u8, 33u8, 78u8, 161u8, 206u8, 8u8, 108u8, ], ) } #[doc = " The epoch randomness for the *current* epoch."] #[doc = ""] #[doc = " # Security"] #[doc = ""] #[doc = " This MUST NOT be used for gambling, as it can be influenced by a"] #[doc = " malicious validator in the short term. It MAY be used in many"] #[doc = " cryptographic protocols, however, so long as one remembers that this"] #[doc = " (like everything else on-chain) it is public. For example, it can be"] #[doc = " used where a number is needed that cannot have been chosen by an"] #[doc = " adversary, for purposes such as public-coin zero-knowledge proofs."] pub fn randomness( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<[::core::primitive::u8; 32usize]>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "Randomness", vec![], [ 191u8, 197u8, 25u8, 164u8, 104u8, 248u8, 247u8, 193u8, 244u8, 60u8, 181u8, 195u8, 248u8, 90u8, 41u8, 199u8, 82u8, 123u8, 72u8, 126u8, 18u8, 17u8, 128u8, 215u8, 34u8, 251u8, 227u8, 70u8, 166u8, 10u8, 104u8, 140u8, ], ) } #[doc = " Pending epoch configuration change that will be applied when the next epoch is enacted."] pub fn pending_epoch_config_change( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_consensus_babe::digests::NextConfigDescriptor, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "PendingEpochConfigChange", vec![], [ 4u8, 201u8, 0u8, 204u8, 47u8, 246u8, 4u8, 185u8, 163u8, 242u8, 242u8, 152u8, 29u8, 222u8, 71u8, 127u8, 49u8, 203u8, 206u8, 180u8, 244u8, 50u8, 80u8, 49u8, 199u8, 97u8, 3u8, 170u8, 156u8, 139u8, 106u8, 113u8, ], ) } #[doc = " Next epoch randomness."] pub fn next_randomness( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<[::core::primitive::u8; 32usize]>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "NextRandomness", vec![], [ 185u8, 98u8, 45u8, 109u8, 253u8, 38u8, 238u8, 221u8, 240u8, 29u8, 38u8, 107u8, 118u8, 117u8, 131u8, 115u8, 21u8, 255u8, 203u8, 81u8, 243u8, 251u8, 91u8, 60u8, 163u8, 202u8, 125u8, 193u8, 173u8, 234u8, 166u8, 92u8, ], ) } #[doc = " Next epoch authorities."] pub fn next_authorities( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec< ( runtime_types::sp_consensus_babe::app::Public, ::core::primitive::u64, ), >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "NextAuthorities", vec![], [ 201u8, 193u8, 164u8, 18u8, 155u8, 253u8, 124u8, 163u8, 143u8, 73u8, 212u8, 20u8, 241u8, 108u8, 110u8, 5u8, 171u8, 66u8, 224u8, 208u8, 10u8, 65u8, 148u8, 164u8, 1u8, 12u8, 216u8, 83u8, 20u8, 226u8, 254u8, 183u8, ], ) } #[doc = " Randomness under construction."] #[doc = ""] #[doc = " We make a trade-off between storage accesses and list length."] #[doc = " We store the under-construction randomness in segments of up to"] #[doc = " `UNDER_CONSTRUCTION_SEGMENT_LENGTH`."] #[doc = ""] #[doc = " Once a segment reaches this length, we begin the next one."] #[doc = " We reset all segments and return to `0` at the beginning of every"] #[doc = " epoch."] pub fn segment_index( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "SegmentIndex", vec![], [ 128u8, 45u8, 87u8, 58u8, 174u8, 152u8, 241u8, 156u8, 56u8, 192u8, 19u8, 45u8, 75u8, 160u8, 35u8, 253u8, 145u8, 11u8, 178u8, 81u8, 114u8, 117u8, 112u8, 107u8, 163u8, 208u8, 240u8, 151u8, 102u8, 176u8, 246u8, 5u8, ], ) } #[doc = " TWOX-NOTE: `SegmentIndex` is an increasing integer, so this is okay."] pub fn under_construction( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< [::core::primitive::u8; 32usize], >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "UnderConstruction", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 180u8, 4u8, 149u8, 245u8, 231u8, 92u8, 99u8, 170u8, 254u8, 172u8, 182u8, 3u8, 152u8, 156u8, 132u8, 196u8, 140u8, 97u8, 7u8, 84u8, 220u8, 89u8, 195u8, 177u8, 235u8, 51u8, 98u8, 144u8, 73u8, 238u8, 59u8, 164u8, ], ) } #[doc = " TWOX-NOTE: `SegmentIndex` is an increasing integer, so this is okay."] pub fn under_construction_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< [::core::primitive::u8; 32usize], >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "UnderConstruction", Vec::new(), [ 180u8, 4u8, 149u8, 245u8, 231u8, 92u8, 99u8, 170u8, 254u8, 172u8, 182u8, 3u8, 152u8, 156u8, 132u8, 196u8, 140u8, 97u8, 7u8, 84u8, 220u8, 89u8, 195u8, 177u8, 235u8, 51u8, 98u8, 144u8, 73u8, 238u8, 59u8, 164u8, ], ) } #[doc = " Temporary value (cleared at block finalization) which is `Some`"] #[doc = " if per-block initialization has already been called for current block."] pub fn initialized( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::core::option::Option< runtime_types::sp_consensus_babe::digests::PreDigest, >, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "Initialized", vec![], [ 142u8, 101u8, 250u8, 113u8, 93u8, 201u8, 157u8, 18u8, 166u8, 153u8, 59u8, 197u8, 107u8, 247u8, 124u8, 110u8, 202u8, 67u8, 62u8, 57u8, 186u8, 134u8, 49u8, 182u8, 149u8, 44u8, 255u8, 85u8, 87u8, 177u8, 149u8, 121u8, ], ) } #[doc = " This field should always be populated during block processing unless"] #[doc = " secondary plain slots are enabled (which don't contain a VRF output)."] #[doc = ""] #[doc = " It is set in `on_finalize`, before it will contain the value from the last block."] pub fn author_vrf_randomness( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::core::option::Option<[::core::primitive::u8; 32usize]>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "AuthorVrfRandomness", vec![], [ 66u8, 235u8, 74u8, 252u8, 222u8, 135u8, 19u8, 28u8, 74u8, 191u8, 170u8, 197u8, 207u8, 127u8, 77u8, 121u8, 138u8, 138u8, 110u8, 187u8, 34u8, 14u8, 230u8, 43u8, 241u8, 241u8, 63u8, 163u8, 53u8, 179u8, 250u8, 247u8, ], ) } #[doc = " The block numbers when the last and current epoch have started, respectively `N-1` and"] #[doc = " `N`."] #[doc = " NOTE: We track this is in order to annotate the block number when a given pool of"] #[doc = " entropy was fixed (i.e. it was known to chain observers). Since epochs are defined in"] #[doc = " slots, which may be skipped, the block numbers may not line up with the slot numbers."] pub fn epoch_start( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u32, ::core::primitive::u32, )>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "EpochStart", vec![], [ 196u8, 39u8, 241u8, 20u8, 150u8, 180u8, 136u8, 4u8, 195u8, 205u8, 218u8, 10u8, 130u8, 131u8, 168u8, 243u8, 207u8, 249u8, 58u8, 195u8, 177u8, 119u8, 110u8, 243u8, 241u8, 3u8, 245u8, 56u8, 157u8, 5u8, 68u8, 60u8, ], ) } #[doc = " How late the current block is compared to its parent."] #[doc = ""] #[doc = " This entry is populated as part of block execution and is cleaned up"] #[doc = " on block finalization. Querying this storage entry outside of block"] #[doc = " execution context should always yield zero."] pub fn lateness( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "Lateness", vec![], [ 229u8, 230u8, 224u8, 89u8, 49u8, 213u8, 198u8, 236u8, 144u8, 56u8, 193u8, 234u8, 62u8, 242u8, 191u8, 199u8, 105u8, 131u8, 74u8, 63u8, 75u8, 1u8, 210u8, 49u8, 3u8, 128u8, 18u8, 77u8, 219u8, 146u8, 60u8, 88u8, ], ) } #[doc = " The configuration for the current epoch. Should never be `None` as it is initialized in"] #[doc = " genesis."] pub fn epoch_config( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_consensus_babe::BabeEpochConfiguration, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "EpochConfig", vec![], [ 41u8, 118u8, 141u8, 244u8, 72u8, 17u8, 125u8, 203u8, 43u8, 153u8, 203u8, 119u8, 117u8, 223u8, 123u8, 133u8, 73u8, 235u8, 130u8, 21u8, 160u8, 167u8, 16u8, 173u8, 177u8, 35u8, 117u8, 97u8, 149u8, 49u8, 220u8, 24u8, ], ) } #[doc = " The configuration for the next epoch, `None` if the config will not change"] #[doc = " (you can fallback to `EpochConfig` instead in that case)."] pub fn next_epoch_config( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_consensus_babe::BabeEpochConfiguration, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Babe", "NextEpochConfig", vec![], [ 111u8, 182u8, 144u8, 180u8, 92u8, 146u8, 102u8, 249u8, 196u8, 229u8, 226u8, 30u8, 25u8, 198u8, 133u8, 9u8, 136u8, 95u8, 11u8, 151u8, 139u8, 156u8, 105u8, 228u8, 181u8, 12u8, 175u8, 148u8, 174u8, 33u8, 233u8, 228u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The amount of time, in slots, that each epoch should last."] #[doc = " NOTE: Currently it is not possible to change the epoch duration after"] #[doc = " the chain has started. Attempting to do so will brick block production."] pub fn epoch_duration( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u64>, > { ::subxt::constants::StaticConstantAddress::new( "Babe", "EpochDuration", [ 128u8, 214u8, 205u8, 242u8, 181u8, 142u8, 124u8, 231u8, 190u8, 146u8, 59u8, 226u8, 157u8, 101u8, 103u8, 117u8, 249u8, 65u8, 18u8, 191u8, 103u8, 119u8, 53u8, 85u8, 81u8, 96u8, 220u8, 42u8, 184u8, 239u8, 42u8, 246u8, ], ) } #[doc = " The expected average block time at which BABE should be creating"] #[doc = " blocks. Since BABE is probabilistic it is not trivial to figure out"] #[doc = " what the expected average block time should be based on the slot"] #[doc = " duration and the security parameter `c` (where `1 - c` represents"] #[doc = " the probability of a slot being empty)."] pub fn expected_block_time( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u64>, > { ::subxt::constants::StaticConstantAddress::new( "Babe", "ExpectedBlockTime", [ 128u8, 214u8, 205u8, 242u8, 181u8, 142u8, 124u8, 231u8, 190u8, 146u8, 59u8, 226u8, 157u8, 101u8, 103u8, 117u8, 249u8, 65u8, 18u8, 191u8, 103u8, 119u8, 53u8, 85u8, 81u8, 96u8, 220u8, 42u8, 184u8, 239u8, 42u8, 246u8, ], ) } #[doc = " Max number of authorities allowed"] pub fn max_authorities( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Babe", "MaxAuthorities", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod timestamp { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Set { #[codec(compact)] pub now: ::core::primitive::u64, } pub struct TransactionApi; impl TransactionApi { #[doc = "Set the current time."] #[doc = ""] #[doc = "This call should be invoked exactly once per block. It will panic at the finalization"] #[doc = "phase, if this call hasn't been invoked by that time."] #[doc = ""] #[doc = "The timestamp should be greater than the previous one by the amount specified by"] #[doc = "`MinimumPeriod`."] #[doc = ""] #[doc = "The dispatch origin for this call must be `Inherent`."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)` (Note that implementations of `OnTimestampSet` must also be `O(1)`)"] #[doc = "- 1 storage read and 1 storage mutation (codec `O(1)`). (because of `DidUpdate::take` in"] #[doc = " `on_finalize`)"] #[doc = "- 1 event handler `on_timestamp_set`. Must be `O(1)`."] #[doc = "# "] pub fn set( &self, now: ::core::primitive::u64, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Timestamp", "set", Set { now }, [ 6u8, 97u8, 172u8, 236u8, 118u8, 238u8, 228u8, 114u8, 15u8, 115u8, 102u8, 85u8, 66u8, 151u8, 16u8, 33u8, 187u8, 17u8, 166u8, 88u8, 127u8, 214u8, 182u8, 51u8, 168u8, 88u8, 43u8, 101u8, 185u8, 8u8, 1u8, 28u8, ], ) } } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Current time for the current block."] pub fn now( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u64>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Timestamp", "Now", vec![], [ 148u8, 53u8, 50u8, 54u8, 13u8, 161u8, 57u8, 150u8, 16u8, 83u8, 144u8, 221u8, 59u8, 75u8, 158u8, 130u8, 39u8, 123u8, 106u8, 134u8, 202u8, 185u8, 83u8, 85u8, 60u8, 41u8, 120u8, 96u8, 210u8, 34u8, 2u8, 250u8, ], ) } #[doc = " Did the timestamp get updated in this block?"] pub fn did_update( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Timestamp", "DidUpdate", vec![], [ 70u8, 13u8, 92u8, 186u8, 80u8, 151u8, 167u8, 90u8, 158u8, 232u8, 175u8, 13u8, 103u8, 135u8, 2u8, 78u8, 16u8, 6u8, 39u8, 158u8, 167u8, 85u8, 27u8, 47u8, 122u8, 73u8, 127u8, 26u8, 35u8, 168u8, 72u8, 204u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The minimum period between blocks. Beware that this is different to the *expected*"] #[doc = " period that the block production apparatus provides. Your chosen consensus system will"] #[doc = " generally work with this to determine a sensible block time. e.g. For Aura, it will be"] #[doc = " double this period on default settings."] pub fn minimum_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u64>, > { ::subxt::constants::StaticConstantAddress::new( "Timestamp", "MinimumPeriod", [ 128u8, 214u8, 205u8, 242u8, 181u8, 142u8, 124u8, 231u8, 190u8, 146u8, 59u8, 226u8, 157u8, 101u8, 103u8, 117u8, 249u8, 65u8, 18u8, 191u8, 103u8, 119u8, 53u8, 85u8, 81u8, 96u8, 220u8, 42u8, 184u8, 239u8, 42u8, 246u8, ], ) } } } } pub mod authorship { use super::root_mod; use super::runtime_types; pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Author of current block."] pub fn author( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Authorship", "Author", vec![], [ 149u8, 42u8, 33u8, 147u8, 190u8, 207u8, 174u8, 227u8, 190u8, 110u8, 25u8, 131u8, 5u8, 167u8, 237u8, 188u8, 188u8, 33u8, 177u8, 126u8, 181u8, 49u8, 126u8, 118u8, 46u8, 128u8, 154u8, 95u8, 15u8, 91u8, 103u8, 113u8, ], ) } } } } pub mod indices { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Claim { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Transfer { pub new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Free { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceTransfer { pub new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub index: ::core::primitive::u32, pub freeze: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Freeze { pub index: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Assign an previously unassigned index."] #[doc = ""] #[doc = "Payment: `Deposit` is reserved from the sender account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `index`: the index to be claimed. This must not be in use."] #[doc = ""] #[doc = "Emits `IndexAssigned` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- One storage mutation (codec `O(1)`)."] #[doc = "- One reserve operation."] #[doc = "- One event."] #[doc = "-------------------"] #[doc = "- DB Weight: 1 Read/Write (Accounts)"] #[doc = "# "] pub fn claim( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Indices", "claim", Claim { index }, [ 5u8, 24u8, 11u8, 173u8, 226u8, 170u8, 0u8, 30u8, 193u8, 102u8, 214u8, 59u8, 252u8, 32u8, 221u8, 88u8, 196u8, 189u8, 244u8, 18u8, 233u8, 37u8, 228u8, 248u8, 76u8, 175u8, 212u8, 233u8, 238u8, 203u8, 162u8, 68u8, ], ) } #[doc = "Assign an index already owned by the sender to another account. The balance reservation"] #[doc = "is effectively transferred to the new account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `index`: the index to be re-assigned. This must be owned by the sender."] #[doc = "- `new`: the new owner of the index. This function is a no-op if it is equal to sender."] #[doc = ""] #[doc = "Emits `IndexAssigned` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- One storage mutation (codec `O(1)`)."] #[doc = "- One transfer operation."] #[doc = "- One event."] #[doc = "-------------------"] #[doc = "- DB Weight:"] #[doc = " - Reads: Indices Accounts, System Account (recipient)"] #[doc = " - Writes: Indices Accounts, System Account (recipient)"] #[doc = "# "] pub fn transfer( &self, new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Indices", "transfer", Transfer { new, index }, [ 1u8, 83u8, 197u8, 184u8, 8u8, 96u8, 48u8, 146u8, 116u8, 76u8, 229u8, 115u8, 226u8, 215u8, 41u8, 154u8, 27u8, 34u8, 205u8, 188u8, 10u8, 169u8, 203u8, 39u8, 2u8, 236u8, 181u8, 162u8, 115u8, 254u8, 42u8, 28u8, ], ) } #[doc = "Free up an index owned by the sender."] #[doc = ""] #[doc = "Payment: Any previous deposit placed for the index is unreserved in the sender account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must own the index."] #[doc = ""] #[doc = "- `index`: the index to be freed. This must be owned by the sender."] #[doc = ""] #[doc = "Emits `IndexFreed` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- One storage mutation (codec `O(1)`)."] #[doc = "- One reserve operation."] #[doc = "- One event."] #[doc = "-------------------"] #[doc = "- DB Weight: 1 Read/Write (Accounts)"] #[doc = "# "] pub fn free( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Indices", "free", Free { index }, [ 133u8, 202u8, 225u8, 127u8, 69u8, 145u8, 43u8, 13u8, 160u8, 248u8, 215u8, 243u8, 232u8, 166u8, 74u8, 203u8, 235u8, 138u8, 255u8, 27u8, 163u8, 71u8, 254u8, 217u8, 6u8, 208u8, 202u8, 204u8, 238u8, 70u8, 126u8, 252u8, ], ) } #[doc = "Force an index to an account. This doesn't require a deposit. If the index is already"] #[doc = "held, then any deposit is reimbursed to its current owner."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Root_."] #[doc = ""] #[doc = "- `index`: the index to be (re-)assigned."] #[doc = "- `new`: the new owner of the index. This function is a no-op if it is equal to sender."] #[doc = "- `freeze`: if set to `true`, will freeze the index so it cannot be transferred."] #[doc = ""] #[doc = "Emits `IndexAssigned` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- One storage mutation (codec `O(1)`)."] #[doc = "- Up to one reserve operation."] #[doc = "- One event."] #[doc = "-------------------"] #[doc = "- DB Weight:"] #[doc = " - Reads: Indices Accounts, System Account (original owner)"] #[doc = " - Writes: Indices Accounts, System Account (original owner)"] #[doc = "# "] pub fn force_transfer( &self, new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, index: ::core::primitive::u32, freeze: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Indices", "force_transfer", ForceTransfer { new, index, freeze }, [ 126u8, 8u8, 145u8, 175u8, 177u8, 153u8, 131u8, 123u8, 184u8, 53u8, 72u8, 207u8, 21u8, 140u8, 87u8, 181u8, 172u8, 64u8, 37u8, 165u8, 121u8, 111u8, 173u8, 224u8, 181u8, 79u8, 76u8, 134u8, 93u8, 169u8, 65u8, 131u8, ], ) } #[doc = "Freeze an index so it will always point to the sender account. This consumes the"] #[doc = "deposit."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the signing account must have a"] #[doc = "non-frozen account `index`."] #[doc = ""] #[doc = "- `index`: the index to be frozen in place."] #[doc = ""] #[doc = "Emits `IndexFrozen` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- One storage mutation (codec `O(1)`)."] #[doc = "- Up to one slash operation."] #[doc = "- One event."] #[doc = "-------------------"] #[doc = "- DB Weight: 1 Read/Write (Accounts)"] #[doc = "# "] pub fn freeze( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Indices", "freeze", Freeze { index }, [ 121u8, 45u8, 118u8, 2u8, 72u8, 48u8, 38u8, 7u8, 234u8, 204u8, 68u8, 20u8, 76u8, 251u8, 205u8, 246u8, 149u8, 31u8, 168u8, 186u8, 208u8, 90u8, 40u8, 47u8, 100u8, 228u8, 188u8, 33u8, 79u8, 220u8, 105u8, 209u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_indices::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A account index was assigned."] pub struct IndexAssigned { pub who: ::subxt::utils::AccountId32, pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for IndexAssigned { const PALLET: &'static str = "Indices"; const EVENT: &'static str = "IndexAssigned"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A account index has been freed up (unassigned)."] pub struct IndexFreed { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for IndexFreed { const PALLET: &'static str = "Indices"; const EVENT: &'static str = "IndexFreed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A account index has been frozen to its current account ID."] pub struct IndexFrozen { pub index: ::core::primitive::u32, pub who: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for IndexFrozen { const PALLET: &'static str = "Indices"; const EVENT: &'static str = "IndexFrozen"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The lookup from index to account."] pub fn accounts( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::subxt::utils::AccountId32, ::core::primitive::u128, ::core::primitive::bool, )>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Indices", "Accounts", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 211u8, 169u8, 54u8, 254u8, 88u8, 57u8, 22u8, 223u8, 108u8, 27u8, 38u8, 9u8, 202u8, 209u8, 111u8, 209u8, 144u8, 13u8, 211u8, 114u8, 239u8, 127u8, 75u8, 166u8, 234u8, 222u8, 225u8, 35u8, 160u8, 163u8, 112u8, 242u8, ], ) } #[doc = " The lookup from index to account."] pub fn accounts_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::subxt::utils::AccountId32, ::core::primitive::u128, ::core::primitive::bool, )>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Indices", "Accounts", Vec::new(), [ 211u8, 169u8, 54u8, 254u8, 88u8, 57u8, 22u8, 223u8, 108u8, 27u8, 38u8, 9u8, 202u8, 209u8, 111u8, 209u8, 144u8, 13u8, 211u8, 114u8, 239u8, 127u8, 75u8, 166u8, 234u8, 222u8, 225u8, 35u8, 160u8, 163u8, 112u8, 242u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The deposit needed for reserving an index."] pub fn deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Indices", "Deposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } } } } pub mod balances { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Transfer { pub dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub value: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetBalance { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub new_free: ::core::primitive::u128, #[codec(compact)] pub new_reserved: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceTransfer { pub source: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub value: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TransferKeepAlive { pub dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub value: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TransferAll { pub dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub keep_alive: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceUnreserve { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub amount: ::core::primitive::u128, } pub struct TransactionApi; impl TransactionApi { #[doc = "Transfer some liquid free balance to another account."] #[doc = ""] #[doc = "`transfer` will set the `FreeBalance` of the sender and receiver."] #[doc = "If the sender's account is below the existential deposit as a result"] #[doc = "of the transfer, the account will be reaped."] #[doc = ""] #[doc = "The dispatch origin for this call must be `Signed` by the transactor."] #[doc = ""] #[doc = "# "] #[doc = "- Dependent on arguments but not critical, given proper implementations for input config"] #[doc = " types. See related functions below."] #[doc = "- It contains a limited number of reads and writes internally and no complex"] #[doc = " computation."] #[doc = ""] #[doc = "Related functions:"] #[doc = ""] #[doc = " - `ensure_can_withdraw` is always called internally but has a bounded complexity."] #[doc = " - Transferring balances to accounts that did not exist before will cause"] #[doc = " `T::OnNewAccount::on_new_account` to be called."] #[doc = " - Removing enough funds from an account will trigger `T::DustRemoval::on_unbalanced`."] #[doc = " - `transfer_keep_alive` works the same way as `transfer`, but has an additional check"] #[doc = " that the transfer will not kill the origin account."] #[doc = "---------------------------------"] #[doc = "- Origin account is already in memory, so no DB operations for them."] #[doc = "# "] pub fn transfer( &self, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, value: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Balances", "transfer", Transfer { dest, value }, [ 255u8, 181u8, 144u8, 248u8, 64u8, 167u8, 5u8, 134u8, 208u8, 20u8, 223u8, 103u8, 235u8, 35u8, 66u8, 184u8, 27u8, 94u8, 176u8, 60u8, 233u8, 236u8, 145u8, 218u8, 44u8, 138u8, 240u8, 224u8, 16u8, 193u8, 220u8, 95u8, ], ) } #[doc = "Set the balances of a given account."] #[doc = ""] #[doc = "This will alter `FreeBalance` and `ReservedBalance` in storage. it will"] #[doc = "also alter the total issuance of the system (`TotalIssuance`) appropriately."] #[doc = "If the new free or reserved balance is below the existential deposit,"] #[doc = "it will reset the account nonce (`frame_system::AccountNonce`)."] #[doc = ""] #[doc = "The dispatch origin for this call is `root`."] pub fn set_balance( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, new_free: ::core::primitive::u128, new_reserved: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Balances", "set_balance", SetBalance { who, new_free, new_reserved, }, [ 174u8, 34u8, 80u8, 252u8, 193u8, 51u8, 228u8, 236u8, 234u8, 16u8, 173u8, 214u8, 122u8, 21u8, 254u8, 7u8, 49u8, 176u8, 18u8, 128u8, 122u8, 68u8, 72u8, 181u8, 119u8, 90u8, 167u8, 46u8, 203u8, 220u8, 109u8, 110u8, ], ) } #[doc = "Exactly as `transfer`, except the origin must be root and the source account may be"] #[doc = "specified."] #[doc = "# "] #[doc = "- Same as transfer, but additional read and write because the source account is not"] #[doc = " assumed to be in the overlay."] #[doc = "# "] pub fn force_transfer( &self, source: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, value: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Balances", "force_transfer", ForceTransfer { source, dest, value, }, [ 56u8, 80u8, 186u8, 45u8, 134u8, 147u8, 200u8, 19u8, 53u8, 221u8, 213u8, 32u8, 13u8, 51u8, 130u8, 42u8, 244u8, 85u8, 50u8, 246u8, 189u8, 51u8, 93u8, 1u8, 108u8, 142u8, 112u8, 245u8, 104u8, 255u8, 15u8, 62u8, ], ) } #[doc = "Same as the [`transfer`] call, but with a check that the transfer will not kill the"] #[doc = "origin account."] #[doc = ""] #[doc = "99% of the time you want [`transfer`] instead."] #[doc = ""] #[doc = "[`transfer`]: struct.Pallet.html#method.transfer"] pub fn transfer_keep_alive( &self, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, value: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Balances", "transfer_keep_alive", TransferKeepAlive { dest, value }, [ 202u8, 239u8, 204u8, 0u8, 52u8, 57u8, 158u8, 8u8, 252u8, 178u8, 91u8, 197u8, 238u8, 186u8, 205u8, 56u8, 217u8, 250u8, 21u8, 44u8, 239u8, 66u8, 79u8, 99u8, 25u8, 106u8, 70u8, 226u8, 50u8, 255u8, 176u8, 71u8, ], ) } #[doc = "Transfer the entire transferable balance from the caller account."] #[doc = ""] #[doc = "NOTE: This function only attempts to transfer _transferable_ balances. This means that"] #[doc = "any locked, reserved, or existential deposits (when `keep_alive` is `true`), will not be"] #[doc = "transferred by this function. To ensure that this function results in a killed account,"] #[doc = "you might need to prepare the account by removing any reference counters, storage"] #[doc = "deposits, etc..."] #[doc = ""] #[doc = "The dispatch origin of this call must be Signed."] #[doc = ""] #[doc = "- `dest`: The recipient of the transfer."] #[doc = "- `keep_alive`: A boolean to determine if the `transfer_all` operation should send all"] #[doc = " of the funds the account has, causing the sender account to be killed (false), or"] #[doc = " transfer everything except at least the existential deposit, which will guarantee to"] #[doc = " keep the sender account alive (true). # "] #[doc = "- O(1). Just like transfer, but reading the user's transferable balance first."] #[doc = " #"] pub fn transfer_all( &self, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, keep_alive: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Balances", "transfer_all", TransferAll { dest, keep_alive }, [ 118u8, 215u8, 198u8, 243u8, 4u8, 173u8, 108u8, 224u8, 113u8, 203u8, 149u8, 23u8, 130u8, 176u8, 53u8, 205u8, 112u8, 147u8, 88u8, 167u8, 197u8, 32u8, 104u8, 117u8, 201u8, 168u8, 144u8, 230u8, 120u8, 29u8, 122u8, 159u8, ], ) } #[doc = "Unreserve some balance from a user by force."] #[doc = ""] #[doc = "Can only be called by ROOT."] pub fn force_unreserve( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, amount: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Balances", "force_unreserve", ForceUnreserve { who, amount }, [ 39u8, 229u8, 111u8, 44u8, 147u8, 80u8, 7u8, 26u8, 185u8, 121u8, 149u8, 25u8, 151u8, 37u8, 124u8, 46u8, 108u8, 136u8, 167u8, 145u8, 103u8, 65u8, 33u8, 168u8, 36u8, 214u8, 126u8, 237u8, 180u8, 61u8, 108u8, 110u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_balances::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account was created with some free balance."] pub struct Endowed { pub account: ::subxt::utils::AccountId32, pub free_balance: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Endowed { const PALLET: &'static str = "Balances"; const EVENT: &'static str = "Endowed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account was removed whose balance was non-zero but below ExistentialDeposit,"] #[doc = "resulting in an outright loss."] pub struct DustLost { pub account: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for DustLost { const PALLET: &'static str = "Balances"; const EVENT: &'static str = "DustLost"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Transfer succeeded."] pub struct Transfer { pub from: ::subxt::utils::AccountId32, pub to: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Transfer { const PALLET: &'static str = "Balances"; const EVENT: &'static str = "Transfer"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A balance was set by root."] pub struct BalanceSet { pub who: ::subxt::utils::AccountId32, pub free: ::core::primitive::u128, pub reserved: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for BalanceSet { const PALLET: &'static str = "Balances"; const EVENT: &'static str = "BalanceSet"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some balance was reserved (moved from free to reserved)."] pub struct Reserved { pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Reserved { const PALLET: &'static str = "Balances"; const EVENT: &'static str = "Reserved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some balance was unreserved (moved from reserved to free)."] pub struct Unreserved { pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Unreserved { const PALLET: &'static str = "Balances"; const EVENT: &'static str = "Unreserved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some balance was moved from the reserve of the first account to the second account."] #[doc = "Final argument indicates the destination balance type."] pub struct ReserveRepatriated { pub from: ::subxt::utils::AccountId32, pub to: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, pub destination_status: runtime_types::frame_support::traits::tokens::misc::BalanceStatus, } impl ::subxt::events::StaticEvent for ReserveRepatriated { const PALLET: &'static str = "Balances"; const EVENT: &'static str = "ReserveRepatriated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some amount was deposited (e.g. for transaction fees)."] pub struct Deposit { pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Deposit { const PALLET: &'static str = "Balances"; const EVENT: &'static str = "Deposit"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some amount was withdrawn from the account (e.g. for transaction fees)."] pub struct Withdraw { pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Withdraw { const PALLET: &'static str = "Balances"; const EVENT: &'static str = "Withdraw"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some amount was removed from the account (e.g. for misbehavior)."] pub struct Slashed { pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Slashed { const PALLET: &'static str = "Balances"; const EVENT: &'static str = "Slashed"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The total units issued in the system."] pub fn total_issuance( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Balances", "TotalIssuance", vec![], [ 1u8, 206u8, 252u8, 237u8, 6u8, 30u8, 20u8, 232u8, 164u8, 115u8, 51u8, 156u8, 156u8, 206u8, 241u8, 187u8, 44u8, 84u8, 25u8, 164u8, 235u8, 20u8, 86u8, 242u8, 124u8, 23u8, 28u8, 140u8, 26u8, 73u8, 231u8, 51u8, ], ) } #[doc = " The total units of outstanding deactivated balance in the system."] pub fn inactive_issuance( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Balances", "InactiveIssuance", vec![], [ 74u8, 203u8, 111u8, 142u8, 225u8, 104u8, 173u8, 51u8, 226u8, 12u8, 85u8, 135u8, 41u8, 206u8, 177u8, 238u8, 94u8, 246u8, 184u8, 250u8, 140u8, 213u8, 91u8, 118u8, 163u8, 111u8, 211u8, 46u8, 204u8, 160u8, 154u8, 21u8, ], ) } #[doc = " The Balances pallet example of storing the balance of an account."] #[doc = ""] #[doc = " # Example"] #[doc = ""] #[doc = " ```nocompile"] #[doc = " impl pallet_balances::Config for Runtime {"] #[doc = " type AccountStore = StorageMapShim, frame_system::Provider, AccountId, Self::AccountData>"] #[doc = " }"] #[doc = " ```"] #[doc = ""] #[doc = " You can also store the balance of an account in the `System` pallet."] #[doc = ""] #[doc = " # Example"] #[doc = ""] #[doc = " ```nocompile"] #[doc = " impl pallet_balances::Config for Runtime {"] #[doc = " type AccountStore = System"] #[doc = " }"] #[doc = " ```"] #[doc = ""] #[doc = " But this comes with tradeoffs, storing account balances in the system pallet stores"] #[doc = " `frame_system` data alongside the account data contrary to storing account balances in the"] #[doc = " `Balances` pallet, which uses a `StorageMap` to store balances data only."] #[doc = " NOTE: This is only used in the case that this pallet is used to store balances."] pub fn account( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_balances::AccountData< ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Balances", "Account", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 246u8, 154u8, 253u8, 71u8, 192u8, 192u8, 192u8, 236u8, 128u8, 80u8, 40u8, 252u8, 201u8, 43u8, 3u8, 131u8, 19u8, 49u8, 141u8, 240u8, 172u8, 217u8, 215u8, 109u8, 87u8, 135u8, 248u8, 57u8, 98u8, 185u8, 22u8, 4u8, ], ) } #[doc = " The Balances pallet example of storing the balance of an account."] #[doc = ""] #[doc = " # Example"] #[doc = ""] #[doc = " ```nocompile"] #[doc = " impl pallet_balances::Config for Runtime {"] #[doc = " type AccountStore = StorageMapShim, frame_system::Provider, AccountId, Self::AccountData>"] #[doc = " }"] #[doc = " ```"] #[doc = ""] #[doc = " You can also store the balance of an account in the `System` pallet."] #[doc = ""] #[doc = " # Example"] #[doc = ""] #[doc = " ```nocompile"] #[doc = " impl pallet_balances::Config for Runtime {"] #[doc = " type AccountStore = System"] #[doc = " }"] #[doc = " ```"] #[doc = ""] #[doc = " But this comes with tradeoffs, storing account balances in the system pallet stores"] #[doc = " `frame_system` data alongside the account data contrary to storing account balances in the"] #[doc = " `Balances` pallet, which uses a `StorageMap` to store balances data only."] #[doc = " NOTE: This is only used in the case that this pallet is used to store balances."] pub fn account_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_balances::AccountData< ::core::primitive::u128, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Balances", "Account", Vec::new(), [ 246u8, 154u8, 253u8, 71u8, 192u8, 192u8, 192u8, 236u8, 128u8, 80u8, 40u8, 252u8, 201u8, 43u8, 3u8, 131u8, 19u8, 49u8, 141u8, 240u8, 172u8, 217u8, 215u8, 109u8, 87u8, 135u8, 248u8, 57u8, 98u8, 185u8, 22u8, 4u8, ], ) } #[doc = " Any liquidity locks on some account balances."] #[doc = " NOTE: Should only be accessed when setting, changing and freeing a lock."] pub fn locks( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec< runtime_types::pallet_balances::BalanceLock< ::core::primitive::u128, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Balances", "Locks", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 216u8, 253u8, 87u8, 73u8, 24u8, 218u8, 35u8, 0u8, 244u8, 134u8, 195u8, 58u8, 255u8, 64u8, 153u8, 212u8, 210u8, 232u8, 4u8, 122u8, 90u8, 212u8, 136u8, 14u8, 127u8, 232u8, 8u8, 192u8, 40u8, 233u8, 18u8, 250u8, ], ) } #[doc = " Any liquidity locks on some account balances."] #[doc = " NOTE: Should only be accessed when setting, changing and freeing a lock."] pub fn locks_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec< runtime_types::pallet_balances::BalanceLock< ::core::primitive::u128, >, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Balances", "Locks", Vec::new(), [ 216u8, 253u8, 87u8, 73u8, 24u8, 218u8, 35u8, 0u8, 244u8, 134u8, 195u8, 58u8, 255u8, 64u8, 153u8, 212u8, 210u8, 232u8, 4u8, 122u8, 90u8, 212u8, 136u8, 14u8, 127u8, 232u8, 8u8, 192u8, 40u8, 233u8, 18u8, 250u8, ], ) } #[doc = " Named reserves on some account balances."] pub fn reserves( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_balances::ReserveData< [::core::primitive::u8; 8usize], ::core::primitive::u128, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Balances", "Reserves", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 17u8, 32u8, 191u8, 46u8, 76u8, 220u8, 101u8, 100u8, 42u8, 250u8, 128u8, 167u8, 117u8, 44u8, 85u8, 96u8, 105u8, 216u8, 16u8, 147u8, 74u8, 55u8, 183u8, 94u8, 160u8, 177u8, 26u8, 187u8, 71u8, 197u8, 187u8, 163u8, ], ) } #[doc = " Named reserves on some account balances."] pub fn reserves_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_balances::ReserveData< [::core::primitive::u8; 8usize], ::core::primitive::u128, >, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Balances", "Reserves", Vec::new(), [ 17u8, 32u8, 191u8, 46u8, 76u8, 220u8, 101u8, 100u8, 42u8, 250u8, 128u8, 167u8, 117u8, 44u8, 85u8, 96u8, 105u8, 216u8, 16u8, 147u8, 74u8, 55u8, 183u8, 94u8, 160u8, 177u8, 26u8, 187u8, 71u8, 197u8, 187u8, 163u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The minimum amount required to keep an account open."] pub fn existential_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Balances", "ExistentialDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The maximum number of locks that should exist on an account."] #[doc = " Not strictly enforced, but used for weight estimation."] pub fn max_locks( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Balances", "MaxLocks", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of named reserves that can exist on an account."] pub fn max_reserves( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Balances", "MaxReserves", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod transaction_payment { use super::root_mod; use super::runtime_types; #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_transaction_payment::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A transaction fee `actual_fee`, of which `tip` was added to the minimum inclusion fee,"] #[doc = "has been paid by `who`."] pub struct TransactionFeePaid { pub who: ::subxt::utils::AccountId32, pub actual_fee: ::core::primitive::u128, pub tip: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for TransactionFeePaid { const PALLET: &'static str = "TransactionPayment"; const EVENT: &'static str = "TransactionFeePaid"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { pub fn next_fee_multiplier( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_arithmetic::fixed_point::FixedU128, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "TransactionPayment", "NextFeeMultiplier", vec![], [ 210u8, 0u8, 206u8, 165u8, 183u8, 10u8, 206u8, 52u8, 14u8, 90u8, 218u8, 197u8, 189u8, 125u8, 113u8, 216u8, 52u8, 161u8, 45u8, 24u8, 245u8, 237u8, 121u8, 41u8, 106u8, 29u8, 45u8, 129u8, 250u8, 203u8, 206u8, 180u8, ], ) } pub fn storage_version( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_transaction_payment::Releases, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "TransactionPayment", "StorageVersion", vec![], [ 219u8, 243u8, 82u8, 176u8, 65u8, 5u8, 132u8, 114u8, 8u8, 82u8, 176u8, 200u8, 97u8, 150u8, 177u8, 164u8, 166u8, 11u8, 34u8, 12u8, 12u8, 198u8, 58u8, 191u8, 186u8, 221u8, 221u8, 119u8, 181u8, 253u8, 154u8, 228u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " A fee mulitplier for `Operational` extrinsics to compute \"virtual tip\" to boost their"] #[doc = " `priority`"] #[doc = ""] #[doc = " This value is multipled by the `final_fee` to obtain a \"virtual tip\" that is later"] #[doc = " added to a tip component in regular `priority` calculations."] #[doc = " It means that a `Normal` transaction can front-run a similarly-sized `Operational`"] #[doc = " extrinsic (with no tip), by including a tip value greater than the virtual tip."] #[doc = ""] #[doc = " ```rust,ignore"] #[doc = " // For `Normal`"] #[doc = " let priority = priority_calc(tip);"] #[doc = ""] #[doc = " // For `Operational`"] #[doc = " let virtual_tip = (inclusion_fee + tip) * OperationalFeeMultiplier;"] #[doc = " let priority = priority_calc(tip + virtual_tip);"] #[doc = " ```"] #[doc = ""] #[doc = " Note that since we use `final_fee` the multiplier applies also to the regular `tip`"] #[doc = " sent with the transaction. So, not only does the transaction get a priority bump based"] #[doc = " on the `inclusion_fee`, but we also amplify the impact of tips applied to `Operational`"] #[doc = " transactions."] pub fn operational_fee_multiplier( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u8>, > { ::subxt::constants::StaticConstantAddress::new( "TransactionPayment", "OperationalFeeMultiplier", [ 141u8, 130u8, 11u8, 35u8, 226u8, 114u8, 92u8, 179u8, 168u8, 110u8, 28u8, 91u8, 221u8, 64u8, 4u8, 148u8, 201u8, 193u8, 185u8, 66u8, 226u8, 114u8, 97u8, 79u8, 62u8, 212u8, 202u8, 114u8, 237u8, 228u8, 183u8, 165u8, ], ) } } } } pub mod asset_tx_payment { use super::root_mod; use super::runtime_types; #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_asset_tx_payment::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A transaction fee `actual_fee`, of which `tip` was added to the minimum inclusion fee,"] #[doc = "has been paid by `who` in an asset `asset_id`."] pub struct AssetTxFeePaid { pub who: ::subxt::utils::AccountId32, pub actual_fee: ::core::primitive::u128, pub tip: ::core::primitive::u128, pub asset_id: ::core::option::Option<::core::primitive::u32>, } impl ::subxt::events::StaticEvent for AssetTxFeePaid { const PALLET: &'static str = "AssetTxPayment"; const EVENT: &'static str = "AssetTxFeePaid"; } } } pub mod election_provider_multi_phase { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SubmitUnsigned { pub raw_solution : :: std :: boxed :: Box < runtime_types :: pallet_election_provider_multi_phase :: RawSolution < runtime_types :: kitchensink_runtime :: NposSolution16 > > , pub witness : runtime_types :: pallet_election_provider_multi_phase :: SolutionOrSnapshotSize , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetMinimumUntrustedScore { pub maybe_next_score: ::core::option::Option< runtime_types::sp_npos_elections::ElectionScore, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetEmergencyElectionResult { pub supports: ::std::vec::Vec<( ::subxt::utils::AccountId32, runtime_types::sp_npos_elections::Support< ::subxt::utils::AccountId32, >, )>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Submit { pub raw_solution: ::std::boxed::Box< runtime_types::pallet_election_provider_multi_phase::RawSolution< runtime_types::kitchensink_runtime::NposSolution16, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct GovernanceFallback { pub maybe_max_voters: ::core::option::Option<::core::primitive::u32>, pub maybe_max_targets: ::core::option::Option<::core::primitive::u32>, } pub struct TransactionApi; impl TransactionApi { #[doc = "Submit a solution for the unsigned phase."] #[doc = ""] #[doc = "The dispatch origin fo this call must be __none__."] #[doc = ""] #[doc = "This submission is checked on the fly. Moreover, this unsigned solution is only"] #[doc = "validated when submitted to the pool from the **local** node. Effectively, this means"] #[doc = "that only active validators can submit this transaction when authoring a block (similar"] #[doc = "to an inherent)."] #[doc = ""] #[doc = "To prevent any incorrect solution (and thus wasted time/weight), this transaction will"] #[doc = "panic if the solution submitted by the validator is invalid in any way, effectively"] #[doc = "putting their authoring reward at risk."] #[doc = ""] #[doc = "No deposit or reward is associated with this submission."] pub fn submit_unsigned( &self, raw_solution : runtime_types :: pallet_election_provider_multi_phase :: RawSolution < runtime_types :: kitchensink_runtime :: NposSolution16 >, witness : runtime_types :: pallet_election_provider_multi_phase :: SolutionOrSnapshotSize, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ElectionProviderMultiPhase", "submit_unsigned", SubmitUnsigned { raw_solution: ::std::boxed::Box::new(raw_solution), witness, }, [ 100u8, 240u8, 31u8, 34u8, 93u8, 98u8, 93u8, 57u8, 41u8, 197u8, 97u8, 58u8, 242u8, 10u8, 69u8, 250u8, 185u8, 169u8, 21u8, 8u8, 202u8, 61u8, 36u8, 25u8, 4u8, 148u8, 82u8, 56u8, 242u8, 18u8, 27u8, 219u8, ], ) } #[doc = "Set a new value for `MinimumUntrustedScore`."] #[doc = ""] #[doc = "Dispatch origin must be aligned with `T::ForceOrigin`."] #[doc = ""] #[doc = "This check can be turned off by setting the value to `None`."] pub fn set_minimum_untrusted_score( &self, maybe_next_score: ::core::option::Option< runtime_types::sp_npos_elections::ElectionScore, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ElectionProviderMultiPhase", "set_minimum_untrusted_score", SetMinimumUntrustedScore { maybe_next_score }, [ 63u8, 101u8, 105u8, 146u8, 133u8, 162u8, 149u8, 112u8, 150u8, 219u8, 183u8, 213u8, 234u8, 211u8, 144u8, 74u8, 106u8, 15u8, 62u8, 196u8, 247u8, 49u8, 20u8, 48u8, 3u8, 105u8, 85u8, 46u8, 76u8, 4u8, 67u8, 81u8, ], ) } #[doc = "Set a solution in the queue, to be handed out to the client of this pallet in the next"] #[doc = "call to `ElectionProvider::elect`."] #[doc = ""] #[doc = "This can only be set by `T::ForceOrigin`, and only when the phase is `Emergency`."] #[doc = ""] #[doc = "The solution is not checked for any feasibility and is assumed to be trustworthy, as any"] #[doc = "feasibility check itself can in principle cause the election process to fail (due to"] #[doc = "memory/weight constrains)."] pub fn set_emergency_election_result( &self, supports: ::std::vec::Vec<( ::subxt::utils::AccountId32, runtime_types::sp_npos_elections::Support< ::subxt::utils::AccountId32, >, )>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ElectionProviderMultiPhase", "set_emergency_election_result", SetEmergencyElectionResult { supports }, [ 115u8, 255u8, 205u8, 58u8, 153u8, 1u8, 246u8, 8u8, 225u8, 36u8, 66u8, 144u8, 250u8, 145u8, 70u8, 76u8, 54u8, 63u8, 251u8, 51u8, 214u8, 204u8, 55u8, 112u8, 46u8, 228u8, 255u8, 250u8, 151u8, 5u8, 44u8, 133u8, ], ) } #[doc = "Submit a solution for the signed phase."] #[doc = ""] #[doc = "The dispatch origin fo this call must be __signed__."] #[doc = ""] #[doc = "The solution is potentially queued, based on the claimed score and processed at the end"] #[doc = "of the signed phase."] #[doc = ""] #[doc = "A deposit is reserved and recorded for the solution. Based on the outcome, the solution"] #[doc = "might be rewarded, slashed, or get all or a part of the deposit back."] pub fn submit( &self, raw_solution : runtime_types :: pallet_election_provider_multi_phase :: RawSolution < runtime_types :: kitchensink_runtime :: NposSolution16 >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ElectionProviderMultiPhase", "submit", Submit { raw_solution: ::std::boxed::Box::new(raw_solution), }, [ 220u8, 167u8, 40u8, 47u8, 253u8, 244u8, 72u8, 124u8, 30u8, 123u8, 127u8, 227u8, 2u8, 66u8, 119u8, 64u8, 211u8, 200u8, 210u8, 98u8, 248u8, 132u8, 68u8, 25u8, 34u8, 182u8, 230u8, 225u8, 241u8, 58u8, 193u8, 134u8, ], ) } #[doc = "Trigger the governance fallback."] #[doc = ""] #[doc = "This can only be called when [`Phase::Emergency`] is enabled, as an alternative to"] #[doc = "calling [`Call::set_emergency_election_result`]."] pub fn governance_fallback( &self, maybe_max_voters: ::core::option::Option<::core::primitive::u32>, maybe_max_targets: ::core::option::Option<::core::primitive::u32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ElectionProviderMultiPhase", "governance_fallback", GovernanceFallback { maybe_max_voters, maybe_max_targets, }, [ 206u8, 247u8, 76u8, 85u8, 7u8, 24u8, 231u8, 226u8, 192u8, 143u8, 43u8, 67u8, 91u8, 202u8, 88u8, 176u8, 130u8, 1u8, 83u8, 229u8, 227u8, 200u8, 179u8, 4u8, 113u8, 60u8, 99u8, 190u8, 53u8, 226u8, 142u8, 182u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_election_provider_multi_phase::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A solution was stored with the given compute."] #[doc = ""] #[doc = "The `origin` indicates the origin of the solution. If `origin` is `Some(AccountId)`,"] #[doc = "the stored solution was submited in the signed phase by a miner with the `AccountId`."] #[doc = "Otherwise, the solution was stored either during the unsigned phase or by"] #[doc = "`T::ForceOrigin`. The `bool` is `true` when a previous solution was ejected to make"] #[doc = "room for this one."] pub struct SolutionStored { pub compute: runtime_types::pallet_election_provider_multi_phase::ElectionCompute, pub origin: ::core::option::Option<::subxt::utils::AccountId32>, pub prev_ejected: ::core::primitive::bool, } impl ::subxt::events::StaticEvent for SolutionStored { const PALLET: &'static str = "ElectionProviderMultiPhase"; const EVENT: &'static str = "SolutionStored"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The election has been finalized, with the given computation and score."] pub struct ElectionFinalized { pub compute: runtime_types::pallet_election_provider_multi_phase::ElectionCompute, pub score: runtime_types::sp_npos_elections::ElectionScore, } impl ::subxt::events::StaticEvent for ElectionFinalized { const PALLET: &'static str = "ElectionProviderMultiPhase"; const EVENT: &'static str = "ElectionFinalized"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An election failed."] #[doc = ""] #[doc = "Not much can be said about which computes failed in the process."] pub struct ElectionFailed; impl ::subxt::events::StaticEvent for ElectionFailed { const PALLET: &'static str = "ElectionProviderMultiPhase"; const EVENT: &'static str = "ElectionFailed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has been rewarded for their signed submission being finalized."] pub struct Rewarded { pub account: ::subxt::utils::AccountId32, pub value: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Rewarded { const PALLET: &'static str = "ElectionProviderMultiPhase"; const EVENT: &'static str = "Rewarded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has been slashed for submitting an invalid signed submission."] pub struct Slashed { pub account: ::subxt::utils::AccountId32, pub value: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Slashed { const PALLET: &'static str = "ElectionProviderMultiPhase"; const EVENT: &'static str = "Slashed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "There was a phase transition in a given round."] pub struct PhaseTransitioned { pub from: runtime_types::pallet_election_provider_multi_phase::Phase< ::core::primitive::u32, >, pub to: runtime_types::pallet_election_provider_multi_phase::Phase< ::core::primitive::u32, >, pub round: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for PhaseTransitioned { const PALLET: &'static str = "ElectionProviderMultiPhase"; const EVENT: &'static str = "PhaseTransitioned"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Internal counter for the number of rounds."] #[doc = ""] #[doc = " This is useful for de-duplication of transactions submitted to the pool, and general"] #[doc = " diagnostics of the pallet."] #[doc = ""] #[doc = " This is merely incremented once per every time that an upstream `elect` is called."] pub fn round( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "ElectionProviderMultiPhase", "Round", vec![], [ 16u8, 49u8, 176u8, 52u8, 202u8, 111u8, 120u8, 8u8, 217u8, 96u8, 35u8, 14u8, 233u8, 130u8, 47u8, 98u8, 34u8, 44u8, 166u8, 188u8, 199u8, 210u8, 21u8, 19u8, 70u8, 96u8, 139u8, 8u8, 53u8, 82u8, 165u8, 239u8, ], ) } #[doc = " Current phase."] pub fn current_phase( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_election_provider_multi_phase::Phase< ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "ElectionProviderMultiPhase", "CurrentPhase", vec![], [ 236u8, 101u8, 8u8, 52u8, 68u8, 240u8, 74u8, 159u8, 181u8, 53u8, 153u8, 101u8, 228u8, 81u8, 96u8, 161u8, 34u8, 67u8, 35u8, 28u8, 121u8, 44u8, 229u8, 45u8, 196u8, 87u8, 73u8, 125u8, 216u8, 245u8, 255u8, 15u8, ], ) } #[doc = " Current best solution, signed or unsigned, queued to be returned upon `elect`."] pub fn queued_solution (& self ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: pallet_election_provider_multi_phase :: ReadySolution > , :: subxt :: storage :: address :: Yes , () , () >{ ::subxt::storage::address::StaticStorageAddress::new( "ElectionProviderMultiPhase", "QueuedSolution", vec![], [ 11u8, 152u8, 13u8, 167u8, 204u8, 209u8, 171u8, 249u8, 59u8, 250u8, 58u8, 152u8, 164u8, 121u8, 146u8, 112u8, 241u8, 16u8, 159u8, 251u8, 209u8, 251u8, 114u8, 29u8, 188u8, 30u8, 84u8, 71u8, 136u8, 173u8, 145u8, 236u8, ], ) } #[doc = " Snapshot data of the round."] #[doc = ""] #[doc = " This is created at the beginning of the signed phase and cleared upon calling `elect`."] pub fn snapshot (& self ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: pallet_election_provider_multi_phase :: RoundSnapshot > , :: subxt :: storage :: address :: Yes , () , () >{ ::subxt::storage::address::StaticStorageAddress::new( "ElectionProviderMultiPhase", "Snapshot", vec![], [ 239u8, 56u8, 191u8, 77u8, 150u8, 224u8, 248u8, 88u8, 132u8, 224u8, 164u8, 83u8, 253u8, 36u8, 46u8, 156u8, 72u8, 152u8, 36u8, 206u8, 72u8, 27u8, 226u8, 87u8, 146u8, 220u8, 93u8, 178u8, 26u8, 115u8, 232u8, 71u8, ], ) } #[doc = " Desired number of targets to elect for this round."] #[doc = ""] #[doc = " Only exists when [`Snapshot`] is present."] pub fn desired_targets( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "ElectionProviderMultiPhase", "DesiredTargets", vec![], [ 16u8, 247u8, 4u8, 181u8, 93u8, 79u8, 12u8, 212u8, 146u8, 167u8, 80u8, 58u8, 118u8, 52u8, 68u8, 87u8, 90u8, 140u8, 31u8, 210u8, 2u8, 116u8, 220u8, 231u8, 115u8, 112u8, 118u8, 118u8, 68u8, 34u8, 151u8, 165u8, ], ) } #[doc = " The metadata of the [`RoundSnapshot`]"] #[doc = ""] #[doc = " Only exists when [`Snapshot`] is present."] pub fn snapshot_metadata (& self ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: pallet_election_provider_multi_phase :: SolutionOrSnapshotSize > , :: subxt :: storage :: address :: Yes , () , () >{ ::subxt::storage::address::StaticStorageAddress::new( "ElectionProviderMultiPhase", "SnapshotMetadata", vec![], [ 135u8, 122u8, 60u8, 75u8, 194u8, 240u8, 187u8, 96u8, 240u8, 203u8, 192u8, 22u8, 117u8, 148u8, 118u8, 24u8, 240u8, 213u8, 94u8, 22u8, 194u8, 47u8, 181u8, 245u8, 77u8, 149u8, 11u8, 251u8, 117u8, 220u8, 205u8, 78u8, ], ) } #[doc = " The next index to be assigned to an incoming signed submission."] #[doc = ""] #[doc = " Every accepted submission is assigned a unique index; that index is bound to that particular"] #[doc = " submission for the duration of the election. On election finalization, the next index is"] #[doc = " reset to 0."] #[doc = ""] #[doc = " We can't just use `SignedSubmissionIndices.len()`, because that's a bounded set; past its"] #[doc = " capacity, it will simply saturate. We can't just iterate over `SignedSubmissionsMap`,"] #[doc = " because iteration is slow. Instead, we store the value here."] pub fn signed_submission_next_index( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "ElectionProviderMultiPhase", "SignedSubmissionNextIndex", vec![], [ 242u8, 11u8, 157u8, 105u8, 96u8, 7u8, 31u8, 20u8, 51u8, 141u8, 182u8, 180u8, 13u8, 172u8, 155u8, 59u8, 42u8, 238u8, 115u8, 8u8, 6u8, 137u8, 45u8, 2u8, 123u8, 187u8, 53u8, 215u8, 19u8, 129u8, 54u8, 22u8, ], ) } #[doc = " A sorted, bounded vector of `(score, block_number, index)`, where each `index` points to a"] #[doc = " value in `SignedSubmissions`."] #[doc = ""] #[doc = " We never need to process more than a single signed submission at a time. Signed submissions"] #[doc = " can be quite large, so we're willing to pay the cost of multiple database accesses to access"] #[doc = " them one at a time instead of reading and decoding all of them at once."] pub fn signed_submission_indices( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( runtime_types::sp_npos_elections::ElectionScore, ::core::primitive::u32, ::core::primitive::u32, )>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "ElectionProviderMultiPhase", "SignedSubmissionIndices", vec![], [ 228u8, 166u8, 94u8, 248u8, 71u8, 26u8, 125u8, 81u8, 32u8, 22u8, 46u8, 185u8, 209u8, 123u8, 46u8, 17u8, 152u8, 149u8, 222u8, 125u8, 112u8, 230u8, 29u8, 177u8, 162u8, 214u8, 66u8, 38u8, 170u8, 121u8, 129u8, 100u8, ], ) } #[doc = " Unchecked, signed solutions."] #[doc = ""] #[doc = " Together with `SubmissionIndices`, this stores a bounded set of `SignedSubmissions` while"] #[doc = " allowing us to keep only a single one in memory at a time."] #[doc = ""] #[doc = " Twox note: the key of the map is an auto-incrementing index which users cannot inspect or"] #[doc = " affect; we shouldn't need a cryptographically secure hasher."] pub fn signed_submissions_map (& self , _0 : impl :: std :: borrow :: Borrow < :: core :: primitive :: u32 > ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: pallet_election_provider_multi_phase :: signed :: SignedSubmission < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , runtime_types :: kitchensink_runtime :: NposSolution16 > > , :: subxt :: storage :: address :: Yes , () , :: subxt :: storage :: address :: Yes >{ ::subxt::storage::address::StaticStorageAddress::new( "ElectionProviderMultiPhase", "SignedSubmissionsMap", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 84u8, 65u8, 205u8, 191u8, 143u8, 246u8, 239u8, 27u8, 243u8, 54u8, 250u8, 8u8, 125u8, 32u8, 241u8, 141u8, 210u8, 225u8, 56u8, 101u8, 241u8, 52u8, 157u8, 29u8, 13u8, 155u8, 73u8, 132u8, 118u8, 53u8, 2u8, 135u8, ], ) } #[doc = " Unchecked, signed solutions."] #[doc = ""] #[doc = " Together with `SubmissionIndices`, this stores a bounded set of `SignedSubmissions` while"] #[doc = " allowing us to keep only a single one in memory at a time."] #[doc = ""] #[doc = " Twox note: the key of the map is an auto-incrementing index which users cannot inspect or"] #[doc = " affect; we shouldn't need a cryptographically secure hasher."] pub fn signed_submissions_map_root (& self ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: pallet_election_provider_multi_phase :: signed :: SignedSubmission < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , runtime_types :: kitchensink_runtime :: NposSolution16 > > , () , () , :: subxt :: storage :: address :: Yes >{ ::subxt::storage::address::StaticStorageAddress::new( "ElectionProviderMultiPhase", "SignedSubmissionsMap", Vec::new(), [ 84u8, 65u8, 205u8, 191u8, 143u8, 246u8, 239u8, 27u8, 243u8, 54u8, 250u8, 8u8, 125u8, 32u8, 241u8, 141u8, 210u8, 225u8, 56u8, 101u8, 241u8, 52u8, 157u8, 29u8, 13u8, 155u8, 73u8, 132u8, 118u8, 53u8, 2u8, 135u8, ], ) } #[doc = " The minimum score that each 'untrusted' solution must attain in order to be considered"] #[doc = " feasible."] #[doc = ""] #[doc = " Can be set via `set_minimum_untrusted_score`."] pub fn minimum_untrusted_score( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_npos_elections::ElectionScore, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "ElectionProviderMultiPhase", "MinimumUntrustedScore", vec![], [ 77u8, 235u8, 181u8, 45u8, 230u8, 12u8, 0u8, 179u8, 152u8, 38u8, 74u8, 199u8, 47u8, 84u8, 85u8, 55u8, 171u8, 226u8, 217u8, 125u8, 17u8, 194u8, 95u8, 157u8, 73u8, 245u8, 75u8, 130u8, 248u8, 7u8, 53u8, 226u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Duration of the unsigned phase."] pub fn unsigned_phase( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "UnsignedPhase", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Duration of the signed phase."] pub fn signed_phase( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "SignedPhase", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The minimum amount of improvement to the solution score that defines a solution as"] #[doc = " \"better\" in the Signed phase."] pub fn better_signed_threshold( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_arithmetic::per_things::Perbill, >, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "BetterSignedThreshold", [ 225u8, 236u8, 95u8, 157u8, 90u8, 94u8, 106u8, 192u8, 254u8, 19u8, 87u8, 80u8, 16u8, 62u8, 42u8, 204u8, 136u8, 106u8, 225u8, 53u8, 212u8, 52u8, 177u8, 79u8, 4u8, 116u8, 201u8, 104u8, 222u8, 75u8, 86u8, 227u8, ], ) } #[doc = " The minimum amount of improvement to the solution score that defines a solution as"] #[doc = " \"better\" in the Unsigned phase."] pub fn better_unsigned_threshold( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_arithmetic::per_things::Perbill, >, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "BetterUnsignedThreshold", [ 225u8, 236u8, 95u8, 157u8, 90u8, 94u8, 106u8, 192u8, 254u8, 19u8, 87u8, 80u8, 16u8, 62u8, 42u8, 204u8, 136u8, 106u8, 225u8, 53u8, 212u8, 52u8, 177u8, 79u8, 4u8, 116u8, 201u8, 104u8, 222u8, 75u8, 86u8, 227u8, ], ) } #[doc = " The repeat threshold of the offchain worker."] #[doc = ""] #[doc = " For example, if it is 5, that means that at least 5 blocks will elapse between attempts"] #[doc = " to submit the worker's solution."] pub fn offchain_repeat( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "OffchainRepeat", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The priority of the unsigned transaction submitted in the unsigned-phase"] pub fn miner_tx_priority( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u64>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "MinerTxPriority", [ 128u8, 214u8, 205u8, 242u8, 181u8, 142u8, 124u8, 231u8, 190u8, 146u8, 59u8, 226u8, 157u8, 101u8, 103u8, 117u8, 249u8, 65u8, 18u8, 191u8, 103u8, 119u8, 53u8, 85u8, 81u8, 96u8, 220u8, 42u8, 184u8, 239u8, 42u8, 246u8, ], ) } #[doc = " Maximum number of signed submissions that can be queued."] #[doc = ""] #[doc = " It is best to avoid adjusting this during an election, as it impacts downstream data"] #[doc = " structures. In particular, `SignedSubmissionIndices` is bounded on this value. If you"] #[doc = " update this value during an election, you _must_ ensure that"] #[doc = " `SignedSubmissionIndices.len()` is less than or equal to the new value. Otherwise,"] #[doc = " attempts to submit new solutions may cause a runtime panic."] pub fn signed_max_submissions( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "SignedMaxSubmissions", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Maximum weight of a signed solution."] #[doc = ""] #[doc = " If [`Config::MinerConfig`] is being implemented to submit signed solutions (outside of"] #[doc = " this pallet), then [`MinerConfig::solution_weight`] is used to compare against"] #[doc = " this value."] pub fn signed_max_weight( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_weights::weight_v2::Weight, >, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "SignedMaxWeight", [ 206u8, 61u8, 253u8, 247u8, 163u8, 40u8, 161u8, 52u8, 134u8, 140u8, 206u8, 83u8, 44u8, 166u8, 226u8, 115u8, 181u8, 14u8, 227u8, 130u8, 210u8, 32u8, 85u8, 29u8, 230u8, 97u8, 130u8, 165u8, 147u8, 134u8, 106u8, 76u8, ], ) } #[doc = " The maximum amount of unchecked solutions to refund the call fee for."] pub fn signed_max_refunds( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "SignedMaxRefunds", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Base reward for a signed solution"] pub fn signed_reward_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "SignedRewardBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " Base deposit for a signed solution."] pub fn signed_deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "SignedDepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " Per-byte deposit for a signed solution."] pub fn signed_deposit_byte( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "SignedDepositByte", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " Per-weight deposit for a signed solution."] pub fn signed_deposit_weight( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "SignedDepositWeight", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The maximum number of electing voters to put in the snapshot. At the moment, snapshots"] #[doc = " are only over a single block, but once multi-block elections are introduced they will"] #[doc = " take place over multiple blocks."] pub fn max_electing_voters( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "MaxElectingVoters", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of electable targets to put in the snapshot."] pub fn max_electable_targets( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u16>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "MaxElectableTargets", [ 116u8, 33u8, 2u8, 170u8, 181u8, 147u8, 171u8, 169u8, 167u8, 227u8, 41u8, 144u8, 11u8, 236u8, 82u8, 100u8, 74u8, 60u8, 184u8, 72u8, 169u8, 90u8, 208u8, 135u8, 15u8, 117u8, 10u8, 123u8, 128u8, 193u8, 29u8, 70u8, ], ) } #[doc = " The maximum number of winners that can be elected by this `ElectionProvider`"] #[doc = " implementation."] #[doc = ""] #[doc = " Note: This must always be greater or equal to `T::DataProvider::desired_targets()`."] pub fn max_winners( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "MaxWinners", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } pub fn miner_max_length( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "MinerMaxLength", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } pub fn miner_max_weight( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_weights::weight_v2::Weight, >, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "MinerMaxWeight", [ 206u8, 61u8, 253u8, 247u8, 163u8, 40u8, 161u8, 52u8, 134u8, 140u8, 206u8, 83u8, 44u8, 166u8, 226u8, 115u8, 181u8, 14u8, 227u8, 130u8, 210u8, 32u8, 85u8, 29u8, 230u8, 97u8, 130u8, 165u8, 147u8, 134u8, 106u8, 76u8, ], ) } pub fn miner_max_votes_per_voter( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ElectionProviderMultiPhase", "MinerMaxVotesPerVoter", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod staking { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Bond { pub controller: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub value: ::core::primitive::u128, pub payee: runtime_types::pallet_staking::RewardDestination< ::subxt::utils::AccountId32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BondExtra { #[codec(compact)] pub max_additional: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Unbond { #[codec(compact)] pub value: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct WithdrawUnbonded { pub num_slashing_spans: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Validate { pub prefs: runtime_types::pallet_staking::ValidatorPrefs, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Nominate { pub targets: ::std::vec::Vec< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Chill; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetPayee { pub payee: runtime_types::pallet_staking::RewardDestination< ::subxt::utils::AccountId32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetController { pub controller: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetValidatorCount { #[codec(compact)] pub new: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct IncreaseValidatorCount { #[codec(compact)] pub additional: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ScaleValidatorCount { pub factor: runtime_types::sp_arithmetic::per_things::Percent, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceNoEras; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceNewEra; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetInvulnerables { pub invulnerables: ::std::vec::Vec<::subxt::utils::AccountId32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceUnstake { pub stash: ::subxt::utils::AccountId32, pub num_slashing_spans: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceNewEraAlways; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelDeferredSlash { pub era: ::core::primitive::u32, pub slash_indices: ::std::vec::Vec<::core::primitive::u32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PayoutStakers { pub validator_stash: ::subxt::utils::AccountId32, pub era: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Rebond { #[codec(compact)] pub value: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReapStash { pub stash: ::subxt::utils::AccountId32, pub num_slashing_spans: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Kick { pub who: ::std::vec::Vec< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetStakingConfigs { pub min_nominator_bond: runtime_types::pallet_staking::pallet::pallet::ConfigOp< ::core::primitive::u128, >, pub min_validator_bond: runtime_types::pallet_staking::pallet::pallet::ConfigOp< ::core::primitive::u128, >, pub max_nominator_count: runtime_types::pallet_staking::pallet::pallet::ConfigOp< ::core::primitive::u32, >, pub max_validator_count: runtime_types::pallet_staking::pallet::pallet::ConfigOp< ::core::primitive::u32, >, pub chill_threshold: runtime_types::pallet_staking::pallet::pallet::ConfigOp< runtime_types::sp_arithmetic::per_things::Percent, >, pub min_commission: runtime_types::pallet_staking::pallet::pallet::ConfigOp< runtime_types::sp_arithmetic::per_things::Perbill, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ChillOther { pub controller: ::subxt::utils::AccountId32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceApplyMinCommission { pub validator_stash: ::subxt::utils::AccountId32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetMinCommission { pub new: runtime_types::sp_arithmetic::per_things::Perbill, } pub struct TransactionApi; impl TransactionApi { #[doc = "Take the origin account as a stash and lock up `value` of its balance. `controller` will"] #[doc = "be the account that controls it."] #[doc = ""] #[doc = "`value` must be more than the `minimum_balance` specified by `T::Currency`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the stash account."] #[doc = ""] #[doc = "Emits `Bonded`."] #[doc = "# "] #[doc = "- Independent of the arguments. Moderate complexity."] #[doc = "- O(1)."] #[doc = "- Three extra DB entries."] #[doc = ""] #[doc = "NOTE: Two of the storage writes (`Self::bonded`, `Self::payee`) are _never_ cleaned"] #[doc = "unless the `origin` falls below _existential deposit_ and gets removed as dust."] #[doc = "------------------"] #[doc = "# "] pub fn bond( &self, controller: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, value: ::core::primitive::u128, payee: runtime_types::pallet_staking::RewardDestination< ::subxt::utils::AccountId32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "bond", Bond { controller, value, payee, }, [ 140u8, 13u8, 108u8, 181u8, 212u8, 177u8, 190u8, 212u8, 163u8, 40u8, 120u8, 232u8, 126u8, 213u8, 6u8, 181u8, 99u8, 252u8, 58u8, 54u8, 139u8, 64u8, 67u8, 76u8, 53u8, 226u8, 11u8, 133u8, 235u8, 159u8, 103u8, 210u8, ], ) } #[doc = "Add some extra amount that have appeared in the stash `free_balance` into the balance up"] #[doc = "for staking."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the stash, not the controller."] #[doc = ""] #[doc = "Use this if there are additional funds in your stash account that you wish to bond."] #[doc = "Unlike [`bond`](Self::bond) or [`unbond`](Self::unbond) this function does not impose"] #[doc = "any limitation on the amount that can be added."] #[doc = ""] #[doc = "Emits `Bonded`."] #[doc = ""] #[doc = "# "] #[doc = "- Independent of the arguments. Insignificant complexity."] #[doc = "- O(1)."] #[doc = "# "] pub fn bond_extra( &self, max_additional: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "bond_extra", BondExtra { max_additional }, [ 60u8, 45u8, 82u8, 223u8, 113u8, 95u8, 0u8, 71u8, 59u8, 108u8, 228u8, 9u8, 95u8, 210u8, 113u8, 106u8, 252u8, 15u8, 19u8, 128u8, 11u8, 187u8, 4u8, 151u8, 103u8, 143u8, 24u8, 33u8, 149u8, 82u8, 35u8, 192u8, ], ) } #[doc = "Schedule a portion of the stash to be unlocked ready for transfer out after the bond"] #[doc = "period ends. If this leaves an amount actively bonded less than"] #[doc = "T::Currency::minimum_balance(), then it is increased to the full amount."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] #[doc = ""] #[doc = "Once the unlock period is done, you can call `withdraw_unbonded` to actually move"] #[doc = "the funds out of management ready for transfer."] #[doc = ""] #[doc = "No more than a limited number of unlocking chunks (see `MaxUnlockingChunks`)"] #[doc = "can co-exists at the same time. If there are no unlocking chunks slots available"] #[doc = "[`Call::withdraw_unbonded`] is called to remove some of the chunks (if possible)."] #[doc = ""] #[doc = "If a user encounters the `InsufficientBond` error when calling this extrinsic,"] #[doc = "they should call `chill` first in order to free up their bonded funds."] #[doc = ""] #[doc = "Emits `Unbonded`."] #[doc = ""] #[doc = "See also [`Call::withdraw_unbonded`]."] pub fn unbond( &self, value: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "unbond", Unbond { value }, [ 85u8, 62u8, 34u8, 127u8, 60u8, 241u8, 134u8, 60u8, 125u8, 91u8, 31u8, 193u8, 50u8, 230u8, 237u8, 42u8, 114u8, 230u8, 240u8, 146u8, 14u8, 109u8, 185u8, 151u8, 148u8, 44u8, 147u8, 182u8, 192u8, 253u8, 51u8, 87u8, ], ) } #[doc = "Remove any unlocked chunks from the `unlocking` queue from our management."] #[doc = ""] #[doc = "This essentially frees up that balance to be used by the stash account to do"] #[doc = "whatever it wants."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller."] #[doc = ""] #[doc = "Emits `Withdrawn`."] #[doc = ""] #[doc = "See also [`Call::unbond`]."] #[doc = ""] #[doc = "# "] #[doc = "Complexity O(S) where S is the number of slashing spans to remove"] #[doc = "NOTE: Weight annotation is the kill scenario, we refund otherwise."] #[doc = "# "] pub fn withdraw_unbonded( &self, num_slashing_spans: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "withdraw_unbonded", WithdrawUnbonded { num_slashing_spans }, [ 95u8, 223u8, 122u8, 217u8, 76u8, 208u8, 86u8, 129u8, 31u8, 104u8, 70u8, 154u8, 23u8, 250u8, 165u8, 192u8, 149u8, 249u8, 158u8, 159u8, 194u8, 224u8, 118u8, 134u8, 204u8, 157u8, 72u8, 136u8, 19u8, 193u8, 183u8, 84u8, ], ) } #[doc = "Declare the desire to validate for the origin controller."] #[doc = ""] #[doc = "Effects will be felt at the beginning of the next era."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] pub fn validate( &self, prefs: runtime_types::pallet_staking::ValidatorPrefs, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "validate", Validate { prefs }, [ 191u8, 116u8, 139u8, 35u8, 250u8, 211u8, 86u8, 240u8, 35u8, 9u8, 19u8, 44u8, 148u8, 35u8, 91u8, 106u8, 200u8, 172u8, 108u8, 145u8, 194u8, 146u8, 61u8, 145u8, 233u8, 168u8, 2u8, 26u8, 145u8, 101u8, 114u8, 157u8, ], ) } #[doc = "Declare the desire to nominate `targets` for the origin controller."] #[doc = ""] #[doc = "Effects will be felt at the beginning of the next era."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] #[doc = ""] #[doc = "# "] #[doc = "- The transaction's complexity is proportional to the size of `targets` (N)"] #[doc = "which is capped at CompactAssignments::LIMIT (T::MaxNominations)."] #[doc = "- Both the reads and writes follow a similar pattern."] #[doc = "# "] pub fn nominate( &self, targets: ::std::vec::Vec< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "nominate", Nominate { targets }, [ 249u8, 66u8, 140u8, 39u8, 26u8, 221u8, 135u8, 225u8, 98u8, 255u8, 13u8, 54u8, 106u8, 215u8, 129u8, 156u8, 190u8, 83u8, 178u8, 170u8, 116u8, 27u8, 8u8, 244u8, 56u8, 73u8, 164u8, 223u8, 199u8, 115u8, 168u8, 83u8, ], ) } #[doc = "Declare no desire to either validate or nominate."] #[doc = ""] #[doc = "Effects will be felt at the beginning of the next era."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] #[doc = ""] #[doc = "# "] #[doc = "- Independent of the arguments. Insignificant complexity."] #[doc = "- Contains one read."] #[doc = "- Writes are limited to the `origin` account key."] #[doc = "# "] pub fn chill(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "chill", Chill {}, [ 94u8, 20u8, 196u8, 31u8, 220u8, 125u8, 115u8, 167u8, 140u8, 3u8, 20u8, 132u8, 81u8, 120u8, 215u8, 166u8, 230u8, 56u8, 16u8, 222u8, 31u8, 153u8, 120u8, 62u8, 153u8, 67u8, 220u8, 239u8, 11u8, 234u8, 127u8, 122u8, ], ) } #[doc = "(Re-)set the payment target for a controller."] #[doc = ""] #[doc = "Effects will be felt instantly (as soon as this function is completed successfully)."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] #[doc = ""] #[doc = "# "] #[doc = "- Independent of the arguments. Insignificant complexity."] #[doc = "- Contains a limited number of reads."] #[doc = "- Writes are limited to the `origin` account key."] #[doc = "---------"] #[doc = "- Weight: O(1)"] #[doc = "- DB Weight:"] #[doc = " - Read: Ledger"] #[doc = " - Write: Payee"] #[doc = "# "] pub fn set_payee( &self, payee: runtime_types::pallet_staking::RewardDestination< ::subxt::utils::AccountId32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "set_payee", SetPayee { payee }, [ 96u8, 8u8, 254u8, 164u8, 87u8, 46u8, 120u8, 11u8, 197u8, 63u8, 20u8, 178u8, 167u8, 236u8, 149u8, 245u8, 14u8, 171u8, 108u8, 195u8, 250u8, 133u8, 0u8, 75u8, 192u8, 159u8, 84u8, 220u8, 242u8, 133u8, 60u8, 62u8, ], ) } #[doc = "(Re-)set the controller of a stash."] #[doc = ""] #[doc = "Effects will be felt instantly (as soon as this function is completed successfully)."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the stash, not the controller."] #[doc = ""] #[doc = "# "] #[doc = "- Independent of the arguments. Insignificant complexity."] #[doc = "- Contains a limited number of reads."] #[doc = "- Writes are limited to the `origin` account key."] #[doc = "----------"] #[doc = "Weight: O(1)"] #[doc = "DB Weight:"] #[doc = "- Read: Bonded, Ledger New Controller, Ledger Old Controller"] #[doc = "- Write: Bonded, Ledger New Controller, Ledger Old Controller"] #[doc = "# "] pub fn set_controller( &self, controller: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "set_controller", SetController { controller }, [ 154u8, 80u8, 184u8, 176u8, 74u8, 106u8, 72u8, 242u8, 64u8, 81u8, 169u8, 157u8, 200u8, 97u8, 117u8, 192u8, 143u8, 166u8, 38u8, 235u8, 75u8, 161u8, 177u8, 229u8, 229u8, 82u8, 95u8, 39u8, 40u8, 116u8, 9u8, 204u8, ], ) } #[doc = "Sets the ideal number of validators."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# "] #[doc = "Weight: O(1)"] #[doc = "Write: Validator Count"] #[doc = "# "] pub fn set_validator_count( &self, new: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "set_validator_count", SetValidatorCount { new }, [ 55u8, 232u8, 95u8, 66u8, 228u8, 217u8, 11u8, 27u8, 3u8, 202u8, 199u8, 242u8, 70u8, 160u8, 250u8, 187u8, 194u8, 91u8, 15u8, 36u8, 215u8, 36u8, 160u8, 108u8, 251u8, 60u8, 240u8, 202u8, 249u8, 235u8, 28u8, 94u8, ], ) } #[doc = "Increments the ideal number of validators upto maximum of"] #[doc = "`ElectionProviderBase::MaxWinners`."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# "] #[doc = "Same as [`Self::set_validator_count`]."] #[doc = "# "] pub fn increase_validator_count( &self, additional: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "increase_validator_count", IncreaseValidatorCount { additional }, [ 239u8, 184u8, 155u8, 213u8, 25u8, 22u8, 193u8, 13u8, 102u8, 192u8, 82u8, 153u8, 249u8, 192u8, 60u8, 158u8, 8u8, 78u8, 175u8, 219u8, 46u8, 51u8, 222u8, 193u8, 193u8, 201u8, 78u8, 90u8, 58u8, 86u8, 196u8, 17u8, ], ) } #[doc = "Scale up the ideal number of validators by a factor upto maximum of"] #[doc = "`ElectionProviderBase::MaxWinners`."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# "] #[doc = "Same as [`Self::set_validator_count`]."] #[doc = "# "] pub fn scale_validator_count( &self, factor: runtime_types::sp_arithmetic::per_things::Percent, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "scale_validator_count", ScaleValidatorCount { factor }, [ 198u8, 68u8, 227u8, 94u8, 110u8, 157u8, 209u8, 217u8, 112u8, 37u8, 78u8, 142u8, 12u8, 193u8, 219u8, 167u8, 149u8, 112u8, 49u8, 139u8, 74u8, 81u8, 172u8, 72u8, 253u8, 224u8, 56u8, 194u8, 185u8, 90u8, 87u8, 125u8, ], ) } #[doc = "Force there to be no new eras indefinitely."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# Warning"] #[doc = ""] #[doc = "The election process starts multiple blocks before the end of the era."] #[doc = "Thus the election process may be ongoing when this is called. In this case the"] #[doc = "election will continue until the next era is triggered."] #[doc = ""] #[doc = "# "] #[doc = "- No arguments."] #[doc = "- Weight: O(1)"] #[doc = "- Write: ForceEra"] #[doc = "# "] pub fn force_no_eras(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "force_no_eras", ForceNoEras {}, [ 16u8, 81u8, 207u8, 168u8, 23u8, 236u8, 11u8, 75u8, 141u8, 107u8, 92u8, 2u8, 53u8, 111u8, 252u8, 116u8, 91u8, 120u8, 75u8, 24u8, 125u8, 53u8, 9u8, 28u8, 242u8, 87u8, 245u8, 55u8, 40u8, 103u8, 151u8, 178u8, ], ) } #[doc = "Force there to be a new era at the end of the next session. After this, it will be"] #[doc = "reset to normal (non-forced) behaviour."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# Warning"] #[doc = ""] #[doc = "The election process starts multiple blocks before the end of the era."] #[doc = "If this is called just before a new era is triggered, the election process may not"] #[doc = "have enough blocks to get a result."] #[doc = ""] #[doc = "# "] #[doc = "- No arguments."] #[doc = "- Weight: O(1)"] #[doc = "- Write ForceEra"] #[doc = "# "] pub fn force_new_era(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "force_new_era", ForceNewEra {}, [ 230u8, 242u8, 169u8, 196u8, 78u8, 145u8, 24u8, 191u8, 113u8, 68u8, 5u8, 138u8, 48u8, 51u8, 109u8, 126u8, 73u8, 136u8, 162u8, 158u8, 174u8, 201u8, 213u8, 230u8, 215u8, 44u8, 200u8, 32u8, 75u8, 27u8, 23u8, 254u8, ], ) } #[doc = "Set the validators who cannot be slashed (if any)."] #[doc = ""] #[doc = "The dispatch origin must be Root."] pub fn set_invulnerables( &self, invulnerables: ::std::vec::Vec<::subxt::utils::AccountId32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "set_invulnerables", SetInvulnerables { invulnerables }, [ 2u8, 148u8, 221u8, 111u8, 153u8, 48u8, 222u8, 36u8, 228u8, 84u8, 18u8, 35u8, 168u8, 239u8, 53u8, 245u8, 27u8, 76u8, 18u8, 203u8, 206u8, 9u8, 8u8, 81u8, 35u8, 224u8, 22u8, 133u8, 58u8, 99u8, 103u8, 39u8, ], ) } #[doc = "Force a current staker to become completely unstaked, immediately."] #[doc = ""] #[doc = "The dispatch origin must be Root."] pub fn force_unstake( &self, stash: ::subxt::utils::AccountId32, num_slashing_spans: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "force_unstake", ForceUnstake { stash, num_slashing_spans, }, [ 94u8, 247u8, 238u8, 47u8, 250u8, 6u8, 96u8, 175u8, 173u8, 123u8, 161u8, 187u8, 162u8, 214u8, 176u8, 233u8, 33u8, 33u8, 167u8, 239u8, 40u8, 223u8, 19u8, 131u8, 230u8, 39u8, 175u8, 200u8, 36u8, 182u8, 76u8, 207u8, ], ) } #[doc = "Force there to be a new era at the end of sessions indefinitely."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# Warning"] #[doc = ""] #[doc = "The election process starts multiple blocks before the end of the era."] #[doc = "If this is called just before a new era is triggered, the election process may not"] #[doc = "have enough blocks to get a result."] pub fn force_new_era_always( &self, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "force_new_era_always", ForceNewEraAlways {}, [ 179u8, 118u8, 189u8, 54u8, 248u8, 141u8, 207u8, 142u8, 80u8, 37u8, 241u8, 185u8, 138u8, 254u8, 117u8, 147u8, 225u8, 118u8, 34u8, 177u8, 197u8, 158u8, 8u8, 82u8, 202u8, 108u8, 208u8, 26u8, 64u8, 33u8, 74u8, 43u8, ], ) } #[doc = "Cancel enactment of a deferred slash."] #[doc = ""] #[doc = "Can be called by the `T::AdminOrigin`."] #[doc = ""] #[doc = "Parameters: era and indices of the slashes for that era to kill."] pub fn cancel_deferred_slash( &self, era: ::core::primitive::u32, slash_indices: ::std::vec::Vec<::core::primitive::u32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "cancel_deferred_slash", CancelDeferredSlash { era, slash_indices }, [ 120u8, 57u8, 162u8, 105u8, 91u8, 250u8, 129u8, 240u8, 110u8, 234u8, 170u8, 98u8, 164u8, 65u8, 106u8, 101u8, 19u8, 88u8, 146u8, 210u8, 171u8, 44u8, 37u8, 50u8, 65u8, 178u8, 37u8, 223u8, 239u8, 197u8, 116u8, 168u8, ], ) } #[doc = "Pay out all the stakers behind a single validator for a single era."] #[doc = ""] #[doc = "- `validator_stash` is the stash account of the validator. Their nominators, up to"] #[doc = " `T::MaxNominatorRewardedPerValidator`, will also receive their rewards."] #[doc = "- `era` may be any era between `[current_era - history_depth; current_era]`."] #[doc = ""] #[doc = "The origin of this call must be _Signed_. Any account can call this function, even if"] #[doc = "it is not one of the stakers."] #[doc = ""] #[doc = "# "] #[doc = "- Time complexity: at most O(MaxNominatorRewardedPerValidator)."] #[doc = "- Contains a limited number of reads and writes."] #[doc = "-----------"] #[doc = "N is the Number of payouts for the validator (including the validator)"] #[doc = "Weight:"] #[doc = "- Reward Destination Staked: O(N)"] #[doc = "- Reward Destination Controller (Creating): O(N)"] #[doc = ""] #[doc = " NOTE: weights are assuming that payouts are made to alive stash account (Staked)."] #[doc = " Paying even a dead controller is cheaper weight-wise. We don't do any refunds here."] #[doc = "# "] pub fn payout_stakers( &self, validator_stash: ::subxt::utils::AccountId32, era: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "payout_stakers", PayoutStakers { validator_stash, era, }, [ 184u8, 194u8, 33u8, 118u8, 7u8, 203u8, 89u8, 119u8, 214u8, 76u8, 178u8, 20u8, 82u8, 111u8, 57u8, 132u8, 212u8, 43u8, 232u8, 91u8, 252u8, 49u8, 42u8, 115u8, 1u8, 181u8, 154u8, 207u8, 144u8, 206u8, 205u8, 33u8, ], ) } #[doc = "Rebond a portion of the stash scheduled to be unlocked."] #[doc = ""] #[doc = "The dispatch origin must be signed by the controller."] #[doc = ""] #[doc = "# "] #[doc = "- Time complexity: O(L), where L is unlocking chunks"] #[doc = "- Bounded by `MaxUnlockingChunks`."] #[doc = "- Storage changes: Can't increase storage, only decrease it."] #[doc = "# "] pub fn rebond( &self, value: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "rebond", Rebond { value }, [ 25u8, 22u8, 191u8, 172u8, 133u8, 101u8, 139u8, 102u8, 134u8, 16u8, 136u8, 56u8, 137u8, 162u8, 4u8, 253u8, 196u8, 30u8, 234u8, 49u8, 102u8, 68u8, 145u8, 96u8, 148u8, 219u8, 162u8, 17u8, 177u8, 184u8, 34u8, 113u8, ], ) } #[doc = "Remove all data structures concerning a staker/stash once it is at a state where it can"] #[doc = "be considered `dust` in the staking system. The requirements are:"] #[doc = ""] #[doc = "1. the `total_balance` of the stash is below existential deposit."] #[doc = "2. or, the `ledger.total` of the stash is below existential deposit."] #[doc = ""] #[doc = "The former can happen in cases like a slash; the latter when a fully unbonded account"] #[doc = "is still receiving staking rewards in `RewardDestination::Staked`."] #[doc = ""] #[doc = "It can be called by anyone, as long as `stash` meets the above requirements."] #[doc = ""] #[doc = "Refunds the transaction fees upon successful execution."] pub fn reap_stash( &self, stash: ::subxt::utils::AccountId32, num_slashing_spans: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "reap_stash", ReapStash { stash, num_slashing_spans, }, [ 34u8, 168u8, 120u8, 161u8, 95u8, 199u8, 106u8, 233u8, 61u8, 240u8, 166u8, 31u8, 183u8, 165u8, 158u8, 179u8, 32u8, 130u8, 27u8, 164u8, 112u8, 44u8, 14u8, 125u8, 227u8, 87u8, 70u8, 203u8, 194u8, 24u8, 212u8, 177u8, ], ) } #[doc = "Remove the given nominations from the calling validator."] #[doc = ""] #[doc = "Effects will be felt at the beginning of the next era."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] #[doc = ""] #[doc = "- `who`: A list of nominator stash accounts who are nominating this validator which"] #[doc = " should no longer be nominating this validator."] #[doc = ""] #[doc = "Note: Making this call only makes sense if you first set the validator preferences to"] #[doc = "block any further nominations."] pub fn kick( &self, who: ::std::vec::Vec< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "kick", Kick { who }, [ 94u8, 27u8, 18u8, 16u8, 126u8, 129u8, 47u8, 169u8, 114u8, 84u8, 48u8, 95u8, 235u8, 237u8, 33u8, 118u8, 115u8, 243u8, 166u8, 120u8, 121u8, 70u8, 227u8, 240u8, 205u8, 240u8, 211u8, 202u8, 251u8, 232u8, 209u8, 12u8, ], ) } #[doc = "Update the various staking configurations ."] #[doc = ""] #[doc = "* `min_nominator_bond`: The minimum active bond needed to be a nominator."] #[doc = "* `min_validator_bond`: The minimum active bond needed to be a validator."] #[doc = "* `max_nominator_count`: The max number of users who can be a nominator at once. When"] #[doc = " set to `None`, no limit is enforced."] #[doc = "* `max_validator_count`: The max number of users who can be a validator at once. When"] #[doc = " set to `None`, no limit is enforced."] #[doc = "* `chill_threshold`: The ratio of `max_nominator_count` or `max_validator_count` which"] #[doc = " should be filled in order for the `chill_other` transaction to work."] #[doc = "* `min_commission`: The minimum amount of commission that each validators must maintain."] #[doc = " This is checked only upon calling `validate`. Existing validators are not affected."] #[doc = ""] #[doc = "RuntimeOrigin must be Root to call this function."] #[doc = ""] #[doc = "NOTE: Existing nominators and validators will not be affected by this update."] #[doc = "to kick people under the new limits, `chill_other` should be called."] pub fn set_staking_configs( &self, min_nominator_bond : runtime_types :: pallet_staking :: pallet :: pallet :: ConfigOp < :: core :: primitive :: u128 >, min_validator_bond : runtime_types :: pallet_staking :: pallet :: pallet :: ConfigOp < :: core :: primitive :: u128 >, max_nominator_count : runtime_types :: pallet_staking :: pallet :: pallet :: ConfigOp < :: core :: primitive :: u32 >, max_validator_count : runtime_types :: pallet_staking :: pallet :: pallet :: ConfigOp < :: core :: primitive :: u32 >, chill_threshold : runtime_types :: pallet_staking :: pallet :: pallet :: ConfigOp < runtime_types :: sp_arithmetic :: per_things :: Percent >, min_commission : runtime_types :: pallet_staking :: pallet :: pallet :: ConfigOp < runtime_types :: sp_arithmetic :: per_things :: Perbill >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "set_staking_configs", SetStakingConfigs { min_nominator_bond, min_validator_bond, max_nominator_count, max_validator_count, chill_threshold, min_commission, }, [ 176u8, 168u8, 155u8, 176u8, 27u8, 79u8, 223u8, 92u8, 88u8, 93u8, 223u8, 69u8, 179u8, 250u8, 138u8, 138u8, 87u8, 220u8, 36u8, 3u8, 126u8, 213u8, 16u8, 68u8, 3u8, 16u8, 218u8, 151u8, 98u8, 169u8, 217u8, 75u8, ], ) } #[doc = "Declare a `controller` to stop participating as either a validator or nominator."] #[doc = ""] #[doc = "Effects will be felt at the beginning of the next era."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_, but can be called by anyone."] #[doc = ""] #[doc = "If the caller is the same as the controller being targeted, then no further checks are"] #[doc = "enforced, and this function behaves just like `chill`."] #[doc = ""] #[doc = "If the caller is different than the controller being targeted, the following conditions"] #[doc = "must be met:"] #[doc = ""] #[doc = "* `controller` must belong to a nominator who has become non-decodable,"] #[doc = ""] #[doc = "Or:"] #[doc = ""] #[doc = "* A `ChillThreshold` must be set and checked which defines how close to the max"] #[doc = " nominators or validators we must reach before users can start chilling one-another."] #[doc = "* A `MaxNominatorCount` and `MaxValidatorCount` must be set which is used to determine"] #[doc = " how close we are to the threshold."] #[doc = "* A `MinNominatorBond` and `MinValidatorBond` must be set and checked, which determines"] #[doc = " if this is a person that should be chilled because they have not met the threshold"] #[doc = " bond required."] #[doc = ""] #[doc = "This can be helpful if bond requirements are updated, and we need to remove old users"] #[doc = "who do not satisfy these requirements."] pub fn chill_other( &self, controller: ::subxt::utils::AccountId32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "chill_other", ChillOther { controller }, [ 140u8, 98u8, 4u8, 203u8, 91u8, 131u8, 123u8, 119u8, 169u8, 47u8, 188u8, 23u8, 205u8, 170u8, 82u8, 220u8, 166u8, 170u8, 135u8, 176u8, 68u8, 228u8, 14u8, 67u8, 42u8, 52u8, 140u8, 231u8, 62u8, 167u8, 80u8, 173u8, ], ) } #[doc = "Force a validator to have at least the minimum commission. This will not affect a"] #[doc = "validator who already has a commission greater than or equal to the minimum. Any account"] #[doc = "can call this."] pub fn force_apply_min_commission( &self, validator_stash: ::subxt::utils::AccountId32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "force_apply_min_commission", ForceApplyMinCommission { validator_stash }, [ 136u8, 163u8, 85u8, 134u8, 240u8, 247u8, 183u8, 227u8, 226u8, 202u8, 102u8, 186u8, 138u8, 119u8, 78u8, 123u8, 229u8, 135u8, 129u8, 241u8, 119u8, 106u8, 41u8, 182u8, 121u8, 181u8, 242u8, 175u8, 74u8, 207u8, 64u8, 106u8, ], ) } #[doc = "Sets the minimum amount of commission that each validators must maintain."] #[doc = ""] #[doc = "This call has lower privilege requirements than `set_staking_config` and can be called"] #[doc = "by the `T::AdminOrigin`. Root can always call this."] pub fn set_min_commission( &self, new: runtime_types::sp_arithmetic::per_things::Perbill, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Staking", "set_min_commission", SetMinCommission { new }, [ 62u8, 139u8, 175u8, 245u8, 212u8, 113u8, 117u8, 130u8, 191u8, 173u8, 78u8, 97u8, 19u8, 104u8, 185u8, 207u8, 201u8, 14u8, 200u8, 208u8, 184u8, 195u8, 242u8, 175u8, 158u8, 156u8, 51u8, 58u8, 118u8, 154u8, 68u8, 221u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_staking::pallet::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The era payout has been set; the first balance is the validator-payout; the second is"] #[doc = "the remainder from the maximum amount of reward."] pub struct EraPaid { pub era_index: ::core::primitive::u32, pub validator_payout: ::core::primitive::u128, pub remainder: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for EraPaid { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "EraPaid"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The nominator has been rewarded by this amount."] pub struct Rewarded { pub stash: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Rewarded { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "Rewarded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A staker (validator or nominator) has been slashed by the given amount."] pub struct Slashed { pub staker: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Slashed { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "Slashed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A slash for the given validator, for the given percentage of their stake, at the given"] #[doc = "era as been reported."] pub struct SlashReported { pub validator: ::subxt::utils::AccountId32, pub fraction: runtime_types::sp_arithmetic::per_things::Perbill, pub slash_era: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for SlashReported { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "SlashReported"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An old slashing report from a prior era was discarded because it could"] #[doc = "not be processed."] pub struct OldSlashingReportDiscarded { pub session_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for OldSlashingReportDiscarded { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "OldSlashingReportDiscarded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new set of stakers was elected."] pub struct StakersElected; impl ::subxt::events::StaticEvent for StakersElected { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "StakersElected"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has bonded this amount. \\[stash, amount\\]"] #[doc = ""] #[doc = "NOTE: This event is only emitted when funds are bonded via a dispatchable. Notably,"] #[doc = "it will not be emitted for staking rewards when they are added to stake."] pub struct Bonded { pub stash: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Bonded { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "Bonded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has unbonded this amount."] pub struct Unbonded { pub stash: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Unbonded { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "Unbonded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has called `withdraw_unbonded` and removed unbonding chunks worth `Balance`"] #[doc = "from the unlocking queue."] pub struct Withdrawn { pub stash: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Withdrawn { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "Withdrawn"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A nominator has been kicked from a validator."] pub struct Kicked { pub nominator: ::subxt::utils::AccountId32, pub stash: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Kicked { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "Kicked"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The election failed. No new era is planned."] pub struct StakingElectionFailed; impl ::subxt::events::StaticEvent for StakingElectionFailed { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "StakingElectionFailed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has stopped participating as either a validator or nominator."] pub struct Chilled { pub stash: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Chilled { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "Chilled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The stakers' rewards are getting paid."] pub struct PayoutStarted { pub era_index: ::core::primitive::u32, pub validator_stash: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for PayoutStarted { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "PayoutStarted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A validator has set their preferences."] pub struct ValidatorPrefsSet { pub stash: ::subxt::utils::AccountId32, pub prefs: runtime_types::pallet_staking::ValidatorPrefs, } impl ::subxt::events::StaticEvent for ValidatorPrefsSet { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "ValidatorPrefsSet"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new force era mode was set."] pub struct ForceEra { pub mode: runtime_types::pallet_staking::Forcing, } impl ::subxt::events::StaticEvent for ForceEra { const PALLET: &'static str = "Staking"; const EVENT: &'static str = "ForceEra"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The ideal number of active validators."] pub fn validator_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ValidatorCount", vec![], [ 245u8, 75u8, 214u8, 110u8, 66u8, 164u8, 86u8, 206u8, 69u8, 89u8, 12u8, 111u8, 117u8, 16u8, 228u8, 184u8, 207u8, 6u8, 0u8, 126u8, 221u8, 67u8, 125u8, 218u8, 188u8, 245u8, 156u8, 188u8, 34u8, 85u8, 208u8, 197u8, ], ) } #[doc = " Minimum number of staking participants before emergency conditions are imposed."] pub fn minimum_validator_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "MinimumValidatorCount", vec![], [ 82u8, 95u8, 128u8, 55u8, 136u8, 134u8, 71u8, 117u8, 135u8, 76u8, 44u8, 46u8, 174u8, 34u8, 170u8, 228u8, 175u8, 1u8, 234u8, 162u8, 91u8, 252u8, 127u8, 68u8, 243u8, 241u8, 13u8, 107u8, 214u8, 70u8, 87u8, 249u8, ], ) } #[doc = " Any validators that may never be slashed or forcibly kicked. It's a Vec since they're"] #[doc = " easy to initialize and the performance hit is minimal (we expect no more than four"] #[doc = " invulnerables) and restricted to testnets."] pub fn invulnerables( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::subxt::utils::AccountId32>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "Invulnerables", vec![], [ 77u8, 78u8, 63u8, 199u8, 150u8, 167u8, 135u8, 130u8, 192u8, 51u8, 202u8, 119u8, 68u8, 49u8, 241u8, 68u8, 82u8, 90u8, 226u8, 201u8, 96u8, 170u8, 21u8, 173u8, 236u8, 116u8, 148u8, 8u8, 174u8, 92u8, 7u8, 11u8, ], ) } #[doc = " Map from all locked \"stash\" accounts to the controller account."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn bonded( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "Bonded", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 35u8, 197u8, 156u8, 60u8, 22u8, 59u8, 103u8, 83u8, 77u8, 15u8, 118u8, 193u8, 155u8, 97u8, 229u8, 36u8, 119u8, 128u8, 224u8, 162u8, 21u8, 46u8, 199u8, 221u8, 15u8, 74u8, 59u8, 70u8, 77u8, 218u8, 73u8, 165u8, ], ) } #[doc = " Map from all locked \"stash\" accounts to the controller account."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn bonded_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "Bonded", Vec::new(), [ 35u8, 197u8, 156u8, 60u8, 22u8, 59u8, 103u8, 83u8, 77u8, 15u8, 118u8, 193u8, 155u8, 97u8, 229u8, 36u8, 119u8, 128u8, 224u8, 162u8, 21u8, 46u8, 199u8, 221u8, 15u8, 74u8, 59u8, 70u8, 77u8, 218u8, 73u8, 165u8, ], ) } #[doc = " The minimum active bond to become and maintain the role of a nominator."] pub fn min_nominator_bond( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "MinNominatorBond", vec![], [ 187u8, 66u8, 149u8, 226u8, 72u8, 219u8, 57u8, 246u8, 102u8, 47u8, 71u8, 12u8, 219u8, 204u8, 127u8, 223u8, 58u8, 134u8, 81u8, 165u8, 200u8, 142u8, 196u8, 158u8, 26u8, 38u8, 165u8, 19u8, 91u8, 251u8, 119u8, 84u8, ], ) } #[doc = " The minimum active bond to become and maintain the role of a validator."] pub fn min_validator_bond( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "MinValidatorBond", vec![], [ 48u8, 105u8, 85u8, 178u8, 142u8, 208u8, 208u8, 19u8, 236u8, 130u8, 129u8, 169u8, 35u8, 245u8, 66u8, 182u8, 92u8, 20u8, 22u8, 109u8, 155u8, 174u8, 87u8, 118u8, 242u8, 216u8, 193u8, 154u8, 4u8, 5u8, 66u8, 56u8, ], ) } #[doc = " The minimum active nominator stake of the last successful election."] pub fn minimum_active_stake( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "MinimumActiveStake", vec![], [ 172u8, 190u8, 228u8, 47u8, 47u8, 192u8, 182u8, 59u8, 9u8, 18u8, 103u8, 46u8, 175u8, 54u8, 17u8, 79u8, 89u8, 107u8, 255u8, 200u8, 182u8, 107u8, 89u8, 157u8, 55u8, 16u8, 77u8, 46u8, 154u8, 169u8, 103u8, 151u8, ], ) } #[doc = " The minimum amount of commission that validators can set."] #[doc = ""] #[doc = " If set to `0`, no limit exists."] pub fn min_commission( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_arithmetic::per_things::Perbill, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "MinCommission", vec![], [ 61u8, 101u8, 69u8, 27u8, 220u8, 179u8, 5u8, 71u8, 66u8, 227u8, 84u8, 98u8, 18u8, 141u8, 183u8, 49u8, 98u8, 46u8, 123u8, 114u8, 198u8, 85u8, 15u8, 175u8, 243u8, 239u8, 133u8, 129u8, 146u8, 174u8, 254u8, 158u8, ], ) } #[doc = " Map from all (unlocked) \"controller\" accounts to the info regarding the staking."] pub fn ledger( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::StakingLedger, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "Ledger", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 31u8, 205u8, 3u8, 165u8, 22u8, 22u8, 62u8, 92u8, 33u8, 189u8, 124u8, 120u8, 177u8, 70u8, 27u8, 242u8, 188u8, 184u8, 204u8, 188u8, 242u8, 140u8, 128u8, 230u8, 85u8, 99u8, 181u8, 173u8, 67u8, 252u8, 37u8, 236u8, ], ) } #[doc = " Map from all (unlocked) \"controller\" accounts to the info regarding the staking."] pub fn ledger_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::StakingLedger, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "Ledger", Vec::new(), [ 31u8, 205u8, 3u8, 165u8, 22u8, 22u8, 62u8, 92u8, 33u8, 189u8, 124u8, 120u8, 177u8, 70u8, 27u8, 242u8, 188u8, 184u8, 204u8, 188u8, 242u8, 140u8, 128u8, 230u8, 85u8, 99u8, 181u8, 173u8, 67u8, 252u8, 37u8, 236u8, ], ) } #[doc = " Where the reward payment should be made. Keyed by stash."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn payee( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::RewardDestination< ::subxt::utils::AccountId32, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "Payee", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 195u8, 125u8, 82u8, 213u8, 216u8, 64u8, 76u8, 63u8, 187u8, 163u8, 20u8, 230u8, 153u8, 13u8, 189u8, 232u8, 119u8, 118u8, 107u8, 17u8, 102u8, 245u8, 36u8, 42u8, 232u8, 137u8, 177u8, 165u8, 169u8, 246u8, 199u8, 57u8, ], ) } #[doc = " Where the reward payment should be made. Keyed by stash."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn payee_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::RewardDestination< ::subxt::utils::AccountId32, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "Payee", Vec::new(), [ 195u8, 125u8, 82u8, 213u8, 216u8, 64u8, 76u8, 63u8, 187u8, 163u8, 20u8, 230u8, 153u8, 13u8, 189u8, 232u8, 119u8, 118u8, 107u8, 17u8, 102u8, 245u8, 36u8, 42u8, 232u8, 137u8, 177u8, 165u8, 169u8, 246u8, 199u8, 57u8, ], ) } #[doc = " The map from (wannabe) validator stash key to the preferences of that validator."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn validators( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::ValidatorPrefs, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "Validators", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 80u8, 77u8, 66u8, 18u8, 197u8, 250u8, 41u8, 185u8, 43u8, 24u8, 149u8, 164u8, 208u8, 60u8, 144u8, 29u8, 251u8, 195u8, 236u8, 196u8, 108u8, 58u8, 80u8, 115u8, 246u8, 66u8, 226u8, 241u8, 201u8, 172u8, 229u8, 152u8, ], ) } #[doc = " The map from (wannabe) validator stash key to the preferences of that validator."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn validators_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::ValidatorPrefs, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "Validators", Vec::new(), [ 80u8, 77u8, 66u8, 18u8, 197u8, 250u8, 41u8, 185u8, 43u8, 24u8, 149u8, 164u8, 208u8, 60u8, 144u8, 29u8, 251u8, 195u8, 236u8, 196u8, 108u8, 58u8, 80u8, 115u8, 246u8, 66u8, 226u8, 241u8, 201u8, 172u8, 229u8, 152u8, ], ) } #[doc = "Counter for the related counted storage map"] pub fn counter_for_validators( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "CounterForValidators", vec![], [ 139u8, 25u8, 223u8, 6u8, 160u8, 239u8, 212u8, 85u8, 36u8, 185u8, 69u8, 63u8, 21u8, 156u8, 144u8, 241u8, 112u8, 85u8, 49u8, 78u8, 88u8, 11u8, 8u8, 48u8, 118u8, 34u8, 62u8, 159u8, 239u8, 122u8, 90u8, 45u8, ], ) } #[doc = " The maximum validator count before we stop allowing new validators to join."] #[doc = ""] #[doc = " When this value is not set, no limits are enforced."] pub fn max_validators_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "MaxValidatorsCount", vec![], [ 250u8, 62u8, 16u8, 68u8, 192u8, 216u8, 236u8, 211u8, 217u8, 9u8, 213u8, 49u8, 41u8, 37u8, 58u8, 62u8, 131u8, 112u8, 64u8, 26u8, 133u8, 7u8, 130u8, 1u8, 71u8, 158u8, 14u8, 55u8, 169u8, 239u8, 223u8, 245u8, ], ) } #[doc = " The map from nominator stash key to their nomination preferences, namely the validators that"] #[doc = " they wish to support."] #[doc = ""] #[doc = " Note that the keys of this storage map might become non-decodable in case the"] #[doc = " [`Config::MaxNominations`] configuration is decreased. In this rare case, these nominators"] #[doc = " are still existent in storage, their key is correct and retrievable (i.e. `contains_key`"] #[doc = " indicates that they exist), but their value cannot be decoded. Therefore, the non-decodable"] #[doc = " nominators will effectively not-exist, until they re-submit their preferences such that it"] #[doc = " is within the bounds of the newly set `Config::MaxNominations`."] #[doc = ""] #[doc = " This implies that `::iter_keys().count()` and `::iter().count()` might return different"] #[doc = " values for this map. Moreover, the main `::count()` is aligned with the former, namely the"] #[doc = " number of keys that exist."] #[doc = ""] #[doc = " Lastly, if any of the nominators become non-decodable, they can be chilled immediately via"] #[doc = " [`Call::chill_other`] dispatchable by anyone."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn nominators( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::Nominations, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "Nominators", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 1u8, 154u8, 55u8, 170u8, 215u8, 64u8, 56u8, 83u8, 254u8, 19u8, 152u8, 85u8, 164u8, 171u8, 206u8, 129u8, 184u8, 45u8, 221u8, 181u8, 229u8, 133u8, 200u8, 231u8, 16u8, 146u8, 247u8, 21u8, 77u8, 122u8, 165u8, 134u8, ], ) } #[doc = " The map from nominator stash key to their nomination preferences, namely the validators that"] #[doc = " they wish to support."] #[doc = ""] #[doc = " Note that the keys of this storage map might become non-decodable in case the"] #[doc = " [`Config::MaxNominations`] configuration is decreased. In this rare case, these nominators"] #[doc = " are still existent in storage, their key is correct and retrievable (i.e. `contains_key`"] #[doc = " indicates that they exist), but their value cannot be decoded. Therefore, the non-decodable"] #[doc = " nominators will effectively not-exist, until they re-submit their preferences such that it"] #[doc = " is within the bounds of the newly set `Config::MaxNominations`."] #[doc = ""] #[doc = " This implies that `::iter_keys().count()` and `::iter().count()` might return different"] #[doc = " values for this map. Moreover, the main `::count()` is aligned with the former, namely the"] #[doc = " number of keys that exist."] #[doc = ""] #[doc = " Lastly, if any of the nominators become non-decodable, they can be chilled immediately via"] #[doc = " [`Call::chill_other`] dispatchable by anyone."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn nominators_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::Nominations, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "Nominators", Vec::new(), [ 1u8, 154u8, 55u8, 170u8, 215u8, 64u8, 56u8, 83u8, 254u8, 19u8, 152u8, 85u8, 164u8, 171u8, 206u8, 129u8, 184u8, 45u8, 221u8, 181u8, 229u8, 133u8, 200u8, 231u8, 16u8, 146u8, 247u8, 21u8, 77u8, 122u8, 165u8, 134u8, ], ) } #[doc = "Counter for the related counted storage map"] pub fn counter_for_nominators( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "CounterForNominators", vec![], [ 31u8, 94u8, 130u8, 138u8, 75u8, 8u8, 38u8, 162u8, 181u8, 5u8, 125u8, 116u8, 9u8, 51u8, 22u8, 234u8, 40u8, 117u8, 215u8, 46u8, 82u8, 117u8, 225u8, 1u8, 9u8, 208u8, 83u8, 63u8, 39u8, 187u8, 207u8, 191u8, ], ) } #[doc = " The maximum nominator count before we stop allowing new validators to join."] #[doc = ""] #[doc = " When this value is not set, no limits are enforced."] pub fn max_nominators_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "MaxNominatorsCount", vec![], [ 180u8, 190u8, 180u8, 66u8, 235u8, 173u8, 76u8, 160u8, 197u8, 92u8, 96u8, 165u8, 220u8, 188u8, 32u8, 119u8, 3u8, 73u8, 86u8, 49u8, 104u8, 17u8, 186u8, 98u8, 221u8, 175u8, 109u8, 254u8, 207u8, 245u8, 125u8, 179u8, ], ) } #[doc = " The current era index."] #[doc = ""] #[doc = " This is the latest planned era, depending on how the Session pallet queues the validator"] #[doc = " set, it might be active or not."] pub fn current_era( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "CurrentEra", vec![], [ 105u8, 150u8, 49u8, 122u8, 4u8, 78u8, 8u8, 121u8, 34u8, 136u8, 157u8, 227u8, 59u8, 139u8, 7u8, 253u8, 7u8, 10u8, 117u8, 71u8, 240u8, 74u8, 86u8, 36u8, 198u8, 37u8, 153u8, 93u8, 196u8, 22u8, 192u8, 243u8, ], ) } #[doc = " The active era information, it holds index and start."] #[doc = ""] #[doc = " The active era is the era being currently rewarded. Validator set of this era must be"] #[doc = " equal to [`SessionInterface::validators`]."] pub fn active_era( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::ActiveEraInfo, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ActiveEra", vec![], [ 15u8, 112u8, 251u8, 183u8, 108u8, 61u8, 28u8, 71u8, 44u8, 150u8, 162u8, 4u8, 143u8, 121u8, 11u8, 37u8, 83u8, 29u8, 193u8, 21u8, 210u8, 116u8, 190u8, 236u8, 213u8, 235u8, 49u8, 97u8, 189u8, 142u8, 251u8, 124u8, ], ) } #[doc = " The session index at which the era start for the last `HISTORY_DEPTH` eras."] #[doc = ""] #[doc = " Note: This tracks the starting session (i.e. session index when era start being active)"] #[doc = " for the eras in `[CurrentEra - HISTORY_DEPTH, CurrentEra]`."] pub fn eras_start_session_index( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasStartSessionIndex", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 92u8, 157u8, 168u8, 144u8, 132u8, 3u8, 212u8, 80u8, 230u8, 229u8, 251u8, 218u8, 97u8, 55u8, 79u8, 100u8, 163u8, 91u8, 32u8, 246u8, 122u8, 78u8, 149u8, 214u8, 103u8, 249u8, 119u8, 20u8, 101u8, 116u8, 110u8, 185u8, ], ) } #[doc = " The session index at which the era start for the last `HISTORY_DEPTH` eras."] #[doc = ""] #[doc = " Note: This tracks the starting session (i.e. session index when era start being active)"] #[doc = " for the eras in `[CurrentEra - HISTORY_DEPTH, CurrentEra]`."] pub fn eras_start_session_index_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasStartSessionIndex", Vec::new(), [ 92u8, 157u8, 168u8, 144u8, 132u8, 3u8, 212u8, 80u8, 230u8, 229u8, 251u8, 218u8, 97u8, 55u8, 79u8, 100u8, 163u8, 91u8, 32u8, 246u8, 122u8, 78u8, 149u8, 214u8, 103u8, 249u8, 119u8, 20u8, 101u8, 116u8, 110u8, 185u8, ], ) } #[doc = " Exposure of validator at era."] #[doc = ""] #[doc = " This is keyed first by the era index to allow bulk deletion and then the stash account."] #[doc = ""] #[doc = " Is it removed after `HISTORY_DEPTH` eras."] #[doc = " If stakers hasn't been set or has been removed then empty exposure is returned."] pub fn eras_stakers( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::Exposure< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasStakers", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 192u8, 50u8, 152u8, 151u8, 92u8, 180u8, 206u8, 15u8, 139u8, 210u8, 128u8, 65u8, 92u8, 253u8, 43u8, 35u8, 139u8, 171u8, 73u8, 185u8, 32u8, 78u8, 20u8, 197u8, 154u8, 90u8, 233u8, 231u8, 23u8, 22u8, 187u8, 156u8, ], ) } #[doc = " Exposure of validator at era."] #[doc = ""] #[doc = " This is keyed first by the era index to allow bulk deletion and then the stash account."] #[doc = ""] #[doc = " Is it removed after `HISTORY_DEPTH` eras."] #[doc = " If stakers hasn't been set or has been removed then empty exposure is returned."] pub fn eras_stakers_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::Exposure< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasStakers", Vec::new(), [ 192u8, 50u8, 152u8, 151u8, 92u8, 180u8, 206u8, 15u8, 139u8, 210u8, 128u8, 65u8, 92u8, 253u8, 43u8, 35u8, 139u8, 171u8, 73u8, 185u8, 32u8, 78u8, 20u8, 197u8, 154u8, 90u8, 233u8, 231u8, 23u8, 22u8, 187u8, 156u8, ], ) } #[doc = " Clipped Exposure of validator at era."] #[doc = ""] #[doc = " This is similar to [`ErasStakers`] but number of nominators exposed is reduced to the"] #[doc = " `T::MaxNominatorRewardedPerValidator` biggest stakers."] #[doc = " (Note: the field `total` and `own` of the exposure remains unchanged)."] #[doc = " This is used to limit the i/o cost for the nominator payout."] #[doc = ""] #[doc = " This is keyed fist by the era index to allow bulk deletion and then the stash account."] #[doc = ""] #[doc = " Is it removed after `HISTORY_DEPTH` eras."] #[doc = " If stakers hasn't been set or has been removed then empty exposure is returned."] pub fn eras_stakers_clipped( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::Exposure< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasStakersClipped", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 43u8, 159u8, 113u8, 223u8, 122u8, 169u8, 98u8, 153u8, 26u8, 55u8, 71u8, 119u8, 174u8, 48u8, 158u8, 45u8, 214u8, 26u8, 136u8, 215u8, 46u8, 161u8, 185u8, 17u8, 174u8, 204u8, 206u8, 246u8, 49u8, 87u8, 134u8, 169u8, ], ) } #[doc = " Clipped Exposure of validator at era."] #[doc = ""] #[doc = " This is similar to [`ErasStakers`] but number of nominators exposed is reduced to the"] #[doc = " `T::MaxNominatorRewardedPerValidator` biggest stakers."] #[doc = " (Note: the field `total` and `own` of the exposure remains unchanged)."] #[doc = " This is used to limit the i/o cost for the nominator payout."] #[doc = ""] #[doc = " This is keyed fist by the era index to allow bulk deletion and then the stash account."] #[doc = ""] #[doc = " Is it removed after `HISTORY_DEPTH` eras."] #[doc = " If stakers hasn't been set or has been removed then empty exposure is returned."] pub fn eras_stakers_clipped_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::Exposure< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasStakersClipped", Vec::new(), [ 43u8, 159u8, 113u8, 223u8, 122u8, 169u8, 98u8, 153u8, 26u8, 55u8, 71u8, 119u8, 174u8, 48u8, 158u8, 45u8, 214u8, 26u8, 136u8, 215u8, 46u8, 161u8, 185u8, 17u8, 174u8, 204u8, 206u8, 246u8, 49u8, 87u8, 134u8, 169u8, ], ) } #[doc = " Similar to `ErasStakers`, this holds the preferences of validators."] #[doc = ""] #[doc = " This is keyed first by the era index to allow bulk deletion and then the stash account."] #[doc = ""] #[doc = " Is it removed after `HISTORY_DEPTH` eras."] pub fn eras_validator_prefs( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::ValidatorPrefs, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasValidatorPrefs", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 6u8, 196u8, 209u8, 138u8, 252u8, 18u8, 203u8, 86u8, 129u8, 62u8, 4u8, 56u8, 234u8, 114u8, 141u8, 136u8, 127u8, 224u8, 142u8, 89u8, 150u8, 33u8, 31u8, 50u8, 140u8, 108u8, 124u8, 77u8, 188u8, 102u8, 230u8, 174u8, ], ) } #[doc = " Similar to `ErasStakers`, this holds the preferences of validators."] #[doc = ""] #[doc = " This is keyed first by the era index to allow bulk deletion and then the stash account."] #[doc = ""] #[doc = " Is it removed after `HISTORY_DEPTH` eras."] pub fn eras_validator_prefs_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::ValidatorPrefs, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasValidatorPrefs", Vec::new(), [ 6u8, 196u8, 209u8, 138u8, 252u8, 18u8, 203u8, 86u8, 129u8, 62u8, 4u8, 56u8, 234u8, 114u8, 141u8, 136u8, 127u8, 224u8, 142u8, 89u8, 150u8, 33u8, 31u8, 50u8, 140u8, 108u8, 124u8, 77u8, 188u8, 102u8, 230u8, 174u8, ], ) } #[doc = " The total validator era payout for the last `HISTORY_DEPTH` eras."] #[doc = ""] #[doc = " Eras that haven't finished yet or has been removed doesn't have reward."] pub fn eras_validator_reward( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasValidatorReward", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 87u8, 80u8, 156u8, 123u8, 107u8, 77u8, 203u8, 37u8, 231u8, 84u8, 124u8, 155u8, 227u8, 212u8, 212u8, 179u8, 84u8, 161u8, 223u8, 255u8, 254u8, 107u8, 52u8, 89u8, 98u8, 169u8, 136u8, 241u8, 104u8, 3u8, 244u8, 161u8, ], ) } #[doc = " The total validator era payout for the last `HISTORY_DEPTH` eras."] #[doc = ""] #[doc = " Eras that haven't finished yet or has been removed doesn't have reward."] pub fn eras_validator_reward_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasValidatorReward", Vec::new(), [ 87u8, 80u8, 156u8, 123u8, 107u8, 77u8, 203u8, 37u8, 231u8, 84u8, 124u8, 155u8, 227u8, 212u8, 212u8, 179u8, 84u8, 161u8, 223u8, 255u8, 254u8, 107u8, 52u8, 89u8, 98u8, 169u8, 136u8, 241u8, 104u8, 3u8, 244u8, 161u8, ], ) } #[doc = " Rewards for the last `HISTORY_DEPTH` eras."] #[doc = " If reward hasn't been set or has been removed then 0 reward is returned."] pub fn eras_reward_points( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::EraRewardPoints< ::subxt::utils::AccountId32, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasRewardPoints", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 194u8, 29u8, 20u8, 83u8, 200u8, 47u8, 158u8, 102u8, 88u8, 65u8, 24u8, 255u8, 120u8, 178u8, 23u8, 232u8, 15u8, 64u8, 206u8, 0u8, 170u8, 40u8, 18u8, 149u8, 45u8, 90u8, 179u8, 127u8, 52u8, 59u8, 37u8, 192u8, ], ) } #[doc = " Rewards for the last `HISTORY_DEPTH` eras."] #[doc = " If reward hasn't been set or has been removed then 0 reward is returned."] pub fn eras_reward_points_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::EraRewardPoints< ::subxt::utils::AccountId32, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasRewardPoints", Vec::new(), [ 194u8, 29u8, 20u8, 83u8, 200u8, 47u8, 158u8, 102u8, 88u8, 65u8, 24u8, 255u8, 120u8, 178u8, 23u8, 232u8, 15u8, 64u8, 206u8, 0u8, 170u8, 40u8, 18u8, 149u8, 45u8, 90u8, 179u8, 127u8, 52u8, 59u8, 37u8, 192u8, ], ) } #[doc = " The total amount staked for the last `HISTORY_DEPTH` eras."] #[doc = " If total hasn't been set or has been removed then 0 stake is returned."] pub fn eras_total_stake( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasTotalStake", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 224u8, 240u8, 168u8, 69u8, 148u8, 140u8, 249u8, 240u8, 4u8, 46u8, 77u8, 11u8, 224u8, 65u8, 26u8, 239u8, 1u8, 110u8, 53u8, 11u8, 247u8, 235u8, 142u8, 234u8, 22u8, 43u8, 24u8, 36u8, 37u8, 43u8, 170u8, 40u8, ], ) } #[doc = " The total amount staked for the last `HISTORY_DEPTH` eras."] #[doc = " If total hasn't been set or has been removed then 0 stake is returned."] pub fn eras_total_stake_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ErasTotalStake", Vec::new(), [ 224u8, 240u8, 168u8, 69u8, 148u8, 140u8, 249u8, 240u8, 4u8, 46u8, 77u8, 11u8, 224u8, 65u8, 26u8, 239u8, 1u8, 110u8, 53u8, 11u8, 247u8, 235u8, 142u8, 234u8, 22u8, 43u8, 24u8, 36u8, 37u8, 43u8, 170u8, 40u8, ], ) } #[doc = " Mode of era forcing."] pub fn force_era( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::Forcing, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ForceEra", vec![], [ 221u8, 41u8, 71u8, 21u8, 28u8, 193u8, 65u8, 97u8, 103u8, 37u8, 145u8, 146u8, 183u8, 194u8, 57u8, 131u8, 214u8, 136u8, 68u8, 156u8, 140u8, 194u8, 69u8, 151u8, 115u8, 177u8, 92u8, 147u8, 29u8, 40u8, 41u8, 31u8, ], ) } #[doc = " The percentage of the slash that is distributed to reporters."] #[doc = ""] #[doc = " The rest of the slashed value is handled by the `Slash`."] pub fn slash_reward_fraction( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_arithmetic::per_things::Perbill, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "SlashRewardFraction", vec![], [ 167u8, 79u8, 143u8, 202u8, 199u8, 100u8, 129u8, 162u8, 23u8, 165u8, 106u8, 170u8, 244u8, 86u8, 144u8, 242u8, 65u8, 207u8, 115u8, 224u8, 231u8, 155u8, 55u8, 139u8, 101u8, 129u8, 242u8, 196u8, 130u8, 50u8, 3u8, 117u8, ], ) } #[doc = " The amount of currency given to reporters of a slash event which was"] #[doc = " canceled by extraordinary circumstances (e.g. governance)."] pub fn canceled_slash_payout( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "CanceledSlashPayout", vec![], [ 126u8, 218u8, 66u8, 92u8, 82u8, 124u8, 145u8, 161u8, 40u8, 176u8, 14u8, 211u8, 178u8, 216u8, 8u8, 156u8, 83u8, 14u8, 91u8, 15u8, 200u8, 170u8, 3u8, 127u8, 141u8, 139u8, 151u8, 98u8, 74u8, 96u8, 238u8, 29u8, ], ) } #[doc = " All unapplied slashes that are queued for later."] pub fn unapplied_slashes( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec< runtime_types::pallet_staking::UnappliedSlash< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "UnappliedSlashes", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 130u8, 4u8, 163u8, 163u8, 28u8, 85u8, 34u8, 156u8, 47u8, 125u8, 57u8, 0u8, 133u8, 176u8, 130u8, 2u8, 175u8, 180u8, 167u8, 203u8, 230u8, 82u8, 198u8, 183u8, 55u8, 82u8, 221u8, 248u8, 100u8, 173u8, 206u8, 151u8, ], ) } #[doc = " All unapplied slashes that are queued for later."] pub fn unapplied_slashes_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec< runtime_types::pallet_staking::UnappliedSlash< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "UnappliedSlashes", Vec::new(), [ 130u8, 4u8, 163u8, 163u8, 28u8, 85u8, 34u8, 156u8, 47u8, 125u8, 57u8, 0u8, 133u8, 176u8, 130u8, 2u8, 175u8, 180u8, 167u8, 203u8, 230u8, 82u8, 198u8, 183u8, 55u8, 82u8, 221u8, 248u8, 100u8, 173u8, 206u8, 151u8, ], ) } #[doc = " A mapping from still-bonded eras to the first session index of that era."] #[doc = ""] #[doc = " Must contains information for eras for the range:"] #[doc = " `[active_era - bounding_duration; active_era]`"] pub fn bonded_eras( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<(::core::primitive::u32, ::core::primitive::u32)>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "BondedEras", vec![], [ 243u8, 162u8, 236u8, 198u8, 122u8, 182u8, 37u8, 55u8, 171u8, 156u8, 235u8, 223u8, 226u8, 129u8, 89u8, 206u8, 2u8, 155u8, 222u8, 154u8, 116u8, 124u8, 4u8, 119u8, 155u8, 94u8, 248u8, 30u8, 171u8, 51u8, 78u8, 106u8, ], ) } #[doc = " All slashing events on validators, mapped by era to the highest slash proportion"] #[doc = " and slash value of the era."] pub fn validator_slash_in_era( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_arithmetic::per_things::Perbill, ::core::primitive::u128, )>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ValidatorSlashInEra", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 237u8, 80u8, 3u8, 237u8, 9u8, 40u8, 212u8, 15u8, 251u8, 196u8, 85u8, 29u8, 27u8, 151u8, 98u8, 122u8, 189u8, 147u8, 205u8, 40u8, 202u8, 194u8, 158u8, 96u8, 138u8, 16u8, 116u8, 71u8, 140u8, 163u8, 121u8, 197u8, ], ) } #[doc = " All slashing events on validators, mapped by era to the highest slash proportion"] #[doc = " and slash value of the era."] pub fn validator_slash_in_era_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_arithmetic::per_things::Perbill, ::core::primitive::u128, )>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ValidatorSlashInEra", Vec::new(), [ 237u8, 80u8, 3u8, 237u8, 9u8, 40u8, 212u8, 15u8, 251u8, 196u8, 85u8, 29u8, 27u8, 151u8, 98u8, 122u8, 189u8, 147u8, 205u8, 40u8, 202u8, 194u8, 158u8, 96u8, 138u8, 16u8, 116u8, 71u8, 140u8, 163u8, 121u8, 197u8, ], ) } #[doc = " All slashing events on nominators, mapped by era to the highest slash value of the era."] pub fn nominator_slash_in_era( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "NominatorSlashInEra", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 249u8, 85u8, 170u8, 41u8, 179u8, 194u8, 180u8, 12u8, 53u8, 101u8, 80u8, 96u8, 166u8, 71u8, 239u8, 23u8, 153u8, 19u8, 152u8, 38u8, 138u8, 136u8, 221u8, 200u8, 18u8, 165u8, 26u8, 228u8, 195u8, 199u8, 62u8, 4u8, ], ) } #[doc = " All slashing events on nominators, mapped by era to the highest slash value of the era."] pub fn nominator_slash_in_era_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "NominatorSlashInEra", Vec::new(), [ 249u8, 85u8, 170u8, 41u8, 179u8, 194u8, 180u8, 12u8, 53u8, 101u8, 80u8, 96u8, 166u8, 71u8, 239u8, 23u8, 153u8, 19u8, 152u8, 38u8, 138u8, 136u8, 221u8, 200u8, 18u8, 165u8, 26u8, 228u8, 195u8, 199u8, 62u8, 4u8, ], ) } #[doc = " Slashing spans for stash accounts."] pub fn slashing_spans( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::slashing::SlashingSpans, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "SlashingSpans", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 106u8, 115u8, 118u8, 52u8, 89u8, 77u8, 246u8, 5u8, 255u8, 204u8, 44u8, 5u8, 66u8, 36u8, 227u8, 252u8, 86u8, 159u8, 186u8, 152u8, 196u8, 21u8, 74u8, 201u8, 133u8, 93u8, 142u8, 191u8, 20u8, 27u8, 218u8, 157u8, ], ) } #[doc = " Slashing spans for stash accounts."] pub fn slashing_spans_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::slashing::SlashingSpans, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "SlashingSpans", Vec::new(), [ 106u8, 115u8, 118u8, 52u8, 89u8, 77u8, 246u8, 5u8, 255u8, 204u8, 44u8, 5u8, 66u8, 36u8, 227u8, 252u8, 86u8, 159u8, 186u8, 152u8, 196u8, 21u8, 74u8, 201u8, 133u8, 93u8, 142u8, 191u8, 20u8, 27u8, 218u8, 157u8, ], ) } #[doc = " Records information about the maximum slash of a stash within a slashing span,"] #[doc = " as well as how much reward has been paid out."] pub fn span_slash( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::slashing::SpanRecord< ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "SpanSlash", vec![::subxt::storage::address::StorageMapKey::new( &(_0.borrow(), _1.borrow()), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 160u8, 63u8, 115u8, 190u8, 233u8, 148u8, 75u8, 3u8, 11u8, 59u8, 184u8, 220u8, 205u8, 64u8, 28u8, 190u8, 116u8, 210u8, 225u8, 230u8, 224u8, 163u8, 103u8, 157u8, 100u8, 29u8, 86u8, 167u8, 84u8, 217u8, 109u8, 200u8, ], ) } #[doc = " Records information about the maximum slash of a stash within a slashing span,"] #[doc = " as well as how much reward has been paid out."] pub fn span_slash_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_staking::slashing::SpanRecord< ::core::primitive::u128, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "SpanSlash", Vec::new(), [ 160u8, 63u8, 115u8, 190u8, 233u8, 148u8, 75u8, 3u8, 11u8, 59u8, 184u8, 220u8, 205u8, 64u8, 28u8, 190u8, 116u8, 210u8, 225u8, 230u8, 224u8, 163u8, 103u8, 157u8, 100u8, 29u8, 86u8, 167u8, 84u8, 217u8, 109u8, 200u8, ], ) } #[doc = " The last planned session scheduled by the session pallet."] #[doc = ""] #[doc = " This is basically in sync with the call to [`pallet_session::SessionManager::new_session`]."] pub fn current_planned_session( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "CurrentPlannedSession", vec![], [ 38u8, 22u8, 56u8, 250u8, 17u8, 154u8, 99u8, 37u8, 155u8, 253u8, 100u8, 117u8, 5u8, 239u8, 31u8, 190u8, 53u8, 241u8, 11u8, 185u8, 163u8, 227u8, 10u8, 77u8, 210u8, 64u8, 156u8, 218u8, 105u8, 16u8, 1u8, 57u8, ], ) } #[doc = " Indices of validators that have offended in the active era and whether they are currently"] #[doc = " disabled."] #[doc = ""] #[doc = " This value should be a superset of disabled validators since not all offences lead to the"] #[doc = " validator being disabled (if there was no slash). This is needed to track the percentage of"] #[doc = " validators that have offended in the current era, ensuring a new era is forced if"] #[doc = " `OffendingValidatorsThreshold` is reached. The vec is always kept sorted so that we can find"] #[doc = " whether a given validator has previously offended using binary search. It gets cleared when"] #[doc = " the era ends."] pub fn offending_validators( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<( ::core::primitive::u32, ::core::primitive::bool, )>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "OffendingValidators", vec![], [ 94u8, 254u8, 0u8, 50u8, 76u8, 232u8, 51u8, 153u8, 118u8, 14u8, 70u8, 101u8, 112u8, 215u8, 173u8, 82u8, 182u8, 104u8, 167u8, 103u8, 187u8, 168u8, 86u8, 16u8, 51u8, 235u8, 51u8, 119u8, 38u8, 154u8, 42u8, 113u8, ], ) } #[doc = " The threshold for when users can start calling `chill_other` for other validators /"] #[doc = " nominators. The threshold is compared to the actual number of validators / nominators"] #[doc = " (`CountFor*`) in the system compared to the configured max (`Max*Count`)."] pub fn chill_threshold( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_arithmetic::per_things::Percent, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Staking", "ChillThreshold", vec![], [ 174u8, 165u8, 249u8, 105u8, 24u8, 151u8, 115u8, 166u8, 199u8, 251u8, 28u8, 5u8, 50u8, 95u8, 144u8, 110u8, 220u8, 76u8, 14u8, 23u8, 179u8, 41u8, 11u8, 248u8, 28u8, 154u8, 159u8, 255u8, 156u8, 109u8, 98u8, 92u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Maximum number of nominations per nominator."] pub fn max_nominations( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Staking", "MaxNominations", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Number of eras to keep in history."] #[doc = ""] #[doc = " Following information is kept for eras in `[current_era -"] #[doc = " HistoryDepth, current_era]`: `ErasStakers`, `ErasStakersClipped`,"] #[doc = " `ErasValidatorPrefs`, `ErasValidatorReward`, `ErasRewardPoints`,"] #[doc = " `ErasTotalStake`, `ErasStartSessionIndex`,"] #[doc = " `StakingLedger.claimed_rewards`."] #[doc = ""] #[doc = " Must be more than the number of eras delayed by session."] #[doc = " I.e. active era must always be in history. I.e. `active_era >"] #[doc = " current_era - history_depth` must be guaranteed."] #[doc = ""] #[doc = " If migrating an existing pallet from storage value to config value,"] #[doc = " this should be set to same value or greater as in storage."] #[doc = ""] #[doc = " Note: `HistoryDepth` is used as the upper bound for the `BoundedVec`"] #[doc = " item `StakingLedger.claimed_rewards`. Setting this value lower than"] #[doc = " the existing value can lead to inconsistencies in the"] #[doc = " `StakingLedger` and will need to be handled properly in a migration."] #[doc = " The test `reducing_history_depth_abrupt` shows this effect."] pub fn history_depth( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Staking", "HistoryDepth", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Number of sessions per era."] pub fn sessions_per_era( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Staking", "SessionsPerEra", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Number of eras that staked funds must remain bonded for."] pub fn bonding_duration( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Staking", "BondingDuration", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Number of eras that slashes are deferred by, after computation."] #[doc = ""] #[doc = " This should be less than the bonding duration. Set to 0 if slashes"] #[doc = " should be applied immediately, without opportunity for intervention."] pub fn slash_defer_duration( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Staking", "SlashDeferDuration", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of nominators rewarded for each validator."] #[doc = ""] #[doc = " For each validator only the `$MaxNominatorRewardedPerValidator` biggest stakers can"] #[doc = " claim their reward. This used to limit the i/o cost for the nominator payout."] pub fn max_nominator_rewarded_per_validator( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Staking", "MaxNominatorRewardedPerValidator", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of `unlocking` chunks a [`StakingLedger`] can"] #[doc = " have. Effectively determines how many unique eras a staker may be"] #[doc = " unbonding in."] #[doc = ""] #[doc = " Note: `MaxUnlockingChunks` is used as the upper bound for the"] #[doc = " `BoundedVec` item `StakingLedger.unlocking`. Setting this value"] #[doc = " lower than the existing value can lead to inconsistencies in the"] #[doc = " `StakingLedger` and will need to be handled properly in a runtime"] #[doc = " migration. The test `reducing_max_unlocking_chunks_abrupt` shows"] #[doc = " this effect."] pub fn max_unlocking_chunks( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Staking", "MaxUnlockingChunks", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod session { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetKeys { pub keys: runtime_types::kitchensink_runtime::SessionKeys, pub proof: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PurgeKeys; pub struct TransactionApi; impl TransactionApi { #[doc = "Sets the session key(s) of the function caller to `keys`."] #[doc = "Allows an account to set its session key prior to becoming a validator."] #[doc = "This doesn't take effect until the next session."] #[doc = ""] #[doc = "The dispatch origin of this function must be signed."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(1)`. Actual cost depends on the number of length of"] #[doc = " `T::Keys::key_ids()` which is fixed."] #[doc = "- DbReads: `origin account`, `T::ValidatorIdOf`, `NextKeys`"] #[doc = "- DbWrites: `origin account`, `NextKeys`"] #[doc = "- DbReads per key id: `KeyOwner`"] #[doc = "- DbWrites per key id: `KeyOwner`"] #[doc = "# "] pub fn set_keys( &self, keys: runtime_types::kitchensink_runtime::SessionKeys, proof: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Session", "set_keys", SetKeys { keys, proof }, [ 19u8, 210u8, 111u8, 216u8, 235u8, 1u8, 119u8, 211u8, 79u8, 9u8, 91u8, 245u8, 109u8, 116u8, 95u8, 223u8, 233u8, 189u8, 185u8, 243u8, 46u8, 178u8, 10u8, 4u8, 231u8, 159u8, 217u8, 59u8, 45u8, 167u8, 207u8, 137u8, ], ) } #[doc = "Removes any session key(s) of the function caller."] #[doc = ""] #[doc = "This doesn't take effect until the next session."] #[doc = ""] #[doc = "The dispatch origin of this function must be Signed and the account must be either be"] #[doc = "convertible to a validator ID using the chain's typical addressing system (this usually"] #[doc = "means being a controller account) or directly convertible into a validator ID (which"] #[doc = "usually means being a stash account)."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(1)` in number of key types. Actual cost depends on the number of length"] #[doc = " of `T::Keys::key_ids()` which is fixed."] #[doc = "- DbReads: `T::ValidatorIdOf`, `NextKeys`, `origin account`"] #[doc = "- DbWrites: `NextKeys`, `origin account`"] #[doc = "- DbWrites per key id: `KeyOwner`"] #[doc = "# "] pub fn purge_keys(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Session", "purge_keys", PurgeKeys {}, [ 200u8, 255u8, 4u8, 213u8, 188u8, 92u8, 99u8, 116u8, 163u8, 152u8, 29u8, 35u8, 133u8, 119u8, 246u8, 44u8, 91u8, 31u8, 145u8, 23u8, 213u8, 64u8, 71u8, 242u8, 207u8, 239u8, 231u8, 37u8, 61u8, 63u8, 190u8, 35u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_session::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "New session has happened. Note that the argument is the session index, not the"] #[doc = "block number as the type might suggest."] pub struct NewSession { pub session_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for NewSession { const PALLET: &'static str = "Session"; const EVENT: &'static str = "NewSession"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The current set of validators."] pub fn validators( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::subxt::utils::AccountId32>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Session", "Validators", vec![], [ 144u8, 235u8, 200u8, 43u8, 151u8, 57u8, 147u8, 172u8, 201u8, 202u8, 242u8, 96u8, 57u8, 76u8, 124u8, 77u8, 42u8, 113u8, 218u8, 220u8, 230u8, 32u8, 151u8, 152u8, 172u8, 106u8, 60u8, 227u8, 122u8, 118u8, 137u8, 68u8, ], ) } #[doc = " Current index of the session."] pub fn current_index( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Session", "CurrentIndex", vec![], [ 148u8, 179u8, 159u8, 15u8, 197u8, 95u8, 214u8, 30u8, 209u8, 251u8, 183u8, 231u8, 91u8, 25u8, 181u8, 191u8, 143u8, 252u8, 227u8, 80u8, 159u8, 66u8, 194u8, 67u8, 113u8, 74u8, 111u8, 91u8, 218u8, 187u8, 130u8, 40u8, ], ) } #[doc = " True if the underlying economic identities or weighting behind the validators"] #[doc = " has changed in the queued validator set."] pub fn queued_changed( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Session", "QueuedChanged", vec![], [ 105u8, 140u8, 235u8, 218u8, 96u8, 100u8, 252u8, 10u8, 58u8, 221u8, 244u8, 251u8, 67u8, 91u8, 80u8, 202u8, 152u8, 42u8, 50u8, 113u8, 200u8, 247u8, 59u8, 213u8, 77u8, 195u8, 1u8, 150u8, 220u8, 18u8, 245u8, 46u8, ], ) } #[doc = " The queued keys for the next session. When the next session begins, these keys"] #[doc = " will be used to determine the validator's session keys."] pub fn queued_keys( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<( ::subxt::utils::AccountId32, runtime_types::kitchensink_runtime::SessionKeys, )>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Session", "QueuedKeys", vec![], [ 57u8, 139u8, 66u8, 116u8, 133u8, 98u8, 66u8, 181u8, 96u8, 190u8, 69u8, 124u8, 158u8, 124u8, 187u8, 164u8, 223u8, 89u8, 209u8, 84u8, 106u8, 127u8, 85u8, 202u8, 130u8, 7u8, 250u8, 163u8, 99u8, 209u8, 225u8, 25u8, ], ) } #[doc = " Indices of disabled validators."] #[doc = ""] #[doc = " The vec is always kept sorted so that we can find whether a given validator is"] #[doc = " disabled using binary search. It gets cleared when `on_session_ending` returns"] #[doc = " a new set of identities."] pub fn disabled_validators( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u32>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Session", "DisabledValidators", vec![], [ 135u8, 22u8, 22u8, 97u8, 82u8, 217u8, 144u8, 141u8, 121u8, 240u8, 189u8, 16u8, 176u8, 88u8, 177u8, 31u8, 20u8, 242u8, 73u8, 104u8, 11u8, 110u8, 214u8, 34u8, 52u8, 217u8, 106u8, 33u8, 174u8, 174u8, 198u8, 84u8, ], ) } #[doc = " The next session keys for a validator."] pub fn next_keys( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::kitchensink_runtime::SessionKeys, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Session", "NextKeys", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 246u8, 66u8, 207u8, 19u8, 247u8, 26u8, 110u8, 116u8, 209u8, 77u8, 141u8, 64u8, 128u8, 214u8, 71u8, 104u8, 56u8, 117u8, 10u8, 162u8, 166u8, 137u8, 33u8, 98u8, 110u8, 31u8, 161u8, 116u8, 207u8, 46u8, 82u8, 64u8, ], ) } #[doc = " The next session keys for a validator."] pub fn next_keys_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::kitchensink_runtime::SessionKeys, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Session", "NextKeys", Vec::new(), [ 246u8, 66u8, 207u8, 19u8, 247u8, 26u8, 110u8, 116u8, 209u8, 77u8, 141u8, 64u8, 128u8, 214u8, 71u8, 104u8, 56u8, 117u8, 10u8, 162u8, 166u8, 137u8, 33u8, 98u8, 110u8, 31u8, 161u8, 116u8, 207u8, 46u8, 82u8, 64u8, ], ) } #[doc = " The owner of a key. The key is the `KeyTypeId` + the encoded key."] pub fn key_owner( &self, _0: impl ::std::borrow::Borrow, _1: impl ::std::borrow::Borrow<[::core::primitive::u8]>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Session", "KeyOwner", vec![::subxt::storage::address::StorageMapKey::new( &(_0.borrow(), _1.borrow()), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 4u8, 91u8, 25u8, 84u8, 250u8, 201u8, 174u8, 129u8, 201u8, 58u8, 197u8, 199u8, 137u8, 240u8, 118u8, 33u8, 99u8, 2u8, 195u8, 57u8, 53u8, 172u8, 0u8, 148u8, 203u8, 144u8, 149u8, 64u8, 135u8, 254u8, 242u8, 215u8, ], ) } #[doc = " The owner of a key. The key is the `KeyTypeId` + the encoded key."] pub fn key_owner_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Session", "KeyOwner", Vec::new(), [ 4u8, 91u8, 25u8, 84u8, 250u8, 201u8, 174u8, 129u8, 201u8, 58u8, 197u8, 199u8, 137u8, 240u8, 118u8, 33u8, 99u8, 2u8, 195u8, 57u8, 53u8, 172u8, 0u8, 148u8, 203u8, 144u8, 149u8, 64u8, 135u8, 254u8, 242u8, 215u8, ], ) } } } } pub mod democracy { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Propose { pub proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, #[codec(compact)] pub value: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Second { #[codec(compact)] pub proposal: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vote { #[codec(compact)] pub ref_index: ::core::primitive::u32, pub vote: runtime_types::pallet_democracy::vote::AccountVote< ::core::primitive::u128, >, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct EmergencyCancel { pub ref_index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ExternalPropose { pub proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ExternalProposeMajority { pub proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ExternalProposeDefault { pub proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct FastTrack { pub proposal_hash: ::subxt::utils::H256, pub voting_period: ::core::primitive::u32, pub delay: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct VetoExternal { pub proposal_hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelReferendum { #[codec(compact)] pub ref_index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Delegate { pub to: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub conviction: runtime_types::pallet_democracy::conviction::Conviction, pub balance: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Undelegate; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClearPublicProposals; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Unlock { pub target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveVote { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveOtherVote { pub target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Blacklist { pub proposal_hash: ::subxt::utils::H256, pub maybe_ref_index: ::core::option::Option<::core::primitive::u32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelProposal { #[codec(compact)] pub prop_index: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Propose a sensitive action to be taken."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_ and the sender must"] #[doc = "have funds to cover the deposit."] #[doc = ""] #[doc = "- `proposal_hash`: The hash of the proposal preimage."] #[doc = "- `value`: The amount of deposit (must be at least `MinimumDeposit`)."] #[doc = ""] #[doc = "Emits `Proposed`."] pub fn propose( &self, proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, value: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "propose", Propose { proposal, value }, [ 123u8, 3u8, 204u8, 140u8, 194u8, 195u8, 214u8, 39u8, 167u8, 126u8, 45u8, 4u8, 219u8, 17u8, 143u8, 185u8, 29u8, 224u8, 230u8, 68u8, 253u8, 15u8, 170u8, 90u8, 232u8, 123u8, 46u8, 255u8, 168u8, 39u8, 204u8, 63u8, ], ) } #[doc = "Signals agreement with a particular proposal."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_ and the sender"] #[doc = "must have funds to cover the deposit, equal to the original deposit."] #[doc = ""] #[doc = "- `proposal`: The index of the proposal to second."] pub fn second( &self, proposal: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "second", Second { proposal }, [ 59u8, 240u8, 183u8, 218u8, 61u8, 93u8, 184u8, 67u8, 10u8, 4u8, 138u8, 196u8, 168u8, 49u8, 42u8, 69u8, 154u8, 42u8, 90u8, 112u8, 179u8, 69u8, 51u8, 148u8, 159u8, 212u8, 221u8, 226u8, 132u8, 228u8, 51u8, 83u8, ], ) } #[doc = "Vote in a referendum. If `vote.is_aye()`, the vote is to enact the proposal;"] #[doc = "otherwise it is a vote to keep the status quo."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_."] #[doc = ""] #[doc = "- `ref_index`: The index of the referendum to vote for."] #[doc = "- `vote`: The vote configuration."] pub fn vote( &self, ref_index: ::core::primitive::u32, vote: runtime_types::pallet_democracy::vote::AccountVote< ::core::primitive::u128, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "vote", Vote { ref_index, vote }, [ 138u8, 213u8, 229u8, 111u8, 1u8, 191u8, 73u8, 3u8, 145u8, 28u8, 44u8, 88u8, 163u8, 188u8, 129u8, 188u8, 64u8, 15u8, 64u8, 103u8, 250u8, 97u8, 234u8, 188u8, 29u8, 205u8, 51u8, 6u8, 116u8, 58u8, 156u8, 201u8, ], ) } #[doc = "Schedule an emergency cancellation of a referendum. Cannot happen twice to the same"] #[doc = "referendum."] #[doc = ""] #[doc = "The dispatch origin of this call must be `CancellationOrigin`."] #[doc = ""] #[doc = "-`ref_index`: The index of the referendum to cancel."] #[doc = ""] #[doc = "Weight: `O(1)`."] pub fn emergency_cancel( &self, ref_index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "emergency_cancel", EmergencyCancel { ref_index }, [ 139u8, 213u8, 133u8, 75u8, 34u8, 206u8, 124u8, 245u8, 35u8, 237u8, 132u8, 92u8, 49u8, 167u8, 117u8, 80u8, 188u8, 93u8, 198u8, 237u8, 132u8, 77u8, 195u8, 65u8, 29u8, 37u8, 86u8, 74u8, 214u8, 119u8, 71u8, 204u8, ], ) } #[doc = "Schedule a referendum to be tabled once it is legal to schedule an external"] #[doc = "referendum."] #[doc = ""] #[doc = "The dispatch origin of this call must be `ExternalOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The preimage hash of the proposal."] pub fn external_propose( &self, proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "external_propose", ExternalPropose { proposal }, [ 164u8, 193u8, 14u8, 122u8, 105u8, 232u8, 20u8, 194u8, 99u8, 227u8, 36u8, 105u8, 218u8, 146u8, 16u8, 208u8, 56u8, 62u8, 100u8, 65u8, 35u8, 33u8, 51u8, 208u8, 17u8, 43u8, 223u8, 198u8, 202u8, 16u8, 56u8, 75u8, ], ) } #[doc = "Schedule a majority-carries referendum to be tabled next once it is legal to schedule"] #[doc = "an external referendum."] #[doc = ""] #[doc = "The dispatch of this call must be `ExternalMajorityOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The preimage hash of the proposal."] #[doc = ""] #[doc = "Unlike `external_propose`, blacklisting has no effect on this and it may replace a"] #[doc = "pre-scheduled `external_propose` call."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn external_propose_majority( &self, proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "external_propose_majority", ExternalProposeMajority { proposal }, [ 129u8, 124u8, 147u8, 253u8, 69u8, 115u8, 230u8, 186u8, 155u8, 4u8, 220u8, 103u8, 28u8, 132u8, 115u8, 153u8, 196u8, 88u8, 9u8, 130u8, 129u8, 234u8, 75u8, 96u8, 202u8, 216u8, 145u8, 189u8, 231u8, 101u8, 127u8, 11u8, ], ) } #[doc = "Schedule a negative-turnout-bias referendum to be tabled next once it is legal to"] #[doc = "schedule an external referendum."] #[doc = ""] #[doc = "The dispatch of this call must be `ExternalDefaultOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The preimage hash of the proposal."] #[doc = ""] #[doc = "Unlike `external_propose`, blacklisting has no effect on this and it may replace a"] #[doc = "pre-scheduled `external_propose` call."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn external_propose_default( &self, proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "external_propose_default", ExternalProposeDefault { proposal }, [ 96u8, 15u8, 108u8, 208u8, 141u8, 247u8, 4u8, 73u8, 2u8, 30u8, 231u8, 40u8, 184u8, 250u8, 42u8, 161u8, 248u8, 45u8, 217u8, 50u8, 53u8, 13u8, 181u8, 214u8, 136u8, 51u8, 93u8, 95u8, 165u8, 3u8, 83u8, 190u8, ], ) } #[doc = "Schedule the currently externally-proposed majority-carries referendum to be tabled"] #[doc = "immediately. If there is no externally-proposed referendum currently, or if there is one"] #[doc = "but it is not a majority-carries referendum then it fails."] #[doc = ""] #[doc = "The dispatch of this call must be `FastTrackOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The hash of the current external proposal."] #[doc = "- `voting_period`: The period that is allowed for voting on this proposal. Increased to"] #[doc = "\tMust be always greater than zero."] #[doc = "\tFor `FastTrackOrigin` must be equal or greater than `FastTrackVotingPeriod`."] #[doc = "- `delay`: The number of block after voting has ended in approval and this should be"] #[doc = " enacted. This doesn't have a minimum amount."] #[doc = ""] #[doc = "Emits `Started`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn fast_track( &self, proposal_hash: ::subxt::utils::H256, voting_period: ::core::primitive::u32, delay: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "fast_track", FastTrack { proposal_hash, voting_period, delay, }, [ 125u8, 209u8, 107u8, 120u8, 93u8, 205u8, 129u8, 147u8, 254u8, 126u8, 45u8, 126u8, 39u8, 0u8, 56u8, 14u8, 233u8, 49u8, 245u8, 220u8, 156u8, 10u8, 252u8, 31u8, 102u8, 90u8, 163u8, 236u8, 178u8, 85u8, 13u8, 24u8, ], ) } #[doc = "Veto and blacklist the external proposal hash."] #[doc = ""] #[doc = "The dispatch origin of this call must be `VetoOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The preimage hash of the proposal to veto and blacklist."] #[doc = ""] #[doc = "Emits `Vetoed`."] #[doc = ""] #[doc = "Weight: `O(V + log(V))` where V is number of `existing vetoers`"] pub fn veto_external( &self, proposal_hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "veto_external", VetoExternal { proposal_hash }, [ 209u8, 18u8, 18u8, 103u8, 186u8, 160u8, 214u8, 124u8, 150u8, 207u8, 112u8, 90u8, 84u8, 197u8, 95u8, 157u8, 165u8, 65u8, 109u8, 101u8, 75u8, 201u8, 41u8, 149u8, 75u8, 154u8, 37u8, 178u8, 239u8, 121u8, 124u8, 23u8, ], ) } #[doc = "Remove a referendum."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Root_."] #[doc = ""] #[doc = "- `ref_index`: The index of the referendum to cancel."] #[doc = ""] #[doc = "# Weight: `O(1)`."] pub fn cancel_referendum( &self, ref_index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "cancel_referendum", CancelReferendum { ref_index }, [ 51u8, 25u8, 25u8, 251u8, 236u8, 115u8, 130u8, 230u8, 72u8, 186u8, 119u8, 71u8, 165u8, 137u8, 55u8, 167u8, 187u8, 128u8, 55u8, 8u8, 212u8, 139u8, 245u8, 232u8, 103u8, 136u8, 229u8, 113u8, 125u8, 36u8, 1u8, 149u8, ], ) } #[doc = "Delegate the voting power (with some given conviction) of the sending account."] #[doc = ""] #[doc = "The balance delegated is locked for as long as it's delegated, and thereafter for the"] #[doc = "time appropriate for the conviction's lock period."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_, and the signing account must either:"] #[doc = " - be delegating already; or"] #[doc = " - have no voting activity (if there is, then it will need to be removed/consolidated"] #[doc = " through `reap_vote` or `unvote`)."] #[doc = ""] #[doc = "- `to`: The account whose voting the `target` account's voting power will follow."] #[doc = "- `conviction`: The conviction that will be attached to the delegated votes. When the"] #[doc = " account is undelegated, the funds will be locked for the corresponding period."] #[doc = "- `balance`: The amount of the account's balance to be used in delegating. This must not"] #[doc = " be more than the account's current balance."] #[doc = ""] #[doc = "Emits `Delegated`."] #[doc = ""] #[doc = "Weight: `O(R)` where R is the number of referendums the voter delegating to has"] #[doc = " voted on. Weight is charged as if maximum votes."] pub fn delegate( &self, to: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, conviction: runtime_types::pallet_democracy::conviction::Conviction, balance: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "delegate", Delegate { to, conviction, balance, }, [ 247u8, 226u8, 242u8, 221u8, 47u8, 161u8, 91u8, 223u8, 6u8, 79u8, 238u8, 205u8, 41u8, 188u8, 140u8, 56u8, 181u8, 248u8, 102u8, 10u8, 127u8, 166u8, 90u8, 187u8, 13u8, 124u8, 209u8, 117u8, 16u8, 209u8, 74u8, 29u8, ], ) } #[doc = "Undelegate the voting power of the sending account."] #[doc = ""] #[doc = "Tokens may be unlocked following once an amount of time consistent with the lock period"] #[doc = "of the conviction with which the delegation was issued."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_ and the signing account must be"] #[doc = "currently delegating."] #[doc = ""] #[doc = "Emits `Undelegated`."] #[doc = ""] #[doc = "Weight: `O(R)` where R is the number of referendums the voter delegating to has"] #[doc = " voted on. Weight is charged as if maximum votes."] pub fn undelegate(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "undelegate", Undelegate {}, [ 165u8, 40u8, 183u8, 209u8, 57u8, 153u8, 111u8, 29u8, 114u8, 109u8, 107u8, 235u8, 97u8, 61u8, 53u8, 155u8, 44u8, 245u8, 28u8, 220u8, 56u8, 134u8, 43u8, 122u8, 248u8, 156u8, 191u8, 154u8, 4u8, 121u8, 152u8, 153u8, ], ) } #[doc = "Clears all public proposals."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Root_."] #[doc = ""] #[doc = "Weight: `O(1)`."] pub fn clear_public_proposals( &self, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "clear_public_proposals", ClearPublicProposals {}, [ 59u8, 126u8, 254u8, 223u8, 252u8, 225u8, 75u8, 185u8, 188u8, 181u8, 42u8, 179u8, 211u8, 73u8, 12u8, 141u8, 243u8, 197u8, 46u8, 130u8, 215u8, 196u8, 225u8, 88u8, 48u8, 199u8, 231u8, 249u8, 195u8, 53u8, 184u8, 204u8, ], ) } #[doc = "Unlock tokens that have an expired lock."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_."] #[doc = ""] #[doc = "- `target`: The account to remove the lock on."] #[doc = ""] #[doc = "Weight: `O(R)` with R number of vote of target."] pub fn unlock( &self, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "unlock", Unlock { target }, [ 227u8, 6u8, 154u8, 150u8, 253u8, 167u8, 142u8, 6u8, 147u8, 24u8, 124u8, 51u8, 101u8, 185u8, 184u8, 170u8, 6u8, 223u8, 29u8, 167u8, 73u8, 31u8, 179u8, 60u8, 156u8, 244u8, 192u8, 233u8, 79u8, 99u8, 248u8, 126u8, ], ) } #[doc = "Remove a vote for a referendum."] #[doc = ""] #[doc = "If:"] #[doc = "- the referendum was cancelled, or"] #[doc = "- the referendum is ongoing, or"] #[doc = "- the referendum has ended such that"] #[doc = " - the vote of the account was in opposition to the result; or"] #[doc = " - there was no conviction to the account's vote; or"] #[doc = " - the account made a split vote"] #[doc = "...then the vote is removed cleanly and a following call to `unlock` may result in more"] #[doc = "funds being available."] #[doc = ""] #[doc = "If, however, the referendum has ended and:"] #[doc = "- it finished corresponding to the vote of the account, and"] #[doc = "- the account made a standard vote with conviction, and"] #[doc = "- the lock period of the conviction is not over"] #[doc = "...then the lock will be aggregated into the overall account's lock, which may involve"] #[doc = "*overlocking* (where the two locks are combined into a single lock that is the maximum"] #[doc = "of both the amount locked and the time is it locked for)."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_, and the signer must have a vote"] #[doc = "registered for referendum `index`."] #[doc = ""] #[doc = "- `index`: The index of referendum of the vote to be removed."] #[doc = ""] #[doc = "Weight: `O(R + log R)` where R is the number of referenda that `target` has voted on."] #[doc = " Weight is calculated for the maximum number of vote."] pub fn remove_vote( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "remove_vote", RemoveVote { index }, [ 148u8, 120u8, 14u8, 172u8, 81u8, 152u8, 159u8, 178u8, 106u8, 244u8, 36u8, 98u8, 120u8, 189u8, 213u8, 93u8, 119u8, 156u8, 112u8, 34u8, 241u8, 72u8, 206u8, 113u8, 212u8, 161u8, 164u8, 126u8, 122u8, 82u8, 160u8, 74u8, ], ) } #[doc = "Remove a vote for a referendum."] #[doc = ""] #[doc = "If the `target` is equal to the signer, then this function is exactly equivalent to"] #[doc = "`remove_vote`. If not equal to the signer, then the vote must have expired,"] #[doc = "either because the referendum was cancelled, because the voter lost the referendum or"] #[doc = "because the conviction period is over."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_."] #[doc = ""] #[doc = "- `target`: The account of the vote to be removed; this account must have voted for"] #[doc = " referendum `index`."] #[doc = "- `index`: The index of referendum of the vote to be removed."] #[doc = ""] #[doc = "Weight: `O(R + log R)` where R is the number of referenda that `target` has voted on."] #[doc = " Weight is calculated for the maximum number of vote."] pub fn remove_other_vote( &self, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "remove_other_vote", RemoveOtherVote { target, index }, [ 251u8, 245u8, 79u8, 229u8, 3u8, 107u8, 66u8, 202u8, 148u8, 31u8, 6u8, 236u8, 156u8, 202u8, 197u8, 107u8, 100u8, 60u8, 255u8, 213u8, 222u8, 209u8, 249u8, 61u8, 209u8, 215u8, 82u8, 73u8, 25u8, 73u8, 161u8, 24u8, ], ) } #[doc = "Permanently place a proposal into the blacklist. This prevents it from ever being"] #[doc = "proposed again."] #[doc = ""] #[doc = "If called on a queued public or external proposal, then this will result in it being"] #[doc = "removed. If the `ref_index` supplied is an active referendum with the proposal hash,"] #[doc = "then it will be cancelled."] #[doc = ""] #[doc = "The dispatch origin of this call must be `BlacklistOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The proposal hash to blacklist permanently."] #[doc = "- `ref_index`: An ongoing referendum whose hash is `proposal_hash`, which will be"] #[doc = "cancelled."] #[doc = ""] #[doc = "Weight: `O(p)` (though as this is an high-privilege dispatch, we assume it has a"] #[doc = " reasonable value)."] pub fn blacklist( &self, proposal_hash: ::subxt::utils::H256, maybe_ref_index: ::core::option::Option<::core::primitive::u32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "blacklist", Blacklist { proposal_hash, maybe_ref_index, }, [ 48u8, 144u8, 81u8, 164u8, 54u8, 111u8, 197u8, 134u8, 6u8, 98u8, 121u8, 179u8, 254u8, 191u8, 204u8, 212u8, 84u8, 255u8, 86u8, 110u8, 225u8, 130u8, 26u8, 65u8, 133u8, 56u8, 231u8, 15u8, 245u8, 137u8, 146u8, 242u8, ], ) } #[doc = "Remove a proposal."] #[doc = ""] #[doc = "The dispatch origin of this call must be `CancelProposalOrigin`."] #[doc = ""] #[doc = "- `prop_index`: The index of the proposal to cancel."] #[doc = ""] #[doc = "Weight: `O(p)` where `p = PublicProps::::decode_len()`"] pub fn cancel_proposal( &self, prop_index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Democracy", "cancel_proposal", CancelProposal { prop_index }, [ 179u8, 3u8, 198u8, 244u8, 241u8, 124u8, 205u8, 58u8, 100u8, 80u8, 177u8, 254u8, 98u8, 220u8, 189u8, 63u8, 229u8, 60u8, 157u8, 83u8, 142u8, 6u8, 236u8, 183u8, 193u8, 235u8, 253u8, 126u8, 153u8, 185u8, 74u8, 117u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_democracy::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion has been proposed by a public account."] pub struct Proposed { pub proposal_index: ::core::primitive::u32, pub deposit: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Proposed { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "Proposed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A public proposal has been tabled for referendum vote."] pub struct Tabled { pub proposal_index: ::core::primitive::u32, pub deposit: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Tabled { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "Tabled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An external proposal has been tabled."] pub struct ExternalTabled; impl ::subxt::events::StaticEvent for ExternalTabled { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "ExternalTabled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has begun."] pub struct Started { pub ref_index: ::core::primitive::u32, pub threshold: runtime_types::pallet_democracy::vote_threshold::VoteThreshold, } impl ::subxt::events::StaticEvent for Started { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "Started"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proposal has been approved by referendum."] pub struct Passed { pub ref_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Passed { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "Passed"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proposal has been rejected by referendum."] pub struct NotPassed { pub ref_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for NotPassed { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "NotPassed"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has been cancelled."] pub struct Cancelled { pub ref_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Cancelled { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "Cancelled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has delegated their vote to another account."] pub struct Delegated { pub who: ::subxt::utils::AccountId32, pub target: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Delegated { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "Delegated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has cancelled a previous delegation operation."] pub struct Undelegated { pub account: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Undelegated { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "Undelegated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An external proposal has been vetoed."] pub struct Vetoed { pub who: ::subxt::utils::AccountId32, pub proposal_hash: ::subxt::utils::H256, pub until: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Vetoed { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "Vetoed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proposal_hash has been blacklisted permanently."] pub struct Blacklisted { pub proposal_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Blacklisted { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "Blacklisted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has voted in a referendum"] pub struct Voted { pub voter: ::subxt::utils::AccountId32, pub ref_index: ::core::primitive::u32, pub vote: runtime_types::pallet_democracy::vote::AccountVote< ::core::primitive::u128, >, } impl ::subxt::events::StaticEvent for Voted { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "Voted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has secconded a proposal"] pub struct Seconded { pub seconder: ::subxt::utils::AccountId32, pub prop_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Seconded { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "Seconded"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proposal got canceled."] pub struct ProposalCanceled { pub prop_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ProposalCanceled { const PALLET: &'static str = "Democracy"; const EVENT: &'static str = "ProposalCanceled"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The number of (public) proposals that have been made so far."] pub fn public_prop_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "PublicPropCount", vec![], [ 91u8, 14u8, 171u8, 94u8, 37u8, 157u8, 46u8, 157u8, 254u8, 13u8, 68u8, 144u8, 23u8, 146u8, 128u8, 159u8, 9u8, 174u8, 74u8, 174u8, 218u8, 197u8, 23u8, 235u8, 152u8, 226u8, 216u8, 4u8, 120u8, 121u8, 27u8, 138u8, ], ) } #[doc = " The public proposals. Unsorted. The second item is the proposal."] pub fn public_props( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u32, runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, ::subxt::utils::AccountId32, )>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "PublicProps", vec![], [ 63u8, 172u8, 211u8, 85u8, 27u8, 14u8, 86u8, 49u8, 133u8, 5u8, 132u8, 189u8, 138u8, 137u8, 219u8, 37u8, 209u8, 49u8, 172u8, 86u8, 240u8, 235u8, 42u8, 201u8, 203u8, 12u8, 122u8, 225u8, 0u8, 109u8, 205u8, 103u8, ], ) } #[doc = " Those who have locked a deposit."] #[doc = ""] #[doc = " TWOX-NOTE: Safe, as increasing integer keys are safe."] pub fn deposit_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, ::core::primitive::u128, )>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "DepositOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 9u8, 219u8, 11u8, 58u8, 17u8, 194u8, 248u8, 154u8, 135u8, 119u8, 123u8, 235u8, 252u8, 176u8, 190u8, 162u8, 236u8, 45u8, 237u8, 125u8, 98u8, 176u8, 184u8, 160u8, 8u8, 181u8, 213u8, 65u8, 14u8, 84u8, 200u8, 64u8, ], ) } #[doc = " Those who have locked a deposit."] #[doc = ""] #[doc = " TWOX-NOTE: Safe, as increasing integer keys are safe."] pub fn deposit_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, ::core::primitive::u128, )>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "DepositOf", Vec::new(), [ 9u8, 219u8, 11u8, 58u8, 17u8, 194u8, 248u8, 154u8, 135u8, 119u8, 123u8, 235u8, 252u8, 176u8, 190u8, 162u8, 236u8, 45u8, 237u8, 125u8, 98u8, 176u8, 184u8, 160u8, 8u8, 181u8, 213u8, 65u8, 14u8, 84u8, 200u8, 64u8, ], ) } #[doc = " The next free referendum index, aka the number of referenda started so far."] pub fn referendum_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "ReferendumCount", vec![], [ 153u8, 210u8, 106u8, 244u8, 156u8, 70u8, 124u8, 251u8, 123u8, 75u8, 7u8, 189u8, 199u8, 145u8, 95u8, 119u8, 137u8, 11u8, 240u8, 160u8, 151u8, 248u8, 229u8, 231u8, 89u8, 222u8, 18u8, 237u8, 144u8, 78u8, 99u8, 58u8, ], ) } #[doc = " The lowest referendum index representing an unbaked referendum. Equal to"] #[doc = " `ReferendumCount` if there isn't a unbaked referendum."] pub fn lowest_unbaked( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "LowestUnbaked", vec![], [ 4u8, 51u8, 108u8, 11u8, 48u8, 165u8, 19u8, 251u8, 182u8, 76u8, 163u8, 73u8, 227u8, 2u8, 212u8, 74u8, 128u8, 27u8, 165u8, 164u8, 111u8, 22u8, 209u8, 190u8, 103u8, 7u8, 116u8, 16u8, 160u8, 144u8, 123u8, 64u8, ], ) } #[doc = " Information concerning any given referendum."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE as indexes are not under an attacker’s control."] pub fn referendum_info_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_democracy::types::ReferendumInfo< ::core::primitive::u32, runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "ReferendumInfoOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 167u8, 58u8, 230u8, 197u8, 185u8, 56u8, 181u8, 32u8, 81u8, 150u8, 29u8, 138u8, 142u8, 38u8, 255u8, 216u8, 139u8, 93u8, 56u8, 148u8, 196u8, 169u8, 168u8, 144u8, 193u8, 200u8, 187u8, 5u8, 141u8, 201u8, 254u8, 248u8, ], ) } #[doc = " Information concerning any given referendum."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE as indexes are not under an attacker’s control."] pub fn referendum_info_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_democracy::types::ReferendumInfo< ::core::primitive::u32, runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "ReferendumInfoOf", Vec::new(), [ 167u8, 58u8, 230u8, 197u8, 185u8, 56u8, 181u8, 32u8, 81u8, 150u8, 29u8, 138u8, 142u8, 38u8, 255u8, 216u8, 139u8, 93u8, 56u8, 148u8, 196u8, 169u8, 168u8, 144u8, 193u8, 200u8, 187u8, 5u8, 141u8, 201u8, 254u8, 248u8, ], ) } #[doc = " All votes for a particular voter. We store the balance for the number of votes that we"] #[doc = " have recorded. The second item is the total amount of delegations, that will be added."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE as `AccountId`s are crypto hashes anyway."] pub fn voting_of( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_democracy::vote::Voting< ::core::primitive::u128, ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "VotingOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 125u8, 121u8, 167u8, 170u8, 18u8, 194u8, 183u8, 38u8, 176u8, 48u8, 30u8, 88u8, 233u8, 196u8, 33u8, 119u8, 160u8, 201u8, 29u8, 183u8, 88u8, 67u8, 219u8, 137u8, 6u8, 195u8, 11u8, 63u8, 162u8, 181u8, 82u8, 243u8, ], ) } #[doc = " All votes for a particular voter. We store the balance for the number of votes that we"] #[doc = " have recorded. The second item is the total amount of delegations, that will be added."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE as `AccountId`s are crypto hashes anyway."] pub fn voting_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_democracy::vote::Voting< ::core::primitive::u128, ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "VotingOf", Vec::new(), [ 125u8, 121u8, 167u8, 170u8, 18u8, 194u8, 183u8, 38u8, 176u8, 48u8, 30u8, 88u8, 233u8, 196u8, 33u8, 119u8, 160u8, 201u8, 29u8, 183u8, 88u8, 67u8, 219u8, 137u8, 6u8, 195u8, 11u8, 63u8, 162u8, 181u8, 82u8, 243u8, ], ) } #[doc = " True if the last referendum tabled was submitted externally. False if it was a public"] #[doc = " proposal."] pub fn last_tabled_was_external( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "LastTabledWasExternal", vec![], [ 3u8, 67u8, 106u8, 1u8, 89u8, 204u8, 4u8, 145u8, 121u8, 44u8, 34u8, 76u8, 18u8, 206u8, 65u8, 214u8, 222u8, 82u8, 31u8, 223u8, 144u8, 169u8, 17u8, 6u8, 138u8, 36u8, 113u8, 155u8, 241u8, 106u8, 189u8, 218u8, ], ) } #[doc = " The referendum to be tabled whenever it would be valid to table an external proposal."] #[doc = " This happens when a referendum needs to be tabled and one of two conditions are met:"] #[doc = " - `LastTabledWasExternal` is `false`; or"] #[doc = " - `PublicProps` is empty."] pub fn next_external( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, runtime_types::pallet_democracy::vote_threshold::VoteThreshold, )>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "NextExternal", vec![], [ 213u8, 36u8, 235u8, 75u8, 153u8, 33u8, 140u8, 121u8, 191u8, 197u8, 17u8, 57u8, 234u8, 67u8, 81u8, 55u8, 123u8, 179u8, 207u8, 124u8, 238u8, 147u8, 243u8, 126u8, 200u8, 2u8, 16u8, 143u8, 165u8, 143u8, 159u8, 93u8, ], ) } #[doc = " A record of who vetoed what. Maps proposal hash to a possible existent block number"] #[doc = " (until when it may not be resubmitted) and who vetoed it."] pub fn blacklist( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, )>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "Blacklist", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 8u8, 227u8, 185u8, 179u8, 192u8, 92u8, 171u8, 125u8, 237u8, 224u8, 109u8, 207u8, 44u8, 181u8, 78u8, 17u8, 254u8, 183u8, 199u8, 241u8, 49u8, 90u8, 101u8, 168u8, 46u8, 89u8, 253u8, 155u8, 38u8, 183u8, 112u8, 35u8, ], ) } #[doc = " A record of who vetoed what. Maps proposal hash to a possible existent block number"] #[doc = " (until when it may not be resubmitted) and who vetoed it."] pub fn blacklist_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, )>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "Blacklist", Vec::new(), [ 8u8, 227u8, 185u8, 179u8, 192u8, 92u8, 171u8, 125u8, 237u8, 224u8, 109u8, 207u8, 44u8, 181u8, 78u8, 17u8, 254u8, 183u8, 199u8, 241u8, 49u8, 90u8, 101u8, 168u8, 46u8, 89u8, 253u8, 155u8, 38u8, 183u8, 112u8, 35u8, ], ) } #[doc = " Record of all proposals that have been subject to emergency cancellation."] pub fn cancellations( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "Cancellations", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 154u8, 36u8, 172u8, 46u8, 65u8, 218u8, 30u8, 151u8, 173u8, 186u8, 166u8, 79u8, 35u8, 226u8, 94u8, 200u8, 67u8, 44u8, 47u8, 7u8, 17u8, 89u8, 169u8, 166u8, 236u8, 101u8, 68u8, 54u8, 114u8, 141u8, 177u8, 135u8, ], ) } #[doc = " Record of all proposals that have been subject to emergency cancellation."] pub fn cancellations_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Democracy", "Cancellations", Vec::new(), [ 154u8, 36u8, 172u8, 46u8, 65u8, 218u8, 30u8, 151u8, 173u8, 186u8, 166u8, 79u8, 35u8, 226u8, 94u8, 200u8, 67u8, 44u8, 47u8, 7u8, 17u8, 89u8, 169u8, 166u8, 236u8, 101u8, 68u8, 54u8, 114u8, 141u8, 177u8, 135u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The period between a proposal being approved and enacted."] #[doc = ""] #[doc = " It should generally be a little more than the unstake period to ensure that"] #[doc = " voting stakers have an opportunity to remove themselves from the system in the case"] #[doc = " where they are on the losing side of a vote."] pub fn enactment_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "EnactmentPeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " How often (in blocks) new public referenda are launched."] pub fn launch_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "LaunchPeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " How often (in blocks) to check for new votes."] pub fn voting_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "VotingPeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The minimum period of vote locking."] #[doc = ""] #[doc = " It should be no shorter than enactment period to ensure that in the case of an approval,"] #[doc = " those successful voters are locked into the consequences that their votes entail."] pub fn vote_locking_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "VoteLockingPeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The minimum amount to be used as a deposit for a public referendum proposal."] pub fn minimum_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "MinimumDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " Indicator for whether an emergency origin is even allowed to happen. Some chains may"] #[doc = " want to set this permanently to `false`, others may want to condition it on things such"] #[doc = " as an upgrade having happened recently."] pub fn instant_allowed( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "InstantAllowed", [ 165u8, 28u8, 112u8, 190u8, 18u8, 129u8, 182u8, 206u8, 237u8, 1u8, 68u8, 252u8, 125u8, 234u8, 185u8, 50u8, 149u8, 164u8, 47u8, 126u8, 134u8, 100u8, 14u8, 86u8, 209u8, 39u8, 20u8, 4u8, 233u8, 115u8, 102u8, 131u8, ], ) } #[doc = " Minimum voting period allowed for a fast-track referendum."] pub fn fast_track_voting_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "FastTrackVotingPeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Period in blocks where an external proposal may not be re-submitted after being vetoed."] pub fn cooloff_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "CooloffPeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of votes for an account."] #[doc = ""] #[doc = " Also used to compute weight, an overly big value can"] #[doc = " lead to extrinsic with very big weight: see `delegate` for instance."] pub fn max_votes( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "MaxVotes", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of public proposals that can exist at any time."] pub fn max_proposals( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "MaxProposals", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of deposits a public proposal may have at any time."] pub fn max_deposits( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "MaxDeposits", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of items which can be blacklisted."] pub fn max_blacklisted( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Democracy", "MaxBlacklisted", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod council { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetMembers { pub new_members: ::std::vec::Vec<::subxt::utils::AccountId32>, pub prime: ::core::option::Option<::subxt::utils::AccountId32>, pub old_count: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Execute { pub proposal: ::std::boxed::Box, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Propose { #[codec(compact)] pub threshold: ::core::primitive::u32, pub proposal: ::std::boxed::Box, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vote { pub proposal: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, pub approve: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CloseOldWeight { pub proposal_hash: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, #[codec(compact)] pub proposal_weight_bound: runtime_types::sp_weights::OldWeight, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DisapproveProposal { pub proposal_hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Close { pub proposal_hash: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, pub proposal_weight_bound: runtime_types::sp_weights::weight_v2::Weight, #[codec(compact)] pub length_bound: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Set the collective's membership."] #[doc = ""] #[doc = "- `new_members`: The new member list. Be nice to the chain and provide it sorted."] #[doc = "- `prime`: The prime member whose vote sets the default."] #[doc = "- `old_count`: The upper bound for the previous number of members in storage. Used for"] #[doc = " weight estimation."] #[doc = ""] #[doc = "Requires root origin."] #[doc = ""] #[doc = "NOTE: Does not enforce the expected `MaxMembers` limit on the amount of members, but"] #[doc = " the weight estimations rely on it to estimate dispatchable weight."] #[doc = ""] #[doc = "# WARNING:"] #[doc = ""] #[doc = "The `pallet-collective` can also be managed by logic outside of the pallet through the"] #[doc = "implementation of the trait [`ChangeMembers`]."] #[doc = "Any call to `set_members` must be careful that the member set doesn't get out of sync"] #[doc = "with other logic managing the member set."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(MP + N)` where:"] #[doc = " - `M` old-members-count (code- and governance-bounded)"] #[doc = " - `N` new-members-count (code- and governance-bounded)"] #[doc = " - `P` proposals-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 1 storage mutation (codec `O(M)` read, `O(N)` write) for reading and writing the"] #[doc = " members"] #[doc = " - 1 storage read (codec `O(P)`) for reading the proposals"] #[doc = " - `P` storage mutations (codec `O(M)`) for updating the votes for each proposal"] #[doc = " - 1 storage write (codec `O(1)`) for deleting the old `prime` and setting the new one"] #[doc = "# "] pub fn set_members( &self, new_members: ::std::vec::Vec<::subxt::utils::AccountId32>, prime: ::core::option::Option<::subxt::utils::AccountId32>, old_count: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Council", "set_members", SetMembers { new_members, prime, old_count, }, [ 196u8, 103u8, 123u8, 125u8, 226u8, 177u8, 126u8, 37u8, 160u8, 114u8, 34u8, 136u8, 219u8, 84u8, 199u8, 94u8, 242u8, 20u8, 126u8, 126u8, 166u8, 190u8, 198u8, 33u8, 162u8, 113u8, 237u8, 222u8, 90u8, 1u8, 2u8, 234u8, ], ) } #[doc = "Dispatch a proposal from a member using the `Member` origin."] #[doc = ""] #[doc = "Origin must be a member of the collective."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(M + P)` where `M` members-count (code-bounded) and `P` complexity of dispatching"] #[doc = " `proposal`"] #[doc = "- DB: 1 read (codec `O(M)`) + DB access of `proposal`"] #[doc = "- 1 event"] #[doc = "# "] pub fn execute( &self, proposal: runtime_types::kitchensink_runtime::RuntimeCall, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Council", "execute", Execute { proposal: ::std::boxed::Box::new(proposal), length_bound, }, [ 11u8, 230u8, 151u8, 156u8, 17u8, 226u8, 224u8, 243u8, 34u8, 47u8, 174u8, 194u8, 108u8, 108u8, 225u8, 234u8, 208u8, 246u8, 234u8, 1u8, 163u8, 25u8, 151u8, 208u8, 10u8, 87u8, 0u8, 47u8, 171u8, 217u8, 193u8, 141u8, ], ) } #[doc = "Add a new proposal to either be voted on or executed directly."] #[doc = ""] #[doc = "Requires the sender to be member."] #[doc = ""] #[doc = "`threshold` determines whether `proposal` is executed directly (`threshold < 2`)"] #[doc = "or put up for voting."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1)` or `O(B + M + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - branching is influenced by `threshold` where:"] #[doc = " - `P1` is proposal execution complexity (`threshold < 2`)"] #[doc = " - `P2` is proposals-count (code-bounded) (`threshold >= 2`)"] #[doc = "- DB:"] #[doc = " - 1 storage read `is_member` (codec `O(M)`)"] #[doc = " - 1 storage read `ProposalOf::contains_key` (codec `O(1)`)"] #[doc = " - DB accesses influenced by `threshold`:"] #[doc = " - EITHER storage accesses done by `proposal` (`threshold < 2`)"] #[doc = " - OR proposal insertion (`threshold <= 2`)"] #[doc = " - 1 storage mutation `Proposals` (codec `O(P2)`)"] #[doc = " - 1 storage mutation `ProposalCount` (codec `O(1)`)"] #[doc = " - 1 storage write `ProposalOf` (codec `O(B)`)"] #[doc = " - 1 storage write `Voting` (codec `O(M)`)"] #[doc = " - 1 event"] #[doc = "# "] pub fn propose( &self, threshold: ::core::primitive::u32, proposal: runtime_types::kitchensink_runtime::RuntimeCall, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Council", "propose", Propose { threshold, proposal: ::std::boxed::Box::new(proposal), length_bound, }, [ 86u8, 118u8, 118u8, 134u8, 244u8, 21u8, 74u8, 68u8, 219u8, 175u8, 153u8, 175u8, 75u8, 118u8, 200u8, 66u8, 152u8, 203u8, 5u8, 224u8, 152u8, 129u8, 167u8, 208u8, 225u8, 247u8, 119u8, 116u8, 33u8, 68u8, 75u8, 245u8, ], ) } #[doc = "Add an aye or nay vote for the sender to the given proposal."] #[doc = ""] #[doc = "Requires the sender to be a member."] #[doc = ""] #[doc = "Transaction fees will be waived if the member is voting on any particular proposal"] #[doc = "for the first time and the call is successful. Subsequent vote changes will charge a"] #[doc = "fee."] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(M)` where `M` is members-count (code- and governance-bounded)"] #[doc = "- DB:"] #[doc = " - 1 storage read `Members` (codec `O(M)`)"] #[doc = " - 1 storage mutation `Voting` (codec `O(M)`)"] #[doc = "- 1 event"] #[doc = "# "] pub fn vote( &self, proposal: ::subxt::utils::H256, index: ::core::primitive::u32, approve: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Council", "vote", Vote { proposal, index, approve, }, [ 108u8, 46u8, 180u8, 148u8, 145u8, 24u8, 173u8, 56u8, 36u8, 100u8, 216u8, 43u8, 178u8, 202u8, 26u8, 136u8, 93u8, 84u8, 80u8, 134u8, 14u8, 42u8, 248u8, 205u8, 68u8, 92u8, 79u8, 11u8, 113u8, 115u8, 157u8, 100u8, ], ) } #[doc = "Close a vote that is either approved, disapproved or whose voting period has ended."] #[doc = ""] #[doc = "May be called by any signed account in order to finish voting and close the proposal."] #[doc = ""] #[doc = "If called before the end of the voting period it will only close the vote if it is"] #[doc = "has enough votes to be approved or disapproved."] #[doc = ""] #[doc = "If called after the end of the voting period abstentions are counted as rejections"] #[doc = "unless there is a prime member set and the prime member cast an approval."] #[doc = ""] #[doc = "If the close operation completes successfully with disapproval, the transaction fee will"] #[doc = "be waived. Otherwise execution of the approved operation will be charged to the caller."] #[doc = ""] #[doc = "+ `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed"] #[doc = "proposal."] #[doc = "+ `length_bound`: The upper bound for the length of the proposal in storage. Checked via"] #[doc = "`storage::read` so it is `size_of::() == 4` larger than the pure length."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1 + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - `P1` is the complexity of `proposal` preimage."] #[doc = " - `P2` is proposal-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`)"] #[doc = " - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec"] #[doc = " `O(P2)`)"] #[doc = " - any mutations done while executing `proposal` (`P1`)"] #[doc = "- up to 3 events"] #[doc = "# "] pub fn close_old_weight( &self, proposal_hash: ::subxt::utils::H256, index: ::core::primitive::u32, proposal_weight_bound: runtime_types::sp_weights::OldWeight, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Council", "close_old_weight", CloseOldWeight { proposal_hash, index, proposal_weight_bound, length_bound, }, [ 133u8, 219u8, 90u8, 40u8, 102u8, 95u8, 4u8, 199u8, 45u8, 234u8, 109u8, 17u8, 162u8, 63u8, 102u8, 186u8, 95u8, 182u8, 13u8, 123u8, 227u8, 20u8, 186u8, 207u8, 12u8, 47u8, 87u8, 252u8, 244u8, 172u8, 60u8, 206u8, ], ) } #[doc = "Disapprove a proposal, close, and remove it from the system, regardless of its current"] #[doc = "state."] #[doc = ""] #[doc = "Must be called by the Root origin."] #[doc = ""] #[doc = "Parameters:"] #[doc = "* `proposal_hash`: The hash of the proposal that should be disapproved."] #[doc = ""] #[doc = "# "] #[doc = "Complexity: O(P) where P is the number of max proposals"] #[doc = "DB Weight:"] #[doc = "* Reads: Proposals"] #[doc = "* Writes: Voting, Proposals, ProposalOf"] #[doc = "# "] pub fn disapprove_proposal( &self, proposal_hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Council", "disapprove_proposal", DisapproveProposal { proposal_hash }, [ 25u8, 123u8, 1u8, 8u8, 74u8, 37u8, 3u8, 40u8, 97u8, 37u8, 175u8, 224u8, 72u8, 155u8, 123u8, 109u8, 104u8, 43u8, 91u8, 125u8, 199u8, 51u8, 17u8, 225u8, 133u8, 38u8, 120u8, 76u8, 164u8, 5u8, 194u8, 201u8, ], ) } #[doc = "Close a vote that is either approved, disapproved or whose voting period has ended."] #[doc = ""] #[doc = "May be called by any signed account in order to finish voting and close the proposal."] #[doc = ""] #[doc = "If called before the end of the voting period it will only close the vote if it is"] #[doc = "has enough votes to be approved or disapproved."] #[doc = ""] #[doc = "If called after the end of the voting period abstentions are counted as rejections"] #[doc = "unless there is a prime member set and the prime member cast an approval."] #[doc = ""] #[doc = "If the close operation completes successfully with disapproval, the transaction fee will"] #[doc = "be waived. Otherwise execution of the approved operation will be charged to the caller."] #[doc = ""] #[doc = "+ `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed"] #[doc = "proposal."] #[doc = "+ `length_bound`: The upper bound for the length of the proposal in storage. Checked via"] #[doc = "`storage::read` so it is `size_of::() == 4` larger than the pure length."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1 + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - `P1` is the complexity of `proposal` preimage."] #[doc = " - `P2` is proposal-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`)"] #[doc = " - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec"] #[doc = " `O(P2)`)"] #[doc = " - any mutations done while executing `proposal` (`P1`)"] #[doc = "- up to 3 events"] #[doc = "# "] pub fn close( &self, proposal_hash: ::subxt::utils::H256, index: ::core::primitive::u32, proposal_weight_bound: runtime_types::sp_weights::weight_v2::Weight, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Council", "close", Close { proposal_hash, index, proposal_weight_bound, length_bound, }, [ 191u8, 138u8, 89u8, 247u8, 97u8, 51u8, 45u8, 193u8, 76u8, 16u8, 80u8, 225u8, 197u8, 83u8, 204u8, 133u8, 169u8, 16u8, 86u8, 32u8, 125u8, 16u8, 116u8, 185u8, 45u8, 20u8, 76u8, 148u8, 206u8, 163u8, 154u8, 30u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_collective::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion (given hash) has been proposed (by given account) with a threshold (given"] #[doc = "`MemberCount`)."] pub struct Proposed { pub account: ::subxt::utils::AccountId32, pub proposal_index: ::core::primitive::u32, pub proposal_hash: ::subxt::utils::H256, pub threshold: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Proposed { const PALLET: &'static str = "Council"; const EVENT: &'static str = "Proposed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion (given hash) has been voted on by given account, leaving"] #[doc = "a tally (yes votes and no votes given respectively as `MemberCount`)."] pub struct Voted { pub account: ::subxt::utils::AccountId32, pub proposal_hash: ::subxt::utils::H256, pub voted: ::core::primitive::bool, pub yes: ::core::primitive::u32, pub no: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Voted { const PALLET: &'static str = "Council"; const EVENT: &'static str = "Voted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion was approved by the required threshold."] pub struct Approved { pub proposal_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Approved { const PALLET: &'static str = "Council"; const EVENT: &'static str = "Approved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion was not approved by the required threshold."] pub struct Disapproved { pub proposal_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Disapproved { const PALLET: &'static str = "Council"; const EVENT: &'static str = "Disapproved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion was executed; result will be `Ok` if it returned without error."] pub struct Executed { pub proposal_hash: ::subxt::utils::H256, pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for Executed { const PALLET: &'static str = "Council"; const EVENT: &'static str = "Executed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A single member did some action; result will be `Ok` if it returned without error."] pub struct MemberExecuted { pub proposal_hash: ::subxt::utils::H256, pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for MemberExecuted { const PALLET: &'static str = "Council"; const EVENT: &'static str = "MemberExecuted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proposal was closed because its threshold was reached or after its duration was up."] pub struct Closed { pub proposal_hash: ::subxt::utils::H256, pub yes: ::core::primitive::u32, pub no: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Closed { const PALLET: &'static str = "Council"; const EVENT: &'static str = "Closed"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The hashes of the active proposals."] pub fn proposals( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::H256, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Council", "Proposals", vec![], [ 10u8, 133u8, 82u8, 54u8, 193u8, 41u8, 253u8, 159u8, 56u8, 96u8, 249u8, 148u8, 43u8, 57u8, 116u8, 43u8, 222u8, 243u8, 237u8, 231u8, 238u8, 60u8, 26u8, 225u8, 19u8, 203u8, 213u8, 220u8, 114u8, 217u8, 100u8, 27u8, ], ) } #[doc = " Actual proposal for a given hash, if it's current."] pub fn proposal_of( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::kitchensink_runtime::RuntimeCall, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Council", "ProposalOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 7u8, 48u8, 66u8, 129u8, 189u8, 239u8, 162u8, 148u8, 206u8, 226u8, 56u8, 83u8, 105u8, 85u8, 12u8, 168u8, 84u8, 118u8, 7u8, 7u8, 100u8, 5u8, 245u8, 209u8, 143u8, 242u8, 48u8, 78u8, 157u8, 98u8, 42u8, 127u8, ], ) } #[doc = " Actual proposal for a given hash, if it's current."] pub fn proposal_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::kitchensink_runtime::RuntimeCall, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Council", "ProposalOf", Vec::new(), [ 7u8, 48u8, 66u8, 129u8, 189u8, 239u8, 162u8, 148u8, 206u8, 226u8, 56u8, 83u8, 105u8, 85u8, 12u8, 168u8, 84u8, 118u8, 7u8, 7u8, 100u8, 5u8, 245u8, 209u8, 143u8, 242u8, 48u8, 78u8, 157u8, 98u8, 42u8, 127u8, ], ) } #[doc = " Votes on a given proposal, if it is ongoing."] pub fn voting( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_collective::Votes< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Council", "Voting", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 89u8, 108u8, 65u8, 58u8, 60u8, 116u8, 54u8, 68u8, 179u8, 73u8, 161u8, 168u8, 78u8, 213u8, 208u8, 54u8, 244u8, 58u8, 70u8, 209u8, 170u8, 136u8, 215u8, 3u8, 2u8, 105u8, 229u8, 217u8, 240u8, 230u8, 107u8, 221u8, ], ) } #[doc = " Votes on a given proposal, if it is ongoing."] pub fn voting_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_collective::Votes< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Council", "Voting", Vec::new(), [ 89u8, 108u8, 65u8, 58u8, 60u8, 116u8, 54u8, 68u8, 179u8, 73u8, 161u8, 168u8, 78u8, 213u8, 208u8, 54u8, 244u8, 58u8, 70u8, 209u8, 170u8, 136u8, 215u8, 3u8, 2u8, 105u8, 229u8, 217u8, 240u8, 230u8, 107u8, 221u8, ], ) } #[doc = " Proposals so far."] pub fn proposal_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Council", "ProposalCount", vec![], [ 132u8, 145u8, 78u8, 218u8, 51u8, 189u8, 55u8, 172u8, 143u8, 33u8, 140u8, 99u8, 124u8, 208u8, 57u8, 232u8, 154u8, 110u8, 32u8, 142u8, 24u8, 149u8, 109u8, 105u8, 30u8, 83u8, 39u8, 177u8, 127u8, 160u8, 34u8, 70u8, ], ) } #[doc = " The current members of the collective. This is stored sorted (just by value)."] pub fn members( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::subxt::utils::AccountId32>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Council", "Members", vec![], [ 162u8, 72u8, 174u8, 204u8, 140u8, 105u8, 205u8, 176u8, 197u8, 117u8, 206u8, 134u8, 157u8, 110u8, 139u8, 54u8, 43u8, 233u8, 25u8, 51u8, 36u8, 238u8, 94u8, 124u8, 221u8, 52u8, 237u8, 71u8, 125u8, 56u8, 129u8, 222u8, ], ) } #[doc = " The prime member that helps determine the default vote behavior in case of absentations."] pub fn prime( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Council", "Prime", vec![], [ 108u8, 118u8, 54u8, 193u8, 207u8, 227u8, 119u8, 97u8, 23u8, 239u8, 157u8, 69u8, 56u8, 142u8, 106u8, 17u8, 215u8, 159u8, 48u8, 42u8, 185u8, 209u8, 49u8, 159u8, 32u8, 168u8, 111u8, 158u8, 159u8, 217u8, 244u8, 158u8, ], ) } } } } pub mod technical_committee { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetMembers { pub new_members: ::std::vec::Vec<::subxt::utils::AccountId32>, pub prime: ::core::option::Option<::subxt::utils::AccountId32>, pub old_count: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Execute { pub proposal: ::std::boxed::Box, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Propose { #[codec(compact)] pub threshold: ::core::primitive::u32, pub proposal: ::std::boxed::Box, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vote { pub proposal: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, pub approve: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CloseOldWeight { pub proposal_hash: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, #[codec(compact)] pub proposal_weight_bound: runtime_types::sp_weights::OldWeight, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DisapproveProposal { pub proposal_hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Close { pub proposal_hash: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, pub proposal_weight_bound: runtime_types::sp_weights::weight_v2::Weight, #[codec(compact)] pub length_bound: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Set the collective's membership."] #[doc = ""] #[doc = "- `new_members`: The new member list. Be nice to the chain and provide it sorted."] #[doc = "- `prime`: The prime member whose vote sets the default."] #[doc = "- `old_count`: The upper bound for the previous number of members in storage. Used for"] #[doc = " weight estimation."] #[doc = ""] #[doc = "Requires root origin."] #[doc = ""] #[doc = "NOTE: Does not enforce the expected `MaxMembers` limit on the amount of members, but"] #[doc = " the weight estimations rely on it to estimate dispatchable weight."] #[doc = ""] #[doc = "# WARNING:"] #[doc = ""] #[doc = "The `pallet-collective` can also be managed by logic outside of the pallet through the"] #[doc = "implementation of the trait [`ChangeMembers`]."] #[doc = "Any call to `set_members` must be careful that the member set doesn't get out of sync"] #[doc = "with other logic managing the member set."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(MP + N)` where:"] #[doc = " - `M` old-members-count (code- and governance-bounded)"] #[doc = " - `N` new-members-count (code- and governance-bounded)"] #[doc = " - `P` proposals-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 1 storage mutation (codec `O(M)` read, `O(N)` write) for reading and writing the"] #[doc = " members"] #[doc = " - 1 storage read (codec `O(P)`) for reading the proposals"] #[doc = " - `P` storage mutations (codec `O(M)`) for updating the votes for each proposal"] #[doc = " - 1 storage write (codec `O(1)`) for deleting the old `prime` and setting the new one"] #[doc = "# "] pub fn set_members( &self, new_members: ::std::vec::Vec<::subxt::utils::AccountId32>, prime: ::core::option::Option<::subxt::utils::AccountId32>, old_count: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalCommittee", "set_members", SetMembers { new_members, prime, old_count, }, [ 196u8, 103u8, 123u8, 125u8, 226u8, 177u8, 126u8, 37u8, 160u8, 114u8, 34u8, 136u8, 219u8, 84u8, 199u8, 94u8, 242u8, 20u8, 126u8, 126u8, 166u8, 190u8, 198u8, 33u8, 162u8, 113u8, 237u8, 222u8, 90u8, 1u8, 2u8, 234u8, ], ) } #[doc = "Dispatch a proposal from a member using the `Member` origin."] #[doc = ""] #[doc = "Origin must be a member of the collective."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(M + P)` where `M` members-count (code-bounded) and `P` complexity of dispatching"] #[doc = " `proposal`"] #[doc = "- DB: 1 read (codec `O(M)`) + DB access of `proposal`"] #[doc = "- 1 event"] #[doc = "# "] pub fn execute( &self, proposal: runtime_types::kitchensink_runtime::RuntimeCall, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalCommittee", "execute", Execute { proposal: ::std::boxed::Box::new(proposal), length_bound, }, [ 11u8, 230u8, 151u8, 156u8, 17u8, 226u8, 224u8, 243u8, 34u8, 47u8, 174u8, 194u8, 108u8, 108u8, 225u8, 234u8, 208u8, 246u8, 234u8, 1u8, 163u8, 25u8, 151u8, 208u8, 10u8, 87u8, 0u8, 47u8, 171u8, 217u8, 193u8, 141u8, ], ) } #[doc = "Add a new proposal to either be voted on or executed directly."] #[doc = ""] #[doc = "Requires the sender to be member."] #[doc = ""] #[doc = "`threshold` determines whether `proposal` is executed directly (`threshold < 2`)"] #[doc = "or put up for voting."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1)` or `O(B + M + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - branching is influenced by `threshold` where:"] #[doc = " - `P1` is proposal execution complexity (`threshold < 2`)"] #[doc = " - `P2` is proposals-count (code-bounded) (`threshold >= 2`)"] #[doc = "- DB:"] #[doc = " - 1 storage read `is_member` (codec `O(M)`)"] #[doc = " - 1 storage read `ProposalOf::contains_key` (codec `O(1)`)"] #[doc = " - DB accesses influenced by `threshold`:"] #[doc = " - EITHER storage accesses done by `proposal` (`threshold < 2`)"] #[doc = " - OR proposal insertion (`threshold <= 2`)"] #[doc = " - 1 storage mutation `Proposals` (codec `O(P2)`)"] #[doc = " - 1 storage mutation `ProposalCount` (codec `O(1)`)"] #[doc = " - 1 storage write `ProposalOf` (codec `O(B)`)"] #[doc = " - 1 storage write `Voting` (codec `O(M)`)"] #[doc = " - 1 event"] #[doc = "# "] pub fn propose( &self, threshold: ::core::primitive::u32, proposal: runtime_types::kitchensink_runtime::RuntimeCall, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalCommittee", "propose", Propose { threshold, proposal: ::std::boxed::Box::new(proposal), length_bound, }, [ 86u8, 118u8, 118u8, 134u8, 244u8, 21u8, 74u8, 68u8, 219u8, 175u8, 153u8, 175u8, 75u8, 118u8, 200u8, 66u8, 152u8, 203u8, 5u8, 224u8, 152u8, 129u8, 167u8, 208u8, 225u8, 247u8, 119u8, 116u8, 33u8, 68u8, 75u8, 245u8, ], ) } #[doc = "Add an aye or nay vote for the sender to the given proposal."] #[doc = ""] #[doc = "Requires the sender to be a member."] #[doc = ""] #[doc = "Transaction fees will be waived if the member is voting on any particular proposal"] #[doc = "for the first time and the call is successful. Subsequent vote changes will charge a"] #[doc = "fee."] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(M)` where `M` is members-count (code- and governance-bounded)"] #[doc = "- DB:"] #[doc = " - 1 storage read `Members` (codec `O(M)`)"] #[doc = " - 1 storage mutation `Voting` (codec `O(M)`)"] #[doc = "- 1 event"] #[doc = "# "] pub fn vote( &self, proposal: ::subxt::utils::H256, index: ::core::primitive::u32, approve: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalCommittee", "vote", Vote { proposal, index, approve, }, [ 108u8, 46u8, 180u8, 148u8, 145u8, 24u8, 173u8, 56u8, 36u8, 100u8, 216u8, 43u8, 178u8, 202u8, 26u8, 136u8, 93u8, 84u8, 80u8, 134u8, 14u8, 42u8, 248u8, 205u8, 68u8, 92u8, 79u8, 11u8, 113u8, 115u8, 157u8, 100u8, ], ) } #[doc = "Close a vote that is either approved, disapproved or whose voting period has ended."] #[doc = ""] #[doc = "May be called by any signed account in order to finish voting and close the proposal."] #[doc = ""] #[doc = "If called before the end of the voting period it will only close the vote if it is"] #[doc = "has enough votes to be approved or disapproved."] #[doc = ""] #[doc = "If called after the end of the voting period abstentions are counted as rejections"] #[doc = "unless there is a prime member set and the prime member cast an approval."] #[doc = ""] #[doc = "If the close operation completes successfully with disapproval, the transaction fee will"] #[doc = "be waived. Otherwise execution of the approved operation will be charged to the caller."] #[doc = ""] #[doc = "+ `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed"] #[doc = "proposal."] #[doc = "+ `length_bound`: The upper bound for the length of the proposal in storage. Checked via"] #[doc = "`storage::read` so it is `size_of::() == 4` larger than the pure length."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1 + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - `P1` is the complexity of `proposal` preimage."] #[doc = " - `P2` is proposal-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`)"] #[doc = " - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec"] #[doc = " `O(P2)`)"] #[doc = " - any mutations done while executing `proposal` (`P1`)"] #[doc = "- up to 3 events"] #[doc = "# "] pub fn close_old_weight( &self, proposal_hash: ::subxt::utils::H256, index: ::core::primitive::u32, proposal_weight_bound: runtime_types::sp_weights::OldWeight, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalCommittee", "close_old_weight", CloseOldWeight { proposal_hash, index, proposal_weight_bound, length_bound, }, [ 133u8, 219u8, 90u8, 40u8, 102u8, 95u8, 4u8, 199u8, 45u8, 234u8, 109u8, 17u8, 162u8, 63u8, 102u8, 186u8, 95u8, 182u8, 13u8, 123u8, 227u8, 20u8, 186u8, 207u8, 12u8, 47u8, 87u8, 252u8, 244u8, 172u8, 60u8, 206u8, ], ) } #[doc = "Disapprove a proposal, close, and remove it from the system, regardless of its current"] #[doc = "state."] #[doc = ""] #[doc = "Must be called by the Root origin."] #[doc = ""] #[doc = "Parameters:"] #[doc = "* `proposal_hash`: The hash of the proposal that should be disapproved."] #[doc = ""] #[doc = "# "] #[doc = "Complexity: O(P) where P is the number of max proposals"] #[doc = "DB Weight:"] #[doc = "* Reads: Proposals"] #[doc = "* Writes: Voting, Proposals, ProposalOf"] #[doc = "# "] pub fn disapprove_proposal( &self, proposal_hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalCommittee", "disapprove_proposal", DisapproveProposal { proposal_hash }, [ 25u8, 123u8, 1u8, 8u8, 74u8, 37u8, 3u8, 40u8, 97u8, 37u8, 175u8, 224u8, 72u8, 155u8, 123u8, 109u8, 104u8, 43u8, 91u8, 125u8, 199u8, 51u8, 17u8, 225u8, 133u8, 38u8, 120u8, 76u8, 164u8, 5u8, 194u8, 201u8, ], ) } #[doc = "Close a vote that is either approved, disapproved or whose voting period has ended."] #[doc = ""] #[doc = "May be called by any signed account in order to finish voting and close the proposal."] #[doc = ""] #[doc = "If called before the end of the voting period it will only close the vote if it is"] #[doc = "has enough votes to be approved or disapproved."] #[doc = ""] #[doc = "If called after the end of the voting period abstentions are counted as rejections"] #[doc = "unless there is a prime member set and the prime member cast an approval."] #[doc = ""] #[doc = "If the close operation completes successfully with disapproval, the transaction fee will"] #[doc = "be waived. Otherwise execution of the approved operation will be charged to the caller."] #[doc = ""] #[doc = "+ `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed"] #[doc = "proposal."] #[doc = "+ `length_bound`: The upper bound for the length of the proposal in storage. Checked via"] #[doc = "`storage::read` so it is `size_of::() == 4` larger than the pure length."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1 + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - `P1` is the complexity of `proposal` preimage."] #[doc = " - `P2` is proposal-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`)"] #[doc = " - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec"] #[doc = " `O(P2)`)"] #[doc = " - any mutations done while executing `proposal` (`P1`)"] #[doc = "- up to 3 events"] #[doc = "# "] pub fn close( &self, proposal_hash: ::subxt::utils::H256, index: ::core::primitive::u32, proposal_weight_bound: runtime_types::sp_weights::weight_v2::Weight, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalCommittee", "close", Close { proposal_hash, index, proposal_weight_bound, length_bound, }, [ 191u8, 138u8, 89u8, 247u8, 97u8, 51u8, 45u8, 193u8, 76u8, 16u8, 80u8, 225u8, 197u8, 83u8, 204u8, 133u8, 169u8, 16u8, 86u8, 32u8, 125u8, 16u8, 116u8, 185u8, 45u8, 20u8, 76u8, 148u8, 206u8, 163u8, 154u8, 30u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_collective::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion (given hash) has been proposed (by given account) with a threshold (given"] #[doc = "`MemberCount`)."] pub struct Proposed { pub account: ::subxt::utils::AccountId32, pub proposal_index: ::core::primitive::u32, pub proposal_hash: ::subxt::utils::H256, pub threshold: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Proposed { const PALLET: &'static str = "TechnicalCommittee"; const EVENT: &'static str = "Proposed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion (given hash) has been voted on by given account, leaving"] #[doc = "a tally (yes votes and no votes given respectively as `MemberCount`)."] pub struct Voted { pub account: ::subxt::utils::AccountId32, pub proposal_hash: ::subxt::utils::H256, pub voted: ::core::primitive::bool, pub yes: ::core::primitive::u32, pub no: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Voted { const PALLET: &'static str = "TechnicalCommittee"; const EVENT: &'static str = "Voted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion was approved by the required threshold."] pub struct Approved { pub proposal_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Approved { const PALLET: &'static str = "TechnicalCommittee"; const EVENT: &'static str = "Approved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion was not approved by the required threshold."] pub struct Disapproved { pub proposal_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Disapproved { const PALLET: &'static str = "TechnicalCommittee"; const EVENT: &'static str = "Disapproved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion was executed; result will be `Ok` if it returned without error."] pub struct Executed { pub proposal_hash: ::subxt::utils::H256, pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for Executed { const PALLET: &'static str = "TechnicalCommittee"; const EVENT: &'static str = "Executed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A single member did some action; result will be `Ok` if it returned without error."] pub struct MemberExecuted { pub proposal_hash: ::subxt::utils::H256, pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for MemberExecuted { const PALLET: &'static str = "TechnicalCommittee"; const EVENT: &'static str = "MemberExecuted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proposal was closed because its threshold was reached or after its duration was up."] pub struct Closed { pub proposal_hash: ::subxt::utils::H256, pub yes: ::core::primitive::u32, pub no: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Closed { const PALLET: &'static str = "TechnicalCommittee"; const EVENT: &'static str = "Closed"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The hashes of the active proposals."] pub fn proposals( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::H256, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "TechnicalCommittee", "Proposals", vec![], [ 10u8, 133u8, 82u8, 54u8, 193u8, 41u8, 253u8, 159u8, 56u8, 96u8, 249u8, 148u8, 43u8, 57u8, 116u8, 43u8, 222u8, 243u8, 237u8, 231u8, 238u8, 60u8, 26u8, 225u8, 19u8, 203u8, 213u8, 220u8, 114u8, 217u8, 100u8, 27u8, ], ) } #[doc = " Actual proposal for a given hash, if it's current."] pub fn proposal_of( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::kitchensink_runtime::RuntimeCall, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "TechnicalCommittee", "ProposalOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 7u8, 48u8, 66u8, 129u8, 189u8, 239u8, 162u8, 148u8, 206u8, 226u8, 56u8, 83u8, 105u8, 85u8, 12u8, 168u8, 84u8, 118u8, 7u8, 7u8, 100u8, 5u8, 245u8, 209u8, 143u8, 242u8, 48u8, 78u8, 157u8, 98u8, 42u8, 127u8, ], ) } #[doc = " Actual proposal for a given hash, if it's current."] pub fn proposal_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::kitchensink_runtime::RuntimeCall, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "TechnicalCommittee", "ProposalOf", Vec::new(), [ 7u8, 48u8, 66u8, 129u8, 189u8, 239u8, 162u8, 148u8, 206u8, 226u8, 56u8, 83u8, 105u8, 85u8, 12u8, 168u8, 84u8, 118u8, 7u8, 7u8, 100u8, 5u8, 245u8, 209u8, 143u8, 242u8, 48u8, 78u8, 157u8, 98u8, 42u8, 127u8, ], ) } #[doc = " Votes on a given proposal, if it is ongoing."] pub fn voting( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_collective::Votes< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "TechnicalCommittee", "Voting", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 89u8, 108u8, 65u8, 58u8, 60u8, 116u8, 54u8, 68u8, 179u8, 73u8, 161u8, 168u8, 78u8, 213u8, 208u8, 54u8, 244u8, 58u8, 70u8, 209u8, 170u8, 136u8, 215u8, 3u8, 2u8, 105u8, 229u8, 217u8, 240u8, 230u8, 107u8, 221u8, ], ) } #[doc = " Votes on a given proposal, if it is ongoing."] pub fn voting_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_collective::Votes< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "TechnicalCommittee", "Voting", Vec::new(), [ 89u8, 108u8, 65u8, 58u8, 60u8, 116u8, 54u8, 68u8, 179u8, 73u8, 161u8, 168u8, 78u8, 213u8, 208u8, 54u8, 244u8, 58u8, 70u8, 209u8, 170u8, 136u8, 215u8, 3u8, 2u8, 105u8, 229u8, 217u8, 240u8, 230u8, 107u8, 221u8, ], ) } #[doc = " Proposals so far."] pub fn proposal_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "TechnicalCommittee", "ProposalCount", vec![], [ 132u8, 145u8, 78u8, 218u8, 51u8, 189u8, 55u8, 172u8, 143u8, 33u8, 140u8, 99u8, 124u8, 208u8, 57u8, 232u8, 154u8, 110u8, 32u8, 142u8, 24u8, 149u8, 109u8, 105u8, 30u8, 83u8, 39u8, 177u8, 127u8, 160u8, 34u8, 70u8, ], ) } #[doc = " The current members of the collective. This is stored sorted (just by value)."] pub fn members( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::subxt::utils::AccountId32>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "TechnicalCommittee", "Members", vec![], [ 162u8, 72u8, 174u8, 204u8, 140u8, 105u8, 205u8, 176u8, 197u8, 117u8, 206u8, 134u8, 157u8, 110u8, 139u8, 54u8, 43u8, 233u8, 25u8, 51u8, 36u8, 238u8, 94u8, 124u8, 221u8, 52u8, 237u8, 71u8, 125u8, 56u8, 129u8, 222u8, ], ) } #[doc = " The prime member that helps determine the default vote behavior in case of absentations."] pub fn prime( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "TechnicalCommittee", "Prime", vec![], [ 108u8, 118u8, 54u8, 193u8, 207u8, 227u8, 119u8, 97u8, 23u8, 239u8, 157u8, 69u8, 56u8, 142u8, 106u8, 17u8, 215u8, 159u8, 48u8, 42u8, 185u8, 209u8, 49u8, 159u8, 32u8, 168u8, 111u8, 158u8, 159u8, 217u8, 244u8, 158u8, ], ) } } } } pub mod elections { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vote { pub votes: ::std::vec::Vec<::subxt::utils::AccountId32>, #[codec(compact)] pub value: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveVoter; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SubmitCandidacy { #[codec(compact)] pub candidate_count: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RenounceCandidacy { pub renouncing: runtime_types::pallet_elections_phragmen::Renouncing, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveMember { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub slash_bond: ::core::primitive::bool, pub rerun_election: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CleanDefunctVoters { pub num_voters: ::core::primitive::u32, pub num_defunct: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Vote for a set of candidates for the upcoming round of election. This can be called to"] #[doc = "set the initial votes, or update already existing votes."] #[doc = ""] #[doc = "Upon initial voting, `value` units of `who`'s balance is locked and a deposit amount is"] #[doc = "reserved. The deposit is based on the number of votes and can be updated over time."] #[doc = ""] #[doc = "The `votes` should:"] #[doc = " - not be empty."] #[doc = " - be less than the number of possible candidates. Note that all current members and"] #[doc = " runners-up are also automatically candidates for the next round."] #[doc = ""] #[doc = "If `value` is more than `who`'s free balance, then the maximum of the two is used."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed."] #[doc = ""] #[doc = "### Warning"] #[doc = ""] #[doc = "It is the responsibility of the caller to **NOT** place all of their balance into the"] #[doc = "lock and keep some for further operations."] #[doc = ""] #[doc = "# "] #[doc = "We assume the maximum weight among all 3 cases: vote_equal, vote_more and vote_less."] #[doc = "# "] pub fn vote( &self, votes: ::std::vec::Vec<::subxt::utils::AccountId32>, value: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Elections", "vote", Vote { votes, value }, [ 71u8, 90u8, 175u8, 225u8, 51u8, 202u8, 197u8, 252u8, 183u8, 92u8, 239u8, 83u8, 112u8, 144u8, 128u8, 211u8, 109u8, 33u8, 252u8, 6u8, 156u8, 15u8, 91u8, 88u8, 70u8, 19u8, 32u8, 29u8, 224u8, 255u8, 26u8, 145u8, ], ) } #[doc = "Remove `origin` as a voter."] #[doc = ""] #[doc = "This removes the lock and returns the deposit."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed and be a voter."] pub fn remove_voter(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Elections", "remove_voter", RemoveVoter {}, [ 254u8, 46u8, 140u8, 4u8, 218u8, 45u8, 150u8, 72u8, 67u8, 131u8, 108u8, 201u8, 46u8, 157u8, 104u8, 161u8, 53u8, 155u8, 130u8, 50u8, 88u8, 149u8, 255u8, 12u8, 17u8, 85u8, 95u8, 69u8, 153u8, 130u8, 221u8, 1u8, ], ) } #[doc = "Submit oneself for candidacy. A fixed amount of deposit is recorded."] #[doc = ""] #[doc = "All candidates are wiped at the end of the term. They either become a member/runner-up,"] #[doc = "or leave the system while their deposit is slashed."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed."] #[doc = ""] #[doc = "### Warning"] #[doc = ""] #[doc = "Even if a candidate ends up being a member, they must call [`Call::renounce_candidacy`]"] #[doc = "to get their deposit back. Losing the spot in an election will always lead to a slash."] #[doc = ""] #[doc = "# "] #[doc = "The number of current candidates must be provided as witness data."] #[doc = "# "] pub fn submit_candidacy( &self, candidate_count: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Elections", "submit_candidacy", SubmitCandidacy { candidate_count }, [ 228u8, 63u8, 217u8, 99u8, 128u8, 104u8, 175u8, 10u8, 30u8, 35u8, 47u8, 14u8, 254u8, 122u8, 146u8, 239u8, 61u8, 145u8, 82u8, 7u8, 181u8, 98u8, 238u8, 208u8, 23u8, 84u8, 48u8, 255u8, 177u8, 255u8, 84u8, 83u8, ], ) } #[doc = "Renounce one's intention to be a candidate for the next election round. 3 potential"] #[doc = "outcomes exist:"] #[doc = ""] #[doc = "- `origin` is a candidate and not elected in any set. In this case, the deposit is"] #[doc = " unreserved, returned and origin is removed as a candidate."] #[doc = "- `origin` is a current runner-up. In this case, the deposit is unreserved, returned and"] #[doc = " origin is removed as a runner-up."] #[doc = "- `origin` is a current member. In this case, the deposit is unreserved and origin is"] #[doc = " removed as a member, consequently not being a candidate for the next round anymore."] #[doc = " Similar to [`remove_member`](Self::remove_member), if replacement runners exists, they"] #[doc = " are immediately used. If the prime is renouncing, then no prime will exist until the"] #[doc = " next round."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed, and have one of the above roles."] #[doc = ""] #[doc = "# "] #[doc = "The type of renouncing must be provided as witness data."] #[doc = "# "] pub fn renounce_candidacy( &self, renouncing: runtime_types::pallet_elections_phragmen::Renouncing, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Elections", "renounce_candidacy", RenounceCandidacy { renouncing }, [ 70u8, 72u8, 208u8, 36u8, 80u8, 245u8, 224u8, 75u8, 60u8, 142u8, 19u8, 49u8, 142u8, 90u8, 14u8, 69u8, 15u8, 61u8, 170u8, 235u8, 16u8, 252u8, 86u8, 200u8, 120u8, 127u8, 36u8, 42u8, 143u8, 130u8, 217u8, 128u8, ], ) } #[doc = "Remove a particular member from the set. This is effective immediately and the bond of"] #[doc = "the outgoing member is slashed."] #[doc = ""] #[doc = "If a runner-up is available, then the best runner-up will be removed and replaces the"] #[doc = "outgoing member. Otherwise, if `rerun_election` is `true`, a new phragmen election is"] #[doc = "started, else, nothing happens."] #[doc = ""] #[doc = "If `slash_bond` is set to true, the bond of the member being removed is slashed. Else,"] #[doc = "it is returned."] #[doc = ""] #[doc = "The dispatch origin of this call must be root."] #[doc = ""] #[doc = "Note that this does not affect the designated block number of the next election."] #[doc = ""] #[doc = "# "] #[doc = "If we have a replacement, we use a small weight. Else, since this is a root call and"] #[doc = "will go into phragmen, we assume full block for now."] #[doc = "# "] pub fn remove_member( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, slash_bond: ::core::primitive::bool, rerun_election: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Elections", "remove_member", RemoveMember { who, slash_bond, rerun_election, }, [ 178u8, 90u8, 236u8, 184u8, 2u8, 67u8, 51u8, 162u8, 83u8, 131u8, 242u8, 137u8, 17u8, 243u8, 209u8, 110u8, 26u8, 238u8, 178u8, 136u8, 84u8, 74u8, 216u8, 173u8, 221u8, 82u8, 179u8, 218u8, 162u8, 159u8, 185u8, 59u8, ], ) } #[doc = "Clean all voters who are defunct (i.e. they do not serve any purpose at all). The"] #[doc = "deposit of the removed voters are returned."] #[doc = ""] #[doc = "This is an root function to be used only for cleaning the state."] #[doc = ""] #[doc = "The dispatch origin of this call must be root."] #[doc = ""] #[doc = "# "] #[doc = "The total number of voters and those that are defunct must be provided as witness data."] #[doc = "# "] pub fn clean_defunct_voters( &self, num_voters: ::core::primitive::u32, num_defunct: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Elections", "clean_defunct_voters", CleanDefunctVoters { num_voters, num_defunct, }, [ 198u8, 162u8, 30u8, 249u8, 191u8, 38u8, 141u8, 123u8, 230u8, 90u8, 213u8, 103u8, 168u8, 28u8, 5u8, 215u8, 213u8, 152u8, 46u8, 189u8, 238u8, 209u8, 209u8, 142u8, 159u8, 222u8, 161u8, 26u8, 161u8, 250u8, 9u8, 100u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_elections_phragmen::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new term with new_members. This indicates that enough candidates existed to run"] #[doc = "the election, not that enough have has been elected. The inner value must be examined"] #[doc = "for this purpose. A `NewTerm(\\[\\])` indicates that some candidates got their bond"] #[doc = "slashed and none were elected, whilst `EmptyTerm` means that no candidates existed to"] #[doc = "begin with."] pub struct NewTerm { pub new_members: ::std::vec::Vec<( ::subxt::utils::AccountId32, ::core::primitive::u128, )>, } impl ::subxt::events::StaticEvent for NewTerm { const PALLET: &'static str = "Elections"; const EVENT: &'static str = "NewTerm"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "No (or not enough) candidates existed for this round. This is different from"] #[doc = "`NewTerm(\\[\\])`. See the description of `NewTerm`."] pub struct EmptyTerm; impl ::subxt::events::StaticEvent for EmptyTerm { const PALLET: &'static str = "Elections"; const EVENT: &'static str = "EmptyTerm"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Internal error happened while trying to perform election."] pub struct ElectionError; impl ::subxt::events::StaticEvent for ElectionError { const PALLET: &'static str = "Elections"; const EVENT: &'static str = "ElectionError"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A member has been removed. This should always be followed by either `NewTerm` or"] #[doc = "`EmptyTerm`."] pub struct MemberKicked { pub member: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for MemberKicked { const PALLET: &'static str = "Elections"; const EVENT: &'static str = "MemberKicked"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Someone has renounced their candidacy."] pub struct Renounced { pub candidate: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Renounced { const PALLET: &'static str = "Elections"; const EVENT: &'static str = "Renounced"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A candidate was slashed by amount due to failing to obtain a seat as member or"] #[doc = "runner-up."] #[doc = ""] #[doc = "Note that old members and runners-up are also candidates."] pub struct CandidateSlashed { pub candidate: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for CandidateSlashed { const PALLET: &'static str = "Elections"; const EVENT: &'static str = "CandidateSlashed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A seat holder was slashed by amount by being forcefully removed from the set."] pub struct SeatHolderSlashed { pub seat_holder: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for SeatHolderSlashed { const PALLET: &'static str = "Elections"; const EVENT: &'static str = "SeatHolderSlashed"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The current elected members."] #[doc = ""] #[doc = " Invariant: Always sorted based on account id."] pub fn members( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec< runtime_types::pallet_elections_phragmen::SeatHolder< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Elections", "Members", vec![], [ 2u8, 182u8, 43u8, 180u8, 87u8, 185u8, 26u8, 79u8, 196u8, 55u8, 28u8, 26u8, 174u8, 133u8, 158u8, 221u8, 101u8, 161u8, 83u8, 9u8, 221u8, 175u8, 221u8, 220u8, 81u8, 80u8, 1u8, 236u8, 74u8, 121u8, 10u8, 82u8, ], ) } #[doc = " The current reserved runners-up."] #[doc = ""] #[doc = " Invariant: Always sorted based on rank (worse to best). Upon removal of a member, the"] #[doc = " last (i.e. _best_) runner-up will be replaced."] pub fn runners_up( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec< runtime_types::pallet_elections_phragmen::SeatHolder< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Elections", "RunnersUp", vec![], [ 248u8, 81u8, 190u8, 53u8, 121u8, 49u8, 55u8, 69u8, 116u8, 177u8, 46u8, 30u8, 131u8, 14u8, 32u8, 198u8, 10u8, 132u8, 73u8, 117u8, 2u8, 146u8, 188u8, 146u8, 214u8, 227u8, 97u8, 77u8, 7u8, 131u8, 208u8, 209u8, ], ) } #[doc = " The present candidate list. A current member or runner-up can never enter this vector"] #[doc = " and is always implicitly assumed to be a candidate."] #[doc = ""] #[doc = " Second element is the deposit."] #[doc = ""] #[doc = " Invariant: Always sorted based on account id."] pub fn candidates( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<( ::subxt::utils::AccountId32, ::core::primitive::u128, )>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Elections", "Candidates", vec![], [ 224u8, 107u8, 141u8, 11u8, 54u8, 86u8, 117u8, 45u8, 195u8, 252u8, 152u8, 21u8, 165u8, 23u8, 198u8, 117u8, 5u8, 216u8, 183u8, 163u8, 243u8, 56u8, 11u8, 102u8, 85u8, 107u8, 219u8, 250u8, 45u8, 80u8, 108u8, 127u8, ], ) } #[doc = " The total number of vote rounds that have happened, excluding the upcoming one."] pub fn election_rounds( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Elections", "ElectionRounds", vec![], [ 144u8, 146u8, 10u8, 32u8, 149u8, 147u8, 59u8, 205u8, 61u8, 246u8, 28u8, 169u8, 130u8, 136u8, 143u8, 104u8, 253u8, 86u8, 228u8, 68u8, 19u8, 184u8, 166u8, 214u8, 58u8, 103u8, 176u8, 160u8, 240u8, 249u8, 117u8, 115u8, ], ) } #[doc = " Votes and locked stake of a particular voter."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE as `AccountId` is a crypto hash."] pub fn voting( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_elections_phragmen::Voter< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Elections", "Voting", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 9u8, 135u8, 76u8, 194u8, 240u8, 182u8, 111u8, 207u8, 102u8, 37u8, 126u8, 36u8, 84u8, 112u8, 26u8, 216u8, 175u8, 5u8, 14u8, 189u8, 83u8, 185u8, 136u8, 39u8, 171u8, 221u8, 147u8, 20u8, 168u8, 126u8, 111u8, 137u8, ], ) } #[doc = " Votes and locked stake of a particular voter."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE as `AccountId` is a crypto hash."] pub fn voting_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_elections_phragmen::Voter< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Elections", "Voting", Vec::new(), [ 9u8, 135u8, 76u8, 194u8, 240u8, 182u8, 111u8, 207u8, 102u8, 37u8, 126u8, 36u8, 84u8, 112u8, 26u8, 216u8, 175u8, 5u8, 14u8, 189u8, 83u8, 185u8, 136u8, 39u8, 171u8, 221u8, 147u8, 20u8, 168u8, 126u8, 111u8, 137u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Identifier for the elections-phragmen pallet's lock"] pub fn pallet_id( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<[::core::primitive::u8; 8usize]>, > { ::subxt::constants::StaticConstantAddress::new( "Elections", "PalletId", [ 224u8, 197u8, 247u8, 125u8, 62u8, 180u8, 69u8, 91u8, 226u8, 36u8, 82u8, 148u8, 70u8, 147u8, 209u8, 40u8, 210u8, 229u8, 181u8, 191u8, 170u8, 205u8, 138u8, 97u8, 127u8, 59u8, 124u8, 244u8, 252u8, 30u8, 213u8, 179u8, ], ) } #[doc = " How much should be locked up in order to submit one's candidacy."] pub fn candidacy_bond( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Elections", "CandidacyBond", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " Base deposit associated with voting."] #[doc = ""] #[doc = " This should be sensibly high to economically ensure the pallet cannot be attacked by"] #[doc = " creating a gigantic number of votes."] pub fn voting_bond_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Elections", "VotingBondBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount of bond that need to be locked for each vote (32 bytes)."] pub fn voting_bond_factor( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Elections", "VotingBondFactor", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " Number of members to elect."] pub fn desired_members( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Elections", "DesiredMembers", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Number of runners_up to keep."] pub fn desired_runners_up( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Elections", "DesiredRunnersUp", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " How long each seat is kept. This defines the next block number at which an election"] #[doc = " round will happen. If set to zero, no elections are ever triggered and the module will"] #[doc = " be in passive mode."] pub fn term_duration( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Elections", "TermDuration", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of candidates in a phragmen election."] #[doc = ""] #[doc = " Warning: The election happens onchain, and this value will determine"] #[doc = " the size of the election. When this limit is reached no more"] #[doc = " candidates are accepted in the election."] pub fn max_candidates( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Elections", "MaxCandidates", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of voters to allow in a phragmen election."] #[doc = ""] #[doc = " Warning: This impacts the size of the election which is run onchain."] #[doc = " When the limit is reached the new voters are ignored."] pub fn max_voters( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Elections", "MaxVoters", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod technical_membership { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AddMember { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveMember { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SwapMember { pub remove: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub add: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ResetMembers { pub members: ::std::vec::Vec<::subxt::utils::AccountId32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ChangeKey { pub new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetPrime { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClearPrime; pub struct TransactionApi; impl TransactionApi { #[doc = "Add a member `who` to the set."] #[doc = ""] #[doc = "May only be called from `T::AddOrigin`."] pub fn add_member( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalMembership", "add_member", AddMember { who }, [ 168u8, 166u8, 6u8, 167u8, 12u8, 109u8, 99u8, 96u8, 240u8, 57u8, 60u8, 174u8, 57u8, 52u8, 131u8, 16u8, 230u8, 172u8, 23u8, 140u8, 48u8, 131u8, 73u8, 131u8, 133u8, 217u8, 137u8, 50u8, 165u8, 149u8, 174u8, 188u8, ], ) } #[doc = "Remove a member `who` from the set."] #[doc = ""] #[doc = "May only be called from `T::RemoveOrigin`."] pub fn remove_member( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalMembership", "remove_member", RemoveMember { who }, [ 33u8, 178u8, 96u8, 158u8, 126u8, 172u8, 0u8, 207u8, 143u8, 144u8, 219u8, 28u8, 205u8, 197u8, 192u8, 195u8, 141u8, 26u8, 39u8, 101u8, 140u8, 88u8, 212u8, 26u8, 221u8, 29u8, 187u8, 160u8, 119u8, 101u8, 45u8, 162u8, ], ) } #[doc = "Swap out one member `remove` for another `add`."] #[doc = ""] #[doc = "May only be called from `T::SwapOrigin`."] #[doc = ""] #[doc = "Prime membership is *not* passed from `remove` to `add`, if extant."] pub fn swap_member( &self, remove: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, add: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalMembership", "swap_member", SwapMember { remove, add }, [ 52u8, 10u8, 13u8, 175u8, 35u8, 141u8, 159u8, 135u8, 34u8, 235u8, 117u8, 146u8, 134u8, 49u8, 76u8, 116u8, 93u8, 209u8, 24u8, 242u8, 123u8, 82u8, 34u8, 192u8, 147u8, 237u8, 163u8, 167u8, 18u8, 64u8, 196u8, 132u8, ], ) } #[doc = "Change the membership to a new set, disregarding the existing membership. Be nice and"] #[doc = "pass `members` pre-sorted."] #[doc = ""] #[doc = "May only be called from `T::ResetOrigin`."] pub fn reset_members( &self, members: ::std::vec::Vec<::subxt::utils::AccountId32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalMembership", "reset_members", ResetMembers { members }, [ 9u8, 35u8, 28u8, 59u8, 158u8, 232u8, 89u8, 78u8, 101u8, 53u8, 240u8, 98u8, 13u8, 104u8, 235u8, 161u8, 201u8, 150u8, 117u8, 32u8, 75u8, 209u8, 166u8, 252u8, 57u8, 131u8, 96u8, 215u8, 51u8, 81u8, 42u8, 123u8, ], ) } #[doc = "Swap out the sending member for some other key `new`."] #[doc = ""] #[doc = "May only be called from `Signed` origin of a current member."] #[doc = ""] #[doc = "Prime membership is passed from the origin account to `new`, if extant."] pub fn change_key( &self, new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalMembership", "change_key", ChangeKey { new }, [ 202u8, 114u8, 208u8, 33u8, 254u8, 51u8, 31u8, 220u8, 229u8, 251u8, 167u8, 149u8, 139u8, 131u8, 252u8, 100u8, 32u8, 20u8, 72u8, 97u8, 5u8, 8u8, 25u8, 198u8, 95u8, 154u8, 73u8, 220u8, 46u8, 85u8, 162u8, 40u8, ], ) } #[doc = "Set the prime member. Must be a current member."] #[doc = ""] #[doc = "May only be called from `T::PrimeOrigin`."] pub fn set_prime( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalMembership", "set_prime", SetPrime { who }, [ 109u8, 16u8, 35u8, 72u8, 169u8, 141u8, 101u8, 209u8, 241u8, 218u8, 170u8, 180u8, 37u8, 223u8, 249u8, 37u8, 168u8, 20u8, 130u8, 30u8, 191u8, 157u8, 230u8, 156u8, 135u8, 73u8, 96u8, 98u8, 193u8, 44u8, 38u8, 247u8, ], ) } #[doc = "Remove the prime member if it exists."] #[doc = ""] #[doc = "May only be called from `T::PrimeOrigin`."] pub fn clear_prime(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TechnicalMembership", "clear_prime", ClearPrime {}, [ 186u8, 182u8, 225u8, 90u8, 71u8, 124u8, 69u8, 100u8, 234u8, 25u8, 53u8, 23u8, 182u8, 32u8, 176u8, 81u8, 54u8, 140u8, 235u8, 126u8, 247u8, 7u8, 155u8, 62u8, 35u8, 135u8, 48u8, 61u8, 88u8, 160u8, 183u8, 72u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_membership::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The given member was added; see the transaction for who."] pub struct MemberAdded; impl ::subxt::events::StaticEvent for MemberAdded { const PALLET: &'static str = "TechnicalMembership"; const EVENT: &'static str = "MemberAdded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The given member was removed; see the transaction for who."] pub struct MemberRemoved; impl ::subxt::events::StaticEvent for MemberRemoved { const PALLET: &'static str = "TechnicalMembership"; const EVENT: &'static str = "MemberRemoved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Two members were swapped; see the transaction for who."] pub struct MembersSwapped; impl ::subxt::events::StaticEvent for MembersSwapped { const PALLET: &'static str = "TechnicalMembership"; const EVENT: &'static str = "MembersSwapped"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The membership was reset; see the transaction for who the new set is."] pub struct MembersReset; impl ::subxt::events::StaticEvent for MembersReset { const PALLET: &'static str = "TechnicalMembership"; const EVENT: &'static str = "MembersReset"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "One of the members' keys changed."] pub struct KeyChanged; impl ::subxt::events::StaticEvent for KeyChanged { const PALLET: &'static str = "TechnicalMembership"; const EVENT: &'static str = "KeyChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Phantom member, never used."] pub struct Dummy; impl ::subxt::events::StaticEvent for Dummy { const PALLET: &'static str = "TechnicalMembership"; const EVENT: &'static str = "Dummy"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The current membership, stored as an ordered Vec."] pub fn members( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "TechnicalMembership", "Members", vec![], [ 56u8, 56u8, 29u8, 90u8, 26u8, 115u8, 252u8, 185u8, 37u8, 108u8, 16u8, 46u8, 136u8, 139u8, 30u8, 19u8, 235u8, 78u8, 176u8, 129u8, 180u8, 57u8, 178u8, 239u8, 211u8, 6u8, 64u8, 129u8, 195u8, 46u8, 178u8, 157u8, ], ) } #[doc = " The current prime member, if one exists."] pub fn prime( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "TechnicalMembership", "Prime", vec![], [ 108u8, 118u8, 54u8, 193u8, 207u8, 227u8, 119u8, 97u8, 23u8, 239u8, 157u8, 69u8, 56u8, 142u8, 106u8, 17u8, 215u8, 159u8, 48u8, 42u8, 185u8, 209u8, 49u8, 159u8, 32u8, 168u8, 111u8, 158u8, 159u8, 217u8, 244u8, 158u8, ], ) } } } } pub mod grandpa { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReportEquivocation { pub equivocation_proof: ::std::boxed::Box< runtime_types::sp_finality_grandpa::EquivocationProof< ::subxt::utils::H256, ::core::primitive::u32, >, >, pub key_owner_proof: runtime_types::sp_session::MembershipProof, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReportEquivocationUnsigned { pub equivocation_proof: ::std::boxed::Box< runtime_types::sp_finality_grandpa::EquivocationProof< ::subxt::utils::H256, ::core::primitive::u32, >, >, pub key_owner_proof: runtime_types::sp_session::MembershipProof, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct NoteStalled { pub delay: ::core::primitive::u32, pub best_finalized_block_number: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Report voter equivocation/misbehavior. This method will verify the"] #[doc = "equivocation proof and validate the given key ownership proof"] #[doc = "against the extracted offender. If both are valid, the offence"] #[doc = "will be reported."] pub fn report_equivocation( &self, equivocation_proof : runtime_types :: sp_finality_grandpa :: EquivocationProof < :: subxt :: utils :: H256 , :: core :: primitive :: u32 >, key_owner_proof: runtime_types::sp_session::MembershipProof, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Grandpa", "report_equivocation", ReportEquivocation { equivocation_proof: ::std::boxed::Box::new( equivocation_proof, ), key_owner_proof, }, [ 156u8, 162u8, 189u8, 89u8, 60u8, 156u8, 129u8, 176u8, 62u8, 35u8, 214u8, 7u8, 68u8, 245u8, 130u8, 117u8, 30u8, 3u8, 73u8, 218u8, 142u8, 82u8, 13u8, 141u8, 124u8, 19u8, 53u8, 138u8, 70u8, 4u8, 40u8, 32u8, ], ) } #[doc = "Report voter equivocation/misbehavior. This method will verify the"] #[doc = "equivocation proof and validate the given key ownership proof"] #[doc = "against the extracted offender. If both are valid, the offence"] #[doc = "will be reported."] #[doc = ""] #[doc = "This extrinsic must be called unsigned and it is expected that only"] #[doc = "block authors will call it (validated in `ValidateUnsigned`), as such"] #[doc = "if the block author is defined it will be defined as the equivocation"] #[doc = "reporter."] pub fn report_equivocation_unsigned( &self, equivocation_proof : runtime_types :: sp_finality_grandpa :: EquivocationProof < :: subxt :: utils :: H256 , :: core :: primitive :: u32 >, key_owner_proof: runtime_types::sp_session::MembershipProof, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Grandpa", "report_equivocation_unsigned", ReportEquivocationUnsigned { equivocation_proof: ::std::boxed::Box::new( equivocation_proof, ), key_owner_proof, }, [ 166u8, 26u8, 217u8, 185u8, 215u8, 37u8, 174u8, 170u8, 137u8, 160u8, 151u8, 43u8, 246u8, 86u8, 58u8, 18u8, 248u8, 73u8, 99u8, 161u8, 158u8, 93u8, 212u8, 186u8, 224u8, 253u8, 234u8, 18u8, 151u8, 111u8, 227u8, 249u8, ], ) } #[doc = "Note that the current authority set of the GRANDPA finality gadget has stalled."] #[doc = ""] #[doc = "This will trigger a forced authority set change at the beginning of the next session, to"] #[doc = "be enacted `delay` blocks after that. The `delay` should be high enough to safely assume"] #[doc = "that the block signalling the forced change will not be re-orged e.g. 1000 blocks."] #[doc = "The block production rate (which may be slowed down because of finality lagging) should"] #[doc = "be taken into account when choosing the `delay`. The GRANDPA voters based on the new"] #[doc = "authority will start voting on top of `best_finalized_block_number` for new finalized"] #[doc = "blocks. `best_finalized_block_number` should be the highest of the latest finalized"] #[doc = "block of all validators of the new authority set."] #[doc = ""] #[doc = "Only callable by root."] pub fn note_stalled( &self, delay: ::core::primitive::u32, best_finalized_block_number: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Grandpa", "note_stalled", NoteStalled { delay, best_finalized_block_number, }, [ 197u8, 236u8, 137u8, 32u8, 46u8, 200u8, 144u8, 13u8, 89u8, 181u8, 235u8, 73u8, 167u8, 131u8, 174u8, 93u8, 42u8, 136u8, 238u8, 59u8, 129u8, 60u8, 83u8, 100u8, 5u8, 182u8, 99u8, 250u8, 145u8, 180u8, 1u8, 199u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_grandpa::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "New authority set has been applied."] pub struct NewAuthorities { pub authority_set: ::std::vec::Vec<( runtime_types::sp_finality_grandpa::app::Public, ::core::primitive::u64, )>, } impl ::subxt::events::StaticEvent for NewAuthorities { const PALLET: &'static str = "Grandpa"; const EVENT: &'static str = "NewAuthorities"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Current authority set has been paused."] pub struct Paused; impl ::subxt::events::StaticEvent for Paused { const PALLET: &'static str = "Grandpa"; const EVENT: &'static str = "Paused"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Current authority set has been resumed."] pub struct Resumed; impl ::subxt::events::StaticEvent for Resumed { const PALLET: &'static str = "Grandpa"; const EVENT: &'static str = "Resumed"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " State of the current authority set."] pub fn state( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_grandpa::StoredState< ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Grandpa", "State", vec![], [ 211u8, 149u8, 114u8, 217u8, 206u8, 194u8, 115u8, 67u8, 12u8, 218u8, 246u8, 213u8, 208u8, 29u8, 216u8, 104u8, 2u8, 39u8, 123u8, 172u8, 252u8, 210u8, 52u8, 129u8, 147u8, 237u8, 244u8, 68u8, 252u8, 169u8, 97u8, 148u8, ], ) } #[doc = " Pending change: (signaled at, scheduled change)."] pub fn pending_change( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_grandpa::StoredPendingChange< ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Grandpa", "PendingChange", vec![], [ 178u8, 24u8, 140u8, 7u8, 8u8, 196u8, 18u8, 58u8, 3u8, 226u8, 181u8, 47u8, 155u8, 160u8, 70u8, 12u8, 75u8, 189u8, 38u8, 255u8, 104u8, 141u8, 64u8, 34u8, 134u8, 201u8, 102u8, 21u8, 75u8, 81u8, 218u8, 60u8, ], ) } #[doc = " next block number where we can force a change."] pub fn next_forced( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Grandpa", "NextForced", vec![], [ 99u8, 43u8, 245u8, 201u8, 60u8, 9u8, 122u8, 99u8, 188u8, 29u8, 67u8, 6u8, 193u8, 133u8, 179u8, 67u8, 202u8, 208u8, 62u8, 179u8, 19u8, 169u8, 196u8, 119u8, 107u8, 75u8, 100u8, 3u8, 121u8, 18u8, 80u8, 156u8, ], ) } #[doc = " `true` if we are currently stalled."] pub fn stalled( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u32, ::core::primitive::u32, )>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Grandpa", "Stalled", vec![], [ 219u8, 8u8, 37u8, 78u8, 150u8, 55u8, 0u8, 57u8, 201u8, 170u8, 186u8, 189u8, 56u8, 161u8, 44u8, 15u8, 53u8, 178u8, 224u8, 208u8, 231u8, 109u8, 14u8, 209u8, 57u8, 205u8, 237u8, 153u8, 231u8, 156u8, 24u8, 185u8, ], ) } #[doc = " The number of changes (both in terms of keys and underlying economic responsibilities)"] #[doc = " in the \"set\" of Grandpa validators from genesis."] pub fn current_set_id( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u64>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Grandpa", "CurrentSetId", vec![], [ 129u8, 7u8, 62u8, 101u8, 199u8, 60u8, 56u8, 33u8, 54u8, 158u8, 20u8, 178u8, 244u8, 145u8, 189u8, 197u8, 157u8, 163u8, 116u8, 36u8, 105u8, 52u8, 149u8, 244u8, 108u8, 94u8, 109u8, 111u8, 244u8, 137u8, 7u8, 108u8, ], ) } #[doc = " A mapping from grandpa set ID to the index of the *most recent* session for which its"] #[doc = " members were responsible."] #[doc = ""] #[doc = " This is only used for validating equivocation proofs. An equivocation proof must"] #[doc = " contains a key-ownership proof for a given session, therefore we need a way to tie"] #[doc = " together sessions and GRANDPA set ids, i.e. we need to validate that a validator"] #[doc = " was the owner of a given key on a given session, and what the active set ID was"] #[doc = " during that session."] #[doc = ""] #[doc = " TWOX-NOTE: `SetId` is not under user control."] pub fn set_id_session( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u64>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Grandpa", "SetIdSession", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 91u8, 175u8, 145u8, 127u8, 242u8, 81u8, 13u8, 231u8, 110u8, 11u8, 166u8, 169u8, 103u8, 146u8, 123u8, 133u8, 157u8, 15u8, 33u8, 234u8, 108u8, 13u8, 88u8, 115u8, 254u8, 9u8, 145u8, 199u8, 102u8, 47u8, 53u8, 134u8, ], ) } #[doc = " A mapping from grandpa set ID to the index of the *most recent* session for which its"] #[doc = " members were responsible."] #[doc = ""] #[doc = " This is only used for validating equivocation proofs. An equivocation proof must"] #[doc = " contains a key-ownership proof for a given session, therefore we need a way to tie"] #[doc = " together sessions and GRANDPA set ids, i.e. we need to validate that a validator"] #[doc = " was the owner of a given key on a given session, and what the active set ID was"] #[doc = " during that session."] #[doc = ""] #[doc = " TWOX-NOTE: `SetId` is not under user control."] pub fn set_id_session_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Grandpa", "SetIdSession", Vec::new(), [ 91u8, 175u8, 145u8, 127u8, 242u8, 81u8, 13u8, 231u8, 110u8, 11u8, 166u8, 169u8, 103u8, 146u8, 123u8, 133u8, 157u8, 15u8, 33u8, 234u8, 108u8, 13u8, 88u8, 115u8, 254u8, 9u8, 145u8, 199u8, 102u8, 47u8, 53u8, 134u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Max Authorities in use"] pub fn max_authorities( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Grandpa", "MaxAuthorities", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of entries to keep in the set id to session index mapping."] #[doc = ""] #[doc = " Since the `SetIdSession` map is only used for validating equivocations this"] #[doc = " value should relate to the bonding duration of whatever staking system is"] #[doc = " being used (if any). If equivocation handling is not enabled then this value"] #[doc = " can be zero."] pub fn max_set_id_session_entries( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u64>, > { ::subxt::constants::StaticConstantAddress::new( "Grandpa", "MaxSetIdSessionEntries", [ 128u8, 214u8, 205u8, 242u8, 181u8, 142u8, 124u8, 231u8, 190u8, 146u8, 59u8, 226u8, 157u8, 101u8, 103u8, 117u8, 249u8, 65u8, 18u8, 191u8, 103u8, 119u8, 53u8, 85u8, 81u8, 96u8, 220u8, 42u8, 184u8, 239u8, 42u8, 246u8, ], ) } } } } pub mod treasury { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ProposeSpend { #[codec(compact)] pub value: ::core::primitive::u128, pub beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RejectProposal { #[codec(compact)] pub proposal_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ApproveProposal { #[codec(compact)] pub proposal_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Spend { #[codec(compact)] pub amount: ::core::primitive::u128, pub beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveApproval { #[codec(compact)] pub proposal_id: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Put forward a suggestion for spending. A deposit proportional to the value"] #[doc = "is reserved and slashed if the proposal is rejected. It is returned once the"] #[doc = "proposal is awarded."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(1)"] #[doc = "- DbReads: `ProposalCount`, `origin account`"] #[doc = "- DbWrites: `ProposalCount`, `Proposals`, `origin account`"] #[doc = "# "] pub fn propose_spend( &self, value: ::core::primitive::u128, beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Treasury", "propose_spend", ProposeSpend { value, beneficiary }, [ 124u8, 32u8, 83u8, 127u8, 240u8, 169u8, 3u8, 190u8, 235u8, 163u8, 23u8, 29u8, 88u8, 242u8, 238u8, 187u8, 136u8, 75u8, 193u8, 192u8, 239u8, 2u8, 54u8, 238u8, 147u8, 42u8, 91u8, 14u8, 244u8, 175u8, 41u8, 14u8, ], ) } #[doc = "Reject a proposed spend. The original deposit will be slashed."] #[doc = ""] #[doc = "May only be called from `T::RejectOrigin`."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(1)"] #[doc = "- DbReads: `Proposals`, `rejected proposer account`"] #[doc = "- DbWrites: `Proposals`, `rejected proposer account`"] #[doc = "# "] pub fn reject_proposal( &self, proposal_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Treasury", "reject_proposal", RejectProposal { proposal_id }, [ 106u8, 223u8, 97u8, 22u8, 111u8, 208u8, 128u8, 26u8, 198u8, 140u8, 118u8, 126u8, 187u8, 51u8, 193u8, 50u8, 193u8, 68u8, 143u8, 144u8, 34u8, 132u8, 44u8, 244u8, 105u8, 186u8, 223u8, 234u8, 17u8, 145u8, 209u8, 145u8, ], ) } #[doc = "Approve a proposal. At a later time, the proposal will be allocated to the beneficiary"] #[doc = "and the original deposit will be returned."] #[doc = ""] #[doc = "May only be called from `T::ApproveOrigin`."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(1)."] #[doc = "- DbReads: `Proposals`, `Approvals`"] #[doc = "- DbWrite: `Approvals`"] #[doc = "# "] pub fn approve_proposal( &self, proposal_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Treasury", "approve_proposal", ApproveProposal { proposal_id }, [ 164u8, 229u8, 172u8, 98u8, 129u8, 62u8, 84u8, 128u8, 47u8, 108u8, 33u8, 120u8, 89u8, 79u8, 57u8, 121u8, 4u8, 197u8, 170u8, 153u8, 156u8, 17u8, 59u8, 164u8, 123u8, 227u8, 175u8, 195u8, 220u8, 160u8, 60u8, 186u8, ], ) } #[doc = "Propose and approve a spend of treasury funds."] #[doc = ""] #[doc = "- `origin`: Must be `SpendOrigin` with the `Success` value being at least `amount`."] #[doc = "- `amount`: The amount to be transferred from the treasury to the `beneficiary`."] #[doc = "- `beneficiary`: The destination account for the transfer."] #[doc = ""] #[doc = "NOTE: For record-keeping purposes, the proposer is deemed to be equivalent to the"] #[doc = "beneficiary."] pub fn spend( &self, amount: ::core::primitive::u128, beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Treasury", "spend", Spend { amount, beneficiary, }, [ 208u8, 79u8, 96u8, 218u8, 205u8, 209u8, 165u8, 119u8, 92u8, 208u8, 54u8, 168u8, 83u8, 190u8, 98u8, 97u8, 6u8, 2u8, 35u8, 249u8, 18u8, 88u8, 193u8, 51u8, 130u8, 33u8, 28u8, 99u8, 49u8, 194u8, 34u8, 77u8, ], ) } #[doc = "Force a previously approved proposal to be removed from the approval queue."] #[doc = "The original deposit will no longer be returned."] #[doc = ""] #[doc = "May only be called from `T::RejectOrigin`."] #[doc = "- `proposal_id`: The index of a proposal"] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(A) where `A` is the number of approvals"] #[doc = "- Db reads and writes: `Approvals`"] #[doc = "# "] #[doc = ""] #[doc = "Errors:"] #[doc = "- `ProposalNotApproved`: The `proposal_id` supplied was not found in the approval queue,"] #[doc = "i.e., the proposal has not been approved. This could also mean the proposal does not"] #[doc = "exist altogether, thus there is no way it would have been approved in the first place."] pub fn remove_approval( &self, proposal_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Treasury", "remove_approval", RemoveApproval { proposal_id }, [ 133u8, 126u8, 181u8, 47u8, 196u8, 243u8, 7u8, 46u8, 25u8, 251u8, 154u8, 125u8, 217u8, 77u8, 54u8, 245u8, 240u8, 180u8, 97u8, 34u8, 186u8, 53u8, 225u8, 144u8, 155u8, 107u8, 172u8, 54u8, 250u8, 184u8, 178u8, 86u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_treasury::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "New proposal."] pub struct Proposed { pub proposal_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Proposed { const PALLET: &'static str = "Treasury"; const EVENT: &'static str = "Proposed"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "We have ended a spend period and will now allocate funds."] pub struct Spending { pub budget_remaining: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Spending { const PALLET: &'static str = "Treasury"; const EVENT: &'static str = "Spending"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some funds have been allocated."] pub struct Awarded { pub proposal_index: ::core::primitive::u32, pub award: ::core::primitive::u128, pub account: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Awarded { const PALLET: &'static str = "Treasury"; const EVENT: &'static str = "Awarded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proposal was rejected; funds were slashed."] pub struct Rejected { pub proposal_index: ::core::primitive::u32, pub slashed: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Rejected { const PALLET: &'static str = "Treasury"; const EVENT: &'static str = "Rejected"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some of our funds have been burnt."] pub struct Burnt { pub burnt_funds: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Burnt { const PALLET: &'static str = "Treasury"; const EVENT: &'static str = "Burnt"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Spending has finished; this is the amount that rolls over until next spend."] pub struct Rollover { pub rollover_balance: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Rollover { const PALLET: &'static str = "Treasury"; const EVENT: &'static str = "Rollover"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some funds have been deposited."] pub struct Deposit { pub value: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Deposit { const PALLET: &'static str = "Treasury"; const EVENT: &'static str = "Deposit"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new spend proposal has been approved."] pub struct SpendApproved { pub proposal_index: ::core::primitive::u32, pub amount: ::core::primitive::u128, pub beneficiary: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for SpendApproved { const PALLET: &'static str = "Treasury"; const EVENT: &'static str = "SpendApproved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The inactive funds of the pallet have been updated."] pub struct UpdatedInactive { pub reactivated: ::core::primitive::u128, pub deactivated: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for UpdatedInactive { const PALLET: &'static str = "Treasury"; const EVENT: &'static str = "UpdatedInactive"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Number of proposals that have been made."] pub fn proposal_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Treasury", "ProposalCount", vec![], [ 132u8, 145u8, 78u8, 218u8, 51u8, 189u8, 55u8, 172u8, 143u8, 33u8, 140u8, 99u8, 124u8, 208u8, 57u8, 232u8, 154u8, 110u8, 32u8, 142u8, 24u8, 149u8, 109u8, 105u8, 30u8, 83u8, 39u8, 177u8, 127u8, 160u8, 34u8, 70u8, ], ) } #[doc = " Proposals that have been made."] pub fn proposals( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_treasury::Proposal< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Treasury", "Proposals", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 62u8, 223u8, 55u8, 209u8, 151u8, 134u8, 122u8, 65u8, 207u8, 38u8, 113u8, 213u8, 237u8, 48u8, 129u8, 32u8, 91u8, 228u8, 108u8, 91u8, 37u8, 49u8, 94u8, 4u8, 75u8, 122u8, 25u8, 34u8, 198u8, 224u8, 246u8, 160u8, ], ) } #[doc = " Proposals that have been made."] pub fn proposals_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_treasury::Proposal< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Treasury", "Proposals", Vec::new(), [ 62u8, 223u8, 55u8, 209u8, 151u8, 134u8, 122u8, 65u8, 207u8, 38u8, 113u8, 213u8, 237u8, 48u8, 129u8, 32u8, 91u8, 228u8, 108u8, 91u8, 37u8, 49u8, 94u8, 4u8, 75u8, 122u8, 25u8, 34u8, 198u8, 224u8, 246u8, 160u8, ], ) } #[doc = " The amount which has been reported as inactive to Currency."] pub fn deactivated( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Treasury", "Deactivated", vec![], [ 159u8, 57u8, 5u8, 85u8, 136u8, 128u8, 70u8, 43u8, 67u8, 76u8, 123u8, 206u8, 48u8, 253u8, 51u8, 40u8, 14u8, 35u8, 162u8, 173u8, 127u8, 79u8, 38u8, 235u8, 9u8, 141u8, 201u8, 37u8, 211u8, 176u8, 119u8, 106u8, ], ) } #[doc = " Proposal indices that have been approved but not yet awarded."] pub fn approvals( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Treasury", "Approvals", vec![], [ 202u8, 106u8, 189u8, 40u8, 127u8, 172u8, 108u8, 50u8, 193u8, 4u8, 248u8, 226u8, 176u8, 101u8, 212u8, 222u8, 64u8, 206u8, 244u8, 175u8, 111u8, 106u8, 86u8, 96u8, 19u8, 109u8, 218u8, 152u8, 30u8, 59u8, 96u8, 1u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Fraction of a proposal's value that should be bonded in order to place the proposal."] #[doc = " An accepted proposal gets these back. A rejected proposal does not."] pub fn proposal_bond( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_arithmetic::per_things::Permill, >, > { ::subxt::constants::StaticConstantAddress::new( "Treasury", "ProposalBond", [ 225u8, 236u8, 95u8, 157u8, 90u8, 94u8, 106u8, 192u8, 254u8, 19u8, 87u8, 80u8, 16u8, 62u8, 42u8, 204u8, 136u8, 106u8, 225u8, 53u8, 212u8, 52u8, 177u8, 79u8, 4u8, 116u8, 201u8, 104u8, 222u8, 75u8, 86u8, 227u8, ], ) } #[doc = " Minimum amount of funds that should be placed in a deposit for making a proposal."] pub fn proposal_bond_minimum( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Treasury", "ProposalBondMinimum", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " Maximum amount of funds that should be placed in a deposit for making a proposal."] pub fn proposal_bond_maximum( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< ::core::option::Option<::core::primitive::u128>, >, > { ::subxt::constants::StaticConstantAddress::new( "Treasury", "ProposalBondMaximum", [ 84u8, 154u8, 218u8, 83u8, 84u8, 189u8, 32u8, 20u8, 120u8, 194u8, 88u8, 205u8, 109u8, 216u8, 114u8, 193u8, 120u8, 198u8, 154u8, 237u8, 134u8, 204u8, 102u8, 247u8, 52u8, 103u8, 231u8, 43u8, 243u8, 122u8, 60u8, 216u8, ], ) } #[doc = " Period between successive spends."] pub fn spend_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Treasury", "SpendPeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Percentage of spare funds (if any) that are burnt per spend period."] pub fn burn( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_arithmetic::per_things::Permill, >, > { ::subxt::constants::StaticConstantAddress::new( "Treasury", "Burn", [ 225u8, 236u8, 95u8, 157u8, 90u8, 94u8, 106u8, 192u8, 254u8, 19u8, 87u8, 80u8, 16u8, 62u8, 42u8, 204u8, 136u8, 106u8, 225u8, 53u8, 212u8, 52u8, 177u8, 79u8, 4u8, 116u8, 201u8, 104u8, 222u8, 75u8, 86u8, 227u8, ], ) } #[doc = " The treasury's pallet id, used for deriving its sovereign account ID."] pub fn pallet_id( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_support::PalletId, >, > { ::subxt::constants::StaticConstantAddress::new( "Treasury", "PalletId", [ 139u8, 109u8, 228u8, 151u8, 252u8, 32u8, 130u8, 69u8, 112u8, 154u8, 174u8, 45u8, 83u8, 245u8, 51u8, 132u8, 173u8, 5u8, 186u8, 24u8, 243u8, 9u8, 12u8, 214u8, 80u8, 74u8, 69u8, 189u8, 30u8, 94u8, 22u8, 39u8, ], ) } #[doc = " The maximum number of approvals that can wait in the spending queue."] #[doc = ""] #[doc = " NOTE: This parameter is also used within the Bounties Pallet extension if enabled."] pub fn max_approvals( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Treasury", "MaxApprovals", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod contracts { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CallOldWeight { pub dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub value: ::core::primitive::u128, #[codec(compact)] pub gas_limit: runtime_types::sp_weights::OldWeight, pub storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, pub data: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct InstantiateWithCodeOldWeight { #[codec(compact)] pub value: ::core::primitive::u128, #[codec(compact)] pub gas_limit: runtime_types::sp_weights::OldWeight, pub storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, pub code: ::std::vec::Vec<::core::primitive::u8>, pub data: ::std::vec::Vec<::core::primitive::u8>, pub salt: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct InstantiateOldWeight { #[codec(compact)] pub value: ::core::primitive::u128, #[codec(compact)] pub gas_limit: runtime_types::sp_weights::OldWeight, pub storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, pub code_hash: ::subxt::utils::H256, pub data: ::std::vec::Vec<::core::primitive::u8>, pub salt: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UploadCode { pub code: ::std::vec::Vec<::core::primitive::u8>, pub storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, pub determinism: runtime_types::pallet_contracts::wasm::Determinism, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveCode { pub code_hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetCode { pub dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub code_hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Call { pub dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub value: ::core::primitive::u128, pub gas_limit: runtime_types::sp_weights::weight_v2::Weight, pub storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, pub data: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct InstantiateWithCode { #[codec(compact)] pub value: ::core::primitive::u128, pub gas_limit: runtime_types::sp_weights::weight_v2::Weight, pub storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, pub code: ::std::vec::Vec<::core::primitive::u8>, pub data: ::std::vec::Vec<::core::primitive::u8>, pub salt: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Instantiate { #[codec(compact)] pub value: ::core::primitive::u128, pub gas_limit: runtime_types::sp_weights::weight_v2::Weight, pub storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, pub code_hash: ::subxt::utils::H256, pub data: ::std::vec::Vec<::core::primitive::u8>, pub salt: ::std::vec::Vec<::core::primitive::u8>, } pub struct TransactionApi; impl TransactionApi { #[doc = "Deprecated version if [`Self::call`] for use in an in-storage `Call`."] pub fn call_old_weight( &self, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, value: ::core::primitive::u128, gas_limit: runtime_types::sp_weights::OldWeight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, data: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Contracts", "call_old_weight", CallOldWeight { dest, value, gas_limit, storage_deposit_limit, data, }, [ 110u8, 227u8, 98u8, 194u8, 241u8, 14u8, 112u8, 34u8, 18u8, 0u8, 102u8, 76u8, 145u8, 224u8, 186u8, 143u8, 89u8, 61u8, 182u8, 157u8, 35u8, 128u8, 148u8, 255u8, 192u8, 223u8, 12u8, 178u8, 69u8, 1u8, 168u8, 149u8, ], ) } #[doc = "Deprecated version if [`Self::instantiate_with_code`] for use in an in-storage `Call`."] pub fn instantiate_with_code_old_weight( &self, value: ::core::primitive::u128, gas_limit: runtime_types::sp_weights::OldWeight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, code: ::std::vec::Vec<::core::primitive::u8>, data: ::std::vec::Vec<::core::primitive::u8>, salt: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Contracts", "instantiate_with_code_old_weight", InstantiateWithCodeOldWeight { value, gas_limit, storage_deposit_limit, code, data, salt, }, [ 93u8, 124u8, 100u8, 101u8, 7u8, 110u8, 92u8, 199u8, 162u8, 126u8, 35u8, 47u8, 190u8, 42u8, 237u8, 152u8, 169u8, 130u8, 21u8, 33u8, 136u8, 220u8, 110u8, 106u8, 57u8, 211u8, 158u8, 130u8, 112u8, 37u8, 41u8, 39u8, ], ) } #[doc = "Deprecated version if [`Self::instantiate`] for use in an in-storage `Call`."] pub fn instantiate_old_weight( &self, value: ::core::primitive::u128, gas_limit: runtime_types::sp_weights::OldWeight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, code_hash: ::subxt::utils::H256, data: ::std::vec::Vec<::core::primitive::u8>, salt: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Contracts", "instantiate_old_weight", InstantiateOldWeight { value, gas_limit, storage_deposit_limit, code_hash, data, salt, }, [ 243u8, 56u8, 93u8, 198u8, 169u8, 134u8, 6u8, 135u8, 19u8, 1u8, 20u8, 138u8, 202u8, 59u8, 59u8, 99u8, 58u8, 22u8, 33u8, 94u8, 253u8, 215u8, 203u8, 159u8, 58u8, 21u8, 24u8, 235u8, 30u8, 215u8, 173u8, 23u8, ], ) } #[doc = "Upload new `code` without instantiating a contract from it."] #[doc = ""] #[doc = "If the code does not already exist a deposit is reserved from the caller"] #[doc = "and unreserved only when [`Self::remove_code`] is called. The size of the reserve"] #[doc = "depends on the instrumented size of the the supplied `code`."] #[doc = ""] #[doc = "If the code already exists in storage it will still return `Ok` and upgrades"] #[doc = "the in storage version to the current"] #[doc = "[`InstructionWeights::version`](InstructionWeights)."] #[doc = ""] #[doc = "- `determinism`: If this is set to any other value but [`Determinism::Deterministic`]"] #[doc = " then the only way to use this code is to delegate call into it from an offchain"] #[doc = " execution. Set to [`Determinism::Deterministic`] if in doubt."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "Anyone can instantiate a contract from any uploaded code and thus prevent its removal."] #[doc = "To avoid this situation a constructor could employ access control so that it can"] #[doc = "only be instantiated by permissioned entities. The same is true when uploading"] #[doc = "through [`Self::instantiate_with_code`]."] pub fn upload_code( &self, code: ::std::vec::Vec<::core::primitive::u8>, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, determinism: runtime_types::pallet_contracts::wasm::Determinism, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Contracts", "upload_code", UploadCode { code, storage_deposit_limit, determinism, }, [ 233u8, 137u8, 54u8, 111u8, 132u8, 124u8, 80u8, 213u8, 182u8, 224u8, 144u8, 240u8, 6u8, 235u8, 148u8, 26u8, 65u8, 39u8, 91u8, 151u8, 131u8, 10u8, 216u8, 101u8, 89u8, 115u8, 160u8, 154u8, 44u8, 239u8, 142u8, 116u8, ], ) } #[doc = "Remove the code stored under `code_hash` and refund the deposit to its owner."] #[doc = ""] #[doc = "A code can only be removed by its original uploader (its owner) and only if it is"] #[doc = "not used by any contract."] pub fn remove_code( &self, code_hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Contracts", "remove_code", RemoveCode { code_hash }, [ 43u8, 192u8, 198u8, 182u8, 108u8, 76u8, 21u8, 42u8, 169u8, 41u8, 195u8, 73u8, 31u8, 179u8, 162u8, 56u8, 91u8, 5u8, 64u8, 7u8, 252u8, 194u8, 255u8, 170u8, 67u8, 137u8, 143u8, 192u8, 2u8, 149u8, 38u8, 180u8, ], ) } #[doc = "Privileged function that changes the code of an existing contract."] #[doc = ""] #[doc = "This takes care of updating refcounts and all other necessary operations. Returns"] #[doc = "an error if either the `code_hash` or `dest` do not exist."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "This does **not** change the address of the contract in question. This means"] #[doc = "that the contract address is no longer derived from its code hash after calling"] #[doc = "this dispatchable."] pub fn set_code( &self, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, code_hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Contracts", "set_code", SetCode { dest, code_hash }, [ 87u8, 240u8, 9u8, 107u8, 114u8, 69u8, 236u8, 184u8, 154u8, 179u8, 251u8, 25u8, 177u8, 13u8, 199u8, 181u8, 166u8, 219u8, 217u8, 11u8, 98u8, 167u8, 45u8, 214u8, 212u8, 208u8, 110u8, 91u8, 8u8, 65u8, 232u8, 11u8, ], ) } #[doc = "Makes a call to an account, optionally transferring some balance."] #[doc = ""] #[doc = "# Parameters"] #[doc = ""] #[doc = "* `dest`: Address of the contract to call."] #[doc = "* `value`: The balance to transfer from the `origin` to `dest`."] #[doc = "* `gas_limit`: The gas limit enforced when executing the constructor."] #[doc = "* `storage_deposit_limit`: The maximum amount of balance that can be charged from the"] #[doc = " caller to pay for the storage consumed."] #[doc = "* `data`: The input data to pass to the contract."] #[doc = ""] #[doc = "* If the account is a smart-contract account, the associated code will be"] #[doc = "executed and any value will be transferred."] #[doc = "* If the account is a regular account, any value will be transferred."] #[doc = "* If no account exists and the call value is not less than `existential_deposit`,"] #[doc = "a regular account will be created and any value will be transferred."] pub fn call( &self, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, value: ::core::primitive::u128, gas_limit: runtime_types::sp_weights::weight_v2::Weight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, data: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Contracts", "call", Call { dest, value, gas_limit, storage_deposit_limit, data, }, [ 196u8, 11u8, 91u8, 234u8, 7u8, 74u8, 48u8, 20u8, 202u8, 48u8, 234u8, 203u8, 148u8, 60u8, 217u8, 84u8, 219u8, 41u8, 230u8, 150u8, 158u8, 153u8, 160u8, 81u8, 59u8, 2u8, 170u8, 20u8, 252u8, 97u8, 6u8, 173u8, ], ) } #[doc = "Instantiates a new contract from the supplied `code` optionally transferring"] #[doc = "some balance."] #[doc = ""] #[doc = "This dispatchable has the same effect as calling [`Self::upload_code`] +"] #[doc = "[`Self::instantiate`]. Bundling them together provides efficiency gains. Please"] #[doc = "also check the documentation of [`Self::upload_code`]."] #[doc = ""] #[doc = "# Parameters"] #[doc = ""] #[doc = "* `value`: The balance to transfer from the `origin` to the newly created contract."] #[doc = "* `gas_limit`: The gas limit enforced when executing the constructor."] #[doc = "* `storage_deposit_limit`: The maximum amount of balance that can be charged/reserved"] #[doc = " from the caller to pay for the storage consumed."] #[doc = "* `code`: The contract code to deploy in raw bytes."] #[doc = "* `data`: The input data to pass to the contract constructor."] #[doc = "* `salt`: Used for the address derivation. See [`Pallet::contract_address`]."] #[doc = ""] #[doc = "Instantiation is executed as follows:"] #[doc = ""] #[doc = "- The supplied `code` is instrumented, deployed, and a `code_hash` is created for that"] #[doc = " code."] #[doc = "- If the `code_hash` already exists on the chain the underlying `code` will be shared."] #[doc = "- The destination address is computed based on the sender, code_hash and the salt."] #[doc = "- The smart-contract account is created at the computed address."] #[doc = "- The `value` is transferred to the new account."] #[doc = "- The `deploy` function is executed in the context of the newly-created account."] pub fn instantiate_with_code( &self, value: ::core::primitive::u128, gas_limit: runtime_types::sp_weights::weight_v2::Weight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, code: ::std::vec::Vec<::core::primitive::u8>, data: ::std::vec::Vec<::core::primitive::u8>, salt: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Contracts", "instantiate_with_code", InstantiateWithCode { value, gas_limit, storage_deposit_limit, code, data, salt, }, [ 94u8, 238u8, 175u8, 86u8, 230u8, 186u8, 94u8, 60u8, 201u8, 35u8, 117u8, 236u8, 221u8, 10u8, 180u8, 191u8, 140u8, 79u8, 203u8, 134u8, 240u8, 21u8, 31u8, 63u8, 9u8, 17u8, 134u8, 30u8, 244u8, 95u8, 171u8, 164u8, ], ) } #[doc = "Instantiates a contract from a previously deployed wasm binary."] #[doc = ""] #[doc = "This function is identical to [`Self::instantiate_with_code`] but without the"] #[doc = "code deployment step. Instead, the `code_hash` of an on-chain deployed wasm binary"] #[doc = "must be supplied."] pub fn instantiate( &self, value: ::core::primitive::u128, gas_limit: runtime_types::sp_weights::weight_v2::Weight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, code_hash: ::subxt::utils::H256, data: ::std::vec::Vec<::core::primitive::u8>, salt: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Contracts", "instantiate", Instantiate { value, gas_limit, storage_deposit_limit, code_hash, data, salt, }, [ 251u8, 49u8, 158u8, 1u8, 138u8, 29u8, 106u8, 187u8, 68u8, 135u8, 44u8, 196u8, 230u8, 237u8, 88u8, 244u8, 170u8, 168u8, 11u8, 91u8, 185u8, 11u8, 45u8, 86u8, 113u8, 79u8, 92u8, 248u8, 113u8, 47u8, 141u8, 10u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_contracts::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contract deployed by address at the specified address."] pub struct Instantiated { pub deployer: ::subxt::utils::AccountId32, pub contract: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Instantiated { const PALLET: &'static str = "Contracts"; const EVENT: &'static str = "Instantiated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contract has been removed."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "The only way for a contract to be removed and emitting this event is by calling"] #[doc = "`seal_terminate`."] pub struct Terminated { pub contract: ::subxt::utils::AccountId32, pub beneficiary: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Terminated { const PALLET: &'static str = "Contracts"; const EVENT: &'static str = "Terminated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Code with the specified hash has been stored."] pub struct CodeStored { pub code_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for CodeStored { const PALLET: &'static str = "Contracts"; const EVENT: &'static str = "CodeStored"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A custom event emitted by the contract."] pub struct ContractEmitted { pub contract: ::subxt::utils::AccountId32, pub data: ::std::vec::Vec<::core::primitive::u8>, } impl ::subxt::events::StaticEvent for ContractEmitted { const PALLET: &'static str = "Contracts"; const EVENT: &'static str = "ContractEmitted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A code with the specified hash was removed."] pub struct CodeRemoved { pub code_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for CodeRemoved { const PALLET: &'static str = "Contracts"; const EVENT: &'static str = "CodeRemoved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A contract's code was updated."] pub struct ContractCodeUpdated { pub contract: ::subxt::utils::AccountId32, pub new_code_hash: ::subxt::utils::H256, pub old_code_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for ContractCodeUpdated { const PALLET: &'static str = "Contracts"; const EVENT: &'static str = "ContractCodeUpdated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A contract was called either by a plain account or another contract."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "Please keep in mind that like all events this is only emitted for successful"] #[doc = "calls. This is because on failure all storage changes including events are"] #[doc = "rolled back."] pub struct Called { pub caller: ::subxt::utils::AccountId32, pub contract: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Called { const PALLET: &'static str = "Contracts"; const EVENT: &'static str = "Called"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A contract delegate called a code hash."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "Please keep in mind that like all events this is only emitted for successful"] #[doc = "calls. This is because on failure all storage changes including events are"] #[doc = "rolled back."] pub struct DelegateCalled { pub contract: ::subxt::utils::AccountId32, pub code_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for DelegateCalled { const PALLET: &'static str = "Contracts"; const EVENT: &'static str = "DelegateCalled"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " A mapping from an original code hash to the original code, untouched by instrumentation."] pub fn pristine_code( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Contracts", "PristineCode", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 244u8, 169u8, 220u8, 235u8, 62u8, 153u8, 226u8, 187u8, 220u8, 141u8, 149u8, 75u8, 224u8, 117u8, 181u8, 147u8, 140u8, 84u8, 9u8, 109u8, 230u8, 25u8, 186u8, 26u8, 171u8, 147u8, 19u8, 78u8, 62u8, 170u8, 27u8, 105u8, ], ) } #[doc = " A mapping from an original code hash to the original code, untouched by instrumentation."] pub fn pristine_code_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Contracts", "PristineCode", Vec::new(), [ 244u8, 169u8, 220u8, 235u8, 62u8, 153u8, 226u8, 187u8, 220u8, 141u8, 149u8, 75u8, 224u8, 117u8, 181u8, 147u8, 140u8, 84u8, 9u8, 109u8, 230u8, 25u8, 186u8, 26u8, 171u8, 147u8, 19u8, 78u8, 62u8, 170u8, 27u8, 105u8, ], ) } #[doc = " A mapping between an original code hash and instrumented wasm code, ready for execution."] pub fn code_storage( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_contracts::wasm::PrefabWasmModule, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Contracts", "CodeStorage", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 57u8, 55u8, 36u8, 82u8, 39u8, 194u8, 172u8, 147u8, 144u8, 63u8, 101u8, 240u8, 179u8, 25u8, 177u8, 68u8, 253u8, 230u8, 156u8, 228u8, 181u8, 194u8, 48u8, 99u8, 188u8, 117u8, 44u8, 80u8, 121u8, 46u8, 149u8, 48u8, ], ) } #[doc = " A mapping between an original code hash and instrumented wasm code, ready for execution."] pub fn code_storage_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_contracts::wasm::PrefabWasmModule, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Contracts", "CodeStorage", Vec::new(), [ 57u8, 55u8, 36u8, 82u8, 39u8, 194u8, 172u8, 147u8, 144u8, 63u8, 101u8, 240u8, 179u8, 25u8, 177u8, 68u8, 253u8, 230u8, 156u8, 228u8, 181u8, 194u8, 48u8, 99u8, 188u8, 117u8, 44u8, 80u8, 121u8, 46u8, 149u8, 48u8, ], ) } #[doc = " A mapping between an original code hash and its owner information."] pub fn owner_info_of( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_contracts::wasm::OwnerInfo, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Contracts", "OwnerInfoOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 147u8, 6u8, 225u8, 62u8, 211u8, 236u8, 61u8, 116u8, 152u8, 219u8, 220u8, 17u8, 82u8, 221u8, 156u8, 88u8, 63u8, 204u8, 16u8, 11u8, 184u8, 236u8, 181u8, 189u8, 170u8, 160u8, 60u8, 64u8, 71u8, 250u8, 202u8, 186u8, ], ) } #[doc = " A mapping between an original code hash and its owner information."] pub fn owner_info_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_contracts::wasm::OwnerInfo, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Contracts", "OwnerInfoOf", Vec::new(), [ 147u8, 6u8, 225u8, 62u8, 211u8, 236u8, 61u8, 116u8, 152u8, 219u8, 220u8, 17u8, 82u8, 221u8, 156u8, 88u8, 63u8, 204u8, 16u8, 11u8, 184u8, 236u8, 181u8, 189u8, 170u8, 160u8, 60u8, 64u8, 71u8, 250u8, 202u8, 186u8, ], ) } #[doc = " This is a **monotonic** counter incremented on contract instantiation."] #[doc = ""] #[doc = " This is used in order to generate unique trie ids for contracts."] #[doc = " The trie id of a new contract is calculated from hash(account_id, nonce)."] #[doc = " The nonce is required because otherwise the following sequence would lead to"] #[doc = " a possible collision of storage:"] #[doc = ""] #[doc = " 1. Create a new contract."] #[doc = " 2. Terminate the contract."] #[doc = " 3. Immediately recreate the contract with the same account_id."] #[doc = ""] #[doc = " This is bad because the contents of a trie are deleted lazily and there might be"] #[doc = " storage of the old instantiation still in it when the new contract is created. Please"] #[doc = " note that we can't replace the counter by the block number because the sequence above"] #[doc = " can happen in the same block. We also can't keep the account counter in memory only"] #[doc = " because storage is the only way to communicate across different extrinsics in the"] #[doc = " same block."] #[doc = ""] #[doc = " # Note"] #[doc = ""] #[doc = " Do not use it to determine the number of contracts. It won't be decremented if"] #[doc = " a contract is destroyed."] pub fn nonce( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u64>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Contracts", "Nonce", vec![], [ 122u8, 169u8, 95u8, 131u8, 85u8, 32u8, 154u8, 114u8, 143u8, 56u8, 12u8, 182u8, 64u8, 150u8, 241u8, 249u8, 254u8, 251u8, 160u8, 235u8, 192u8, 41u8, 101u8, 232u8, 186u8, 108u8, 187u8, 149u8, 210u8, 91u8, 179u8, 98u8, ], ) } #[doc = " The code associated with a given account."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn contract_info_of( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_contracts::storage::ContractInfo, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Contracts", "ContractInfoOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 176u8, 73u8, 209u8, 119u8, 242u8, 147u8, 64u8, 203u8, 253u8, 178u8, 8u8, 239u8, 64u8, 68u8, 106u8, 153u8, 28u8, 124u8, 52u8, 226u8, 67u8, 54u8, 177u8, 206u8, 238u8, 179u8, 222u8, 225u8, 242u8, 0u8, 171u8, 184u8, ], ) } #[doc = " The code associated with a given account."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn contract_info_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_contracts::storage::ContractInfo, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Contracts", "ContractInfoOf", Vec::new(), [ 176u8, 73u8, 209u8, 119u8, 242u8, 147u8, 64u8, 203u8, 253u8, 178u8, 8u8, 239u8, 64u8, 68u8, 106u8, 153u8, 28u8, 124u8, 52u8, 226u8, 67u8, 54u8, 177u8, 206u8, 238u8, 179u8, 222u8, 225u8, 242u8, 0u8, 171u8, 184u8, ], ) } #[doc = " Evicted contracts that await child trie deletion."] #[doc = ""] #[doc = " Child trie deletion is a heavy operation depending on the amount of storage items"] #[doc = " stored in said trie. Therefore this operation is performed lazily in `on_initialize`."] pub fn deletion_queue( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_contracts::storage::DeletedContract, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Contracts", "DeletionQueue", vec![], [ 119u8, 169u8, 146u8, 210u8, 21u8, 216u8, 51u8, 225u8, 107u8, 61u8, 42u8, 155u8, 169u8, 127u8, 140u8, 106u8, 255u8, 137u8, 163u8, 199u8, 91u8, 137u8, 73u8, 61u8, 9u8, 167u8, 16u8, 157u8, 183u8, 212u8, 35u8, 88u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Cost schedule and limits."] pub fn schedule( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_contracts::schedule::Schedule, >, > { ::subxt::constants::StaticConstantAddress::new( "Contracts", "Schedule", [ 102u8, 52u8, 108u8, 178u8, 197u8, 144u8, 39u8, 115u8, 254u8, 23u8, 38u8, 120u8, 11u8, 166u8, 178u8, 210u8, 91u8, 139u8, 214u8, 231u8, 110u8, 188u8, 37u8, 149u8, 195u8, 73u8, 166u8, 90u8, 55u8, 73u8, 88u8, 111u8, ], ) } #[doc = " The maximum number of contracts that can be pending for deletion."] #[doc = ""] #[doc = " When a contract is deleted by calling `seal_terminate` it becomes inaccessible"] #[doc = " immediately, but the deletion of the storage items it has accumulated is performed"] #[doc = " later. The contract is put into the deletion queue. This defines how many"] #[doc = " contracts can be queued up at the same time. If that limit is reached `seal_terminate`"] #[doc = " will fail. The action must be retried in a later block in that case."] #[doc = ""] #[doc = " The reasons for limiting the queue depth are:"] #[doc = ""] #[doc = " 1. The queue is in storage in order to be persistent between blocks. We want to limit"] #[doc = " \tthe amount of storage that can be consumed."] #[doc = " 2. The queue is stored in a vector and needs to be decoded as a whole when reading"] #[doc = "\t\tit at the end of each block. Longer queues take more weight to decode and hence"] #[doc = "\t\tlimit the amount of items that can be deleted per block."] pub fn deletion_queue_depth( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Contracts", "DeletionQueueDepth", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum amount of weight that can be consumed per block for lazy trie removal."] #[doc = ""] #[doc = " The amount of weight that is dedicated per block to work on the deletion queue. Larger"] #[doc = " values allow more trie keys to be deleted in each block but reduce the amount of"] #[doc = " weight that is left for transactions. See [`Self::DeletionQueueDepth`] for more"] #[doc = " information about the deletion queue."] pub fn deletion_weight_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_weights::weight_v2::Weight, >, > { ::subxt::constants::StaticConstantAddress::new( "Contracts", "DeletionWeightLimit", [ 206u8, 61u8, 253u8, 247u8, 163u8, 40u8, 161u8, 52u8, 134u8, 140u8, 206u8, 83u8, 44u8, 166u8, 226u8, 115u8, 181u8, 14u8, 227u8, 130u8, 210u8, 32u8, 85u8, 29u8, 230u8, 97u8, 130u8, 165u8, 147u8, 134u8, 106u8, 76u8, ], ) } #[doc = " The amount of balance a caller has to pay for each byte of storage."] #[doc = ""] #[doc = " # Note"] #[doc = ""] #[doc = " Changing this value for an existing chain might need a storage migration."] pub fn deposit_per_byte( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Contracts", "DepositPerByte", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount of balance a caller has to pay for each storage item."] #[doc = ""] #[doc = " # Note"] #[doc = ""] #[doc = " Changing this value for an existing chain might need a storage migration."] pub fn deposit_per_item( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Contracts", "DepositPerItem", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The maximum length of a contract code in bytes. This limit applies to the instrumented"] #[doc = " version of the code. Therefore `instantiate_with_code` can fail even when supplying"] #[doc = " a wasm binary below this maximum size."] #[doc = ""] #[doc = " The value should be chosen carefully taking into the account the overall memory limit"] #[doc = " your runtime has, as well as the [maximum allowed callstack"] #[doc = " depth](#associatedtype.CallStack). Look into the `integrity_test()` for some insights."] pub fn max_code_len( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Contracts", "MaxCodeLen", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum allowable length in bytes for storage keys."] pub fn max_storage_key_len( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Contracts", "MaxStorageKeyLen", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Make contract callable functions marked as `#[unstable]` available."] #[doc = ""] #[doc = " Contracts that use `#[unstable]` functions won't be able to be uploaded unless"] #[doc = " this is set to `true`. This is only meant for testnets and dev nodes in order to"] #[doc = " experiment with new features."] #[doc = ""] #[doc = " # Warning"] #[doc = ""] #[doc = " Do **not** set to `true` on productions chains."] pub fn unsafe_unstable_interface( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, > { ::subxt::constants::StaticConstantAddress::new( "Contracts", "UnsafeUnstableInterface", [ 165u8, 28u8, 112u8, 190u8, 18u8, 129u8, 182u8, 206u8, 237u8, 1u8, 68u8, 252u8, 125u8, 234u8, 185u8, 50u8, 149u8, 164u8, 47u8, 126u8, 134u8, 100u8, 14u8, 86u8, 209u8, 39u8, 20u8, 4u8, 233u8, 115u8, 102u8, 131u8, ], ) } #[doc = " The maximum length of the debug buffer in bytes."] pub fn max_debug_buffer_len( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Contracts", "MaxDebugBufferLen", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod sudo { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Sudo { pub call: ::std::boxed::Box, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SudoUncheckedWeight { pub call: ::std::boxed::Box, pub weight: runtime_types::sp_weights::weight_v2::Weight, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetKey { pub new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SudoAs { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub call: ::std::boxed::Box, } pub struct TransactionApi; impl TransactionApi { #[doc = "Authenticates the sudo key and dispatches a function call with `Root` origin."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "- Limited storage reads."] #[doc = "- One DB write (event)."] #[doc = "- Weight of derivative `call` execution + 10,000."] #[doc = "# "] pub fn sudo( &self, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Sudo", "sudo", Sudo { call: ::std::boxed::Box::new(call), }, [ 158u8, 33u8, 202u8, 54u8, 152u8, 39u8, 55u8, 155u8, 113u8, 166u8, 63u8, 36u8, 39u8, 17u8, 27u8, 16u8, 95u8, 200u8, 112u8, 208u8, 219u8, 190u8, 214u8, 2u8, 240u8, 32u8, 12u8, 21u8, 108u8, 18u8, 106u8, 177u8, ], ) } #[doc = "Authenticates the sudo key and dispatches a function call with `Root` origin."] #[doc = "This function does not check the weight of the call, and instead allows the"] #[doc = "Sudo user to specify the weight of the call."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "- The weight of this call is defined by the caller."] #[doc = "# "] pub fn sudo_unchecked_weight( &self, call: runtime_types::kitchensink_runtime::RuntimeCall, weight: runtime_types::sp_weights::weight_v2::Weight, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Sudo", "sudo_unchecked_weight", SudoUncheckedWeight { call: ::std::boxed::Box::new(call), weight, }, [ 60u8, 193u8, 102u8, 0u8, 100u8, 23u8, 221u8, 19u8, 124u8, 101u8, 186u8, 135u8, 63u8, 42u8, 138u8, 30u8, 211u8, 117u8, 21u8, 154u8, 0u8, 184u8, 108u8, 208u8, 50u8, 171u8, 77u8, 40u8, 112u8, 27u8, 154u8, 221u8, ], ) } #[doc = "Authenticates the current sudo key and sets the given AccountId (`new`) as the new sudo"] #[doc = "key."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "- Limited storage reads."] #[doc = "- One DB change."] #[doc = "# "] pub fn set_key( &self, new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Sudo", "set_key", SetKey { new }, [ 34u8, 116u8, 170u8, 18u8, 106u8, 17u8, 231u8, 159u8, 110u8, 246u8, 2u8, 27u8, 161u8, 155u8, 163u8, 41u8, 138u8, 7u8, 81u8, 98u8, 230u8, 182u8, 23u8, 222u8, 240u8, 117u8, 173u8, 232u8, 192u8, 55u8, 92u8, 208u8, ], ) } #[doc = "Authenticates the sudo key and dispatches a function call with `Signed` origin from"] #[doc = "a given account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "- Limited storage reads."] #[doc = "- One DB write (event)."] #[doc = "- Weight of derivative `call` execution + 10,000."] #[doc = "# "] pub fn sudo_as( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Sudo", "sudo_as", SudoAs { who, call: ::std::boxed::Box::new(call), }, [ 97u8, 147u8, 103u8, 98u8, 213u8, 44u8, 115u8, 53u8, 152u8, 235u8, 250u8, 10u8, 86u8, 123u8, 0u8, 178u8, 24u8, 11u8, 240u8, 251u8, 99u8, 72u8, 98u8, 90u8, 99u8, 46u8, 51u8, 152u8, 0u8, 1u8, 220u8, 127u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_sudo::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A sudo just took place. \\[result\\]"] pub struct Sudid { pub sudo_result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for Sudid { const PALLET: &'static str = "Sudo"; const EVENT: &'static str = "Sudid"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The \\[sudoer\\] just switched identity; the old key is supplied if one existed."] pub struct KeyChanged { pub old_sudoer: ::core::option::Option<::subxt::utils::AccountId32>, } impl ::subxt::events::StaticEvent for KeyChanged { const PALLET: &'static str = "Sudo"; const EVENT: &'static str = "KeyChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A sudo just took place. \\[result\\]"] pub struct SudoAsDone { pub sudo_result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for SudoAsDone { const PALLET: &'static str = "Sudo"; const EVENT: &'static str = "SudoAsDone"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The `AccountId` of the sudo key."] pub fn key( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Sudo", "Key", vec![], [ 244u8, 73u8, 188u8, 136u8, 218u8, 163u8, 68u8, 179u8, 122u8, 173u8, 34u8, 108u8, 137u8, 28u8, 182u8, 16u8, 196u8, 92u8, 138u8, 34u8, 102u8, 80u8, 199u8, 88u8, 107u8, 207u8, 36u8, 22u8, 168u8, 167u8, 20u8, 142u8, ], ) } } } } pub mod im_online { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Heartbeat { pub heartbeat: runtime_types::pallet_im_online::Heartbeat<::core::primitive::u32>, pub signature: runtime_types::pallet_im_online::sr25519::app_sr25519::Signature, } pub struct TransactionApi; impl TransactionApi { #[doc = "# "] #[doc = "- Complexity: `O(K + E)` where K is length of `Keys` (heartbeat.validators_len) and E is"] #[doc = " length of `heartbeat.network_state.external_address`"] #[doc = " - `O(K)`: decoding of length `K`"] #[doc = " - `O(E)`: decoding/encoding of length `E`"] #[doc = "- DbReads: pallet_session `Validators`, pallet_session `CurrentIndex`, `Keys`,"] #[doc = " `ReceivedHeartbeats`"] #[doc = "- DbWrites: `ReceivedHeartbeats`"] #[doc = "# "] pub fn heartbeat( &self, heartbeat: runtime_types::pallet_im_online::Heartbeat< ::core::primitive::u32, >, signature : runtime_types :: pallet_im_online :: sr25519 :: app_sr25519 :: Signature, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ImOnline", "heartbeat", Heartbeat { heartbeat, signature, }, [ 212u8, 23u8, 174u8, 246u8, 60u8, 220u8, 178u8, 137u8, 53u8, 146u8, 165u8, 225u8, 179u8, 209u8, 233u8, 152u8, 129u8, 210u8, 126u8, 32u8, 216u8, 22u8, 76u8, 196u8, 255u8, 128u8, 246u8, 161u8, 30u8, 186u8, 249u8, 34u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_im_online::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new heartbeat was received from `AuthorityId`."] pub struct HeartbeatReceived { pub authority_id: runtime_types::pallet_im_online::sr25519::app_sr25519::Public, } impl ::subxt::events::StaticEvent for HeartbeatReceived { const PALLET: &'static str = "ImOnline"; const EVENT: &'static str = "HeartbeatReceived"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "At the end of the session, no offence was committed."] pub struct AllGood; impl ::subxt::events::StaticEvent for AllGood { const PALLET: &'static str = "ImOnline"; const EVENT: &'static str = "AllGood"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "At the end of the session, at least one validator was found to be offline."] pub struct SomeOffline { pub offline: ::std::vec::Vec<( ::subxt::utils::AccountId32, runtime_types::pallet_staking::Exposure< ::subxt::utils::AccountId32, ::core::primitive::u128, >, )>, } impl ::subxt::events::StaticEvent for SomeOffline { const PALLET: &'static str = "ImOnline"; const EVENT: &'static str = "SomeOffline"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The block number after which it's ok to send heartbeats in the current"] #[doc = " session."] #[doc = ""] #[doc = " At the beginning of each session we set this to a value that should fall"] #[doc = " roughly in the middle of the session duration. The idea is to first wait for"] #[doc = " the validators to produce a block in the current session, so that the"] #[doc = " heartbeat later on will not be necessary."] #[doc = ""] #[doc = " This value will only be used as a fallback if we fail to get a proper session"] #[doc = " progress estimate from `NextSessionRotation`, as those estimates should be"] #[doc = " more accurate then the value we calculate for `HeartbeatAfter`."] pub fn heartbeat_after( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "ImOnline", "HeartbeatAfter", vec![], [ 108u8, 100u8, 85u8, 198u8, 226u8, 122u8, 94u8, 225u8, 97u8, 154u8, 135u8, 95u8, 106u8, 28u8, 185u8, 78u8, 192u8, 196u8, 35u8, 191u8, 12u8, 19u8, 163u8, 46u8, 232u8, 235u8, 193u8, 81u8, 126u8, 204u8, 25u8, 228u8, ], ) } #[doc = " The current set of keys that may issue a heartbeat."] pub fn keys( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec< runtime_types::pallet_im_online::sr25519::app_sr25519::Public, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "ImOnline", "Keys", vec![], [ 6u8, 198u8, 221u8, 58u8, 14u8, 166u8, 245u8, 103u8, 191u8, 20u8, 69u8, 233u8, 147u8, 245u8, 24u8, 64u8, 207u8, 180u8, 39u8, 208u8, 252u8, 236u8, 247u8, 112u8, 187u8, 97u8, 70u8, 11u8, 248u8, 148u8, 208u8, 106u8, ], ) } #[doc = " For each session index, we keep a mapping of `SessionIndex` and `AuthIndex` to"] #[doc = " `WrapperOpaque`."] pub fn received_heartbeats( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_support::traits::misc::WrapperOpaque< runtime_types::pallet_im_online::BoundedOpaqueNetworkState, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ImOnline", "ReceivedHeartbeats", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 233u8, 128u8, 140u8, 233u8, 55u8, 146u8, 172u8, 54u8, 54u8, 57u8, 141u8, 106u8, 168u8, 59u8, 147u8, 253u8, 119u8, 48u8, 50u8, 251u8, 242u8, 109u8, 251u8, 2u8, 136u8, 80u8, 146u8, 121u8, 180u8, 219u8, 245u8, 37u8, ], ) } #[doc = " For each session index, we keep a mapping of `SessionIndex` and `AuthIndex` to"] #[doc = " `WrapperOpaque`."] pub fn received_heartbeats_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_support::traits::misc::WrapperOpaque< runtime_types::pallet_im_online::BoundedOpaqueNetworkState, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ImOnline", "ReceivedHeartbeats", Vec::new(), [ 233u8, 128u8, 140u8, 233u8, 55u8, 146u8, 172u8, 54u8, 54u8, 57u8, 141u8, 106u8, 168u8, 59u8, 147u8, 253u8, 119u8, 48u8, 50u8, 251u8, 242u8, 109u8, 251u8, 2u8, 136u8, 80u8, 146u8, 121u8, 180u8, 219u8, 245u8, 37u8, ], ) } #[doc = " For each session index, we keep a mapping of `ValidatorId` to the"] #[doc = " number of blocks authored by the given authority."] pub fn authored_blocks( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ImOnline", "AuthoredBlocks", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 50u8, 4u8, 242u8, 240u8, 247u8, 184u8, 114u8, 245u8, 233u8, 170u8, 24u8, 197u8, 18u8, 245u8, 8u8, 28u8, 33u8, 115u8, 166u8, 245u8, 221u8, 223u8, 56u8, 144u8, 33u8, 139u8, 10u8, 227u8, 228u8, 223u8, 103u8, 151u8, ], ) } #[doc = " For each session index, we keep a mapping of `ValidatorId` to the"] #[doc = " number of blocks authored by the given authority."] pub fn authored_blocks_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ImOnline", "AuthoredBlocks", Vec::new(), [ 50u8, 4u8, 242u8, 240u8, 247u8, 184u8, 114u8, 245u8, 233u8, 170u8, 24u8, 197u8, 18u8, 245u8, 8u8, 28u8, 33u8, 115u8, 166u8, 245u8, 221u8, 223u8, 56u8, 144u8, 33u8, 139u8, 10u8, 227u8, 228u8, 223u8, 103u8, 151u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " A configuration for base priority of unsigned transactions."] #[doc = ""] #[doc = " This is exposed so that it can be tuned for particular runtime, when"] #[doc = " multiple pallets send unsigned transactions."] pub fn unsigned_priority( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u64>, > { ::subxt::constants::StaticConstantAddress::new( "ImOnline", "UnsignedPriority", [ 128u8, 214u8, 205u8, 242u8, 181u8, 142u8, 124u8, 231u8, 190u8, 146u8, 59u8, 226u8, 157u8, 101u8, 103u8, 117u8, 249u8, 65u8, 18u8, 191u8, 103u8, 119u8, 53u8, 85u8, 81u8, 96u8, 220u8, 42u8, 184u8, 239u8, 42u8, 246u8, ], ) } } } } pub mod authority_discovery { use super::root_mod; use super::runtime_types; pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Keys of the current authority set."] pub fn keys( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec< runtime_types::sp_authority_discovery::app::Public, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "AuthorityDiscovery", "Keys", vec![], [ 6u8, 198u8, 221u8, 58u8, 14u8, 166u8, 245u8, 103u8, 191u8, 20u8, 69u8, 233u8, 147u8, 245u8, 24u8, 64u8, 207u8, 180u8, 39u8, 208u8, 252u8, 236u8, 247u8, 112u8, 187u8, 97u8, 70u8, 11u8, 248u8, 148u8, 208u8, 106u8, ], ) } #[doc = " Keys of the next authority set."] pub fn next_keys( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec< runtime_types::sp_authority_discovery::app::Public, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "AuthorityDiscovery", "NextKeys", vec![], [ 213u8, 94u8, 49u8, 159u8, 135u8, 1u8, 13u8, 150u8, 28u8, 15u8, 105u8, 130u8, 90u8, 15u8, 130u8, 138u8, 186u8, 118u8, 10u8, 238u8, 173u8, 229u8, 8u8, 144u8, 206u8, 121u8, 90u8, 203u8, 125u8, 106u8, 145u8, 144u8, ], ) } } } } pub mod offences { use super::root_mod; use super::runtime_types; #[doc = "Events type."] pub type Event = runtime_types::pallet_offences::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "There is an offence reported of the given `kind` happened at the `session_index` and"] #[doc = "(kind-specific) time slot. This event is not deposited for duplicate slashes."] #[doc = "\\[kind, timeslot\\]."] pub struct Offence { pub kind: [::core::primitive::u8; 16usize], pub timeslot: ::std::vec::Vec<::core::primitive::u8>, } impl ::subxt::events::StaticEvent for Offence { const PALLET: &'static str = "Offences"; const EVENT: &'static str = "Offence"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The primary structure that holds all offence records keyed by report identifiers."] pub fn reports( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_staking::offence::OffenceDetails< ::subxt::utils::AccountId32, ( ::subxt::utils::AccountId32, runtime_types::pallet_staking::Exposure< ::subxt::utils::AccountId32, ::core::primitive::u128, >, ), >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Offences", "Reports", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 144u8, 30u8, 66u8, 199u8, 102u8, 236u8, 175u8, 201u8, 206u8, 170u8, 55u8, 162u8, 137u8, 120u8, 220u8, 213u8, 57u8, 252u8, 0u8, 88u8, 210u8, 68u8, 5u8, 25u8, 77u8, 114u8, 204u8, 23u8, 190u8, 32u8, 211u8, 30u8, ], ) } #[doc = " The primary structure that holds all offence records keyed by report identifiers."] pub fn reports_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_staking::offence::OffenceDetails< ::subxt::utils::AccountId32, ( ::subxt::utils::AccountId32, runtime_types::pallet_staking::Exposure< ::subxt::utils::AccountId32, ::core::primitive::u128, >, ), >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Offences", "Reports", Vec::new(), [ 144u8, 30u8, 66u8, 199u8, 102u8, 236u8, 175u8, 201u8, 206u8, 170u8, 55u8, 162u8, 137u8, 120u8, 220u8, 213u8, 57u8, 252u8, 0u8, 88u8, 210u8, 68u8, 5u8, 25u8, 77u8, 114u8, 204u8, 23u8, 190u8, 32u8, 211u8, 30u8, ], ) } #[doc = " A vector of reports of the same kind that happened at the same time slot."] pub fn concurrent_reports_index( &self, _0: impl ::std::borrow::Borrow<[::core::primitive::u8; 16usize]>, _1: impl ::std::borrow::Borrow<[::core::primitive::u8]>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::subxt::utils::H256>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Offences", "ConcurrentReportsIndex", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 106u8, 21u8, 104u8, 5u8, 4u8, 66u8, 28u8, 70u8, 161u8, 195u8, 238u8, 28u8, 69u8, 241u8, 221u8, 113u8, 140u8, 103u8, 181u8, 143u8, 60u8, 177u8, 13u8, 129u8, 224u8, 149u8, 77u8, 32u8, 75u8, 74u8, 101u8, 65u8, ], ) } #[doc = " A vector of reports of the same kind that happened at the same time slot."] pub fn concurrent_reports_index_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::subxt::utils::H256>, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Offences", "ConcurrentReportsIndex", Vec::new(), [ 106u8, 21u8, 104u8, 5u8, 4u8, 66u8, 28u8, 70u8, 161u8, 195u8, 238u8, 28u8, 69u8, 241u8, 221u8, 113u8, 140u8, 103u8, 181u8, 143u8, 60u8, 177u8, 13u8, 129u8, 224u8, 149u8, 77u8, 32u8, 75u8, 74u8, 101u8, 65u8, ], ) } #[doc = " Enumerates all reports of a kind along with the time they happened."] #[doc = ""] #[doc = " All reports are sorted by the time of offence."] #[doc = ""] #[doc = " Note that the actual type of this mapping is `Vec`, this is because values of"] #[doc = " different types are not supported at the moment so we are doing the manual serialization."] pub fn reports_by_kind_index( &self, _0: impl ::std::borrow::Borrow<[::core::primitive::u8; 16usize]>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u8>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Offences", "ReportsByKindIndex", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 162u8, 66u8, 131u8, 48u8, 250u8, 237u8, 179u8, 214u8, 36u8, 137u8, 226u8, 136u8, 120u8, 61u8, 215u8, 43u8, 164u8, 50u8, 91u8, 164u8, 20u8, 96u8, 189u8, 100u8, 242u8, 106u8, 21u8, 136u8, 98u8, 215u8, 180u8, 145u8, ], ) } #[doc = " Enumerates all reports of a kind along with the time they happened."] #[doc = ""] #[doc = " All reports are sorted by the time of offence."] #[doc = ""] #[doc = " Note that the actual type of this mapping is `Vec`, this is because values of"] #[doc = " different types are not supported at the moment so we are doing the manual serialization."] pub fn reports_by_kind_index_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u8>, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Offences", "ReportsByKindIndex", Vec::new(), [ 162u8, 66u8, 131u8, 48u8, 250u8, 237u8, 179u8, 214u8, 36u8, 137u8, 226u8, 136u8, 120u8, 61u8, 215u8, 43u8, 164u8, 50u8, 91u8, 164u8, 20u8, 96u8, 189u8, 100u8, 242u8, 106u8, 21u8, 136u8, 98u8, 215u8, 180u8, 145u8, ], ) } } } } pub mod historical { use super::root_mod; use super::runtime_types; } pub mod randomness_collective_flip { use super::root_mod; use super::runtime_types; pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Series of block headers from the last 81 blocks that acts as random seed material. This"] #[doc = " is arranged as a ring buffer with `block_number % 81` being the index into the `Vec` of"] #[doc = " the oldest hash."] pub fn random_material( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::H256, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "RandomnessCollectiveFlip", "RandomMaterial", vec![], [ 152u8, 126u8, 73u8, 88u8, 54u8, 147u8, 6u8, 19u8, 214u8, 40u8, 159u8, 30u8, 236u8, 61u8, 240u8, 65u8, 178u8, 94u8, 146u8, 152u8, 135u8, 252u8, 160u8, 86u8, 123u8, 114u8, 251u8, 140u8, 98u8, 143u8, 217u8, 242u8, ], ) } } } } pub mod identity { use super::root_mod; use super::runtime_types; #[doc = "Identity pallet declaration."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AddRegistrar { pub account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetIdentity { pub info: ::std::boxed::Box< runtime_types::pallet_identity::types::IdentityInfo, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetSubs { pub subs: ::std::vec::Vec<( ::subxt::utils::AccountId32, runtime_types::pallet_identity::types::Data, )>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClearIdentity; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RequestJudgement { #[codec(compact)] pub reg_index: ::core::primitive::u32, #[codec(compact)] pub max_fee: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelRequest { pub reg_index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetFee { #[codec(compact)] pub index: ::core::primitive::u32, #[codec(compact)] pub fee: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetAccountId { #[codec(compact)] pub index: ::core::primitive::u32, pub new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetFields { #[codec(compact)] pub index: ::core::primitive::u32, pub fields: runtime_types::pallet_identity::types::BitFlags< runtime_types::pallet_identity::types::IdentityField, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ProvideJudgement { #[codec(compact)] pub reg_index: ::core::primitive::u32, pub target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub judgement: runtime_types::pallet_identity::types::Judgement< ::core::primitive::u128, >, pub identity: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct KillIdentity { pub target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AddSub { pub sub: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub data: runtime_types::pallet_identity::types::Data, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RenameSub { pub sub: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub data: runtime_types::pallet_identity::types::Data, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveSub { pub sub: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct QuitSub; pub struct TransactionApi; impl TransactionApi { #[doc = "Add a registrar to the system."] #[doc = ""] #[doc = "The dispatch origin for this call must be `T::RegistrarOrigin`."] #[doc = ""] #[doc = "- `account`: the account of the registrar."] #[doc = ""] #[doc = "Emits `RegistrarAdded` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R)` where `R` registrar-count (governance-bounded and code-bounded)."] #[doc = "- One storage mutation (codec `O(R)`)."] #[doc = "- One event."] #[doc = "# "] pub fn add_registrar( &self, account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "add_registrar", AddRegistrar { account }, [ 96u8, 200u8, 92u8, 23u8, 3u8, 144u8, 56u8, 53u8, 245u8, 210u8, 33u8, 36u8, 183u8, 233u8, 41u8, 1u8, 127u8, 2u8, 25u8, 5u8, 15u8, 133u8, 4u8, 107u8, 206u8, 155u8, 114u8, 39u8, 14u8, 235u8, 115u8, 172u8, ], ) } #[doc = "Set an account's identity information and reserve the appropriate deposit."] #[doc = ""] #[doc = "If the account already has identity information, the deposit is taken as part payment"] #[doc = "for the new deposit."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `info`: The identity information."] #[doc = ""] #[doc = "Emits `IdentitySet` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(X + X' + R)`"] #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)"] #[doc = " - where `R` judgements-count (registrar-count-bounded)"] #[doc = "- One balance reserve operation."] #[doc = "- One storage mutation (codec-read `O(X' + R)`, codec-write `O(X + R)`)."] #[doc = "- One event."] #[doc = "# "] pub fn set_identity( &self, info: runtime_types::pallet_identity::types::IdentityInfo, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "set_identity", SetIdentity { info: ::std::boxed::Box::new(info), }, [ 130u8, 89u8, 118u8, 6u8, 134u8, 166u8, 35u8, 192u8, 73u8, 6u8, 171u8, 20u8, 225u8, 255u8, 152u8, 142u8, 111u8, 8u8, 206u8, 200u8, 64u8, 52u8, 110u8, 123u8, 42u8, 101u8, 191u8, 242u8, 133u8, 139u8, 154u8, 205u8, ], ) } #[doc = "Set the sub-accounts of the sender."] #[doc = ""] #[doc = "Payment: Any aggregate balance reserved by previous `set_subs` calls will be returned"] #[doc = "and an amount `SubAccountDeposit` will be reserved for each item in `subs`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "identity."] #[doc = ""] #[doc = "- `subs`: The identity's (new) sub-accounts."] #[doc = ""] #[doc = "# "] #[doc = "- `O(P + S)`"] #[doc = " - where `P` old-subs-count (hard- and deposit-bounded)."] #[doc = " - where `S` subs-count (hard- and deposit-bounded)."] #[doc = "- At most one balance operations."] #[doc = "- DB:"] #[doc = " - `P + S` storage mutations (codec complexity `O(1)`)"] #[doc = " - One storage read (codec complexity `O(P)`)."] #[doc = " - One storage write (codec complexity `O(S)`)."] #[doc = " - One storage-exists (`IdentityOf::contains_key`)."] #[doc = "# "] pub fn set_subs( &self, subs: ::std::vec::Vec<( ::subxt::utils::AccountId32, runtime_types::pallet_identity::types::Data, )>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "set_subs", SetSubs { subs }, [ 177u8, 219u8, 84u8, 183u8, 5u8, 32u8, 192u8, 82u8, 174u8, 68u8, 198u8, 224u8, 56u8, 85u8, 134u8, 171u8, 30u8, 132u8, 140u8, 236u8, 117u8, 24u8, 150u8, 218u8, 146u8, 194u8, 144u8, 92u8, 103u8, 206u8, 46u8, 90u8, ], ) } #[doc = "Clear an account's identity info and all sub-accounts and return all deposits."] #[doc = ""] #[doc = "Payment: All reserved balances on the account are returned."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "identity."] #[doc = ""] #[doc = "Emits `IdentityCleared` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R + S + X)`"] #[doc = " - where `R` registrar-count (governance-bounded)."] #[doc = " - where `S` subs-count (hard- and deposit-bounded)."] #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)."] #[doc = "- One balance-unreserve operation."] #[doc = "- `2` storage reads and `S + 2` storage deletions."] #[doc = "- One event."] #[doc = "# "] pub fn clear_identity( &self, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "clear_identity", ClearIdentity {}, [ 75u8, 44u8, 74u8, 122u8, 149u8, 202u8, 114u8, 230u8, 0u8, 255u8, 140u8, 122u8, 14u8, 196u8, 205u8, 249u8, 220u8, 94u8, 216u8, 34u8, 63u8, 14u8, 8u8, 205u8, 74u8, 23u8, 181u8, 129u8, 252u8, 110u8, 231u8, 114u8, ], ) } #[doc = "Request a judgement from a registrar."] #[doc = ""] #[doc = "Payment: At most `max_fee` will be reserved for payment to the registrar if judgement"] #[doc = "given."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a"] #[doc = "registered identity."] #[doc = ""] #[doc = "- `reg_index`: The index of the registrar whose judgement is requested."] #[doc = "- `max_fee`: The maximum fee that may be paid. This should just be auto-populated as:"] #[doc = ""] #[doc = "```nocompile"] #[doc = "Self::registrars().get(reg_index).unwrap().fee"] #[doc = "```"] #[doc = ""] #[doc = "Emits `JudgementRequested` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R + X)`."] #[doc = "- One balance-reserve operation."] #[doc = "- Storage: 1 read `O(R)`, 1 mutate `O(X + R)`."] #[doc = "- One event."] #[doc = "# "] pub fn request_judgement( &self, reg_index: ::core::primitive::u32, max_fee: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "request_judgement", RequestJudgement { reg_index, max_fee }, [ 186u8, 149u8, 61u8, 54u8, 159u8, 194u8, 77u8, 161u8, 220u8, 157u8, 3u8, 216u8, 23u8, 105u8, 119u8, 76u8, 144u8, 198u8, 157u8, 45u8, 235u8, 139u8, 87u8, 82u8, 81u8, 12u8, 25u8, 134u8, 225u8, 92u8, 182u8, 101u8, ], ) } #[doc = "Cancel a previous request."] #[doc = ""] #[doc = "Payment: A previously reserved deposit is returned on success."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a"] #[doc = "registered identity."] #[doc = ""] #[doc = "- `reg_index`: The index of the registrar whose judgement is no longer requested."] #[doc = ""] #[doc = "Emits `JudgementUnrequested` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R + X)`."] #[doc = "- One balance-reserve operation."] #[doc = "- One storage mutation `O(R + X)`."] #[doc = "- One event"] #[doc = "# "] pub fn cancel_request( &self, reg_index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "cancel_request", CancelRequest { reg_index }, [ 83u8, 180u8, 239u8, 126u8, 32u8, 51u8, 17u8, 20u8, 180u8, 3u8, 59u8, 96u8, 24u8, 32u8, 136u8, 92u8, 58u8, 254u8, 68u8, 70u8, 50u8, 11u8, 51u8, 91u8, 180u8, 79u8, 81u8, 84u8, 216u8, 138u8, 6u8, 215u8, ], ) } #[doc = "Set the fee required for a judgement to be requested from a registrar."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must be the account"] #[doc = "of the registrar whose index is `index`."] #[doc = ""] #[doc = "- `index`: the index of the registrar whose fee is to be set."] #[doc = "- `fee`: the new fee."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R)`."] #[doc = "- One storage mutation `O(R)`."] #[doc = "- Benchmark: 7.315 + R * 0.329 µs (min squares analysis)"] #[doc = "# "] pub fn set_fee( &self, index: ::core::primitive::u32, fee: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "set_fee", SetFee { index, fee }, [ 21u8, 157u8, 123u8, 182u8, 160u8, 190u8, 117u8, 37u8, 136u8, 133u8, 104u8, 234u8, 31u8, 145u8, 115u8, 154u8, 125u8, 40u8, 2u8, 87u8, 118u8, 56u8, 247u8, 73u8, 89u8, 0u8, 251u8, 3u8, 58u8, 105u8, 239u8, 211u8, ], ) } #[doc = "Change the account associated with a registrar."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must be the account"] #[doc = "of the registrar whose index is `index`."] #[doc = ""] #[doc = "- `index`: the index of the registrar whose fee is to be set."] #[doc = "- `new`: the new account ID."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R)`."] #[doc = "- One storage mutation `O(R)`."] #[doc = "- Benchmark: 8.823 + R * 0.32 µs (min squares analysis)"] #[doc = "# "] pub fn set_account_id( &self, index: ::core::primitive::u32, new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "set_account_id", SetAccountId { index, new }, [ 14u8, 154u8, 84u8, 48u8, 59u8, 133u8, 45u8, 204u8, 255u8, 85u8, 157u8, 88u8, 56u8, 207u8, 113u8, 184u8, 233u8, 139u8, 129u8, 118u8, 59u8, 9u8, 211u8, 184u8, 32u8, 141u8, 126u8, 208u8, 179u8, 4u8, 2u8, 95u8, ], ) } #[doc = "Set the field information for a registrar."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must be the account"] #[doc = "of the registrar whose index is `index`."] #[doc = ""] #[doc = "- `index`: the index of the registrar whose fee is to be set."] #[doc = "- `fields`: the fields that the registrar concerns themselves with."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R)`."] #[doc = "- One storage mutation `O(R)`."] #[doc = "- Benchmark: 7.464 + R * 0.325 µs (min squares analysis)"] #[doc = "# "] pub fn set_fields( &self, index: ::core::primitive::u32, fields: runtime_types::pallet_identity::types::BitFlags< runtime_types::pallet_identity::types::IdentityField, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "set_fields", SetFields { index, fields }, [ 50u8, 196u8, 179u8, 71u8, 66u8, 65u8, 235u8, 7u8, 51u8, 14u8, 81u8, 173u8, 201u8, 58u8, 6u8, 151u8, 174u8, 245u8, 102u8, 184u8, 28u8, 84u8, 125u8, 93u8, 126u8, 134u8, 92u8, 203u8, 200u8, 129u8, 240u8, 252u8, ], ) } #[doc = "Provide a judgement for an account's identity."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must be the account"] #[doc = "of the registrar whose index is `reg_index`."] #[doc = ""] #[doc = "- `reg_index`: the index of the registrar whose judgement is being made."] #[doc = "- `target`: the account whose identity the judgement is upon. This must be an account"] #[doc = " with a registered identity."] #[doc = "- `judgement`: the judgement of the registrar of index `reg_index` about `target`."] #[doc = "- `identity`: The hash of the [`IdentityInfo`] for that the judgement is provided."] #[doc = ""] #[doc = "Emits `JudgementGiven` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R + X)`."] #[doc = "- One balance-transfer operation."] #[doc = "- Up to one account-lookup operation."] #[doc = "- Storage: 1 read `O(R)`, 1 mutate `O(R + X)`."] #[doc = "- One event."] #[doc = "# "] pub fn provide_judgement( &self, reg_index: ::core::primitive::u32, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, judgement: runtime_types::pallet_identity::types::Judgement< ::core::primitive::u128, >, identity: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "provide_judgement", ProvideJudgement { reg_index, target, judgement, identity, }, [ 83u8, 253u8, 77u8, 208u8, 198u8, 25u8, 202u8, 213u8, 223u8, 184u8, 231u8, 185u8, 186u8, 216u8, 54u8, 62u8, 3u8, 7u8, 107u8, 152u8, 126u8, 195u8, 175u8, 221u8, 134u8, 169u8, 199u8, 124u8, 232u8, 157u8, 67u8, 75u8, ], ) } #[doc = "Remove an account's identity and sub-account information and slash the deposits."] #[doc = ""] #[doc = "Payment: Reserved balances from `set_subs` and `set_identity` are slashed and handled by"] #[doc = "`Slash`. Verification request deposits are not returned; they should be cancelled"] #[doc = "manually using `cancel_request`."] #[doc = ""] #[doc = "The dispatch origin for this call must match `T::ForceOrigin`."] #[doc = ""] #[doc = "- `target`: the account whose identity the judgement is upon. This must be an account"] #[doc = " with a registered identity."] #[doc = ""] #[doc = "Emits `IdentityKilled` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R + S + X)`."] #[doc = "- One balance-reserve operation."] #[doc = "- `S + 2` storage mutations."] #[doc = "- One event."] #[doc = "# "] pub fn kill_identity( &self, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "kill_identity", KillIdentity { target }, [ 65u8, 106u8, 116u8, 209u8, 219u8, 181u8, 185u8, 75u8, 146u8, 194u8, 187u8, 170u8, 7u8, 34u8, 140u8, 87u8, 107u8, 112u8, 229u8, 34u8, 65u8, 71u8, 58u8, 152u8, 74u8, 253u8, 137u8, 69u8, 149u8, 214u8, 158u8, 19u8, ], ) } #[doc = "Add the given account to the sender's subs."] #[doc = ""] #[doc = "Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated"] #[doc = "to the sender."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "sub identity of `sub`."] pub fn add_sub( &self, sub: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, data: runtime_types::pallet_identity::types::Data, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "add_sub", AddSub { sub, data }, [ 206u8, 112u8, 143u8, 96u8, 152u8, 12u8, 174u8, 226u8, 23u8, 27u8, 154u8, 188u8, 195u8, 233u8, 185u8, 180u8, 246u8, 218u8, 154u8, 129u8, 138u8, 52u8, 212u8, 109u8, 54u8, 211u8, 219u8, 255u8, 39u8, 79u8, 154u8, 123u8, ], ) } #[doc = "Alter the associated name of the given sub-account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "sub identity of `sub`."] pub fn rename_sub( &self, sub: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, data: runtime_types::pallet_identity::types::Data, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "rename_sub", RenameSub { sub, data }, [ 110u8, 28u8, 134u8, 225u8, 44u8, 242u8, 20u8, 22u8, 197u8, 49u8, 173u8, 178u8, 106u8, 181u8, 103u8, 90u8, 27u8, 73u8, 102u8, 130u8, 2u8, 216u8, 172u8, 186u8, 124u8, 244u8, 128u8, 6u8, 112u8, 128u8, 25u8, 245u8, ], ) } #[doc = "Remove the given account from the sender's subs."] #[doc = ""] #[doc = "Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated"] #[doc = "to the sender."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "sub identity of `sub`."] pub fn remove_sub( &self, sub: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "remove_sub", RemoveSub { sub }, [ 92u8, 201u8, 70u8, 170u8, 248u8, 110u8, 179u8, 186u8, 213u8, 197u8, 150u8, 156u8, 156u8, 50u8, 19u8, 158u8, 186u8, 61u8, 106u8, 64u8, 84u8, 38u8, 73u8, 134u8, 132u8, 233u8, 50u8, 152u8, 40u8, 18u8, 212u8, 121u8, ], ) } #[doc = "Remove the sender as a sub-account."] #[doc = ""] #[doc = "Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated"] #[doc = "to the sender (*not* the original depositor)."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "super-identity."] #[doc = ""] #[doc = "NOTE: This should not normally be used, but is provided in the case that the non-"] #[doc = "controller of an account is maliciously registered as a sub-account."] pub fn quit_sub(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Identity", "quit_sub", QuitSub {}, [ 62u8, 57u8, 73u8, 72u8, 119u8, 216u8, 250u8, 155u8, 57u8, 169u8, 157u8, 44u8, 87u8, 51u8, 63u8, 231u8, 77u8, 7u8, 0u8, 119u8, 244u8, 42u8, 179u8, 51u8, 254u8, 240u8, 55u8, 25u8, 142u8, 38u8, 87u8, 44u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_identity::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A name was set or reset (which will remove all judgements)."] pub struct IdentitySet { pub who: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for IdentitySet { const PALLET: &'static str = "Identity"; const EVENT: &'static str = "IdentitySet"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A name was cleared, and the given balance returned."] pub struct IdentityCleared { pub who: ::subxt::utils::AccountId32, pub deposit: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for IdentityCleared { const PALLET: &'static str = "Identity"; const EVENT: &'static str = "IdentityCleared"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A name was removed and the given balance slashed."] pub struct IdentityKilled { pub who: ::subxt::utils::AccountId32, pub deposit: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for IdentityKilled { const PALLET: &'static str = "Identity"; const EVENT: &'static str = "IdentityKilled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A judgement was asked from a registrar."] pub struct JudgementRequested { pub who: ::subxt::utils::AccountId32, pub registrar_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for JudgementRequested { const PALLET: &'static str = "Identity"; const EVENT: &'static str = "JudgementRequested"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A judgement request was retracted."] pub struct JudgementUnrequested { pub who: ::subxt::utils::AccountId32, pub registrar_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for JudgementUnrequested { const PALLET: &'static str = "Identity"; const EVENT: &'static str = "JudgementUnrequested"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A judgement was given by a registrar."] pub struct JudgementGiven { pub target: ::subxt::utils::AccountId32, pub registrar_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for JudgementGiven { const PALLET: &'static str = "Identity"; const EVENT: &'static str = "JudgementGiven"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A registrar was added."] pub struct RegistrarAdded { pub registrar_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for RegistrarAdded { const PALLET: &'static str = "Identity"; const EVENT: &'static str = "RegistrarAdded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A sub-identity was added to an identity and the deposit paid."] pub struct SubIdentityAdded { pub sub: ::subxt::utils::AccountId32, pub main: ::subxt::utils::AccountId32, pub deposit: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for SubIdentityAdded { const PALLET: &'static str = "Identity"; const EVENT: &'static str = "SubIdentityAdded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A sub-identity was removed from an identity and the deposit freed."] pub struct SubIdentityRemoved { pub sub: ::subxt::utils::AccountId32, pub main: ::subxt::utils::AccountId32, pub deposit: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for SubIdentityRemoved { const PALLET: &'static str = "Identity"; const EVENT: &'static str = "SubIdentityRemoved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A sub-identity was cleared, and the given deposit repatriated from the"] #[doc = "main identity account to the sub-identity account."] pub struct SubIdentityRevoked { pub sub: ::subxt::utils::AccountId32, pub main: ::subxt::utils::AccountId32, pub deposit: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for SubIdentityRevoked { const PALLET: &'static str = "Identity"; const EVENT: &'static str = "SubIdentityRevoked"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Information that is pertinent to identify the entity behind an account."] #[doc = ""] #[doc = " TWOX-NOTE: OK ― `AccountId` is a secure hash."] pub fn identity_of( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_identity::types::Registration< ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Identity", "IdentityOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 193u8, 195u8, 180u8, 188u8, 129u8, 250u8, 180u8, 219u8, 22u8, 95u8, 175u8, 170u8, 143u8, 188u8, 80u8, 124u8, 234u8, 228u8, 245u8, 39u8, 72u8, 153u8, 107u8, 199u8, 23u8, 75u8, 47u8, 247u8, 104u8, 208u8, 171u8, 82u8, ], ) } #[doc = " Information that is pertinent to identify the entity behind an account."] #[doc = ""] #[doc = " TWOX-NOTE: OK ― `AccountId` is a secure hash."] pub fn identity_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_identity::types::Registration< ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Identity", "IdentityOf", Vec::new(), [ 193u8, 195u8, 180u8, 188u8, 129u8, 250u8, 180u8, 219u8, 22u8, 95u8, 175u8, 170u8, 143u8, 188u8, 80u8, 124u8, 234u8, 228u8, 245u8, 39u8, 72u8, 153u8, 107u8, 199u8, 23u8, 75u8, 47u8, 247u8, 104u8, 208u8, 171u8, 82u8, ], ) } #[doc = " The super-identity of an alternative \"sub\" identity together with its name, within that"] #[doc = " context. If the account is not some other account's sub-identity, then just `None`."] pub fn super_of( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::subxt::utils::AccountId32, runtime_types::pallet_identity::types::Data, )>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Identity", "SuperOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 170u8, 249u8, 112u8, 249u8, 75u8, 176u8, 21u8, 29u8, 152u8, 149u8, 69u8, 113u8, 20u8, 92u8, 113u8, 130u8, 135u8, 62u8, 18u8, 204u8, 166u8, 193u8, 133u8, 167u8, 248u8, 117u8, 80u8, 137u8, 158u8, 111u8, 100u8, 137u8, ], ) } #[doc = " The super-identity of an alternative \"sub\" identity together with its name, within that"] #[doc = " context. If the account is not some other account's sub-identity, then just `None`."] pub fn super_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::subxt::utils::AccountId32, runtime_types::pallet_identity::types::Data, )>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Identity", "SuperOf", Vec::new(), [ 170u8, 249u8, 112u8, 249u8, 75u8, 176u8, 21u8, 29u8, 152u8, 149u8, 69u8, 113u8, 20u8, 92u8, 113u8, 130u8, 135u8, 62u8, 18u8, 204u8, 166u8, 193u8, 133u8, 167u8, 248u8, 117u8, 80u8, 137u8, 158u8, 111u8, 100u8, 137u8, ], ) } #[doc = " Alternative \"sub\" identities of this account."] #[doc = ""] #[doc = " The first item is the deposit, the second is a vector of the accounts."] #[doc = ""] #[doc = " TWOX-NOTE: OK ― `AccountId` is a secure hash."] pub fn subs_of( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u128, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, )>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Identity", "SubsOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 128u8, 15u8, 175u8, 155u8, 216u8, 225u8, 200u8, 169u8, 215u8, 206u8, 110u8, 22u8, 204u8, 89u8, 212u8, 210u8, 159u8, 169u8, 53u8, 7u8, 44u8, 164u8, 91u8, 151u8, 7u8, 227u8, 38u8, 230u8, 175u8, 84u8, 6u8, 4u8, ], ) } #[doc = " Alternative \"sub\" identities of this account."] #[doc = ""] #[doc = " The first item is the deposit, the second is a vector of the accounts."] #[doc = ""] #[doc = " TWOX-NOTE: OK ― `AccountId` is a secure hash."] pub fn subs_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u128, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, )>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Identity", "SubsOf", Vec::new(), [ 128u8, 15u8, 175u8, 155u8, 216u8, 225u8, 200u8, 169u8, 215u8, 206u8, 110u8, 22u8, 204u8, 89u8, 212u8, 210u8, 159u8, 169u8, 53u8, 7u8, 44u8, 164u8, 91u8, 151u8, 7u8, 227u8, 38u8, 230u8, 175u8, 84u8, 6u8, 4u8, ], ) } #[doc = " The set of registrars. Not expected to get very big as can only be added through a"] #[doc = " special origin (likely a council motion)."] #[doc = ""] #[doc = " The index into this can be cast to `RegistrarIndex` to get a valid value."] pub fn registrars( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::option::Option< runtime_types::pallet_identity::types::RegistrarInfo< ::core::primitive::u128, ::subxt::utils::AccountId32, >, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Identity", "Registrars", vec![], [ 157u8, 87u8, 39u8, 240u8, 154u8, 54u8, 241u8, 229u8, 76u8, 9u8, 62u8, 252u8, 40u8, 143u8, 186u8, 182u8, 233u8, 187u8, 251u8, 61u8, 236u8, 229u8, 19u8, 55u8, 42u8, 36u8, 82u8, 173u8, 215u8, 155u8, 229u8, 111u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The amount held on deposit for a registered identity"] pub fn basic_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Identity", "BasicDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount held on deposit per additional field for a registered identity."] pub fn field_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Identity", "FieldDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount held on deposit for a registered subaccount. This should account for the fact"] #[doc = " that one storage item's value will increase by the size of an account ID, and there will"] #[doc = " be another trie item whose value is the size of an account ID plus 32 bytes."] pub fn sub_account_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Identity", "SubAccountDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The maximum number of sub-accounts allowed per identified account."] pub fn max_sub_accounts( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Identity", "MaxSubAccounts", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Maximum number of additional fields that may be stored in an ID. Needed to bound the I/O"] #[doc = " required to access an identity, but can be pretty high."] pub fn max_additional_fields( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Identity", "MaxAdditionalFields", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Maxmimum number of registrars allowed in the system. Needed to bound the complexity"] #[doc = " of, e.g., updating judgements."] pub fn max_registrars( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Identity", "MaxRegistrars", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod society { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Bid { pub value: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Unbid { pub pos: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vouch { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub value: ::core::primitive::u128, pub tip: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Unvouch { pub pos: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vote { pub candidate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub approve: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DefenderVote { pub approve: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Payout; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Found { pub founder: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub max_members: ::core::primitive::u32, pub rules: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Unfound; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct JudgeSuspendedMember { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub forgive: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct JudgeSuspendedCandidate { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub judgement: runtime_types::pallet_society::Judgement, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetMaxMembers { pub max: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "A user outside of the society can make a bid for entry."] #[doc = ""] #[doc = "Payment: `CandidateDeposit` will be reserved for making a bid. It is returned"] #[doc = "when the bid becomes a member, or if the bid calls `unbid`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `value`: A one time payment the bid would like to receive when joining the society."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids), C (len of candidates), M (len of members), X (balance reserve)"] #[doc = "- Storage Reads:"] #[doc = "\t- One storage read to check for suspended candidate. O(1)"] #[doc = "\t- One storage read to check for suspended member. O(1)"] #[doc = "\t- One storage read to retrieve all current bids. O(B)"] #[doc = "\t- One storage read to retrieve all current candidates. O(C)"] #[doc = "\t- One storage read to retrieve all members. O(M)"] #[doc = "- Storage Writes:"] #[doc = "\t- One storage mutate to add a new bid to the vector O(B) (TODO: possible optimization"] #[doc = " w/ read)"] #[doc = "\t- Up to one storage removal if bid.len() > MAX_BID_COUNT. O(1)"] #[doc = "- Notable Computation:"] #[doc = "\t- O(B + C + log M) search to check user is not already a part of society."] #[doc = "\t- O(log B) search to insert the new bid sorted."] #[doc = "- External Pallet Operations:"] #[doc = "\t- One balance reserve operation. O(X)"] #[doc = "\t- Up to one balance unreserve operation if bids.len() > MAX_BID_COUNT."] #[doc = "- Events:"] #[doc = "\t- One event for new bid."] #[doc = "\t- Up to one event for AutoUnbid if bid.len() > MAX_BID_COUNT."] #[doc = ""] #[doc = "Total Complexity: O(M + B + C + logM + logB + X)"] #[doc = "# "] pub fn bid( &self, value: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "bid", Bid { value }, [ 101u8, 242u8, 48u8, 240u8, 74u8, 51u8, 49u8, 61u8, 6u8, 7u8, 47u8, 200u8, 185u8, 217u8, 176u8, 139u8, 44u8, 167u8, 131u8, 23u8, 219u8, 69u8, 216u8, 213u8, 177u8, 50u8, 8u8, 213u8, 130u8, 90u8, 81u8, 4u8, ], ) } #[doc = "A bidder can remove their bid for entry into society."] #[doc = "By doing so, they will have their candidate deposit returned or"] #[doc = "they will unvouch their voucher."] #[doc = ""] #[doc = "Payment: The bid deposit is unreserved if the user made a bid."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a bidder."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `pos`: Position in the `Bids` vector of the bid who wants to unbid."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids), X (balance unreserve)"] #[doc = "- One storage read and write to retrieve and update the bids. O(B)"] #[doc = "- Either one unreserve balance action O(X) or one vouching storage removal. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(B + X)"] #[doc = "# "] pub fn unbid( &self, pos: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "unbid", Unbid { pos }, [ 255u8, 165u8, 200u8, 241u8, 93u8, 213u8, 155u8, 12u8, 178u8, 108u8, 222u8, 14u8, 26u8, 226u8, 107u8, 129u8, 162u8, 151u8, 81u8, 83u8, 39u8, 106u8, 151u8, 149u8, 19u8, 85u8, 28u8, 222u8, 227u8, 9u8, 189u8, 39u8, ], ) } #[doc = "As a member, vouch for someone to join society by placing a bid on their behalf."] #[doc = ""] #[doc = "There is no deposit required to vouch for a new bid, but a member can only vouch for"] #[doc = "one bid at a time. If the bid becomes a suspended candidate and ultimately rejected by"] #[doc = "the suspension judgement origin, the member will be banned from vouching again."] #[doc = ""] #[doc = "As a vouching member, you can claim a tip if the candidate is accepted. This tip will"] #[doc = "be paid as a portion of the reward the member will receive for joining the society."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a member."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `who`: The user who you would like to vouch for."] #[doc = "- `value`: The total reward to be paid between you and the candidate if they become"] #[doc = "a member in the society."] #[doc = "- `tip`: Your cut of the total `value` payout when the candidate is inducted into"] #[doc = "the society. Tips larger than `value` will be saturated upon payout."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids), C (len of candidates), M (len of members)"] #[doc = "- Storage Reads:"] #[doc = "\t- One storage read to retrieve all members. O(M)"] #[doc = "\t- One storage read to check member is not already vouching. O(1)"] #[doc = "\t- One storage read to check for suspended candidate. O(1)"] #[doc = "\t- One storage read to check for suspended member. O(1)"] #[doc = "\t- One storage read to retrieve all current bids. O(B)"] #[doc = "\t- One storage read to retrieve all current candidates. O(C)"] #[doc = "- Storage Writes:"] #[doc = "\t- One storage write to insert vouching status to the member. O(1)"] #[doc = "\t- One storage mutate to add a new bid to the vector O(B) (TODO: possible optimization"] #[doc = " w/ read)"] #[doc = "\t- Up to one storage removal if bid.len() > MAX_BID_COUNT. O(1)"] #[doc = "- Notable Computation:"] #[doc = "\t- O(log M) search to check sender is a member."] #[doc = "\t- O(B + C + log M) search to check user is not already a part of society."] #[doc = "\t- O(log B) search to insert the new bid sorted."] #[doc = "- External Pallet Operations:"] #[doc = "\t- One balance reserve operation. O(X)"] #[doc = "\t- Up to one balance unreserve operation if bids.len() > MAX_BID_COUNT."] #[doc = "- Events:"] #[doc = "\t- One event for vouch."] #[doc = "\t- Up to one event for AutoUnbid if bid.len() > MAX_BID_COUNT."] #[doc = ""] #[doc = "Total Complexity: O(M + B + C + logM + logB + X)"] #[doc = "# "] pub fn vouch( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, value: ::core::primitive::u128, tip: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "vouch", Vouch { who, value, tip }, [ 237u8, 190u8, 123u8, 221u8, 175u8, 83u8, 96u8, 83u8, 152u8, 207u8, 134u8, 176u8, 124u8, 32u8, 23u8, 249u8, 153u8, 220u8, 79u8, 164u8, 214u8, 231u8, 82u8, 204u8, 185u8, 245u8, 164u8, 163u8, 59u8, 254u8, 184u8, 105u8, ], ) } #[doc = "As a vouching member, unvouch a bid. This only works while vouched user is"] #[doc = "only a bidder (and not a candidate)."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a vouching member."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `pos`: Position in the `Bids` vector of the bid who should be unvouched."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids)"] #[doc = "- One storage read O(1) to check the signer is a vouching member."] #[doc = "- One storage mutate to retrieve and update the bids. O(B)"] #[doc = "- One vouching storage removal. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(B)"] #[doc = "# "] pub fn unvouch( &self, pos: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "unvouch", Unvouch { pos }, [ 242u8, 181u8, 109u8, 170u8, 197u8, 53u8, 8u8, 241u8, 47u8, 28u8, 1u8, 209u8, 142u8, 106u8, 136u8, 163u8, 42u8, 169u8, 7u8, 1u8, 202u8, 38u8, 199u8, 232u8, 13u8, 111u8, 92u8, 69u8, 237u8, 90u8, 134u8, 84u8, ], ) } #[doc = "As a member, vote on a candidate."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a member."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `candidate`: The candidate that the member would like to bid on."] #[doc = "- `approve`: A boolean which says if the candidate should be approved (`true`) or"] #[doc = " rejected (`false`)."] #[doc = ""] #[doc = "# "] #[doc = "Key: C (len of candidates), M (len of members)"] #[doc = "- One storage read O(M) and O(log M) search to check user is a member."] #[doc = "- One account lookup."] #[doc = "- One storage read O(C) and O(C) search to check that user is a candidate."] #[doc = "- One storage write to add vote to votes. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(M + logM + C)"] #[doc = "# "] pub fn vote( &self, candidate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, approve: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "vote", Vote { candidate, approve }, [ 92u8, 101u8, 248u8, 64u8, 78u8, 158u8, 63u8, 91u8, 0u8, 8u8, 182u8, 117u8, 209u8, 190u8, 92u8, 35u8, 131u8, 121u8, 123u8, 129u8, 36u8, 188u8, 65u8, 104u8, 229u8, 77u8, 159u8, 24u8, 216u8, 77u8, 117u8, 29u8, ], ) } #[doc = "As a member, vote on the defender."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a member."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `approve`: A boolean which says if the candidate should be"] #[doc = "approved (`true`) or rejected (`false`)."] #[doc = ""] #[doc = "# "] #[doc = "- Key: M (len of members)"] #[doc = "- One storage read O(M) and O(log M) search to check user is a member."] #[doc = "- One storage write to add vote to votes. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(M + logM)"] #[doc = "# "] pub fn defender_vote( &self, approve: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "defender_vote", DefenderVote { approve }, [ 248u8, 232u8, 243u8, 44u8, 252u8, 68u8, 118u8, 143u8, 57u8, 34u8, 196u8, 4u8, 71u8, 14u8, 28u8, 164u8, 139u8, 184u8, 20u8, 71u8, 86u8, 227u8, 172u8, 84u8, 213u8, 221u8, 155u8, 198u8, 56u8, 93u8, 209u8, 211u8, ], ) } #[doc = "Transfer the first matured payout for the sender and remove it from the records."] #[doc = ""] #[doc = "NOTE: This extrinsic needs to be called multiple times to claim multiple matured"] #[doc = "payouts."] #[doc = ""] #[doc = "Payment: The member will receive a payment equal to their first matured"] #[doc = "payout to their free balance."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a member with"] #[doc = "payouts remaining."] #[doc = ""] #[doc = "# "] #[doc = "Key: M (len of members), P (number of payouts for a particular member)"] #[doc = "- One storage read O(M) and O(log M) search to check signer is a member."] #[doc = "- One storage read O(P) to get all payouts for a member."] #[doc = "- One storage read O(1) to get the current block number."] #[doc = "- One currency transfer call. O(X)"] #[doc = "- One storage write or removal to update the member's payouts. O(P)"] #[doc = ""] #[doc = "Total Complexity: O(M + logM + P + X)"] #[doc = "# "] pub fn payout(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "payout", Payout {}, [ 255u8, 171u8, 227u8, 58u8, 244u8, 95u8, 239u8, 127u8, 129u8, 211u8, 131u8, 191u8, 154u8, 234u8, 85u8, 69u8, 173u8, 135u8, 179u8, 83u8, 17u8, 41u8, 34u8, 137u8, 174u8, 251u8, 127u8, 62u8, 74u8, 255u8, 19u8, 234u8, ], ) } #[doc = "Found the society."] #[doc = ""] #[doc = "This is done as a discrete action in order to allow for the"] #[doc = "pallet to be included into a running chain and can only be done once."] #[doc = ""] #[doc = "The dispatch origin for this call must be from the _FounderSetOrigin_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `founder` - The first member and head of the newly founded society."] #[doc = "- `max_members` - The initial max number of members for the society."] #[doc = "- `rules` - The rules of this society concerning membership."] #[doc = ""] #[doc = "# "] #[doc = "- Two storage mutates to set `Head` and `Founder`. O(1)"] #[doc = "- One storage write to add the first member to society. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(1)"] #[doc = "# "] pub fn found( &self, founder: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, max_members: ::core::primitive::u32, rules: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "found", Found { founder, max_members, rules, }, [ 68u8, 18u8, 181u8, 102u8, 113u8, 16u8, 129u8, 67u8, 101u8, 164u8, 35u8, 3u8, 182u8, 214u8, 181u8, 73u8, 42u8, 163u8, 224u8, 110u8, 132u8, 185u8, 233u8, 239u8, 247u8, 143u8, 67u8, 112u8, 116u8, 201u8, 236u8, 6u8, ], ) } #[doc = "Annul the founding of the society."] #[doc = ""] #[doc = "The dispatch origin for this call must be Signed, and the signing account must be both"] #[doc = "the `Founder` and the `Head`. This implies that it may only be done when there is one"] #[doc = "member."] #[doc = ""] #[doc = "# "] #[doc = "- Two storage reads O(1)."] #[doc = "- Four storage removals O(1)."] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(1)"] #[doc = "# "] pub fn unfound(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "unfound", Unfound {}, [ 30u8, 120u8, 137u8, 175u8, 237u8, 121u8, 90u8, 9u8, 111u8, 75u8, 51u8, 85u8, 86u8, 182u8, 6u8, 249u8, 62u8, 246u8, 21u8, 150u8, 70u8, 148u8, 39u8, 14u8, 168u8, 250u8, 164u8, 235u8, 23u8, 18u8, 164u8, 97u8, ], ) } #[doc = "Allow suspension judgement origin to make judgement on a suspended member."] #[doc = ""] #[doc = "If a suspended member is forgiven, we simply add them back as a member, not affecting"] #[doc = "any of the existing storage items for that member."] #[doc = ""] #[doc = "If a suspended member is rejected, remove all associated storage items, including"] #[doc = "their payouts, and remove any vouched bids they currently have."] #[doc = ""] #[doc = "The dispatch origin for this call must be from the _SuspensionJudgementOrigin_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `who` - The suspended member to be judged."] #[doc = "- `forgive` - A boolean representing whether the suspension judgement origin forgives"] #[doc = " (`true`) or rejects (`false`) a suspended member."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids), M (len of members)"] #[doc = "- One storage read to check `who` is a suspended member. O(1)"] #[doc = "- Up to one storage write O(M) with O(log M) binary search to add a member back to"] #[doc = " society."] #[doc = "- Up to 3 storage removals O(1) to clean up a removed member."] #[doc = "- Up to one storage write O(B) with O(B) search to remove vouched bid from bids."] #[doc = "- Up to one additional event if unvouch takes place."] #[doc = "- One storage removal. O(1)"] #[doc = "- One event for the judgement."] #[doc = ""] #[doc = "Total Complexity: O(M + logM + B)"] #[doc = "# "] pub fn judge_suspended_member( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, forgive: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "judge_suspended_member", JudgeSuspendedMember { who, forgive }, [ 230u8, 85u8, 37u8, 61u8, 138u8, 230u8, 105u8, 230u8, 248u8, 209u8, 167u8, 1u8, 176u8, 226u8, 83u8, 166u8, 141u8, 232u8, 186u8, 86u8, 222u8, 227u8, 229u8, 84u8, 113u8, 58u8, 13u8, 45u8, 246u8, 132u8, 60u8, 82u8, ], ) } #[doc = "Allow suspended judgement origin to make judgement on a suspended candidate."] #[doc = ""] #[doc = "If the judgement is `Approve`, we add them to society as a member with the appropriate"] #[doc = "payment for joining society."] #[doc = ""] #[doc = "If the judgement is `Reject`, we either slash the deposit of the bid, giving it back"] #[doc = "to the society treasury, or we ban the voucher from vouching again."] #[doc = ""] #[doc = "If the judgement is `Rebid`, we put the candidate back in the bid pool and let them go"] #[doc = "through the induction process again."] #[doc = ""] #[doc = "The dispatch origin for this call must be from the _SuspensionJudgementOrigin_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `who` - The suspended candidate to be judged."] #[doc = "- `judgement` - `Approve`, `Reject`, or `Rebid`."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids), M (len of members), X (balance action)"] #[doc = "- One storage read to check `who` is a suspended candidate."] #[doc = "- One storage removal of the suspended candidate."] #[doc = "- Approve Logic"] #[doc = "\t- One storage read to get the available pot to pay users with. O(1)"] #[doc = "\t- One storage write to update the available pot. O(1)"] #[doc = "\t- One storage read to get the current block number. O(1)"] #[doc = "\t- One storage read to get all members. O(M)"] #[doc = "\t- Up to one unreserve currency action."] #[doc = "\t- Up to two new storage writes to payouts."] #[doc = "\t- Up to one storage write with O(log M) binary search to add a member to society."] #[doc = "- Reject Logic"] #[doc = "\t- Up to one repatriate reserved currency action. O(X)"] #[doc = "\t- Up to one storage write to ban the vouching member from vouching again."] #[doc = "- Rebid Logic"] #[doc = "\t- Storage mutate with O(log B) binary search to place the user back into bids."] #[doc = "- Up to one additional event if unvouch takes place."] #[doc = "- One storage removal."] #[doc = "- One event for the judgement."] #[doc = ""] #[doc = "Total Complexity: O(M + logM + B + X)"] #[doc = "# "] pub fn judge_suspended_candidate( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, judgement: runtime_types::pallet_society::Judgement, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "judge_suspended_candidate", JudgeSuspendedCandidate { who, judgement }, [ 233u8, 241u8, 151u8, 219u8, 217u8, 131u8, 112u8, 172u8, 227u8, 93u8, 244u8, 214u8, 14u8, 183u8, 133u8, 74u8, 174u8, 141u8, 235u8, 189u8, 52u8, 146u8, 62u8, 254u8, 248u8, 60u8, 129u8, 109u8, 164u8, 54u8, 37u8, 237u8, ], ) } #[doc = "Allows root origin to change the maximum number of members in society."] #[doc = "Max membership count must be greater than 1."] #[doc = ""] #[doc = "The dispatch origin for this call must be from _ROOT_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `max` - The maximum number of members for the society."] #[doc = ""] #[doc = "# "] #[doc = "- One storage write to update the max. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(1)"] #[doc = "# "] pub fn set_max_members( &self, max: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Society", "set_max_members", SetMaxMembers { max }, [ 4u8, 120u8, 194u8, 207u8, 5u8, 93u8, 40u8, 12u8, 1u8, 151u8, 127u8, 162u8, 218u8, 228u8, 1u8, 249u8, 148u8, 139u8, 124u8, 171u8, 94u8, 151u8, 40u8, 164u8, 171u8, 122u8, 65u8, 233u8, 27u8, 82u8, 74u8, 67u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_society::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The society is founded by the given identity."] pub struct Founded { pub founder: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Founded { const PALLET: &'static str = "Society"; const EVENT: &'static str = "Founded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A membership bid just happened. The given account is the candidate's ID and their offer"] #[doc = "is the second."] pub struct Bid { pub candidate_id: ::subxt::utils::AccountId32, pub offer: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Bid { const PALLET: &'static str = "Society"; const EVENT: &'static str = "Bid"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A membership bid just happened by vouching. The given account is the candidate's ID and"] #[doc = "their offer is the second. The vouching party is the third."] pub struct Vouch { pub candidate_id: ::subxt::utils::AccountId32, pub offer: ::core::primitive::u128, pub vouching: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Vouch { const PALLET: &'static str = "Society"; const EVENT: &'static str = "Vouch"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A candidate was dropped (due to an excess of bids in the system)."] pub struct AutoUnbid { pub candidate: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for AutoUnbid { const PALLET: &'static str = "Society"; const EVENT: &'static str = "AutoUnbid"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A candidate was dropped (by their request)."] pub struct Unbid { pub candidate: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Unbid { const PALLET: &'static str = "Society"; const EVENT: &'static str = "Unbid"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A candidate was dropped (by request of who vouched for them)."] pub struct Unvouch { pub candidate: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Unvouch { const PALLET: &'static str = "Society"; const EVENT: &'static str = "Unvouch"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A group of candidates have been inducted. The batch's primary is the first value, the"] #[doc = "batch in full is the second."] pub struct Inducted { pub primary: ::subxt::utils::AccountId32, pub candidates: ::std::vec::Vec<::subxt::utils::AccountId32>, } impl ::subxt::events::StaticEvent for Inducted { const PALLET: &'static str = "Society"; const EVENT: &'static str = "Inducted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A suspended member has been judged."] pub struct SuspendedMemberJudgement { pub who: ::subxt::utils::AccountId32, pub judged: ::core::primitive::bool, } impl ::subxt::events::StaticEvent for SuspendedMemberJudgement { const PALLET: &'static str = "Society"; const EVENT: &'static str = "SuspendedMemberJudgement"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A candidate has been suspended"] pub struct CandidateSuspended { pub candidate: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for CandidateSuspended { const PALLET: &'static str = "Society"; const EVENT: &'static str = "CandidateSuspended"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A member has been suspended"] pub struct MemberSuspended { pub member: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for MemberSuspended { const PALLET: &'static str = "Society"; const EVENT: &'static str = "MemberSuspended"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A member has been challenged"] pub struct Challenged { pub member: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Challenged { const PALLET: &'static str = "Society"; const EVENT: &'static str = "Challenged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A vote has been placed"] pub struct Vote { pub candidate: ::subxt::utils::AccountId32, pub voter: ::subxt::utils::AccountId32, pub vote: ::core::primitive::bool, } impl ::subxt::events::StaticEvent for Vote { const PALLET: &'static str = "Society"; const EVENT: &'static str = "Vote"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A vote has been placed for a defending member"] pub struct DefenderVote { pub voter: ::subxt::utils::AccountId32, pub vote: ::core::primitive::bool, } impl ::subxt::events::StaticEvent for DefenderVote { const PALLET: &'static str = "Society"; const EVENT: &'static str = "DefenderVote"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new \\[max\\] member count has been set"] pub struct NewMaxMembers { pub max: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for NewMaxMembers { const PALLET: &'static str = "Society"; const EVENT: &'static str = "NewMaxMembers"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Society is unfounded."] pub struct Unfounded { pub founder: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Unfounded { const PALLET: &'static str = "Society"; const EVENT: &'static str = "Unfounded"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some funds were deposited into the society account."] pub struct Deposit { pub value: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Deposit { const PALLET: &'static str = "Society"; const EVENT: &'static str = "Deposit"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The first member."] pub fn founder( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Founder", vec![], [ 50u8, 222u8, 149u8, 14u8, 31u8, 163u8, 129u8, 123u8, 150u8, 220u8, 16u8, 136u8, 150u8, 245u8, 171u8, 231u8, 75u8, 203u8, 249u8, 123u8, 86u8, 43u8, 208u8, 65u8, 41u8, 111u8, 114u8, 254u8, 131u8, 13u8, 26u8, 43u8, ], ) } #[doc = " A hash of the rules of this society concerning membership. Can only be set once and"] #[doc = " only by the founder."] pub fn rules( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::H256>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Rules", vec![], [ 10u8, 206u8, 100u8, 24u8, 227u8, 138u8, 82u8, 125u8, 247u8, 160u8, 124u8, 121u8, 148u8, 98u8, 252u8, 214u8, 215u8, 232u8, 160u8, 204u8, 23u8, 95u8, 240u8, 16u8, 201u8, 245u8, 13u8, 178u8, 99u8, 61u8, 247u8, 137u8, ], ) } #[doc = " The current set of candidates; bidders that are attempting to become members."] pub fn candidates( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec< runtime_types::pallet_society::Bid< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Candidates", vec![], [ 88u8, 231u8, 247u8, 115u8, 122u8, 18u8, 106u8, 195u8, 238u8, 219u8, 174u8, 23u8, 179u8, 228u8, 82u8, 26u8, 141u8, 190u8, 206u8, 46u8, 177u8, 218u8, 123u8, 152u8, 208u8, 79u8, 57u8, 68u8, 3u8, 208u8, 174u8, 193u8, ], ) } #[doc = " The set of suspended candidates."] pub fn suspended_candidates( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u128, runtime_types::pallet_society::BidKind< ::subxt::utils::AccountId32, ::core::primitive::u128, >, )>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "SuspendedCandidates", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 35u8, 46u8, 78u8, 1u8, 132u8, 103u8, 152u8, 33u8, 86u8, 137u8, 125u8, 122u8, 63u8, 175u8, 197u8, 39u8, 255u8, 0u8, 49u8, 53u8, 154u8, 40u8, 196u8, 158u8, 133u8, 113u8, 159u8, 168u8, 148u8, 154u8, 57u8, 70u8, ], ) } #[doc = " The set of suspended candidates."] pub fn suspended_candidates_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u128, runtime_types::pallet_society::BidKind< ::subxt::utils::AccountId32, ::core::primitive::u128, >, )>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "SuspendedCandidates", Vec::new(), [ 35u8, 46u8, 78u8, 1u8, 132u8, 103u8, 152u8, 33u8, 86u8, 137u8, 125u8, 122u8, 63u8, 175u8, 197u8, 39u8, 255u8, 0u8, 49u8, 53u8, 154u8, 40u8, 196u8, 158u8, 133u8, 113u8, 159u8, 168u8, 148u8, 154u8, 57u8, 70u8, ], ) } #[doc = " Amount of our account balance that is specifically for the next round's bid(s)."] pub fn pot( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Pot", vec![], [ 242u8, 124u8, 22u8, 252u8, 4u8, 178u8, 161u8, 120u8, 8u8, 185u8, 182u8, 177u8, 205u8, 205u8, 192u8, 248u8, 42u8, 8u8, 216u8, 92u8, 194u8, 219u8, 74u8, 248u8, 135u8, 105u8, 210u8, 207u8, 159u8, 24u8, 149u8, 190u8, ], ) } #[doc = " The most primary from the most recently approved members."] pub fn head( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Head", vec![], [ 162u8, 185u8, 82u8, 237u8, 221u8, 60u8, 77u8, 96u8, 89u8, 41u8, 162u8, 7u8, 174u8, 251u8, 121u8, 247u8, 196u8, 118u8, 57u8, 24u8, 142u8, 129u8, 142u8, 106u8, 166u8, 7u8, 86u8, 54u8, 108u8, 110u8, 118u8, 75u8, ], ) } #[doc = " The current set of members, ordered."] pub fn members( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::subxt::utils::AccountId32>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Members", vec![], [ 162u8, 72u8, 174u8, 204u8, 140u8, 105u8, 205u8, 176u8, 197u8, 117u8, 206u8, 134u8, 157u8, 110u8, 139u8, 54u8, 43u8, 233u8, 25u8, 51u8, 36u8, 238u8, 94u8, 124u8, 221u8, 52u8, 237u8, 71u8, 125u8, 56u8, 129u8, 222u8, ], ) } #[doc = " The set of suspended members."] pub fn suspended_members( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "SuspendedMembers", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 158u8, 26u8, 34u8, 152u8, 137u8, 151u8, 205u8, 19u8, 12u8, 138u8, 107u8, 21u8, 14u8, 162u8, 103u8, 25u8, 181u8, 13u8, 59u8, 3u8, 225u8, 23u8, 242u8, 184u8, 225u8, 122u8, 55u8, 53u8, 79u8, 163u8, 65u8, 57u8, ], ) } #[doc = " The set of suspended members."] pub fn suspended_members_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "SuspendedMembers", Vec::new(), [ 158u8, 26u8, 34u8, 152u8, 137u8, 151u8, 205u8, 19u8, 12u8, 138u8, 107u8, 21u8, 14u8, 162u8, 103u8, 25u8, 181u8, 13u8, 59u8, 3u8, 225u8, 23u8, 242u8, 184u8, 225u8, 122u8, 55u8, 53u8, 79u8, 163u8, 65u8, 57u8, ], ) } #[doc = " The current bids, stored ordered by the value of the bid."] pub fn bids( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec< runtime_types::pallet_society::Bid< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Bids", vec![], [ 8u8, 152u8, 107u8, 47u8, 7u8, 45u8, 86u8, 149u8, 230u8, 81u8, 253u8, 110u8, 255u8, 83u8, 16u8, 168u8, 169u8, 70u8, 196u8, 167u8, 168u8, 98u8, 36u8, 122u8, 124u8, 77u8, 61u8, 245u8, 248u8, 48u8, 224u8, 125u8, ], ) } #[doc = " Members currently vouching or banned from vouching again"] pub fn vouching( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_society::VouchingStatus, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Vouching", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 189u8, 212u8, 60u8, 171u8, 135u8, 82u8, 34u8, 93u8, 206u8, 206u8, 31u8, 99u8, 197u8, 0u8, 97u8, 228u8, 118u8, 200u8, 123u8, 81u8, 242u8, 93u8, 31u8, 1u8, 9u8, 121u8, 215u8, 223u8, 15u8, 56u8, 223u8, 96u8, ], ) } #[doc = " Members currently vouching or banned from vouching again"] pub fn vouching_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_society::VouchingStatus, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Vouching", Vec::new(), [ 189u8, 212u8, 60u8, 171u8, 135u8, 82u8, 34u8, 93u8, 206u8, 206u8, 31u8, 99u8, 197u8, 0u8, 97u8, 228u8, 118u8, 200u8, 123u8, 81u8, 242u8, 93u8, 31u8, 1u8, 9u8, 121u8, 215u8, 223u8, 15u8, 56u8, 223u8, 96u8, ], ) } #[doc = " Pending payouts; ordered by block number, with the amount that should be paid out."] pub fn payouts( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<( ::core::primitive::u32, ::core::primitive::u128, )>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Payouts", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 88u8, 208u8, 72u8, 186u8, 175u8, 77u8, 18u8, 108u8, 69u8, 117u8, 227u8, 73u8, 126u8, 56u8, 32u8, 1u8, 198u8, 6u8, 231u8, 172u8, 3u8, 155u8, 72u8, 152u8, 68u8, 222u8, 19u8, 229u8, 69u8, 181u8, 196u8, 202u8, ], ) } #[doc = " Pending payouts; ordered by block number, with the amount that should be paid out."] pub fn payouts_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<( ::core::primitive::u32, ::core::primitive::u128, )>, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Payouts", Vec::new(), [ 88u8, 208u8, 72u8, 186u8, 175u8, 77u8, 18u8, 108u8, 69u8, 117u8, 227u8, 73u8, 126u8, 56u8, 32u8, 1u8, 198u8, 6u8, 231u8, 172u8, 3u8, 155u8, 72u8, 152u8, 68u8, 222u8, 19u8, 229u8, 69u8, 181u8, 196u8, 202u8, ], ) } #[doc = " The ongoing number of losing votes cast by the member."] pub fn strikes( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Strikes", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 120u8, 174u8, 185u8, 72u8, 167u8, 85u8, 204u8, 187u8, 139u8, 103u8, 124u8, 14u8, 65u8, 243u8, 40u8, 114u8, 231u8, 200u8, 174u8, 56u8, 159u8, 242u8, 102u8, 221u8, 26u8, 153u8, 154u8, 238u8, 109u8, 255u8, 64u8, 135u8, ], ) } #[doc = " The ongoing number of losing votes cast by the member."] pub fn strikes_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Strikes", Vec::new(), [ 120u8, 174u8, 185u8, 72u8, 167u8, 85u8, 204u8, 187u8, 139u8, 103u8, 124u8, 14u8, 65u8, 243u8, 40u8, 114u8, 231u8, 200u8, 174u8, 56u8, 159u8, 242u8, 102u8, 221u8, 26u8, 153u8, 154u8, 238u8, 109u8, 255u8, 64u8, 135u8, ], ) } #[doc = " Double map from Candidate -> Voter -> (Maybe) Vote."] pub fn votes( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_society::Vote, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Votes", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 82u8, 0u8, 111u8, 217u8, 223u8, 52u8, 99u8, 140u8, 145u8, 35u8, 207u8, 54u8, 69u8, 86u8, 133u8, 103u8, 122u8, 3u8, 153u8, 68u8, 233u8, 71u8, 62u8, 132u8, 218u8, 2u8, 126u8, 136u8, 245u8, 150u8, 102u8, 77u8, ], ) } #[doc = " Double map from Candidate -> Voter -> (Maybe) Vote."] pub fn votes_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_society::Vote, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Votes", Vec::new(), [ 82u8, 0u8, 111u8, 217u8, 223u8, 52u8, 99u8, 140u8, 145u8, 35u8, 207u8, 54u8, 69u8, 86u8, 133u8, 103u8, 122u8, 3u8, 153u8, 68u8, 233u8, 71u8, 62u8, 132u8, 218u8, 2u8, 126u8, 136u8, 245u8, 150u8, 102u8, 77u8, ], ) } #[doc = " The defending member currently being challenged."] pub fn defender( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "Defender", vec![], [ 116u8, 251u8, 243u8, 93u8, 242u8, 69u8, 62u8, 163u8, 154u8, 55u8, 243u8, 204u8, 205u8, 210u8, 205u8, 5u8, 202u8, 177u8, 153u8, 199u8, 126u8, 142u8, 248u8, 65u8, 88u8, 226u8, 101u8, 116u8, 74u8, 170u8, 93u8, 146u8, ], ) } #[doc = " Votes for the defender."] pub fn defender_votes( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_society::Vote, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "DefenderVotes", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 90u8, 131u8, 201u8, 228u8, 138u8, 115u8, 75u8, 188u8, 29u8, 229u8, 221u8, 218u8, 154u8, 78u8, 152u8, 166u8, 184u8, 93u8, 156u8, 0u8, 110u8, 58u8, 135u8, 124u8, 179u8, 98u8, 5u8, 218u8, 47u8, 145u8, 163u8, 245u8, ], ) } #[doc = " Votes for the defender."] pub fn defender_votes_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_society::Vote, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "DefenderVotes", Vec::new(), [ 90u8, 131u8, 201u8, 228u8, 138u8, 115u8, 75u8, 188u8, 29u8, 229u8, 221u8, 218u8, 154u8, 78u8, 152u8, 166u8, 184u8, 93u8, 156u8, 0u8, 110u8, 58u8, 135u8, 124u8, 179u8, 98u8, 5u8, 218u8, 47u8, 145u8, 163u8, 245u8, ], ) } #[doc = " The max number of members for the society at one time."] pub fn max_members( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Society", "MaxMembers", vec![], [ 54u8, 113u8, 4u8, 248u8, 5u8, 42u8, 67u8, 237u8, 91u8, 159u8, 63u8, 239u8, 3u8, 196u8, 202u8, 135u8, 182u8, 137u8, 204u8, 58u8, 39u8, 11u8, 42u8, 79u8, 129u8, 85u8, 37u8, 154u8, 178u8, 189u8, 123u8, 184u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The societies's pallet id"] pub fn pallet_id( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_support::PalletId, >, > { ::subxt::constants::StaticConstantAddress::new( "Society", "PalletId", [ 139u8, 109u8, 228u8, 151u8, 252u8, 32u8, 130u8, 69u8, 112u8, 154u8, 174u8, 45u8, 83u8, 245u8, 51u8, 132u8, 173u8, 5u8, 186u8, 24u8, 243u8, 9u8, 12u8, 214u8, 80u8, 74u8, 69u8, 189u8, 30u8, 94u8, 22u8, 39u8, ], ) } #[doc = " The minimum amount of a deposit required for a bid to be made."] pub fn candidate_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Society", "CandidateDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount of the unpaid reward that gets deducted in the case that either a skeptic"] #[doc = " doesn't vote or someone votes in the wrong way."] pub fn wrong_side_deduction( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Society", "WrongSideDeduction", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The number of times a member may vote the wrong way (or not at all, when they are a"] #[doc = " skeptic) before they become suspended."] pub fn max_strikes( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Society", "MaxStrikes", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The amount of incentive paid within each period. Doesn't include VoterTip."] pub fn period_spend( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Society", "PeriodSpend", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The number of blocks between candidate/membership rotation periods."] pub fn rotation_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Society", "RotationPeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum duration of the payout lock."] pub fn max_lock_duration( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Society", "MaxLockDuration", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The number of blocks between membership challenges."] pub fn challenge_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Society", "ChallengePeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of candidates that we accept per round."] pub fn max_candidate_intake( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Society", "MaxCandidateIntake", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod recovery { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AsRecovered { pub account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub call: ::std::boxed::Box, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetRecovered { pub lost: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub rescuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CreateRecovery { pub friends: ::std::vec::Vec<::subxt::utils::AccountId32>, pub threshold: ::core::primitive::u16, pub delay_period: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct InitiateRecovery { pub account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct VouchRecovery { pub lost: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub rescuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClaimRecovery { pub account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CloseRecovery { pub rescuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveRecovery; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelRecovered { pub account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } pub struct TransactionApi; impl TransactionApi { #[doc = "Send a call through a recovered account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and registered to"] #[doc = "be able to make calls on behalf of the recovered account."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `account`: The recovered account you want to make a call on-behalf-of."] #[doc = "- `call`: The call you want to make with the recovered account."] pub fn as_recovered( &self, account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Recovery", "as_recovered", AsRecovered { account, call: ::std::boxed::Box::new(call), }, [ 74u8, 203u8, 116u8, 157u8, 170u8, 20u8, 234u8, 196u8, 125u8, 117u8, 83u8, 244u8, 211u8, 42u8, 1u8, 252u8, 193u8, 67u8, 214u8, 70u8, 128u8, 9u8, 180u8, 214u8, 201u8, 185u8, 123u8, 49u8, 66u8, 236u8, 235u8, 204u8, ], ) } #[doc = "Allow ROOT to bypass the recovery process and set an a rescuer account"] #[doc = "for a lost account directly."] #[doc = ""] #[doc = "The dispatch origin for this call must be _ROOT_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `lost`: The \"lost account\" to be recovered."] #[doc = "- `rescuer`: The \"rescuer account\" which can call as the lost account."] pub fn set_recovered( &self, lost: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, rescuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Recovery", "set_recovered", SetRecovered { lost, rescuer }, [ 149u8, 123u8, 98u8, 179u8, 7u8, 149u8, 38u8, 221u8, 25u8, 244u8, 176u8, 243u8, 202u8, 6u8, 228u8, 39u8, 248u8, 32u8, 146u8, 140u8, 235u8, 21u8, 181u8, 18u8, 105u8, 44u8, 15u8, 221u8, 82u8, 233u8, 133u8, 51u8, ], ) } #[doc = "Create a recovery configuration for your account. This makes your account recoverable."] #[doc = ""] #[doc = "Payment: `ConfigDepositBase` + `FriendDepositFactor` * #_of_friends balance"] #[doc = "will be reserved for storing the recovery configuration. This deposit is returned"] #[doc = "in full when the user calls `remove_recovery`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `friends`: A list of friends you trust to vouch for recovery attempts. Should be"] #[doc = " ordered and contain no duplicate values."] #[doc = "- `threshold`: The number of friends that must vouch for a recovery attempt before the"] #[doc = " account can be recovered. Should be less than or equal to the length of the list of"] #[doc = " friends."] #[doc = "- `delay_period`: The number of blocks after a recovery attempt is initialized that"] #[doc = " needs to pass before the account can be recovered."] pub fn create_recovery( &self, friends: ::std::vec::Vec<::subxt::utils::AccountId32>, threshold: ::core::primitive::u16, delay_period: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Recovery", "create_recovery", CreateRecovery { friends, threshold, delay_period, }, [ 80u8, 233u8, 68u8, 224u8, 181u8, 127u8, 8u8, 35u8, 135u8, 121u8, 73u8, 25u8, 255u8, 192u8, 177u8, 140u8, 67u8, 113u8, 112u8, 35u8, 63u8, 96u8, 1u8, 138u8, 93u8, 27u8, 219u8, 52u8, 74u8, 251u8, 65u8, 96u8, ], ) } #[doc = "Initiate the process for recovering a recoverable account."] #[doc = ""] #[doc = "Payment: `RecoveryDeposit` balance will be reserved for initiating the"] #[doc = "recovery process. This deposit will always be repatriated to the account"] #[doc = "trying to be recovered. See `close_recovery`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `account`: The lost account that you want to recover. This account needs to be"] #[doc = " recoverable (i.e. have a recovery configuration)."] pub fn initiate_recovery( &self, account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Recovery", "initiate_recovery", InitiateRecovery { account }, [ 140u8, 244u8, 135u8, 122u8, 61u8, 107u8, 212u8, 100u8, 212u8, 11u8, 216u8, 47u8, 113u8, 155u8, 121u8, 232u8, 158u8, 26u8, 229u8, 82u8, 231u8, 193u8, 225u8, 2u8, 112u8, 220u8, 40u8, 104u8, 36u8, 17u8, 164u8, 124u8, ], ) } #[doc = "Allow a \"friend\" of a recoverable account to vouch for an active recovery"] #[doc = "process for that account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and must be a \"friend\""] #[doc = "for the recoverable account."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `lost`: The lost account that you want to recover."] #[doc = "- `rescuer`: The account trying to rescue the lost account that you want to vouch for."] #[doc = ""] #[doc = "The combination of these two parameters must point to an active recovery"] #[doc = "process."] pub fn vouch_recovery( &self, lost: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, rescuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Recovery", "vouch_recovery", VouchRecovery { lost, rescuer }, [ 188u8, 113u8, 2u8, 31u8, 149u8, 123u8, 248u8, 46u8, 211u8, 88u8, 121u8, 207u8, 227u8, 92u8, 198u8, 199u8, 29u8, 216u8, 84u8, 140u8, 169u8, 154u8, 240u8, 183u8, 140u8, 203u8, 223u8, 82u8, 222u8, 187u8, 20u8, 21u8, ], ) } #[doc = "Allow a successful rescuer to claim their recovered account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and must be a \"rescuer\""] #[doc = "who has successfully completed the account recovery process: collected"] #[doc = "`threshold` or more vouches, waited `delay_period` blocks since initiation."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `account`: The lost account that you want to claim has been successfully recovered by"] #[doc = " you."] pub fn claim_recovery( &self, account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Recovery", "claim_recovery", ClaimRecovery { account }, [ 60u8, 49u8, 116u8, 129u8, 138u8, 95u8, 243u8, 120u8, 231u8, 20u8, 149u8, 37u8, 56u8, 209u8, 196u8, 177u8, 186u8, 175u8, 58u8, 203u8, 226u8, 89u8, 80u8, 212u8, 12u8, 17u8, 119u8, 163u8, 74u8, 164u8, 180u8, 187u8, ], ) } #[doc = "As the controller of a recoverable account, close an active recovery"] #[doc = "process for your account."] #[doc = ""] #[doc = "Payment: By calling this function, the recoverable account will receive"] #[doc = "the recovery deposit `RecoveryDeposit` placed by the rescuer."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and must be a"] #[doc = "recoverable account with an active recovery process for it."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `rescuer`: The account trying to rescue this recoverable account."] pub fn close_recovery( &self, rescuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Recovery", "close_recovery", CloseRecovery { rescuer }, [ 61u8, 242u8, 216u8, 157u8, 103u8, 149u8, 121u8, 151u8, 132u8, 247u8, 95u8, 157u8, 178u8, 27u8, 100u8, 222u8, 72u8, 188u8, 168u8, 64u8, 63u8, 135u8, 248u8, 133u8, 177u8, 15u8, 205u8, 146u8, 98u8, 79u8, 135u8, 157u8, ], ) } #[doc = "Remove the recovery process for your account. Recovered accounts are still accessible."] #[doc = ""] #[doc = "NOTE: The user must make sure to call `close_recovery` on all active"] #[doc = "recovery attempts before calling this function else it will fail."] #[doc = ""] #[doc = "Payment: By calling this function the recoverable account will unreserve"] #[doc = "their recovery configuration deposit."] #[doc = "(`ConfigDepositBase` + `FriendDepositFactor` * #_of_friends)"] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and must be a"] #[doc = "recoverable account (i.e. has a recovery configuration)."] pub fn remove_recovery( &self, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Recovery", "remove_recovery", RemoveRecovery {}, [ 14u8, 1u8, 44u8, 24u8, 242u8, 16u8, 67u8, 192u8, 79u8, 206u8, 104u8, 233u8, 91u8, 202u8, 253u8, 100u8, 48u8, 78u8, 233u8, 24u8, 124u8, 176u8, 211u8, 87u8, 63u8, 110u8, 2u8, 7u8, 231u8, 53u8, 177u8, 196u8, ], ) } #[doc = "Cancel the ability to use `as_recovered` for `account`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and registered to"] #[doc = "be able to make calls on behalf of the recovered account."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `account`: The recovered account you are able to call on-behalf-of."] pub fn cancel_recovered( &self, account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Recovery", "cancel_recovered", CancelRecovered { account }, [ 153u8, 253u8, 13u8, 12u8, 200u8, 69u8, 113u8, 49u8, 75u8, 61u8, 10u8, 209u8, 18u8, 192u8, 233u8, 158u8, 241u8, 24u8, 243u8, 0u8, 136u8, 55u8, 43u8, 179u8, 43u8, 113u8, 130u8, 99u8, 146u8, 132u8, 193u8, 251u8, ], ) } } } #[doc = "Events type."] pub type Event = runtime_types::pallet_recovery::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A recovery process has been set up for an account."] pub struct RecoveryCreated { pub account: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for RecoveryCreated { const PALLET: &'static str = "Recovery"; const EVENT: &'static str = "RecoveryCreated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A recovery process has been initiated for lost account by rescuer account."] pub struct RecoveryInitiated { pub lost_account: ::subxt::utils::AccountId32, pub rescuer_account: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for RecoveryInitiated { const PALLET: &'static str = "Recovery"; const EVENT: &'static str = "RecoveryInitiated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A recovery process for lost account by rescuer account has been vouched for by sender."] pub struct RecoveryVouched { pub lost_account: ::subxt::utils::AccountId32, pub rescuer_account: ::subxt::utils::AccountId32, pub sender: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for RecoveryVouched { const PALLET: &'static str = "Recovery"; const EVENT: &'static str = "RecoveryVouched"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A recovery process for lost account by rescuer account has been closed."] pub struct RecoveryClosed { pub lost_account: ::subxt::utils::AccountId32, pub rescuer_account: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for RecoveryClosed { const PALLET: &'static str = "Recovery"; const EVENT: &'static str = "RecoveryClosed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Lost account has been successfully recovered by rescuer account."] pub struct AccountRecovered { pub lost_account: ::subxt::utils::AccountId32, pub rescuer_account: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for AccountRecovered { const PALLET: &'static str = "Recovery"; const EVENT: &'static str = "AccountRecovered"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A recovery process has been removed for an account."] pub struct RecoveryRemoved { pub lost_account: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for RecoveryRemoved { const PALLET: &'static str = "Recovery"; const EVENT: &'static str = "RecoveryRemoved"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The set of recoverable accounts and their recovery configuration."] pub fn recoverable( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_recovery::RecoveryConfig< ::core::primitive::u32, ::core::primitive::u128, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Recovery", "Recoverable", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 77u8, 165u8, 1u8, 120u8, 139u8, 195u8, 113u8, 101u8, 31u8, 182u8, 235u8, 20u8, 225u8, 108u8, 173u8, 70u8, 96u8, 14u8, 95u8, 36u8, 146u8, 171u8, 61u8, 209u8, 37u8, 154u8, 6u8, 197u8, 212u8, 20u8, 167u8, 142u8, ], ) } #[doc = " The set of recoverable accounts and their recovery configuration."] pub fn recoverable_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_recovery::RecoveryConfig< ::core::primitive::u32, ::core::primitive::u128, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Recovery", "Recoverable", Vec::new(), [ 77u8, 165u8, 1u8, 120u8, 139u8, 195u8, 113u8, 101u8, 31u8, 182u8, 235u8, 20u8, 225u8, 108u8, 173u8, 70u8, 96u8, 14u8, 95u8, 36u8, 146u8, 171u8, 61u8, 209u8, 37u8, 154u8, 6u8, 197u8, 212u8, 20u8, 167u8, 142u8, ], ) } #[doc = " Active recovery attempts."] #[doc = ""] #[doc = " First account is the account to be recovered, and the second account"] #[doc = " is the user trying to recover the account."] pub fn active_recoveries( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_recovery::ActiveRecovery< ::core::primitive::u32, ::core::primitive::u128, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Recovery", "ActiveRecoveries", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 105u8, 72u8, 0u8, 48u8, 187u8, 107u8, 42u8, 95u8, 221u8, 206u8, 105u8, 207u8, 228u8, 150u8, 103u8, 62u8, 195u8, 177u8, 233u8, 97u8, 12u8, 17u8, 76u8, 204u8, 236u8, 29u8, 225u8, 60u8, 228u8, 44u8, 103u8, 39u8, ], ) } #[doc = " Active recovery attempts."] #[doc = ""] #[doc = " First account is the account to be recovered, and the second account"] #[doc = " is the user trying to recover the account."] pub fn active_recoveries_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_recovery::ActiveRecovery< ::core::primitive::u32, ::core::primitive::u128, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Recovery", "ActiveRecoveries", Vec::new(), [ 105u8, 72u8, 0u8, 48u8, 187u8, 107u8, 42u8, 95u8, 221u8, 206u8, 105u8, 207u8, 228u8, 150u8, 103u8, 62u8, 195u8, 177u8, 233u8, 97u8, 12u8, 17u8, 76u8, 204u8, 236u8, 29u8, 225u8, 60u8, 228u8, 44u8, 103u8, 39u8, ], ) } #[doc = " The list of allowed proxy accounts."] #[doc = ""] #[doc = " Map from the user who can access it to the recovered account."] pub fn proxy( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Recovery", "Proxy", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 100u8, 137u8, 55u8, 32u8, 228u8, 27u8, 3u8, 84u8, 255u8, 68u8, 45u8, 4u8, 215u8, 84u8, 189u8, 81u8, 175u8, 61u8, 252u8, 254u8, 68u8, 179u8, 57u8, 134u8, 223u8, 49u8, 158u8, 165u8, 108u8, 172u8, 70u8, 108u8, ], ) } #[doc = " The list of allowed proxy accounts."] #[doc = ""] #[doc = " Map from the user who can access it to the recovered account."] pub fn proxy_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Recovery", "Proxy", Vec::new(), [ 100u8, 137u8, 55u8, 32u8, 228u8, 27u8, 3u8, 84u8, 255u8, 68u8, 45u8, 4u8, 215u8, 84u8, 189u8, 81u8, 175u8, 61u8, 252u8, 254u8, 68u8, 179u8, 57u8, 134u8, 223u8, 49u8, 158u8, 165u8, 108u8, 172u8, 70u8, 108u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The base amount of currency needed to reserve for creating a recovery configuration."] #[doc = ""] #[doc = " This is held for an additional storage item whose value size is"] #[doc = " `2 + sizeof(BlockNumber, Balance)` bytes."] pub fn config_deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Recovery", "ConfigDepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount of currency needed per additional user when creating a recovery"] #[doc = " configuration."] #[doc = ""] #[doc = " This is held for adding `sizeof(AccountId)` bytes more into a pre-existing storage"] #[doc = " value."] pub fn friend_deposit_factor( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Recovery", "FriendDepositFactor", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The maximum amount of friends allowed in a recovery configuration."] #[doc = ""] #[doc = " NOTE: The threshold programmed in this Pallet uses u16, so it does"] #[doc = " not really make sense to have a limit here greater than u16::MAX."] #[doc = " But also, that is a lot more than you should probably set this value"] #[doc = " to anyway..."] pub fn max_friends( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Recovery", "MaxFriends", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The base amount of currency needed to reserve for starting a recovery."] #[doc = ""] #[doc = " This is primarily held for deterring malicious recovery attempts, and should"] #[doc = " have a value large enough that a bad actor would choose not to place this"] #[doc = " deposit. It also acts to fund additional storage item whose value size is"] #[doc = " `sizeof(BlockNumber, Balance + T * AccountId)` bytes. Where T is a configurable"] #[doc = " threshold."] pub fn recovery_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Recovery", "RecoveryDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } } } } pub mod vesting { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vest; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct VestOther { pub target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct VestedTransfer { pub target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub schedule: runtime_types::pallet_vesting::vesting_info::VestingInfo< ::core::primitive::u128, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceVestedTransfer { pub source: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub schedule: runtime_types::pallet_vesting::vesting_info::VestingInfo< ::core::primitive::u128, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct MergeSchedules { pub schedule1_index: ::core::primitive::u32, pub schedule2_index: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Unlock any vested funds of the sender account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have funds still"] #[doc = "locked under this pallet."] #[doc = ""] #[doc = "Emits either `VestingCompleted` or `VestingUpdated`."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- DbWeight: 2 Reads, 2 Writes"] #[doc = " - Reads: Vesting Storage, Balances Locks, [Sender Account]"] #[doc = " - Writes: Vesting Storage, Balances Locks, [Sender Account]"] #[doc = "# "] pub fn vest(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Vesting", "vest", Vest {}, [ 123u8, 54u8, 10u8, 208u8, 154u8, 24u8, 39u8, 166u8, 64u8, 27u8, 74u8, 29u8, 243u8, 97u8, 155u8, 5u8, 130u8, 155u8, 65u8, 181u8, 196u8, 125u8, 45u8, 133u8, 25u8, 33u8, 3u8, 34u8, 21u8, 167u8, 172u8, 54u8, ], ) } #[doc = "Unlock any vested funds of a `target` account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `target`: The account whose vested funds should be unlocked. Must have funds still"] #[doc = "locked under this pallet."] #[doc = ""] #[doc = "Emits either `VestingCompleted` or `VestingUpdated`."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- DbWeight: 3 Reads, 3 Writes"] #[doc = " - Reads: Vesting Storage, Balances Locks, Target Account"] #[doc = " - Writes: Vesting Storage, Balances Locks, Target Account"] #[doc = "# "] pub fn vest_other( &self, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Vesting", "vest_other", VestOther { target }, [ 243u8, 97u8, 222u8, 101u8, 143u8, 17u8, 184u8, 191u8, 208u8, 162u8, 31u8, 121u8, 22u8, 88u8, 2u8, 36u8, 9u8, 22u8, 27u8, 117u8, 236u8, 82u8, 83u8, 218u8, 166u8, 154u8, 49u8, 141u8, 95u8, 127u8, 63u8, 13u8, ], ) } #[doc = "Create a vested transfer."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `target`: The account receiving the vested funds."] #[doc = "- `schedule`: The vesting schedule attached to the transfer."] #[doc = ""] #[doc = "Emits `VestingCreated`."] #[doc = ""] #[doc = "NOTE: This will unlock all schedules through the current block."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- DbWeight: 3 Reads, 3 Writes"] #[doc = " - Reads: Vesting Storage, Balances Locks, Target Account, [Sender Account]"] #[doc = " - Writes: Vesting Storage, Balances Locks, Target Account, [Sender Account]"] #[doc = "# "] pub fn vested_transfer( &self, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, schedule: runtime_types::pallet_vesting::vesting_info::VestingInfo< ::core::primitive::u128, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Vesting", "vested_transfer", VestedTransfer { target, schedule }, [ 157u8, 78u8, 209u8, 131u8, 29u8, 102u8, 180u8, 61u8, 212u8, 154u8, 28u8, 3u8, 150u8, 236u8, 22u8, 116u8, 8u8, 142u8, 174u8, 35u8, 37u8, 167u8, 5u8, 200u8, 189u8, 227u8, 122u8, 55u8, 188u8, 213u8, 59u8, 206u8, ], ) } #[doc = "Force a vested transfer."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Root_."] #[doc = ""] #[doc = "- `source`: The account whose funds should be transferred."] #[doc = "- `target`: The account that should be transferred the vested funds."] #[doc = "- `schedule`: The vesting schedule attached to the transfer."] #[doc = ""] #[doc = "Emits `VestingCreated`."] #[doc = ""] #[doc = "NOTE: This will unlock all schedules through the current block."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- DbWeight: 4 Reads, 4 Writes"] #[doc = " - Reads: Vesting Storage, Balances Locks, Target Account, Source Account"] #[doc = " - Writes: Vesting Storage, Balances Locks, Target Account, Source Account"] #[doc = "# "] pub fn force_vested_transfer( &self, source: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, schedule: runtime_types::pallet_vesting::vesting_info::VestingInfo< ::core::primitive::u128, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Vesting", "force_vested_transfer", ForceVestedTransfer { source, target, schedule, }, [ 181u8, 47u8, 44u8, 166u8, 243u8, 122u8, 51u8, 81u8, 136u8, 192u8, 248u8, 150u8, 149u8, 49u8, 208u8, 203u8, 156u8, 100u8, 56u8, 133u8, 22u8, 53u8, 241u8, 237u8, 145u8, 210u8, 25u8, 48u8, 61u8, 184u8, 112u8, 253u8, ], ) } #[doc = "Merge two vesting schedules together, creating a new vesting schedule that unlocks over"] #[doc = "the highest possible start and end blocks. If both schedules have already started the"] #[doc = "current block will be used as the schedule start; with the caveat that if one schedule"] #[doc = "is finished by the current block, the other will be treated as the new merged schedule,"] #[doc = "unmodified."] #[doc = ""] #[doc = "NOTE: If `schedule1_index == schedule2_index` this is a no-op."] #[doc = "NOTE: This will unlock all schedules through the current block prior to merging."] #[doc = "NOTE: If both schedules have ended by the current block, no new schedule will be created"] #[doc = "and both will be removed."] #[doc = ""] #[doc = "Merged schedule attributes:"] #[doc = "- `starting_block`: `MAX(schedule1.starting_block, scheduled2.starting_block,"] #[doc = " current_block)`."] #[doc = "- `ending_block`: `MAX(schedule1.ending_block, schedule2.ending_block)`."] #[doc = "- `locked`: `schedule1.locked_at(current_block) + schedule2.locked_at(current_block)`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `schedule1_index`: index of the first schedule to merge."] #[doc = "- `schedule2_index`: index of the second schedule to merge."] pub fn merge_schedules( &self, schedule1_index: ::core::primitive::u32, schedule2_index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Vesting", "merge_schedules", MergeSchedules { schedule1_index, schedule2_index, }, [ 95u8, 255u8, 147u8, 12u8, 49u8, 25u8, 70u8, 112u8, 55u8, 154u8, 183u8, 97u8, 56u8, 244u8, 148u8, 61u8, 107u8, 163u8, 220u8, 31u8, 153u8, 25u8, 193u8, 251u8, 131u8, 26u8, 166u8, 157u8, 75u8, 4u8, 110u8, 125u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_vesting::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The amount vested has been updated. This could indicate a change in funds available."] #[doc = "The balance given is the amount which is left unvested (and thus locked)."] pub struct VestingUpdated { pub account: ::subxt::utils::AccountId32, pub unvested: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for VestingUpdated { const PALLET: &'static str = "Vesting"; const EVENT: &'static str = "VestingUpdated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An \\[account\\] has become fully vested."] pub struct VestingCompleted { pub account: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for VestingCompleted { const PALLET: &'static str = "Vesting"; const EVENT: &'static str = "VestingCompleted"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Information regarding the vesting of a given account."] pub fn vesting( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_vesting::vesting_info::VestingInfo< ::core::primitive::u128, ::core::primitive::u32, >, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Vesting", "Vesting", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 23u8, 209u8, 233u8, 126u8, 89u8, 156u8, 193u8, 204u8, 100u8, 90u8, 14u8, 120u8, 36u8, 167u8, 148u8, 239u8, 179u8, 74u8, 207u8, 83u8, 54u8, 77u8, 27u8, 135u8, 74u8, 31u8, 33u8, 11u8, 168u8, 239u8, 212u8, 36u8, ], ) } #[doc = " Information regarding the vesting of a given account."] pub fn vesting_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_vesting::vesting_info::VestingInfo< ::core::primitive::u128, ::core::primitive::u32, >, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Vesting", "Vesting", Vec::new(), [ 23u8, 209u8, 233u8, 126u8, 89u8, 156u8, 193u8, 204u8, 100u8, 90u8, 14u8, 120u8, 36u8, 167u8, 148u8, 239u8, 179u8, 74u8, 207u8, 83u8, 54u8, 77u8, 27u8, 135u8, 74u8, 31u8, 33u8, 11u8, 168u8, 239u8, 212u8, 36u8, ], ) } #[doc = " Storage version of the pallet."] #[doc = ""] #[doc = " New networks start with latest version, as determined by the genesis build."] pub fn storage_version( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_vesting::Releases, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Vesting", "StorageVersion", vec![], [ 50u8, 143u8, 26u8, 88u8, 129u8, 31u8, 61u8, 118u8, 19u8, 202u8, 119u8, 160u8, 34u8, 219u8, 60u8, 57u8, 189u8, 66u8, 93u8, 239u8, 121u8, 114u8, 241u8, 116u8, 0u8, 122u8, 232u8, 94u8, 189u8, 23u8, 45u8, 191u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The minimum amount transferred to call `vested_transfer`."] pub fn min_vested_transfer( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Vesting", "MinVestedTransfer", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } pub fn max_vesting_schedules( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Vesting", "MaxVestingSchedules", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod scheduler { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Schedule { pub when: ::core::primitive::u32, pub maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, pub priority: ::core::primitive::u8, pub call: ::std::boxed::Box, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Cancel { pub when: ::core::primitive::u32, pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ScheduleNamed { pub id: [::core::primitive::u8; 32usize], pub when: ::core::primitive::u32, pub maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, pub priority: ::core::primitive::u8, pub call: ::std::boxed::Box, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelNamed { pub id: [::core::primitive::u8; 32usize], } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ScheduleAfter { pub after: ::core::primitive::u32, pub maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, pub priority: ::core::primitive::u8, pub call: ::std::boxed::Box, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ScheduleNamedAfter { pub id: [::core::primitive::u8; 32usize], pub after: ::core::primitive::u32, pub maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, pub priority: ::core::primitive::u8, pub call: ::std::boxed::Box, } pub struct TransactionApi; impl TransactionApi { #[doc = "Anonymously schedule a task."] pub fn schedule( &self, when: ::core::primitive::u32, maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, priority: ::core::primitive::u8, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Scheduler", "schedule", Schedule { when, maybe_periodic, priority, call: ::std::boxed::Box::new(call), }, [ 65u8, 37u8, 202u8, 193u8, 158u8, 251u8, 1u8, 252u8, 234u8, 16u8, 232u8, 94u8, 223u8, 233u8, 122u8, 7u8, 165u8, 253u8, 155u8, 239u8, 58u8, 191u8, 202u8, 49u8, 82u8, 154u8, 2u8, 9u8, 88u8, 57u8, 211u8, 59u8, ], ) } #[doc = "Cancel an anonymously scheduled task."] pub fn cancel( &self, when: ::core::primitive::u32, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Scheduler", "cancel", Cancel { when, index }, [ 81u8, 251u8, 234u8, 17u8, 214u8, 75u8, 19u8, 59u8, 19u8, 30u8, 89u8, 74u8, 6u8, 216u8, 238u8, 165u8, 7u8, 19u8, 153u8, 253u8, 161u8, 103u8, 178u8, 227u8, 152u8, 180u8, 80u8, 156u8, 82u8, 126u8, 132u8, 120u8, ], ) } #[doc = "Schedule a named task."] pub fn schedule_named( &self, id: [::core::primitive::u8; 32usize], when: ::core::primitive::u32, maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, priority: ::core::primitive::u8, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Scheduler", "schedule_named", ScheduleNamed { id, when, maybe_periodic, priority, call: ::std::boxed::Box::new(call), }, [ 104u8, 63u8, 169u8, 203u8, 191u8, 136u8, 253u8, 169u8, 52u8, 194u8, 13u8, 25u8, 130u8, 217u8, 224u8, 165u8, 192u8, 152u8, 10u8, 31u8, 183u8, 255u8, 231u8, 46u8, 125u8, 27u8, 77u8, 0u8, 156u8, 233u8, 17u8, 6u8, ], ) } #[doc = "Cancel a named scheduled task."] pub fn cancel_named( &self, id: [::core::primitive::u8; 32usize], ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Scheduler", "cancel_named", CancelNamed { id }, [ 51u8, 3u8, 140u8, 50u8, 214u8, 211u8, 50u8, 4u8, 19u8, 43u8, 230u8, 114u8, 18u8, 108u8, 138u8, 67u8, 99u8, 24u8, 255u8, 11u8, 246u8, 37u8, 192u8, 207u8, 90u8, 157u8, 171u8, 93u8, 233u8, 189u8, 64u8, 180u8, ], ) } #[doc = "Anonymously schedule a task after a delay."] #[doc = ""] #[doc = "# "] #[doc = "Same as [`schedule`]."] #[doc = "# "] pub fn schedule_after( &self, after: ::core::primitive::u32, maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, priority: ::core::primitive::u8, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Scheduler", "schedule_after", ScheduleAfter { after, maybe_periodic, priority, call: ::std::boxed::Box::new(call), }, [ 246u8, 245u8, 193u8, 81u8, 2u8, 23u8, 127u8, 110u8, 125u8, 176u8, 226u8, 189u8, 241u8, 208u8, 167u8, 208u8, 135u8, 186u8, 11u8, 24u8, 119u8, 50u8, 223u8, 22u8, 44u8, 136u8, 236u8, 222u8, 118u8, 117u8, 20u8, 158u8, ], ) } #[doc = "Schedule a named task after a delay."] #[doc = ""] #[doc = "# "] #[doc = "Same as [`schedule_named`](Self::schedule_named)."] #[doc = "# "] pub fn schedule_named_after( &self, id: [::core::primitive::u8; 32usize], after: ::core::primitive::u32, maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, priority: ::core::primitive::u8, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Scheduler", "schedule_named_after", ScheduleNamedAfter { id, after, maybe_periodic, priority, call: ::std::boxed::Box::new(call), }, [ 226u8, 69u8, 74u8, 53u8, 191u8, 207u8, 203u8, 174u8, 2u8, 120u8, 231u8, 250u8, 114u8, 74u8, 126u8, 63u8, 129u8, 119u8, 248u8, 175u8, 126u8, 82u8, 134u8, 255u8, 249u8, 57u8, 59u8, 164u8, 64u8, 145u8, 33u8, 73u8, ], ) } } } #[doc = "Events type."] pub type Event = runtime_types::pallet_scheduler::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Scheduled some task."] pub struct Scheduled { pub when: ::core::primitive::u32, pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Scheduled { const PALLET: &'static str = "Scheduler"; const EVENT: &'static str = "Scheduled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Canceled some task."] pub struct Canceled { pub when: ::core::primitive::u32, pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Canceled { const PALLET: &'static str = "Scheduler"; const EVENT: &'static str = "Canceled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Dispatched some task."] pub struct Dispatched { pub task: (::core::primitive::u32, ::core::primitive::u32), pub id: ::core::option::Option<[::core::primitive::u8; 32usize]>, pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for Dispatched { const PALLET: &'static str = "Scheduler"; const EVENT: &'static str = "Dispatched"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The call for the provided hash was not found so the task has been aborted."] pub struct CallUnavailable { pub task: (::core::primitive::u32, ::core::primitive::u32), pub id: ::core::option::Option<[::core::primitive::u8; 32usize]>, } impl ::subxt::events::StaticEvent for CallUnavailable { const PALLET: &'static str = "Scheduler"; const EVENT: &'static str = "CallUnavailable"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The given task was unable to be renewed since the agenda is full at that block."] pub struct PeriodicFailed { pub task: (::core::primitive::u32, ::core::primitive::u32), pub id: ::core::option::Option<[::core::primitive::u8; 32usize]>, } impl ::subxt::events::StaticEvent for PeriodicFailed { const PALLET: &'static str = "Scheduler"; const EVENT: &'static str = "PeriodicFailed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The given task can never be executed since it is overweight."] pub struct PermanentlyOverweight { pub task: (::core::primitive::u32, ::core::primitive::u32), pub id: ::core::option::Option<[::core::primitive::u8; 32usize]>, } impl ::subxt::events::StaticEvent for PermanentlyOverweight { const PALLET: &'static str = "Scheduler"; const EVENT: &'static str = "PermanentlyOverweight"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { pub fn incomplete_since( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Scheduler", "IncompleteSince", vec![], [ 149u8, 66u8, 239u8, 67u8, 235u8, 219u8, 101u8, 182u8, 145u8, 56u8, 252u8, 150u8, 253u8, 221u8, 125u8, 57u8, 38u8, 152u8, 153u8, 31u8, 92u8, 238u8, 66u8, 246u8, 104u8, 163u8, 94u8, 73u8, 222u8, 168u8, 193u8, 227u8, ], ) } #[doc = " Items to be executed, indexed by the block number that they should be executed on."] pub fn agenda (& self , _0 : impl :: std :: borrow :: Borrow < :: core :: primitive :: u32 > ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: option :: Option < runtime_types :: pallet_scheduler :: Scheduled < [:: core :: primitive :: u8 ; 32usize] , runtime_types :: frame_support :: traits :: preimages :: Bounded < runtime_types :: kitchensink_runtime :: RuntimeCall > , :: core :: primitive :: u32 , runtime_types :: kitchensink_runtime :: OriginCaller , :: subxt :: utils :: AccountId32 > > > > , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes >{ ::subxt::storage::address::StaticStorageAddress::new( "Scheduler", "Agenda", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 19u8, 214u8, 72u8, 97u8, 75u8, 249u8, 252u8, 10u8, 144u8, 74u8, 36u8, 2u8, 196u8, 58u8, 48u8, 240u8, 117u8, 231u8, 111u8, 26u8, 254u8, 81u8, 151u8, 131u8, 242u8, 194u8, 55u8, 158u8, 218u8, 90u8, 183u8, 109u8, ], ) } #[doc = " Items to be executed, indexed by the block number that they should be executed on."] pub fn agenda_root (& self ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: option :: Option < runtime_types :: pallet_scheduler :: Scheduled < [:: core :: primitive :: u8 ; 32usize] , runtime_types :: frame_support :: traits :: preimages :: Bounded < runtime_types :: kitchensink_runtime :: RuntimeCall > , :: core :: primitive :: u32 , runtime_types :: kitchensink_runtime :: OriginCaller , :: subxt :: utils :: AccountId32 > > > > , () , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes >{ ::subxt::storage::address::StaticStorageAddress::new( "Scheduler", "Agenda", Vec::new(), [ 19u8, 214u8, 72u8, 97u8, 75u8, 249u8, 252u8, 10u8, 144u8, 74u8, 36u8, 2u8, 196u8, 58u8, 48u8, 240u8, 117u8, 231u8, 111u8, 26u8, 254u8, 81u8, 151u8, 131u8, 242u8, 194u8, 55u8, 158u8, 218u8, 90u8, 183u8, 109u8, ], ) } #[doc = " Lookup from a name to the block number and index of the task."] #[doc = ""] #[doc = " For v3 -> v4 the previously unbounded identities are Blake2-256 hashed to form the v4"] #[doc = " identities."] pub fn lookup( &self, _0: impl ::std::borrow::Borrow<[::core::primitive::u8; 32usize]>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u32, ::core::primitive::u32, )>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Scheduler", "Lookup", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 82u8, 20u8, 178u8, 101u8, 108u8, 198u8, 71u8, 99u8, 16u8, 175u8, 15u8, 187u8, 229u8, 243u8, 140u8, 200u8, 99u8, 77u8, 248u8, 178u8, 45u8, 121u8, 193u8, 67u8, 165u8, 43u8, 234u8, 211u8, 158u8, 250u8, 103u8, 243u8, ], ) } #[doc = " Lookup from a name to the block number and index of the task."] #[doc = ""] #[doc = " For v3 -> v4 the previously unbounded identities are Blake2-256 hashed to form the v4"] #[doc = " identities."] pub fn lookup_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u32, ::core::primitive::u32, )>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Scheduler", "Lookup", Vec::new(), [ 82u8, 20u8, 178u8, 101u8, 108u8, 198u8, 71u8, 99u8, 16u8, 175u8, 15u8, 187u8, 229u8, 243u8, 140u8, 200u8, 99u8, 77u8, 248u8, 178u8, 45u8, 121u8, 193u8, 67u8, 165u8, 43u8, 234u8, 211u8, 158u8, 250u8, 103u8, 243u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The maximum weight that may be scheduled per block for any dispatchables."] pub fn maximum_weight( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_weights::weight_v2::Weight, >, > { ::subxt::constants::StaticConstantAddress::new( "Scheduler", "MaximumWeight", [ 206u8, 61u8, 253u8, 247u8, 163u8, 40u8, 161u8, 52u8, 134u8, 140u8, 206u8, 83u8, 44u8, 166u8, 226u8, 115u8, 181u8, 14u8, 227u8, 130u8, 210u8, 32u8, 85u8, 29u8, 230u8, 97u8, 130u8, 165u8, 147u8, 134u8, 106u8, 76u8, ], ) } #[doc = " The maximum number of scheduled calls in the queue for a single block."] pub fn max_scheduled_per_block( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Scheduler", "MaxScheduledPerBlock", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod preimage { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct NotePreimage { pub bytes: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UnnotePreimage { pub hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RequestPreimage { pub hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UnrequestPreimage { pub hash: ::subxt::utils::H256, } pub struct TransactionApi; impl TransactionApi { #[doc = "Register a preimage on-chain."] #[doc = ""] #[doc = "If the preimage was previously requested, no fees or deposits are taken for providing"] #[doc = "the preimage. Otherwise, a deposit is taken proportional to the size of the preimage."] pub fn note_preimage( &self, bytes: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Preimage", "note_preimage", NotePreimage { bytes }, [ 77u8, 48u8, 104u8, 3u8, 254u8, 65u8, 106u8, 95u8, 204u8, 89u8, 149u8, 29u8, 144u8, 188u8, 99u8, 23u8, 146u8, 142u8, 35u8, 17u8, 125u8, 130u8, 31u8, 206u8, 106u8, 83u8, 163u8, 192u8, 81u8, 23u8, 232u8, 230u8, ], ) } #[doc = "Clear an unrequested preimage from the runtime storage."] #[doc = ""] #[doc = "If `len` is provided, then it will be a much cheaper operation."] #[doc = ""] #[doc = "- `hash`: The hash of the preimage to be removed from the store."] #[doc = "- `len`: The length of the preimage of `hash`."] pub fn unnote_preimage( &self, hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Preimage", "unnote_preimage", UnnotePreimage { hash }, [ 211u8, 204u8, 205u8, 58u8, 33u8, 179u8, 68u8, 74u8, 149u8, 138u8, 213u8, 45u8, 140u8, 27u8, 106u8, 81u8, 68u8, 212u8, 147u8, 116u8, 27u8, 130u8, 84u8, 34u8, 231u8, 197u8, 135u8, 8u8, 19u8, 242u8, 207u8, 17u8, ], ) } #[doc = "Request a preimage be uploaded to the chain without paying any fees or deposits."] #[doc = ""] #[doc = "If the preimage requests has already been provided on-chain, we unreserve any deposit"] #[doc = "a user may have paid, and take the control of the preimage out of their hands."] pub fn request_preimage( &self, hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Preimage", "request_preimage", RequestPreimage { hash }, [ 195u8, 26u8, 146u8, 255u8, 79u8, 43u8, 73u8, 60u8, 115u8, 78u8, 99u8, 197u8, 137u8, 95u8, 139u8, 141u8, 79u8, 213u8, 170u8, 169u8, 127u8, 30u8, 236u8, 65u8, 38u8, 16u8, 118u8, 228u8, 141u8, 83u8, 162u8, 233u8, ], ) } #[doc = "Clear a previously made request for a preimage."] #[doc = ""] #[doc = "NOTE: THIS MUST NOT BE CALLED ON `hash` MORE TIMES THAN `request_preimage`."] pub fn unrequest_preimage( &self, hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Preimage", "unrequest_preimage", UnrequestPreimage { hash }, [ 143u8, 225u8, 239u8, 44u8, 237u8, 83u8, 18u8, 105u8, 101u8, 68u8, 111u8, 116u8, 66u8, 212u8, 63u8, 190u8, 38u8, 32u8, 105u8, 152u8, 69u8, 177u8, 193u8, 15u8, 60u8, 26u8, 95u8, 130u8, 11u8, 113u8, 187u8, 108u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_preimage::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A preimage has been noted."] pub struct Noted { pub hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Noted { const PALLET: &'static str = "Preimage"; const EVENT: &'static str = "Noted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A preimage has been requested."] pub struct Requested { pub hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Requested { const PALLET: &'static str = "Preimage"; const EVENT: &'static str = "Requested"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A preimage has ben cleared."] pub struct Cleared { pub hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Cleared { const PALLET: &'static str = "Preimage"; const EVENT: &'static str = "Cleared"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The request status of a given hash."] pub fn status_for( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_preimage::RequestStatus< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Preimage", "StatusFor", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 103u8, 208u8, 88u8, 167u8, 244u8, 198u8, 129u8, 134u8, 182u8, 80u8, 71u8, 192u8, 73u8, 92u8, 190u8, 15u8, 20u8, 132u8, 37u8, 108u8, 88u8, 233u8, 18u8, 145u8, 9u8, 235u8, 5u8, 132u8, 42u8, 17u8, 227u8, 56u8, ], ) } #[doc = " The request status of a given hash."] pub fn status_for_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_preimage::RequestStatus< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Preimage", "StatusFor", Vec::new(), [ 103u8, 208u8, 88u8, 167u8, 244u8, 198u8, 129u8, 134u8, 182u8, 80u8, 71u8, 192u8, 73u8, 92u8, 190u8, 15u8, 20u8, 132u8, 37u8, 108u8, 88u8, 233u8, 18u8, 145u8, 9u8, 235u8, 5u8, 132u8, 42u8, 17u8, 227u8, 56u8, ], ) } pub fn preimage_for( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Preimage", "PreimageFor", vec![::subxt::storage::address::StorageMapKey::new( &(_0.borrow(), _1.borrow()), ::subxt::storage::address::StorageHasher::Identity, )], [ 96u8, 74u8, 30u8, 112u8, 120u8, 41u8, 52u8, 187u8, 252u8, 68u8, 42u8, 5u8, 61u8, 228u8, 250u8, 192u8, 224u8, 61u8, 53u8, 222u8, 95u8, 148u8, 6u8, 53u8, 43u8, 152u8, 88u8, 58u8, 185u8, 234u8, 131u8, 124u8, ], ) } pub fn preimage_for_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Preimage", "PreimageFor", Vec::new(), [ 96u8, 74u8, 30u8, 112u8, 120u8, 41u8, 52u8, 187u8, 252u8, 68u8, 42u8, 5u8, 61u8, 228u8, 250u8, 192u8, 224u8, 61u8, 53u8, 222u8, 95u8, 148u8, 6u8, 53u8, 43u8, 152u8, 88u8, 58u8, 185u8, 234u8, 131u8, 124u8, ], ) } } } } pub mod proxy { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Proxy { pub real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub force_proxy_type: ::core::option::Option, pub call: ::std::boxed::Box, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AddProxy { pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub proxy_type: runtime_types::kitchensink_runtime::ProxyType, pub delay: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveProxy { pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub proxy_type: runtime_types::kitchensink_runtime::ProxyType, pub delay: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveProxies; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CreatePure { pub proxy_type: runtime_types::kitchensink_runtime::ProxyType, pub delay: ::core::primitive::u32, pub index: ::core::primitive::u16, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct KillPure { pub spawner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub proxy_type: runtime_types::kitchensink_runtime::ProxyType, pub index: ::core::primitive::u16, #[codec(compact)] pub height: ::core::primitive::u32, #[codec(compact)] pub ext_index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Announce { pub real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub call_hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveAnnouncement { pub real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub call_hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RejectAnnouncement { pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub call_hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ProxyAnnounced { pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub force_proxy_type: ::core::option::Option, pub call: ::std::boxed::Box, } pub struct TransactionApi; impl TransactionApi { #[doc = "Dispatch the given `call` from an account that the sender is authorised for through"] #[doc = "`add_proxy`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `real`: The account that the proxy will make a call on behalf of."] #[doc = "- `force_proxy_type`: Specify the exact proxy type to be used and checked for this call."] #[doc = "- `call`: The call to be made by the `real` account."] pub fn proxy( &self, real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, force_proxy_type: ::core::option::Option< runtime_types::kitchensink_runtime::ProxyType, >, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Proxy", "proxy", Proxy { real, force_proxy_type, call: ::std::boxed::Box::new(call), }, [ 35u8, 191u8, 194u8, 99u8, 76u8, 27u8, 31u8, 235u8, 33u8, 41u8, 155u8, 0u8, 171u8, 8u8, 183u8, 28u8, 149u8, 254u8, 251u8, 194u8, 129u8, 73u8, 117u8, 147u8, 150u8, 154u8, 83u8, 49u8, 117u8, 90u8, 59u8, 188u8, ], ) } #[doc = "Register a proxy account for the sender that is able to make calls on its behalf."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `proxy`: The account that the `caller` would like to make a proxy."] #[doc = "- `proxy_type`: The permissions allowed for this proxy account."] #[doc = "- `delay`: The announcement period required of the initial proxy. Will generally be"] #[doc = "zero."] pub fn add_proxy( &self, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, proxy_type: runtime_types::kitchensink_runtime::ProxyType, delay: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Proxy", "add_proxy", AddProxy { delegate, proxy_type, delay, }, [ 179u8, 225u8, 244u8, 52u8, 43u8, 253u8, 204u8, 37u8, 236u8, 61u8, 140u8, 160u8, 140u8, 4u8, 198u8, 186u8, 91u8, 113u8, 204u8, 15u8, 167u8, 9u8, 232u8, 208u8, 130u8, 202u8, 67u8, 44u8, 30u8, 35u8, 113u8, 152u8, ], ) } #[doc = "Unregister a proxy account for the sender."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `proxy`: The account that the `caller` would like to remove as a proxy."] #[doc = "- `proxy_type`: The permissions currently enabled for the removed proxy account."] pub fn remove_proxy( &self, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, proxy_type: runtime_types::kitchensink_runtime::ProxyType, delay: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Proxy", "remove_proxy", RemoveProxy { delegate, proxy_type, delay, }, [ 207u8, 163u8, 188u8, 238u8, 61u8, 133u8, 145u8, 118u8, 223u8, 169u8, 11u8, 101u8, 38u8, 135u8, 194u8, 141u8, 84u8, 194u8, 65u8, 159u8, 215u8, 210u8, 109u8, 7u8, 46u8, 31u8, 92u8, 233u8, 50u8, 224u8, 57u8, 8u8, ], ) } #[doc = "Unregister all proxy accounts for the sender."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "WARNING: This may be called on accounts created by `pure`, however if done, then"] #[doc = "the unreserved fees will be inaccessible. **All access to this account will be lost.**"] pub fn remove_proxies( &self, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Proxy", "remove_proxies", RemoveProxies {}, [ 15u8, 237u8, 27u8, 166u8, 254u8, 218u8, 92u8, 5u8, 213u8, 239u8, 99u8, 59u8, 1u8, 26u8, 73u8, 252u8, 81u8, 94u8, 214u8, 227u8, 169u8, 58u8, 40u8, 253u8, 187u8, 225u8, 192u8, 26u8, 19u8, 23u8, 121u8, 129u8, ], ) } #[doc = "Spawn a fresh new account that is guaranteed to be otherwise inaccessible, and"] #[doc = "initialize it with a proxy of `proxy_type` for `origin` sender."] #[doc = ""] #[doc = "Requires a `Signed` origin."] #[doc = ""] #[doc = "- `proxy_type`: The type of the proxy that the sender will be registered as over the"] #[doc = "new account. This will almost always be the most permissive `ProxyType` possible to"] #[doc = "allow for maximum flexibility."] #[doc = "- `index`: A disambiguation index, in case this is called multiple times in the same"] #[doc = "transaction (e.g. with `utility::batch`). Unless you're using `batch` you probably just"] #[doc = "want to use `0`."] #[doc = "- `delay`: The announcement period required of the initial proxy. Will generally be"] #[doc = "zero."] #[doc = ""] #[doc = "Fails with `Duplicate` if this has already been called in this transaction, from the"] #[doc = "same sender, with the same parameters."] #[doc = ""] #[doc = "Fails if there are insufficient funds to pay for deposit."] pub fn create_pure( &self, proxy_type: runtime_types::kitchensink_runtime::ProxyType, delay: ::core::primitive::u32, index: ::core::primitive::u16, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Proxy", "create_pure", CreatePure { proxy_type, delay, index, }, [ 46u8, 194u8, 136u8, 133u8, 111u8, 12u8, 51u8, 219u8, 148u8, 227u8, 22u8, 236u8, 91u8, 15u8, 73u8, 48u8, 222u8, 219u8, 133u8, 157u8, 65u8, 136u8, 119u8, 76u8, 116u8, 13u8, 33u8, 215u8, 138u8, 211u8, 195u8, 157u8, ], ) } #[doc = "Removes a previously spawned pure proxy."] #[doc = ""] #[doc = "WARNING: **All access to this account will be lost.** Any funds held in it will be"] #[doc = "inaccessible."] #[doc = ""] #[doc = "Requires a `Signed` origin, and the sender account must have been created by a call to"] #[doc = "`pure` with corresponding parameters."] #[doc = ""] #[doc = "- `spawner`: The account that originally called `pure` to create this account."] #[doc = "- `index`: The disambiguation index originally passed to `pure`. Probably `0`."] #[doc = "- `proxy_type`: The proxy type originally passed to `pure`."] #[doc = "- `height`: The height of the chain when the call to `pure` was processed."] #[doc = "- `ext_index`: The extrinsic index in which the call to `pure` was processed."] #[doc = ""] #[doc = "Fails with `NoPermission` in case the caller is not a previously created pure"] #[doc = "account whose `pure` call has corresponding parameters."] pub fn kill_pure( &self, spawner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, proxy_type: runtime_types::kitchensink_runtime::ProxyType, index: ::core::primitive::u16, height: ::core::primitive::u32, ext_index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Proxy", "kill_pure", KillPure { spawner, proxy_type, index, height, ext_index, }, [ 76u8, 246u8, 203u8, 222u8, 54u8, 155u8, 53u8, 188u8, 243u8, 178u8, 173u8, 59u8, 31u8, 188u8, 152u8, 209u8, 211u8, 139u8, 65u8, 150u8, 18u8, 5u8, 75u8, 223u8, 112u8, 196u8, 45u8, 157u8, 111u8, 92u8, 106u8, 255u8, ], ) } #[doc = "Publish the hash of a proxy-call that will be made in the future."] #[doc = ""] #[doc = "This must be called some number of blocks before the corresponding `proxy` is attempted"] #[doc = "if the delay associated with the proxy relationship is greater than zero."] #[doc = ""] #[doc = "No more than `MaxPending` announcements may be made at any one time."] #[doc = ""] #[doc = "This will take a deposit of `AnnouncementDepositFactor` as well as"] #[doc = "`AnnouncementDepositBase` if there are no other pending announcements."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a proxy of `real`."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `real`: The account that the proxy will make a call on behalf of."] #[doc = "- `call_hash`: The hash of the call to be made by the `real` account."] pub fn announce( &self, real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, call_hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Proxy", "announce", Announce { real, call_hash }, [ 226u8, 252u8, 69u8, 50u8, 248u8, 212u8, 209u8, 225u8, 201u8, 236u8, 51u8, 136u8, 56u8, 85u8, 36u8, 130u8, 233u8, 84u8, 44u8, 192u8, 174u8, 119u8, 245u8, 62u8, 150u8, 78u8, 217u8, 90u8, 167u8, 154u8, 228u8, 141u8, ], ) } #[doc = "Remove a given announcement."] #[doc = ""] #[doc = "May be called by a proxy account to remove a call they previously announced and return"] #[doc = "the deposit."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `real`: The account that the proxy will make a call on behalf of."] #[doc = "- `call_hash`: The hash of the call to be made by the `real` account."] pub fn remove_announcement( &self, real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, call_hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Proxy", "remove_announcement", RemoveAnnouncement { real, call_hash }, [ 251u8, 236u8, 113u8, 182u8, 125u8, 244u8, 31u8, 144u8, 66u8, 28u8, 65u8, 97u8, 67u8, 94u8, 225u8, 210u8, 46u8, 143u8, 242u8, 124u8, 120u8, 93u8, 23u8, 165u8, 83u8, 177u8, 250u8, 171u8, 58u8, 66u8, 70u8, 64u8, ], ) } #[doc = "Remove the given announcement of a delegate."] #[doc = ""] #[doc = "May be called by a target (proxied) account to remove a call that one of their delegates"] #[doc = "(`delegate`) has announced they want to execute. The deposit is returned."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `delegate`: The account that previously announced the call."] #[doc = "- `call_hash`: The hash of the call to be made."] pub fn reject_announcement( &self, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, call_hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Proxy", "reject_announcement", RejectAnnouncement { delegate, call_hash, }, [ 122u8, 165u8, 114u8, 85u8, 209u8, 197u8, 11u8, 96u8, 211u8, 93u8, 201u8, 42u8, 1u8, 131u8, 254u8, 177u8, 191u8, 212u8, 229u8, 13u8, 28u8, 163u8, 133u8, 200u8, 113u8, 28u8, 132u8, 45u8, 105u8, 177u8, 82u8, 206u8, ], ) } #[doc = "Dispatch the given `call` from an account that the sender is authorized for through"] #[doc = "`add_proxy`."] #[doc = ""] #[doc = "Removes any corresponding announcement(s)."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `real`: The account that the proxy will make a call on behalf of."] #[doc = "- `force_proxy_type`: Specify the exact proxy type to be used and checked for this call."] #[doc = "- `call`: The call to be made by the `real` account."] pub fn proxy_announced( &self, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, force_proxy_type: ::core::option::Option< runtime_types::kitchensink_runtime::ProxyType, >, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Proxy", "proxy_announced", ProxyAnnounced { delegate, real, force_proxy_type, call: ::std::boxed::Box::new(call), }, [ 151u8, 115u8, 208u8, 117u8, 44u8, 177u8, 216u8, 185u8, 152u8, 246u8, 150u8, 107u8, 146u8, 110u8, 145u8, 208u8, 56u8, 231u8, 30u8, 251u8, 247u8, 209u8, 156u8, 167u8, 106u8, 173u8, 29u8, 194u8, 212u8, 199u8, 19u8, 218u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_proxy::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proxy was executed correctly, with the given."] pub struct ProxyExecuted { pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for ProxyExecuted { const PALLET: &'static str = "Proxy"; const EVENT: &'static str = "ProxyExecuted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A pure account has been created by new proxy with given"] #[doc = "disambiguation index and proxy type."] pub struct PureCreated { pub pure: ::subxt::utils::AccountId32, pub who: ::subxt::utils::AccountId32, pub proxy_type: runtime_types::kitchensink_runtime::ProxyType, pub disambiguation_index: ::core::primitive::u16, } impl ::subxt::events::StaticEvent for PureCreated { const PALLET: &'static str = "Proxy"; const EVENT: &'static str = "PureCreated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An announcement was placed to make a call in the future."] pub struct Announced { pub real: ::subxt::utils::AccountId32, pub proxy: ::subxt::utils::AccountId32, pub call_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Announced { const PALLET: &'static str = "Proxy"; const EVENT: &'static str = "Announced"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proxy was added."] pub struct ProxyAdded { pub delegator: ::subxt::utils::AccountId32, pub delegatee: ::subxt::utils::AccountId32, pub proxy_type: runtime_types::kitchensink_runtime::ProxyType, pub delay: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ProxyAdded { const PALLET: &'static str = "Proxy"; const EVENT: &'static str = "ProxyAdded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proxy was removed."] pub struct ProxyRemoved { pub delegator: ::subxt::utils::AccountId32, pub delegatee: ::subxt::utils::AccountId32, pub proxy_type: runtime_types::kitchensink_runtime::ProxyType, pub delay: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ProxyRemoved { const PALLET: &'static str = "Proxy"; const EVENT: &'static str = "ProxyRemoved"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The set of account proxies. Maps the account which has delegated to the accounts"] #[doc = " which are being delegated to, together with the amount held on deposit."] pub fn proxies( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_proxy::ProxyDefinition< ::subxt::utils::AccountId32, runtime_types::kitchensink_runtime::ProxyType, ::core::primitive::u32, >, >, ::core::primitive::u128, )>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Proxy", "Proxies", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 35u8, 140u8, 42u8, 184u8, 125u8, 223u8, 255u8, 143u8, 55u8, 148u8, 168u8, 246u8, 208u8, 160u8, 176u8, 177u8, 174u8, 162u8, 90u8, 65u8, 156u8, 91u8, 110u8, 131u8, 24u8, 8u8, 18u8, 89u8, 96u8, 108u8, 55u8, 47u8, ], ) } #[doc = " The set of account proxies. Maps the account which has delegated to the accounts"] #[doc = " which are being delegated to, together with the amount held on deposit."] pub fn proxies_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_proxy::ProxyDefinition< ::subxt::utils::AccountId32, runtime_types::kitchensink_runtime::ProxyType, ::core::primitive::u32, >, >, ::core::primitive::u128, )>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Proxy", "Proxies", Vec::new(), [ 35u8, 140u8, 42u8, 184u8, 125u8, 223u8, 255u8, 143u8, 55u8, 148u8, 168u8, 246u8, 208u8, 160u8, 176u8, 177u8, 174u8, 162u8, 90u8, 65u8, 156u8, 91u8, 110u8, 131u8, 24u8, 8u8, 18u8, 89u8, 96u8, 108u8, 55u8, 47u8, ], ) } #[doc = " The announcements made by the proxy (key)."] pub fn announcements( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_proxy::Announcement< ::subxt::utils::AccountId32, ::subxt::utils::H256, ::core::primitive::u32, >, >, ::core::primitive::u128, )>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Proxy", "Announcements", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 233u8, 38u8, 249u8, 89u8, 103u8, 87u8, 64u8, 52u8, 140u8, 228u8, 110u8, 37u8, 8u8, 92u8, 48u8, 7u8, 46u8, 99u8, 179u8, 83u8, 232u8, 171u8, 160u8, 45u8, 37u8, 23u8, 151u8, 198u8, 237u8, 103u8, 217u8, 53u8, ], ) } #[doc = " The announcements made by the proxy (key)."] pub fn announcements_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_proxy::Announcement< ::subxt::utils::AccountId32, ::subxt::utils::H256, ::core::primitive::u32, >, >, ::core::primitive::u128, )>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Proxy", "Announcements", Vec::new(), [ 233u8, 38u8, 249u8, 89u8, 103u8, 87u8, 64u8, 52u8, 140u8, 228u8, 110u8, 37u8, 8u8, 92u8, 48u8, 7u8, 46u8, 99u8, 179u8, 83u8, 232u8, 171u8, 160u8, 45u8, 37u8, 23u8, 151u8, 198u8, 237u8, 103u8, 217u8, 53u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The base amount of currency needed to reserve for creating a proxy."] #[doc = ""] #[doc = " This is held for an additional storage item whose value size is"] #[doc = " `sizeof(Balance)` bytes and whose key size is `sizeof(AccountId)` bytes."] pub fn proxy_deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Proxy", "ProxyDepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount of currency needed per proxy added."] #[doc = ""] #[doc = " This is held for adding 32 bytes plus an instance of `ProxyType` more into a"] #[doc = " pre-existing storage value. Thus, when configuring `ProxyDepositFactor` one should take"] #[doc = " into account `32 + proxy_type.encode().len()` bytes of data."] pub fn proxy_deposit_factor( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Proxy", "ProxyDepositFactor", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The maximum amount of proxies allowed for a single account."] pub fn max_proxies( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Proxy", "MaxProxies", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum amount of time-delayed announcements that are allowed to be pending."] pub fn max_pending( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Proxy", "MaxPending", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The base amount of currency needed to reserve for creating an announcement."] #[doc = ""] #[doc = " This is held when a new storage item holding a `Balance` is created (typically 16"] #[doc = " bytes)."] pub fn announcement_deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Proxy", "AnnouncementDepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount of currency needed per announcement made."] #[doc = ""] #[doc = " This is held for adding an `AccountId`, `Hash` and `BlockNumber` (typically 68 bytes)"] #[doc = " into a pre-existing storage value."] pub fn announcement_deposit_factor( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Proxy", "AnnouncementDepositFactor", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } } } } pub mod multisig { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AsMultiThreshold1 { pub other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, pub call: ::std::boxed::Box, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AsMulti { pub threshold: ::core::primitive::u16, pub other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, pub maybe_timepoint: ::core::option::Option< runtime_types::pallet_multisig::Timepoint<::core::primitive::u32>, >, pub call: ::std::boxed::Box, pub max_weight: runtime_types::sp_weights::weight_v2::Weight, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ApproveAsMulti { pub threshold: ::core::primitive::u16, pub other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, pub maybe_timepoint: ::core::option::Option< runtime_types::pallet_multisig::Timepoint<::core::primitive::u32>, >, pub call_hash: [::core::primitive::u8; 32usize], pub max_weight: runtime_types::sp_weights::weight_v2::Weight, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelAsMulti { pub threshold: ::core::primitive::u16, pub other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, pub timepoint: runtime_types::pallet_multisig::Timepoint<::core::primitive::u32>, pub call_hash: [::core::primitive::u8; 32usize], } pub struct TransactionApi; impl TransactionApi { #[doc = "Immediately dispatch a multi-signature call using a single approval from the caller."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `other_signatories`: The accounts (other than the sender) who are part of the"] #[doc = "multi-signature, but do not participate in the approval process."] #[doc = "- `call`: The call to be executed."] #[doc = ""] #[doc = "Result is equivalent to the dispatched result."] #[doc = ""] #[doc = "# "] #[doc = "O(Z + C) where Z is the length of the call and C its execution weight."] #[doc = "-------------------------------"] #[doc = "- DB Weight: None"] #[doc = "- Plus Call Weight"] #[doc = "# "] pub fn as_multi_threshold_1( &self, other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Multisig", "as_multi_threshold_1", AsMultiThreshold1 { other_signatories, call: ::std::boxed::Box::new(call), }, [ 225u8, 116u8, 99u8, 232u8, 184u8, 9u8, 5u8, 129u8, 233u8, 11u8, 27u8, 225u8, 25u8, 47u8, 174u8, 3u8, 83u8, 108u8, 40u8, 208u8, 63u8, 195u8, 29u8, 167u8, 209u8, 149u8, 8u8, 172u8, 216u8, 72u8, 99u8, 223u8, ], ) } #[doc = "Register approval for a dispatch to be made from a deterministic composite account if"] #[doc = "approved by a total of `threshold - 1` of `other_signatories`."] #[doc = ""] #[doc = "If there are enough, then dispatch the call."] #[doc = ""] #[doc = "Payment: `DepositBase` will be reserved if this is the first approval, plus"] #[doc = "`threshold` times `DepositFactor`. It is returned once this dispatch happens or"] #[doc = "is cancelled."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `threshold`: The total number of approvals for this dispatch before it is executed."] #[doc = "- `other_signatories`: The accounts (other than the sender) who can approve this"] #[doc = "dispatch. May not be empty."] #[doc = "- `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is"] #[doc = "not the first approval, then it must be `Some`, with the timepoint (block number and"] #[doc = "transaction index) of the first approval transaction."] #[doc = "- `call`: The call to be executed."] #[doc = ""] #[doc = "NOTE: Unless this is the final approval, you will generally want to use"] #[doc = "`approve_as_multi` instead, since it only requires a hash of the call."] #[doc = ""] #[doc = "Result is equivalent to the dispatched result if `threshold` is exactly `1`. Otherwise"] #[doc = "on success, result is `Ok` and the result from the interior call, if it was executed,"] #[doc = "may be found in the deposited `MultisigExecuted` event."] #[doc = ""] #[doc = "# "] #[doc = "- `O(S + Z + Call)`."] #[doc = "- Up to one balance-reserve or unreserve operation."] #[doc = "- One passthrough operation, one insert, both `O(S)` where `S` is the number of"] #[doc = " signatories. `S` is capped by `MaxSignatories`, with weight being proportional."] #[doc = "- One call encode & hash, both of complexity `O(Z)` where `Z` is tx-len."] #[doc = "- One encode & hash, both of complexity `O(S)`."] #[doc = "- Up to one binary search and insert (`O(logS + S)`)."] #[doc = "- I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove."] #[doc = "- One event."] #[doc = "- The weight of the `call`."] #[doc = "- Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit"] #[doc = " taken for its lifetime of `DepositBase + threshold * DepositFactor`."] #[doc = "-------------------------------"] #[doc = "- DB Weight:"] #[doc = " - Reads: Multisig Storage, [Caller Account]"] #[doc = " - Writes: Multisig Storage, [Caller Account]"] #[doc = "- Plus Call Weight"] #[doc = "# "] pub fn as_multi( &self, threshold: ::core::primitive::u16, other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, maybe_timepoint: ::core::option::Option< runtime_types::pallet_multisig::Timepoint<::core::primitive::u32>, >, call: runtime_types::kitchensink_runtime::RuntimeCall, max_weight: runtime_types::sp_weights::weight_v2::Weight, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Multisig", "as_multi", AsMulti { threshold, other_signatories, maybe_timepoint, call: ::std::boxed::Box::new(call), max_weight, }, [ 191u8, 221u8, 239u8, 34u8, 200u8, 99u8, 81u8, 47u8, 59u8, 12u8, 221u8, 203u8, 49u8, 91u8, 106u8, 222u8, 34u8, 135u8, 88u8, 204u8, 139u8, 47u8, 248u8, 222u8, 141u8, 28u8, 58u8, 80u8, 87u8, 117u8, 134u8, 24u8, ], ) } #[doc = "Register approval for a dispatch to be made from a deterministic composite account if"] #[doc = "approved by a total of `threshold - 1` of `other_signatories`."] #[doc = ""] #[doc = "Payment: `DepositBase` will be reserved if this is the first approval, plus"] #[doc = "`threshold` times `DepositFactor`. It is returned once this dispatch happens or"] #[doc = "is cancelled."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `threshold`: The total number of approvals for this dispatch before it is executed."] #[doc = "- `other_signatories`: The accounts (other than the sender) who can approve this"] #[doc = "dispatch. May not be empty."] #[doc = "- `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is"] #[doc = "not the first approval, then it must be `Some`, with the timepoint (block number and"] #[doc = "transaction index) of the first approval transaction."] #[doc = "- `call_hash`: The hash of the call to be executed."] #[doc = ""] #[doc = "NOTE: If this is the final approval, you will want to use `as_multi` instead."] #[doc = ""] #[doc = "# "] #[doc = "- `O(S)`."] #[doc = "- Up to one balance-reserve or unreserve operation."] #[doc = "- One passthrough operation, one insert, both `O(S)` where `S` is the number of"] #[doc = " signatories. `S` is capped by `MaxSignatories`, with weight being proportional."] #[doc = "- One encode & hash, both of complexity `O(S)`."] #[doc = "- Up to one binary search and insert (`O(logS + S)`)."] #[doc = "- I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove."] #[doc = "- One event."] #[doc = "- Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit"] #[doc = " taken for its lifetime of `DepositBase + threshold * DepositFactor`."] #[doc = "----------------------------------"] #[doc = "- DB Weight:"] #[doc = " - Read: Multisig Storage, [Caller Account]"] #[doc = " - Write: Multisig Storage, [Caller Account]"] #[doc = "# "] pub fn approve_as_multi( &self, threshold: ::core::primitive::u16, other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, maybe_timepoint: ::core::option::Option< runtime_types::pallet_multisig::Timepoint<::core::primitive::u32>, >, call_hash: [::core::primitive::u8; 32usize], max_weight: runtime_types::sp_weights::weight_v2::Weight, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Multisig", "approve_as_multi", ApproveAsMulti { threshold, other_signatories, maybe_timepoint, call_hash, max_weight, }, [ 133u8, 113u8, 121u8, 66u8, 218u8, 219u8, 48u8, 64u8, 211u8, 114u8, 163u8, 193u8, 164u8, 21u8, 140u8, 218u8, 253u8, 237u8, 240u8, 126u8, 200u8, 213u8, 184u8, 50u8, 187u8, 182u8, 30u8, 52u8, 142u8, 72u8, 210u8, 101u8, ], ) } #[doc = "Cancel a pre-existing, on-going multisig transaction. Any deposit reserved previously"] #[doc = "for this operation will be unreserved on success."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `threshold`: The total number of approvals for this dispatch before it is executed."] #[doc = "- `other_signatories`: The accounts (other than the sender) who can approve this"] #[doc = "dispatch. May not be empty."] #[doc = "- `timepoint`: The timepoint (block number and transaction index) of the first approval"] #[doc = "transaction for this dispatch."] #[doc = "- `call_hash`: The hash of the call to be executed."] #[doc = ""] #[doc = "# "] #[doc = "- `O(S)`."] #[doc = "- Up to one balance-reserve or unreserve operation."] #[doc = "- One passthrough operation, one insert, both `O(S)` where `S` is the number of"] #[doc = " signatories. `S` is capped by `MaxSignatories`, with weight being proportional."] #[doc = "- One encode & hash, both of complexity `O(S)`."] #[doc = "- One event."] #[doc = "- I/O: 1 read `O(S)`, one remove."] #[doc = "- Storage: removes one item."] #[doc = "----------------------------------"] #[doc = "- DB Weight:"] #[doc = " - Read: Multisig Storage, [Caller Account], Refund Account"] #[doc = " - Write: Multisig Storage, [Caller Account], Refund Account"] #[doc = "# "] pub fn cancel_as_multi( &self, threshold: ::core::primitive::u16, other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, timepoint: runtime_types::pallet_multisig::Timepoint< ::core::primitive::u32, >, call_hash: [::core::primitive::u8; 32usize], ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Multisig", "cancel_as_multi", CancelAsMulti { threshold, other_signatories, timepoint, call_hash, }, [ 30u8, 25u8, 186u8, 142u8, 168u8, 81u8, 235u8, 164u8, 82u8, 209u8, 66u8, 129u8, 209u8, 78u8, 172u8, 9u8, 163u8, 222u8, 125u8, 57u8, 2u8, 43u8, 169u8, 174u8, 159u8, 167u8, 25u8, 226u8, 254u8, 110u8, 80u8, 216u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_multisig::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new multisig operation has begun."] pub struct NewMultisig { pub approving: ::subxt::utils::AccountId32, pub multisig: ::subxt::utils::AccountId32, pub call_hash: [::core::primitive::u8; 32usize], } impl ::subxt::events::StaticEvent for NewMultisig { const PALLET: &'static str = "Multisig"; const EVENT: &'static str = "NewMultisig"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A multisig operation has been approved by someone."] pub struct MultisigApproval { pub approving: ::subxt::utils::AccountId32, pub timepoint: runtime_types::pallet_multisig::Timepoint<::core::primitive::u32>, pub multisig: ::subxt::utils::AccountId32, pub call_hash: [::core::primitive::u8; 32usize], } impl ::subxt::events::StaticEvent for MultisigApproval { const PALLET: &'static str = "Multisig"; const EVENT: &'static str = "MultisigApproval"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A multisig operation has been executed."] pub struct MultisigExecuted { pub approving: ::subxt::utils::AccountId32, pub timepoint: runtime_types::pallet_multisig::Timepoint<::core::primitive::u32>, pub multisig: ::subxt::utils::AccountId32, pub call_hash: [::core::primitive::u8; 32usize], pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for MultisigExecuted { const PALLET: &'static str = "Multisig"; const EVENT: &'static str = "MultisigExecuted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A multisig operation has been cancelled."] pub struct MultisigCancelled { pub cancelling: ::subxt::utils::AccountId32, pub timepoint: runtime_types::pallet_multisig::Timepoint<::core::primitive::u32>, pub multisig: ::subxt::utils::AccountId32, pub call_hash: [::core::primitive::u8; 32usize], } impl ::subxt::events::StaticEvent for MultisigCancelled { const PALLET: &'static str = "Multisig"; const EVENT: &'static str = "MultisigCancelled"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The set of open multisig operations."] pub fn multisigs( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, _1: impl ::std::borrow::Borrow<[::core::primitive::u8; 32usize]>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_multisig::Multisig< ::core::primitive::u32, ::core::primitive::u128, ::subxt::utils::AccountId32, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Multisig" , "Multisigs" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Twox64Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [69u8 , 153u8 , 186u8 , 204u8 , 117u8 , 95u8 , 119u8 , 182u8 , 220u8 , 87u8 , 8u8 , 15u8 , 123u8 , 83u8 , 5u8 , 188u8 , 115u8 , 121u8 , 163u8 , 96u8 , 218u8 , 3u8 , 106u8 , 44u8 , 44u8 , 187u8 , 46u8 , 238u8 , 80u8 , 203u8 , 175u8 , 155u8 ,]) } #[doc = " The set of open multisig operations."] pub fn multisigs_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_multisig::Multisig< ::core::primitive::u32, ::core::primitive::u128, ::subxt::utils::AccountId32, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Multisig", "Multisigs", Vec::new(), [ 69u8, 153u8, 186u8, 204u8, 117u8, 95u8, 119u8, 182u8, 220u8, 87u8, 8u8, 15u8, 123u8, 83u8, 5u8, 188u8, 115u8, 121u8, 163u8, 96u8, 218u8, 3u8, 106u8, 44u8, 44u8, 187u8, 46u8, 238u8, 80u8, 203u8, 175u8, 155u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The base amount of currency needed to reserve for creating a multisig execution or to"] #[doc = " store a dispatch call for later."] #[doc = ""] #[doc = " This is held for an additional storage item whose value size is"] #[doc = " `4 + sizeof((BlockNumber, Balance, AccountId))` bytes and whose key size is"] #[doc = " `32 + sizeof(AccountId)` bytes."] pub fn deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Multisig", "DepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount of currency needed per unit threshold when creating a multisig execution."] #[doc = ""] #[doc = " This is held for adding 32 bytes more into a pre-existing storage value."] pub fn deposit_factor( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Multisig", "DepositFactor", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The maximum amount of signatories allowed in the multisig."] pub fn max_signatories( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Multisig", "MaxSignatories", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod bounties { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ProposeBounty { #[codec(compact)] pub value: ::core::primitive::u128, pub description: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ApproveBounty { #[codec(compact)] pub bounty_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ProposeCurator { #[codec(compact)] pub bounty_id: ::core::primitive::u32, pub curator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub fee: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UnassignCurator { #[codec(compact)] pub bounty_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AcceptCurator { #[codec(compact)] pub bounty_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AwardBounty { #[codec(compact)] pub bounty_id: ::core::primitive::u32, pub beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClaimBounty { #[codec(compact)] pub bounty_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CloseBounty { #[codec(compact)] pub bounty_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ExtendBountyExpiry { #[codec(compact)] pub bounty_id: ::core::primitive::u32, pub remark: ::std::vec::Vec<::core::primitive::u8>, } pub struct TransactionApi; impl TransactionApi { #[doc = "Propose a new bounty."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Payment: `TipReportDepositBase` will be reserved from the origin account, as well as"] #[doc = "`DataDepositPerByte` for each byte in `reason`. It will be unreserved upon approval,"] #[doc = "or slashed when rejected."] #[doc = ""] #[doc = "- `curator`: The curator account whom will manage this bounty."] #[doc = "- `fee`: The curator fee."] #[doc = "- `value`: The total payment amount of this bounty, curator fee included."] #[doc = "- `description`: The description of this bounty."] pub fn propose_bounty( &self, value: ::core::primitive::u128, description: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Bounties", "propose_bounty", ProposeBounty { value, description }, [ 99u8, 160u8, 94u8, 74u8, 105u8, 161u8, 123u8, 239u8, 241u8, 117u8, 97u8, 99u8, 84u8, 101u8, 87u8, 3u8, 88u8, 175u8, 75u8, 59u8, 114u8, 87u8, 18u8, 113u8, 126u8, 26u8, 42u8, 104u8, 201u8, 128u8, 102u8, 219u8, ], ) } #[doc = "Approve a bounty proposal. At a later time, the bounty will be funded and become active"] #[doc = "and the original deposit will be returned."] #[doc = ""] #[doc = "May only be called from `T::SpendOrigin`."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] pub fn approve_bounty( &self, bounty_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Bounties", "approve_bounty", ApproveBounty { bounty_id }, [ 82u8, 228u8, 232u8, 103u8, 198u8, 173u8, 190u8, 148u8, 159u8, 86u8, 48u8, 4u8, 32u8, 169u8, 1u8, 129u8, 96u8, 145u8, 235u8, 68u8, 48u8, 34u8, 5u8, 1u8, 76u8, 26u8, 100u8, 228u8, 92u8, 198u8, 183u8, 173u8, ], ) } #[doc = "Assign a curator to a funded bounty."] #[doc = ""] #[doc = "May only be called from `T::SpendOrigin`."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] pub fn propose_curator( &self, bounty_id: ::core::primitive::u32, curator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, fee: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Bounties", "propose_curator", ProposeCurator { bounty_id, curator, fee, }, [ 85u8, 186u8, 206u8, 137u8, 98u8, 87u8, 202u8, 71u8, 89u8, 241u8, 56u8, 212u8, 89u8, 215u8, 65u8, 97u8, 202u8, 139u8, 78u8, 66u8, 92u8, 177u8, 163u8, 111u8, 212u8, 244u8, 41u8, 153u8, 104u8, 129u8, 112u8, 237u8, ], ) } #[doc = "Unassign curator from a bounty."] #[doc = ""] #[doc = "This function can only be called by the `RejectOrigin` a signed origin."] #[doc = ""] #[doc = "If this function is called by the `RejectOrigin`, we assume that the curator is"] #[doc = "malicious or inactive. As a result, we will slash the curator when possible."] #[doc = ""] #[doc = "If the origin is the curator, we take this as a sign they are unable to do their job and"] #[doc = "they willingly give up. We could slash them, but for now we allow them to recover their"] #[doc = "deposit and exit without issue. (We may want to change this if it is abused.)"] #[doc = ""] #[doc = "Finally, the origin can be anyone if and only if the curator is \"inactive\". This allows"] #[doc = "anyone in the community to call out that a curator is not doing their due diligence, and"] #[doc = "we should pick a new curator. In this case the curator should also be slashed."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] pub fn unassign_curator( &self, bounty_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Bounties", "unassign_curator", UnassignCurator { bounty_id }, [ 218u8, 241u8, 247u8, 89u8, 95u8, 120u8, 93u8, 18u8, 85u8, 114u8, 158u8, 254u8, 68u8, 77u8, 230u8, 186u8, 230u8, 201u8, 63u8, 223u8, 28u8, 173u8, 244u8, 82u8, 113u8, 177u8, 99u8, 27u8, 207u8, 247u8, 207u8, 213u8, ], ) } #[doc = "Accept the curator role for a bounty."] #[doc = "A deposit will be reserved from curator and refund upon successful payout."] #[doc = ""] #[doc = "May only be called from the curator."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] pub fn accept_curator( &self, bounty_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Bounties", "accept_curator", AcceptCurator { bounty_id }, [ 106u8, 96u8, 22u8, 67u8, 52u8, 109u8, 180u8, 225u8, 122u8, 253u8, 209u8, 214u8, 132u8, 131u8, 247u8, 131u8, 162u8, 51u8, 144u8, 30u8, 12u8, 126u8, 50u8, 152u8, 229u8, 119u8, 54u8, 116u8, 112u8, 235u8, 34u8, 166u8, ], ) } #[doc = "Award bounty to a beneficiary account. The beneficiary will be able to claim the funds"] #[doc = "after a delay."] #[doc = ""] #[doc = "The dispatch origin for this call must be the curator of this bounty."] #[doc = ""] #[doc = "- `bounty_id`: Bounty ID to award."] #[doc = "- `beneficiary`: The beneficiary account whom will receive the payout."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] pub fn award_bounty( &self, bounty_id: ::core::primitive::u32, beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Bounties", "award_bounty", AwardBounty { bounty_id, beneficiary, }, [ 7u8, 205u8, 73u8, 45u8, 57u8, 8u8, 24u8, 135u8, 89u8, 157u8, 35u8, 176u8, 224u8, 106u8, 167u8, 232u8, 230u8, 153u8, 239u8, 45u8, 210u8, 61u8, 17u8, 106u8, 220u8, 131u8, 105u8, 136u8, 232u8, 194u8, 243u8, 48u8, ], ) } #[doc = "Claim the payout from an awarded bounty after payout delay."] #[doc = ""] #[doc = "The dispatch origin for this call must be the beneficiary of this bounty."] #[doc = ""] #[doc = "- `bounty_id`: Bounty ID to claim."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] pub fn claim_bounty( &self, bounty_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Bounties", "claim_bounty", ClaimBounty { bounty_id }, [ 102u8, 95u8, 8u8, 89u8, 4u8, 126u8, 189u8, 28u8, 241u8, 16u8, 125u8, 218u8, 42u8, 92u8, 177u8, 91u8, 8u8, 235u8, 33u8, 48u8, 64u8, 115u8, 177u8, 95u8, 242u8, 97u8, 181u8, 50u8, 68u8, 37u8, 59u8, 85u8, ], ) } #[doc = "Cancel a proposed or active bounty. All the funds will be sent to treasury and"] #[doc = "the curator deposit will be unreserved if possible."] #[doc = ""] #[doc = "Only `T::RejectOrigin` is able to cancel a bounty."] #[doc = ""] #[doc = "- `bounty_id`: Bounty ID to cancel."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] pub fn close_bounty( &self, bounty_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Bounties", "close_bounty", CloseBounty { bounty_id }, [ 64u8, 113u8, 151u8, 228u8, 90u8, 55u8, 251u8, 63u8, 27u8, 211u8, 119u8, 229u8, 137u8, 137u8, 183u8, 240u8, 241u8, 146u8, 69u8, 169u8, 124u8, 220u8, 236u8, 111u8, 98u8, 188u8, 100u8, 52u8, 127u8, 245u8, 244u8, 92u8, ], ) } #[doc = "Extend the expiry time of an active bounty."] #[doc = ""] #[doc = "The dispatch origin for this call must be the curator of this bounty."] #[doc = ""] #[doc = "- `bounty_id`: Bounty ID to extend."] #[doc = "- `remark`: additional information."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] pub fn extend_bounty_expiry( &self, bounty_id: ::core::primitive::u32, remark: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Bounties", "extend_bounty_expiry", ExtendBountyExpiry { bounty_id, remark }, [ 97u8, 69u8, 157u8, 39u8, 59u8, 72u8, 79u8, 88u8, 104u8, 119u8, 91u8, 26u8, 73u8, 216u8, 174u8, 95u8, 254u8, 214u8, 63u8, 138u8, 100u8, 112u8, 185u8, 81u8, 159u8, 247u8, 221u8, 60u8, 87u8, 40u8, 80u8, 202u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_bounties::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "New bounty proposal."] pub struct BountyProposed { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for BountyProposed { const PALLET: &'static str = "Bounties"; const EVENT: &'static str = "BountyProposed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A bounty proposal was rejected; funds were slashed."] pub struct BountyRejected { pub index: ::core::primitive::u32, pub bond: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for BountyRejected { const PALLET: &'static str = "Bounties"; const EVENT: &'static str = "BountyRejected"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A bounty proposal is funded and became active."] pub struct BountyBecameActive { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for BountyBecameActive { const PALLET: &'static str = "Bounties"; const EVENT: &'static str = "BountyBecameActive"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A bounty is awarded to a beneficiary."] pub struct BountyAwarded { pub index: ::core::primitive::u32, pub beneficiary: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for BountyAwarded { const PALLET: &'static str = "Bounties"; const EVENT: &'static str = "BountyAwarded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A bounty is claimed by beneficiary."] pub struct BountyClaimed { pub index: ::core::primitive::u32, pub payout: ::core::primitive::u128, pub beneficiary: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for BountyClaimed { const PALLET: &'static str = "Bounties"; const EVENT: &'static str = "BountyClaimed"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A bounty is cancelled."] pub struct BountyCanceled { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for BountyCanceled { const PALLET: &'static str = "Bounties"; const EVENT: &'static str = "BountyCanceled"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A bounty expiry is extended."] pub struct BountyExtended { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for BountyExtended { const PALLET: &'static str = "Bounties"; const EVENT: &'static str = "BountyExtended"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Number of bounty proposals that have been made."] pub fn bounty_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Bounties", "BountyCount", vec![], [ 5u8, 188u8, 134u8, 220u8, 64u8, 49u8, 188u8, 98u8, 185u8, 186u8, 230u8, 65u8, 247u8, 199u8, 28u8, 178u8, 202u8, 193u8, 41u8, 83u8, 115u8, 253u8, 182u8, 123u8, 92u8, 138u8, 12u8, 31u8, 31u8, 213u8, 23u8, 118u8, ], ) } #[doc = " Bounties that have been made."] pub fn bounties( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_bounties::Bounty< ::subxt::utils::AccountId32, ::core::primitive::u128, ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Bounties", "Bounties", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 111u8, 149u8, 33u8, 54u8, 172u8, 143u8, 41u8, 231u8, 184u8, 255u8, 238u8, 206u8, 87u8, 142u8, 84u8, 10u8, 236u8, 141u8, 190u8, 193u8, 72u8, 170u8, 19u8, 110u8, 135u8, 136u8, 220u8, 11u8, 99u8, 126u8, 225u8, 208u8, ], ) } #[doc = " Bounties that have been made."] pub fn bounties_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_bounties::Bounty< ::subxt::utils::AccountId32, ::core::primitive::u128, ::core::primitive::u32, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Bounties", "Bounties", Vec::new(), [ 111u8, 149u8, 33u8, 54u8, 172u8, 143u8, 41u8, 231u8, 184u8, 255u8, 238u8, 206u8, 87u8, 142u8, 84u8, 10u8, 236u8, 141u8, 190u8, 193u8, 72u8, 170u8, 19u8, 110u8, 135u8, 136u8, 220u8, 11u8, 99u8, 126u8, 225u8, 208u8, ], ) } #[doc = " The description of each bounty."] pub fn bounty_descriptions( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Bounties", "BountyDescriptions", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 252u8, 0u8, 9u8, 225u8, 13u8, 135u8, 7u8, 121u8, 154u8, 155u8, 116u8, 83u8, 160u8, 37u8, 72u8, 11u8, 72u8, 0u8, 248u8, 73u8, 158u8, 84u8, 125u8, 221u8, 176u8, 231u8, 100u8, 239u8, 111u8, 22u8, 29u8, 13u8, ], ) } #[doc = " The description of each bounty."] pub fn bounty_descriptions_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Bounties", "BountyDescriptions", Vec::new(), [ 252u8, 0u8, 9u8, 225u8, 13u8, 135u8, 7u8, 121u8, 154u8, 155u8, 116u8, 83u8, 160u8, 37u8, 72u8, 11u8, 72u8, 0u8, 248u8, 73u8, 158u8, 84u8, 125u8, 221u8, 176u8, 231u8, 100u8, 239u8, 111u8, 22u8, 29u8, 13u8, ], ) } #[doc = " Bounty indices that have been approved but not yet funded."] pub fn bounty_approvals( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Bounties", "BountyApprovals", vec![], [ 64u8, 93u8, 54u8, 94u8, 122u8, 9u8, 246u8, 86u8, 234u8, 30u8, 125u8, 132u8, 49u8, 128u8, 1u8, 219u8, 241u8, 13u8, 217u8, 186u8, 48u8, 21u8, 5u8, 227u8, 71u8, 157u8, 128u8, 226u8, 214u8, 49u8, 249u8, 183u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The amount held on deposit for placing a bounty proposal."] pub fn bounty_deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Bounties", "BountyDepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The delay period for which a bounty beneficiary need to wait before claim the payout."] pub fn bounty_deposit_payout_delay( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Bounties", "BountyDepositPayoutDelay", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Bounty duration in blocks."] pub fn bounty_update_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Bounties", "BountyUpdatePeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The curator deposit is calculated as a percentage of the curator fee."] #[doc = ""] #[doc = " This deposit has optional upper and lower bounds with `CuratorDepositMax` and"] #[doc = " `CuratorDepositMin`."] pub fn curator_deposit_multiplier( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_arithmetic::per_things::Permill, >, > { ::subxt::constants::StaticConstantAddress::new( "Bounties", "CuratorDepositMultiplier", [ 225u8, 236u8, 95u8, 157u8, 90u8, 94u8, 106u8, 192u8, 254u8, 19u8, 87u8, 80u8, 16u8, 62u8, 42u8, 204u8, 136u8, 106u8, 225u8, 53u8, 212u8, 52u8, 177u8, 79u8, 4u8, 116u8, 201u8, 104u8, 222u8, 75u8, 86u8, 227u8, ], ) } #[doc = " Maximum amount of funds that should be placed in a deposit for making a proposal."] pub fn curator_deposit_max( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< ::core::option::Option<::core::primitive::u128>, >, > { ::subxt::constants::StaticConstantAddress::new( "Bounties", "CuratorDepositMax", [ 84u8, 154u8, 218u8, 83u8, 84u8, 189u8, 32u8, 20u8, 120u8, 194u8, 88u8, 205u8, 109u8, 216u8, 114u8, 193u8, 120u8, 198u8, 154u8, 237u8, 134u8, 204u8, 102u8, 247u8, 52u8, 103u8, 231u8, 43u8, 243u8, 122u8, 60u8, 216u8, ], ) } #[doc = " Minimum amount of funds that should be placed in a deposit for making a proposal."] pub fn curator_deposit_min( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< ::core::option::Option<::core::primitive::u128>, >, > { ::subxt::constants::StaticConstantAddress::new( "Bounties", "CuratorDepositMin", [ 84u8, 154u8, 218u8, 83u8, 84u8, 189u8, 32u8, 20u8, 120u8, 194u8, 88u8, 205u8, 109u8, 216u8, 114u8, 193u8, 120u8, 198u8, 154u8, 237u8, 134u8, 204u8, 102u8, 247u8, 52u8, 103u8, 231u8, 43u8, 243u8, 122u8, 60u8, 216u8, ], ) } #[doc = " Minimum value for a bounty."] pub fn bounty_value_minimum( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Bounties", "BountyValueMinimum", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount held on deposit per byte within the tip report reason or bounty description."] pub fn data_deposit_per_byte( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Bounties", "DataDepositPerByte", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " Maximum acceptable reason length."] #[doc = ""] #[doc = " Benchmarks depend on this value, be sure to update weights file when changing this value"] pub fn maximum_reason_length( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Bounties", "MaximumReasonLength", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod tips { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReportAwesome { pub reason: ::std::vec::Vec<::core::primitive::u8>, pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RetractTip { pub hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TipNew { pub reason: ::std::vec::Vec<::core::primitive::u8>, pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub tip_value: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Tip { pub hash: ::subxt::utils::H256, #[codec(compact)] pub tip_value: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CloseTip { pub hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SlashTip { pub hash: ::subxt::utils::H256, } pub struct TransactionApi; impl TransactionApi { #[doc = "Report something `reason` that deserves a tip and claim any eventual the finder's fee."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Payment: `TipReportDepositBase` will be reserved from the origin account, as well as"] #[doc = "`DataDepositPerByte` for each byte in `reason`."] #[doc = ""] #[doc = "- `reason`: The reason for, or the thing that deserves, the tip; generally this will be"] #[doc = " a UTF-8-encoded URL."] #[doc = "- `who`: The account which should be credited for the tip."] #[doc = ""] #[doc = "Emits `NewTip` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(R)` where `R` length of `reason`."] #[doc = " - encoding and hashing of 'reason'"] #[doc = "- DbReads: `Reasons`, `Tips`"] #[doc = "- DbWrites: `Reasons`, `Tips`"] #[doc = "# "] pub fn report_awesome( &self, reason: ::std::vec::Vec<::core::primitive::u8>, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Tips", "report_awesome", ReportAwesome { reason, who }, [ 234u8, 199u8, 253u8, 109u8, 105u8, 252u8, 249u8, 138u8, 197u8, 187u8, 226u8, 67u8, 195u8, 51u8, 197u8, 85u8, 110u8, 173u8, 85u8, 176u8, 27u8, 147u8, 221u8, 85u8, 177u8, 55u8, 2u8, 218u8, 4u8, 115u8, 67u8, 121u8, ], ) } #[doc = "Retract a prior tip-report from `report_awesome`, and cancel the process of tipping."] #[doc = ""] #[doc = "If successful, the original deposit will be unreserved."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the tip identified by `hash`"] #[doc = "must have been reported by the signing account through `report_awesome` (and not"] #[doc = "through `tip_new`)."] #[doc = ""] #[doc = "- `hash`: The identity of the open tip for which a tip value is declared. This is formed"] #[doc = " as the hash of the tuple of the original tip `reason` and the beneficiary account ID."] #[doc = ""] #[doc = "Emits `TipRetracted` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(1)`"] #[doc = " - Depends on the length of `T::Hash` which is fixed."] #[doc = "- DbReads: `Tips`, `origin account`"] #[doc = "- DbWrites: `Reasons`, `Tips`, `origin account`"] #[doc = "# "] pub fn retract_tip( &self, hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Tips", "retract_tip", RetractTip { hash }, [ 137u8, 42u8, 229u8, 188u8, 157u8, 195u8, 184u8, 176u8, 64u8, 142u8, 67u8, 175u8, 185u8, 207u8, 214u8, 71u8, 165u8, 29u8, 137u8, 227u8, 132u8, 195u8, 255u8, 66u8, 186u8, 57u8, 34u8, 184u8, 187u8, 65u8, 129u8, 131u8, ], ) } #[doc = "Give a tip for something new; no finder's fee will be taken."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the signing account must be a"] #[doc = "member of the `Tippers` set."] #[doc = ""] #[doc = "- `reason`: The reason for, or the thing that deserves, the tip; generally this will be"] #[doc = " a UTF-8-encoded URL."] #[doc = "- `who`: The account which should be credited for the tip."] #[doc = "- `tip_value`: The amount of tip that the sender would like to give. The median tip"] #[doc = " value of active tippers will be given to the `who`."] #[doc = ""] #[doc = "Emits `NewTip` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(R + T)` where `R` length of `reason`, `T` is the number of tippers."] #[doc = " - `O(T)`: decoding `Tipper` vec of length `T`. `T` is charged as upper bound given by"] #[doc = " `ContainsLengthBound`. The actual cost depends on the implementation of"] #[doc = " `T::Tippers`."] #[doc = " - `O(R)`: hashing and encoding of reason of length `R`"] #[doc = "- DbReads: `Tippers`, `Reasons`"] #[doc = "- DbWrites: `Reasons`, `Tips`"] #[doc = "# "] pub fn tip_new( &self, reason: ::std::vec::Vec<::core::primitive::u8>, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, tip_value: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Tips", "tip_new", TipNew { reason, who, tip_value, }, [ 166u8, 19u8, 234u8, 170u8, 180u8, 74u8, 235u8, 156u8, 58u8, 125u8, 199u8, 215u8, 15u8, 96u8, 240u8, 71u8, 205u8, 61u8, 60u8, 204u8, 12u8, 35u8, 252u8, 233u8, 31u8, 86u8, 204u8, 230u8, 40u8, 247u8, 47u8, 135u8, ], ) } #[doc = "Declare a tip value for an already-open tip."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the signing account must be a"] #[doc = "member of the `Tippers` set."] #[doc = ""] #[doc = "- `hash`: The identity of the open tip for which a tip value is declared. This is formed"] #[doc = " as the hash of the tuple of the hash of the original tip `reason` and the beneficiary"] #[doc = " account ID."] #[doc = "- `tip_value`: The amount of tip that the sender would like to give. The median tip"] #[doc = " value of active tippers will be given to the `who`."] #[doc = ""] #[doc = "Emits `TipClosing` if the threshold of tippers has been reached and the countdown period"] #[doc = "has started."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(T)` where `T` is the number of tippers. decoding `Tipper` vec of length"] #[doc = " `T`, insert tip and check closing, `T` is charged as upper bound given by"] #[doc = " `ContainsLengthBound`. The actual cost depends on the implementation of `T::Tippers`."] #[doc = ""] #[doc = " Actually weight could be lower as it depends on how many tips are in `OpenTip` but it"] #[doc = " is weighted as if almost full i.e of length `T-1`."] #[doc = "- DbReads: `Tippers`, `Tips`"] #[doc = "- DbWrites: `Tips`"] #[doc = "# "] pub fn tip( &self, hash: ::subxt::utils::H256, tip_value: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Tips", "tip", Tip { hash, tip_value }, [ 133u8, 52u8, 131u8, 14u8, 71u8, 232u8, 254u8, 31u8, 33u8, 206u8, 50u8, 76u8, 56u8, 167u8, 228u8, 202u8, 195u8, 0u8, 164u8, 107u8, 170u8, 98u8, 192u8, 37u8, 209u8, 199u8, 130u8, 15u8, 168u8, 63u8, 181u8, 134u8, ], ) } #[doc = "Close and payout a tip."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "The tip identified by `hash` must have finished its countdown period."] #[doc = ""] #[doc = "- `hash`: The identity of the open tip for which a tip value is declared. This is formed"] #[doc = " as the hash of the tuple of the original tip `reason` and the beneficiary account ID."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(T)` where `T` is the number of tippers. decoding `Tipper` vec of length"] #[doc = " `T`. `T` is charged as upper bound given by `ContainsLengthBound`. The actual cost"] #[doc = " depends on the implementation of `T::Tippers`."] #[doc = "- DbReads: `Tips`, `Tippers`, `tip finder`"] #[doc = "- DbWrites: `Reasons`, `Tips`, `Tippers`, `tip finder`"] #[doc = "# "] pub fn close_tip( &self, hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Tips", "close_tip", CloseTip { hash }, [ 32u8, 53u8, 0u8, 222u8, 45u8, 157u8, 107u8, 174u8, 203u8, 50u8, 81u8, 230u8, 6u8, 111u8, 79u8, 55u8, 49u8, 151u8, 107u8, 114u8, 81u8, 200u8, 144u8, 175u8, 29u8, 142u8, 115u8, 184u8, 102u8, 116u8, 156u8, 173u8, ], ) } #[doc = "Remove and slash an already-open tip."] #[doc = ""] #[doc = "May only be called from `T::RejectOrigin`."] #[doc = ""] #[doc = "As a result, the finder is slashed and the deposits are lost."] #[doc = ""] #[doc = "Emits `TipSlashed` if successful."] #[doc = ""] #[doc = "# "] #[doc = " `T` is charged as upper bound given by `ContainsLengthBound`."] #[doc = " The actual cost depends on the implementation of `T::Tippers`."] #[doc = "# "] pub fn slash_tip( &self, hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Tips", "slash_tip", SlashTip { hash }, [ 222u8, 209u8, 22u8, 47u8, 114u8, 230u8, 81u8, 200u8, 131u8, 0u8, 209u8, 54u8, 17u8, 200u8, 175u8, 125u8, 100u8, 254u8, 41u8, 178u8, 20u8, 27u8, 9u8, 184u8, 79u8, 93u8, 208u8, 148u8, 27u8, 190u8, 176u8, 169u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_tips::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new tip suggestion has been opened."] pub struct NewTip { pub tip_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for NewTip { const PALLET: &'static str = "Tips"; const EVENT: &'static str = "NewTip"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A tip suggestion has reached threshold and is closing."] pub struct TipClosing { pub tip_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for TipClosing { const PALLET: &'static str = "Tips"; const EVENT: &'static str = "TipClosing"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A tip suggestion has been closed."] pub struct TipClosed { pub tip_hash: ::subxt::utils::H256, pub who: ::subxt::utils::AccountId32, pub payout: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for TipClosed { const PALLET: &'static str = "Tips"; const EVENT: &'static str = "TipClosed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A tip suggestion has been retracted."] pub struct TipRetracted { pub tip_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for TipRetracted { const PALLET: &'static str = "Tips"; const EVENT: &'static str = "TipRetracted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A tip suggestion has been slashed."] pub struct TipSlashed { pub tip_hash: ::subxt::utils::H256, pub finder: ::subxt::utils::AccountId32, pub deposit: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for TipSlashed { const PALLET: &'static str = "Tips"; const EVENT: &'static str = "TipSlashed"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " TipsMap that are not yet completed. Keyed by the hash of `(reason, who)` from the value."] #[doc = " This has the insecure enumerable hash function since the key itself is already"] #[doc = " guaranteed to be a secure hash."] pub fn tips( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_tips::OpenTip< ::subxt::utils::AccountId32, ::core::primitive::u128, ::core::primitive::u32, ::subxt::utils::H256, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Tips", "Tips", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 241u8, 196u8, 105u8, 248u8, 29u8, 66u8, 86u8, 98u8, 6u8, 159u8, 191u8, 0u8, 227u8, 232u8, 147u8, 248u8, 173u8, 20u8, 225u8, 12u8, 232u8, 5u8, 93u8, 78u8, 18u8, 154u8, 130u8, 38u8, 142u8, 36u8, 66u8, 0u8, ], ) } #[doc = " TipsMap that are not yet completed. Keyed by the hash of `(reason, who)` from the value."] #[doc = " This has the insecure enumerable hash function since the key itself is already"] #[doc = " guaranteed to be a secure hash."] pub fn tips_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_tips::OpenTip< ::subxt::utils::AccountId32, ::core::primitive::u128, ::core::primitive::u32, ::subxt::utils::H256, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Tips", "Tips", Vec::new(), [ 241u8, 196u8, 105u8, 248u8, 29u8, 66u8, 86u8, 98u8, 6u8, 159u8, 191u8, 0u8, 227u8, 232u8, 147u8, 248u8, 173u8, 20u8, 225u8, 12u8, 232u8, 5u8, 93u8, 78u8, 18u8, 154u8, 130u8, 38u8, 142u8, 36u8, 66u8, 0u8, ], ) } #[doc = " Simple preimage lookup from the reason's hash to the original data. Again, has an"] #[doc = " insecure enumerable hash since the key is guaranteed to be the result of a secure hash."] pub fn reasons( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u8>, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Tips", "Reasons", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 202u8, 191u8, 36u8, 162u8, 156u8, 102u8, 115u8, 10u8, 203u8, 35u8, 201u8, 70u8, 195u8, 151u8, 89u8, 82u8, 202u8, 35u8, 210u8, 176u8, 82u8, 1u8, 77u8, 94u8, 31u8, 70u8, 252u8, 194u8, 166u8, 91u8, 189u8, 134u8, ], ) } #[doc = " Simple preimage lookup from the reason's hash to the original data. Again, has an"] #[doc = " insecure enumerable hash since the key is guaranteed to be the result of a secure hash."] pub fn reasons_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u8>, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Tips", "Reasons", Vec::new(), [ 202u8, 191u8, 36u8, 162u8, 156u8, 102u8, 115u8, 10u8, 203u8, 35u8, 201u8, 70u8, 195u8, 151u8, 89u8, 82u8, 202u8, 35u8, 210u8, 176u8, 82u8, 1u8, 77u8, 94u8, 31u8, 70u8, 252u8, 194u8, 166u8, 91u8, 189u8, 134u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Maximum acceptable reason length."] #[doc = ""] #[doc = " Benchmarks depend on this value, be sure to update weights file when changing this value"] pub fn maximum_reason_length( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Tips", "MaximumReasonLength", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The amount held on deposit per byte within the tip report reason or bounty description."] pub fn data_deposit_per_byte( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Tips", "DataDepositPerByte", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The period for which a tip remains open after is has achieved threshold tippers."] pub fn tip_countdown( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Tips", "TipCountdown", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The percent of the final tip which goes to the original reporter of the tip."] pub fn tip_finders_fee( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_arithmetic::per_things::Percent, >, > { ::subxt::constants::StaticConstantAddress::new( "Tips", "TipFindersFee", [ 99u8, 121u8, 176u8, 172u8, 235u8, 159u8, 116u8, 114u8, 179u8, 91u8, 129u8, 117u8, 204u8, 135u8, 53u8, 7u8, 151u8, 26u8, 124u8, 151u8, 202u8, 171u8, 171u8, 207u8, 183u8, 177u8, 24u8, 53u8, 109u8, 185u8, 71u8, 183u8, ], ) } #[doc = " The amount held on deposit for placing a tip report."] pub fn tip_report_deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Tips", "TipReportDepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } } } } pub mod assets { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Create { #[codec(compact)] pub id: ::core::primitive::u32, pub admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub min_balance: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceCreate { #[codec(compact)] pub id: ::core::primitive::u32, pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub is_sufficient: ::core::primitive::bool, #[codec(compact)] pub min_balance: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct StartDestroy { #[codec(compact)] pub id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DestroyAccounts { #[codec(compact)] pub id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DestroyApprovals { #[codec(compact)] pub id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct FinishDestroy { #[codec(compact)] pub id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Mint { #[codec(compact)] pub id: ::core::primitive::u32, pub beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub amount: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Burn { #[codec(compact)] pub id: ::core::primitive::u32, pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub amount: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Transfer { #[codec(compact)] pub id: ::core::primitive::u32, pub target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub amount: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TransferKeepAlive { #[codec(compact)] pub id: ::core::primitive::u32, pub target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub amount: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceTransfer { #[codec(compact)] pub id: ::core::primitive::u32, pub source: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub amount: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Freeze { #[codec(compact)] pub id: ::core::primitive::u32, pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Thaw { #[codec(compact)] pub id: ::core::primitive::u32, pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct FreezeAsset { #[codec(compact)] pub id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ThawAsset { #[codec(compact)] pub id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TransferOwnership { #[codec(compact)] pub id: ::core::primitive::u32, pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetTeam { #[codec(compact)] pub id: ::core::primitive::u32, pub issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetMetadata { #[codec(compact)] pub id: ::core::primitive::u32, pub name: ::std::vec::Vec<::core::primitive::u8>, pub symbol: ::std::vec::Vec<::core::primitive::u8>, pub decimals: ::core::primitive::u8, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClearMetadata { #[codec(compact)] pub id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceSetMetadata { #[codec(compact)] pub id: ::core::primitive::u32, pub name: ::std::vec::Vec<::core::primitive::u8>, pub symbol: ::std::vec::Vec<::core::primitive::u8>, pub decimals: ::core::primitive::u8, pub is_frozen: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceClearMetadata { #[codec(compact)] pub id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceAssetStatus { #[codec(compact)] pub id: ::core::primitive::u32, pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub min_balance: ::core::primitive::u128, pub is_sufficient: ::core::primitive::bool, pub is_frozen: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ApproveTransfer { #[codec(compact)] pub id: ::core::primitive::u32, pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub amount: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelApproval { #[codec(compact)] pub id: ::core::primitive::u32, pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceCancelApproval { #[codec(compact)] pub id: ::core::primitive::u32, pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TransferApproved { #[codec(compact)] pub id: ::core::primitive::u32, pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub destination: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub amount: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Touch { #[codec(compact)] pub id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Refund { #[codec(compact)] pub id: ::core::primitive::u32, pub allow_burn: ::core::primitive::bool, } pub struct TransactionApi; impl TransactionApi { #[doc = "Issue a new class of fungible assets from a public origin."] #[doc = ""] #[doc = "This new asset class has no assets initially and its owner is the origin."] #[doc = ""] #[doc = "The origin must conform to the configured `CreateOrigin` and have sufficient funds free."] #[doc = ""] #[doc = "Funds of sender are reserved by `AssetDeposit`."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `id`: The identifier of the new asset. This must not be currently in use to identify"] #[doc = "an existing asset."] #[doc = "- `admin`: The admin of this class of assets. The admin is the initial address of each"] #[doc = "member of the asset class's admin team."] #[doc = "- `min_balance`: The minimum balance of this new asset that any single account must"] #[doc = "have. If an account's balance is reduced below this, then it collapses to zero."] #[doc = ""] #[doc = "Emits `Created` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn create( &self, id: ::core::primitive::u32, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, min_balance: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "create", Create { id, admin, min_balance, }, [ 197u8, 86u8, 72u8, 4u8, 104u8, 55u8, 113u8, 73u8, 86u8, 21u8, 128u8, 40u8, 25u8, 91u8, 18u8, 246u8, 157u8, 168u8, 160u8, 65u8, 101u8, 193u8, 120u8, 217u8, 245u8, 26u8, 194u8, 186u8, 126u8, 231u8, 118u8, 176u8, ], ) } #[doc = "Issue a new class of fungible assets from a privileged origin."] #[doc = ""] #[doc = "This new asset class has no assets initially."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin`."] #[doc = ""] #[doc = "Unlike `create`, no funds are reserved."] #[doc = ""] #[doc = "- `id`: The identifier of the new asset. This must not be currently in use to identify"] #[doc = "an existing asset."] #[doc = "- `owner`: The owner of this class of assets. The owner has full superuser permissions"] #[doc = "over this asset, but may later change and configure the permissions using"] #[doc = "`transfer_ownership` and `set_team`."] #[doc = "- `min_balance`: The minimum balance of this new asset that any single account must"] #[doc = "have. If an account's balance is reduced below this, then it collapses to zero."] #[doc = ""] #[doc = "Emits `ForceCreated` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn force_create( &self, id: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, is_sufficient: ::core::primitive::bool, min_balance: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "force_create", ForceCreate { id, owner, is_sufficient, min_balance, }, [ 152u8, 24u8, 39u8, 126u8, 101u8, 61u8, 147u8, 180u8, 121u8, 52u8, 45u8, 205u8, 87u8, 32u8, 87u8, 7u8, 134u8, 168u8, 1u8, 159u8, 191u8, 246u8, 90u8, 245u8, 80u8, 172u8, 185u8, 254u8, 59u8, 37u8, 204u8, 162u8, ], ) } #[doc = "Start the process of destroying a fungible asset class."] #[doc = ""] #[doc = "`start_destroy` is the first in a series of extrinsics that should be called, to allow"] #[doc = "destruction of an asset class."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin` or must be `Signed` by the asset's `owner`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be destroyed. This must identify an existing"] #[doc = " asset."] #[doc = ""] #[doc = "The asset class must be frozen before calling `start_destroy`."] pub fn start_destroy( &self, id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "start_destroy", StartDestroy { id }, [ 83u8, 116u8, 245u8, 108u8, 180u8, 253u8, 0u8, 109u8, 9u8, 206u8, 70u8, 95u8, 36u8, 80u8, 86u8, 186u8, 191u8, 161u8, 227u8, 156u8, 162u8, 102u8, 82u8, 239u8, 124u8, 162u8, 128u8, 121u8, 183u8, 120u8, 214u8, 136u8, ], ) } #[doc = "Destroy all accounts associated with a given asset."] #[doc = ""] #[doc = "`destroy_accounts` should only be called after `start_destroy` has been called, and the"] #[doc = "asset is in a `Destroying` state."] #[doc = ""] #[doc = "Due to weight restrictions, this function may need to be called multiple times to fully"] #[doc = "destroy all accounts. It will destroy `RemoveItemsLimit` accounts at a time."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be destroyed. This must identify an existing"] #[doc = " asset."] #[doc = ""] #[doc = "Each call emits the `Event::DestroyedAccounts` event."] pub fn destroy_accounts( &self, id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "destroy_accounts", DestroyAccounts { id }, [ 35u8, 134u8, 147u8, 165u8, 201u8, 250u8, 221u8, 158u8, 216u8, 147u8, 218u8, 79u8, 235u8, 188u8, 10u8, 101u8, 22u8, 48u8, 1u8, 192u8, 176u8, 84u8, 111u8, 244u8, 99u8, 92u8, 254u8, 49u8, 156u8, 24u8, 209u8, 180u8, ], ) } #[doc = "Destroy all approvals associated with a given asset up to the max (T::RemoveItemsLimit)."] #[doc = ""] #[doc = "`destroy_approvals` should only be called after `start_destroy` has been called, and the"] #[doc = "asset is in a `Destroying` state."] #[doc = ""] #[doc = "Due to weight restrictions, this function may need to be called multiple times to fully"] #[doc = "destroy all approvals. It will destroy `RemoveItemsLimit` approvals at a time."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be destroyed. This must identify an existing"] #[doc = " asset."] #[doc = ""] #[doc = "Each call emits the `Event::DestroyedApprovals` event."] pub fn destroy_approvals( &self, id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "destroy_approvals", DestroyApprovals { id }, [ 138u8, 31u8, 250u8, 93u8, 156u8, 239u8, 19u8, 43u8, 244u8, 208u8, 159u8, 223u8, 143u8, 253u8, 235u8, 130u8, 159u8, 117u8, 15u8, 79u8, 1u8, 205u8, 153u8, 36u8, 38u8, 23u8, 38u8, 0u8, 193u8, 104u8, 140u8, 225u8, ], ) } #[doc = "Complete destroying asset and unreserve currency."] #[doc = ""] #[doc = "`finish_destroy` should only be called after `start_destroy` has been called, and the"] #[doc = "asset is in a `Destroying` state. All accounts or approvals should be destroyed before"] #[doc = "hand."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be destroyed. This must identify an existing"] #[doc = " asset."] #[doc = ""] #[doc = "Each successful call emits the `Event::Destroyed` event."] pub fn finish_destroy( &self, id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "finish_destroy", FinishDestroy { id }, [ 215u8, 16u8, 107u8, 60u8, 181u8, 1u8, 238u8, 172u8, 36u8, 54u8, 187u8, 26u8, 159u8, 224u8, 161u8, 8u8, 115u8, 183u8, 132u8, 121u8, 42u8, 165u8, 7u8, 193u8, 208u8, 124u8, 45u8, 158u8, 100u8, 57u8, 117u8, 209u8, ], ) } #[doc = "Mint assets of a particular class."] #[doc = ""] #[doc = "The origin must be Signed and the sender must be the Issuer of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to have some amount minted."] #[doc = "- `beneficiary`: The account to be credited with the minted assets."] #[doc = "- `amount`: The amount of the asset to be minted."] #[doc = ""] #[doc = "Emits `Issued` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: Pre-existing balance of `beneficiary`; Account pre-existence of `beneficiary`."] pub fn mint( &self, id: ::core::primitive::u32, beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, amount: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "mint", Mint { id, beneficiary, amount, }, [ 21u8, 30u8, 124u8, 32u8, 105u8, 231u8, 137u8, 139u8, 28u8, 252u8, 232u8, 138u8, 197u8, 0u8, 109u8, 156u8, 102u8, 83u8, 51u8, 128u8, 246u8, 186u8, 249u8, 144u8, 133u8, 127u8, 241u8, 152u8, 201u8, 50u8, 41u8, 105u8, ], ) } #[doc = "Reduce the balance of `who` by as much as possible up to `amount` assets of `id`."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Manager of the asset `id`."] #[doc = ""] #[doc = "Bails with `NoAccount` if the `who` is already dead."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to have some amount burned."] #[doc = "- `who`: The account to be debited from."] #[doc = "- `amount`: The maximum amount by which `who`'s balance should be reduced."] #[doc = ""] #[doc = "Emits `Burned` with the actual amount burned. If this takes the balance to below the"] #[doc = "minimum for the asset, then the amount burned is increased to take it to zero."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: Post-existence of `who`; Pre & post Zombie-status of `who`."] pub fn burn( &self, id: ::core::primitive::u32, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, amount: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "burn", Burn { id, who, amount }, [ 104u8, 94u8, 68u8, 117u8, 145u8, 209u8, 149u8, 156u8, 131u8, 137u8, 137u8, 93u8, 114u8, 237u8, 75u8, 56u8, 77u8, 65u8, 18u8, 71u8, 19u8, 187u8, 76u8, 145u8, 24u8, 128u8, 62u8, 234u8, 200u8, 247u8, 196u8, 45u8, ], ) } #[doc = "Move some assets from the sender account to another."] #[doc = ""] #[doc = "Origin must be Signed."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to have some amount transferred."] #[doc = "- `target`: The account to be credited."] #[doc = "- `amount`: The amount by which the sender's balance of assets should be reduced and"] #[doc = "`target`'s balance increased. The amount actually transferred may be slightly greater in"] #[doc = "the case that the transfer would otherwise take the sender balance above zero but below"] #[doc = "the minimum balance. Must be greater than zero."] #[doc = ""] #[doc = "Emits `Transferred` with the actual amount transferred. If this takes the source balance"] #[doc = "to below the minimum for the asset, then the amount transferred is increased to take it"] #[doc = "to zero."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: Pre-existence of `target`; Post-existence of sender; Account pre-existence of"] #[doc = "`target`."] pub fn transfer( &self, id: ::core::primitive::u32, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, amount: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "transfer", Transfer { id, target, amount }, [ 132u8, 120u8, 134u8, 8u8, 238u8, 66u8, 45u8, 83u8, 151u8, 8u8, 118u8, 62u8, 2u8, 163u8, 213u8, 255u8, 42u8, 211u8, 125u8, 21u8, 150u8, 117u8, 177u8, 21u8, 105u8, 61u8, 3u8, 2u8, 30u8, 70u8, 65u8, 145u8, ], ) } #[doc = "Move some assets from the sender account to another, keeping the sender account alive."] #[doc = ""] #[doc = "Origin must be Signed."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to have some amount transferred."] #[doc = "- `target`: The account to be credited."] #[doc = "- `amount`: The amount by which the sender's balance of assets should be reduced and"] #[doc = "`target`'s balance increased. The amount actually transferred may be slightly greater in"] #[doc = "the case that the transfer would otherwise take the sender balance above zero but below"] #[doc = "the minimum balance. Must be greater than zero."] #[doc = ""] #[doc = "Emits `Transferred` with the actual amount transferred. If this takes the source balance"] #[doc = "to below the minimum for the asset, then the amount transferred is increased to take it"] #[doc = "to zero."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: Pre-existence of `target`; Post-existence of sender; Account pre-existence of"] #[doc = "`target`."] pub fn transfer_keep_alive( &self, id: ::core::primitive::u32, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, amount: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "transfer_keep_alive", TransferKeepAlive { id, target, amount }, [ 9u8, 46u8, 251u8, 191u8, 91u8, 192u8, 119u8, 203u8, 147u8, 84u8, 76u8, 27u8, 237u8, 174u8, 67u8, 249u8, 185u8, 199u8, 240u8, 122u8, 160u8, 111u8, 245u8, 247u8, 241u8, 197u8, 238u8, 253u8, 75u8, 216u8, 41u8, 148u8, ], ) } #[doc = "Move some assets from one account to another."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Admin of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to have some amount transferred."] #[doc = "- `source`: The account to be debited."] #[doc = "- `dest`: The account to be credited."] #[doc = "- `amount`: The amount by which the `source`'s balance of assets should be reduced and"] #[doc = "`dest`'s balance increased. The amount actually transferred may be slightly greater in"] #[doc = "the case that the transfer would otherwise take the `source` balance above zero but"] #[doc = "below the minimum balance. Must be greater than zero."] #[doc = ""] #[doc = "Emits `Transferred` with the actual amount transferred. If this takes the source balance"] #[doc = "to below the minimum for the asset, then the amount transferred is increased to take it"] #[doc = "to zero."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: Pre-existence of `dest`; Post-existence of `source`; Account pre-existence of"] #[doc = "`dest`."] pub fn force_transfer( &self, id: ::core::primitive::u32, source: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, amount: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "force_transfer", ForceTransfer { id, source, dest, amount, }, [ 253u8, 100u8, 109u8, 66u8, 153u8, 140u8, 39u8, 85u8, 19u8, 199u8, 68u8, 6u8, 124u8, 200u8, 250u8, 142u8, 104u8, 55u8, 190u8, 25u8, 117u8, 180u8, 201u8, 245u8, 153u8, 192u8, 240u8, 5u8, 176u8, 142u8, 106u8, 92u8, ], ) } #[doc = "Disallow further unprivileged transfers from an account."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be frozen."] #[doc = "- `who`: The account to be frozen."] #[doc = ""] #[doc = "Emits `Frozen`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn freeze( &self, id: ::core::primitive::u32, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "freeze", Freeze { id, who }, [ 191u8, 155u8, 214u8, 95u8, 125u8, 58u8, 207u8, 76u8, 99u8, 15u8, 102u8, 189u8, 26u8, 232u8, 9u8, 73u8, 231u8, 114u8, 199u8, 129u8, 110u8, 84u8, 22u8, 114u8, 108u8, 57u8, 83u8, 246u8, 92u8, 0u8, 127u8, 53u8, ], ) } #[doc = "Allow unprivileged transfers from an account again."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Admin of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be frozen."] #[doc = "- `who`: The account to be unfrozen."] #[doc = ""] #[doc = "Emits `Thawed`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn thaw( &self, id: ::core::primitive::u32, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "thaw", Thaw { id, who }, [ 52u8, 37u8, 227u8, 9u8, 177u8, 120u8, 93u8, 129u8, 81u8, 35u8, 107u8, 22u8, 80u8, 58u8, 3u8, 98u8, 211u8, 65u8, 49u8, 107u8, 184u8, 102u8, 185u8, 84u8, 160u8, 73u8, 12u8, 242u8, 203u8, 233u8, 79u8, 117u8, ], ) } #[doc = "Disallow further unprivileged transfers for the asset class."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be frozen."] #[doc = ""] #[doc = "Emits `Frozen`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn freeze_asset( &self, id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "freeze_asset", FreezeAsset { id }, [ 208u8, 101u8, 0u8, 73u8, 41u8, 192u8, 227u8, 44u8, 189u8, 231u8, 40u8, 124u8, 189u8, 147u8, 136u8, 210u8, 76u8, 32u8, 249u8, 183u8, 68u8, 58u8, 150u8, 136u8, 192u8, 47u8, 173u8, 178u8, 225u8, 84u8, 110u8, 1u8, ], ) } #[doc = "Allow unprivileged transfers for the asset again."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Admin of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be thawed."] #[doc = ""] #[doc = "Emits `Thawed`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn thaw_asset( &self, id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "thaw_asset", ThawAsset { id }, [ 18u8, 198u8, 141u8, 158u8, 182u8, 167u8, 160u8, 227u8, 20u8, 74u8, 80u8, 164u8, 89u8, 46u8, 168u8, 139u8, 251u8, 83u8, 155u8, 91u8, 91u8, 46u8, 205u8, 55u8, 171u8, 175u8, 167u8, 188u8, 116u8, 155u8, 79u8, 117u8, ], ) } #[doc = "Change the Owner of an asset."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `owner`: The new Owner of this asset."] #[doc = ""] #[doc = "Emits `OwnerChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn transfer_ownership( &self, id: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "transfer_ownership", TransferOwnership { id, owner }, [ 170u8, 94u8, 202u8, 42u8, 41u8, 156u8, 250u8, 63u8, 113u8, 110u8, 166u8, 129u8, 90u8, 233u8, 35u8, 87u8, 123u8, 172u8, 65u8, 108u8, 170u8, 237u8, 252u8, 70u8, 186u8, 12u8, 58u8, 6u8, 173u8, 87u8, 161u8, 211u8, ], ) } #[doc = "Change the Issuer, Admin and Freezer of an asset."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be frozen."] #[doc = "- `issuer`: The new Issuer of this asset."] #[doc = "- `admin`: The new Admin of this asset."] #[doc = "- `freezer`: The new Freezer of this asset."] #[doc = ""] #[doc = "Emits `TeamChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn set_team( &self, id: ::core::primitive::u32, issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "set_team", SetTeam { id, issuer, admin, freezer, }, [ 30u8, 60u8, 182u8, 252u8, 64u8, 97u8, 6u8, 80u8, 159u8, 204u8, 14u8, 227u8, 54u8, 20u8, 172u8, 100u8, 77u8, 59u8, 164u8, 247u8, 122u8, 39u8, 129u8, 106u8, 87u8, 82u8, 77u8, 165u8, 215u8, 232u8, 159u8, 29u8, ], ) } #[doc = "Set the metadata for an asset."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the asset `id`."] #[doc = ""] #[doc = "Funds of sender are reserved according to the formula:"] #[doc = "`MetadataDepositBase + MetadataDepositPerByte * (name.len + symbol.len)` taking into"] #[doc = "account any already reserved funds."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to update."] #[doc = "- `name`: The user friendly name of this asset. Limited in length by `StringLimit`."] #[doc = "- `symbol`: The exchange symbol for this asset. Limited in length by `StringLimit`."] #[doc = "- `decimals`: The number of decimals this asset uses to represent one unit."] #[doc = ""] #[doc = "Emits `MetadataSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn set_metadata( &self, id: ::core::primitive::u32, name: ::std::vec::Vec<::core::primitive::u8>, symbol: ::std::vec::Vec<::core::primitive::u8>, decimals: ::core::primitive::u8, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "set_metadata", SetMetadata { id, name, symbol, decimals, }, [ 15u8, 184u8, 50u8, 46u8, 164u8, 27u8, 105u8, 186u8, 35u8, 115u8, 194u8, 247u8, 74u8, 252u8, 139u8, 242u8, 108u8, 221u8, 122u8, 15u8, 139u8, 74u8, 123u8, 17u8, 192u8, 138u8, 182u8, 163u8, 77u8, 7u8, 124u8, 18u8, ], ) } #[doc = "Clear the metadata for an asset."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the asset `id`."] #[doc = ""] #[doc = "Any deposit is freed for the asset owner."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to clear."] #[doc = ""] #[doc = "Emits `MetadataCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn clear_metadata( &self, id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "clear_metadata", ClearMetadata { id }, [ 192u8, 41u8, 71u8, 183u8, 13u8, 128u8, 244u8, 255u8, 175u8, 36u8, 99u8, 175u8, 15u8, 129u8, 228u8, 76u8, 107u8, 214u8, 166u8, 116u8, 244u8, 139u8, 60u8, 31u8, 123u8, 61u8, 203u8, 59u8, 213u8, 146u8, 116u8, 126u8, ], ) } #[doc = "Force the metadata for an asset to some value."] #[doc = ""] #[doc = "Origin must be ForceOrigin."] #[doc = ""] #[doc = "Any deposit is left alone."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to update."] #[doc = "- `name`: The user friendly name of this asset. Limited in length by `StringLimit`."] #[doc = "- `symbol`: The exchange symbol for this asset. Limited in length by `StringLimit`."] #[doc = "- `decimals`: The number of decimals this asset uses to represent one unit."] #[doc = ""] #[doc = "Emits `MetadataSet`."] #[doc = ""] #[doc = "Weight: `O(N + S)` where N and S are the length of the name and symbol respectively."] pub fn force_set_metadata( &self, id: ::core::primitive::u32, name: ::std::vec::Vec<::core::primitive::u8>, symbol: ::std::vec::Vec<::core::primitive::u8>, decimals: ::core::primitive::u8, is_frozen: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "force_set_metadata", ForceSetMetadata { id, name, symbol, decimals, is_frozen, }, [ 7u8, 30u8, 55u8, 233u8, 217u8, 113u8, 196u8, 21u8, 29u8, 122u8, 168u8, 225u8, 63u8, 104u8, 57u8, 78u8, 76u8, 145u8, 121u8, 118u8, 91u8, 149u8, 87u8, 26u8, 26u8, 125u8, 44u8, 241u8, 143u8, 138u8, 144u8, 8u8, ], ) } #[doc = "Clear the metadata for an asset."] #[doc = ""] #[doc = "Origin must be ForceOrigin."] #[doc = ""] #[doc = "Any deposit is returned."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to clear."] #[doc = ""] #[doc = "Emits `MetadataCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn force_clear_metadata( &self, id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "force_clear_metadata", ForceClearMetadata { id }, [ 71u8, 191u8, 101u8, 72u8, 188u8, 223u8, 215u8, 187u8, 200u8, 206u8, 3u8, 42u8, 4u8, 62u8, 117u8, 106u8, 26u8, 2u8, 68u8, 202u8, 162u8, 142u8, 172u8, 123u8, 48u8, 196u8, 247u8, 89u8, 147u8, 75u8, 84u8, 109u8, ], ) } #[doc = "Alter the attributes of a given asset."] #[doc = ""] #[doc = "Origin must be `ForceOrigin`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `owner`: The new Owner of this asset."] #[doc = "- `issuer`: The new Issuer of this asset."] #[doc = "- `admin`: The new Admin of this asset."] #[doc = "- `freezer`: The new Freezer of this asset."] #[doc = "- `min_balance`: The minimum balance of this new asset that any single account must"] #[doc = "have. If an account's balance is reduced below this, then it collapses to zero."] #[doc = "- `is_sufficient`: Whether a non-zero balance of this asset is deposit of sufficient"] #[doc = "value to account for the state bloat associated with its balance storage. If set to"] #[doc = "`true`, then non-zero balances may be stored without a `consumer` reference (and thus"] #[doc = "an ED in the Balances pallet or whatever else is used to control user-account state"] #[doc = "growth)."] #[doc = "- `is_frozen`: Whether this asset class is frozen except for permissioned/admin"] #[doc = "instructions."] #[doc = ""] #[doc = "Emits `AssetStatusChanged` with the identity of the asset."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn force_asset_status( &self, id: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, min_balance: ::core::primitive::u128, is_sufficient: ::core::primitive::bool, is_frozen: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "force_asset_status", ForceAssetStatus { id, owner, issuer, admin, freezer, min_balance, is_sufficient, is_frozen, }, [ 46u8, 229u8, 189u8, 83u8, 196u8, 180u8, 79u8, 77u8, 71u8, 147u8, 77u8, 243u8, 99u8, 3u8, 205u8, 171u8, 129u8, 25u8, 60u8, 10u8, 162u8, 50u8, 205u8, 231u8, 184u8, 75u8, 42u8, 230u8, 48u8, 194u8, 236u8, 71u8, ], ) } #[doc = "Approve an amount of asset for transfer by a delegated third-party account."] #[doc = ""] #[doc = "Origin must be Signed."] #[doc = ""] #[doc = "Ensures that `ApprovalDeposit` worth of `Currency` is reserved from signing account"] #[doc = "for the purpose of holding the approval. If some non-zero amount of assets is already"] #[doc = "approved from signing account to `delegate`, then it is topped up or unreserved to"] #[doc = "meet the right value."] #[doc = ""] #[doc = "NOTE: The signing account does not need to own `amount` of assets at the point of"] #[doc = "making this call."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `delegate`: The account to delegate permission to transfer asset."] #[doc = "- `amount`: The amount of asset that may be transferred by `delegate`. If there is"] #[doc = "already an approval in place, then this acts additively."] #[doc = ""] #[doc = "Emits `ApprovedTransfer` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn approve_transfer( &self, id: ::core::primitive::u32, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, amount: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "approve_transfer", ApproveTransfer { id, delegate, amount, }, [ 85u8, 79u8, 216u8, 233u8, 163u8, 169u8, 226u8, 111u8, 10u8, 110u8, 33u8, 239u8, 248u8, 222u8, 84u8, 160u8, 80u8, 164u8, 29u8, 88u8, 164u8, 252u8, 238u8, 212u8, 9u8, 230u8, 201u8, 166u8, 192u8, 225u8, 94u8, 13u8, ], ) } #[doc = "Cancel all of some asset approved for delegated transfer by a third-party account."] #[doc = ""] #[doc = "Origin must be Signed and there must be an approval in place between signer and"] #[doc = "`delegate`."] #[doc = ""] #[doc = "Unreserves any deposit previously reserved by `approve_transfer` for the approval."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `delegate`: The account delegated permission to transfer asset."] #[doc = ""] #[doc = "Emits `ApprovalCancelled` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn cancel_approval( &self, id: ::core::primitive::u32, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "cancel_approval", CancelApproval { id, delegate }, [ 120u8, 10u8, 77u8, 128u8, 1u8, 232u8, 42u8, 2u8, 87u8, 7u8, 217u8, 51u8, 172u8, 13u8, 136u8, 176u8, 153u8, 128u8, 196u8, 3u8, 190u8, 139u8, 219u8, 24u8, 35u8, 51u8, 241u8, 87u8, 67u8, 49u8, 181u8, 203u8, ], ) } #[doc = "Cancel all of some asset approved for delegated transfer by a third-party account."] #[doc = ""] #[doc = "Origin must be either ForceOrigin or Signed origin with the signer being the Admin"] #[doc = "account of the asset `id`."] #[doc = ""] #[doc = "Unreserves any deposit previously reserved by `approve_transfer` for the approval."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `delegate`: The account delegated permission to transfer asset."] #[doc = ""] #[doc = "Emits `ApprovalCancelled` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn force_cancel_approval( &self, id: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "force_cancel_approval", ForceCancelApproval { id, owner, delegate, }, [ 192u8, 196u8, 91u8, 219u8, 20u8, 150u8, 220u8, 79u8, 81u8, 151u8, 104u8, 109u8, 21u8, 87u8, 158u8, 169u8, 208u8, 4u8, 241u8, 109u8, 230u8, 166u8, 237u8, 164u8, 90u8, 54u8, 14u8, 51u8, 84u8, 239u8, 178u8, 202u8, ], ) } #[doc = "Transfer some asset balance from a previously delegated account to some third-party"] #[doc = "account."] #[doc = ""] #[doc = "Origin must be Signed and there must be an approval in place by the `owner` to the"] #[doc = "signer."] #[doc = ""] #[doc = "If the entire amount approved for transfer is transferred, then any deposit previously"] #[doc = "reserved by `approve_transfer` is unreserved."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `owner`: The account which previously approved for a transfer of at least `amount` and"] #[doc = "from which the asset balance will be withdrawn."] #[doc = "- `destination`: The account to which the asset balance of `amount` will be transferred."] #[doc = "- `amount`: The amount of assets to transfer."] #[doc = ""] #[doc = "Emits `TransferredApproved` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn transfer_approved( &self, id: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, destination: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, amount: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "transfer_approved", TransferApproved { id, owner, destination, amount, }, [ 151u8, 228u8, 207u8, 182u8, 179u8, 212u8, 208u8, 3u8, 207u8, 181u8, 193u8, 164u8, 74u8, 160u8, 81u8, 191u8, 42u8, 227u8, 56u8, 238u8, 50u8, 75u8, 8u8, 50u8, 131u8, 83u8, 152u8, 20u8, 141u8, 39u8, 29u8, 205u8, ], ) } #[doc = "Create an asset account for non-provider assets."] #[doc = ""] #[doc = "A deposit will be taken from the signer account."] #[doc = ""] #[doc = "- `origin`: Must be Signed; the signer account must have sufficient funds for a deposit"] #[doc = " to be taken."] #[doc = "- `id`: The identifier of the asset for the account to be created."] #[doc = ""] #[doc = "Emits `Touched` event when successful."] pub fn touch( &self, id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "touch", Touch { id }, [ 114u8, 149u8, 179u8, 168u8, 115u8, 117u8, 32u8, 50u8, 39u8, 77u8, 148u8, 238u8, 123u8, 96u8, 193u8, 174u8, 113u8, 141u8, 34u8, 228u8, 228u8, 214u8, 71u8, 111u8, 55u8, 126u8, 103u8, 181u8, 133u8, 77u8, 116u8, 105u8, ], ) } #[doc = "Return the deposit (if any) of an asset account."] #[doc = ""] #[doc = "The origin must be Signed."] #[doc = ""] #[doc = "- `id`: The identifier of the asset for the account to be created."] #[doc = "- `allow_burn`: If `true` then assets may be destroyed in order to complete the refund."] #[doc = ""] #[doc = "Emits `Refunded` event when successful."] pub fn refund( &self, id: ::core::primitive::u32, allow_burn: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Assets", "refund", Refund { id, allow_burn }, [ 20u8, 139u8, 248u8, 67u8, 123u8, 221u8, 7u8, 106u8, 239u8, 156u8, 68u8, 59u8, 81u8, 184u8, 47u8, 188u8, 195u8, 227u8, 75u8, 168u8, 126u8, 176u8, 91u8, 187u8, 30u8, 34u8, 24u8, 223u8, 108u8, 101u8, 88u8, 83u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_assets::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some asset class was created."] pub struct Created { pub asset_id: ::core::primitive::u32, pub creator: ::subxt::utils::AccountId32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Created { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "Created"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some assets were issued."] pub struct Issued { pub asset_id: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Issued { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "Issued"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some assets were transferred."] pub struct Transferred { pub asset_id: ::core::primitive::u32, pub from: ::subxt::utils::AccountId32, pub to: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Transferred { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "Transferred"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some assets were destroyed."] pub struct Burned { pub asset_id: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, pub balance: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Burned { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "Burned"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The management team changed."] pub struct TeamChanged { pub asset_id: ::core::primitive::u32, pub issuer: ::subxt::utils::AccountId32, pub admin: ::subxt::utils::AccountId32, pub freezer: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for TeamChanged { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "TeamChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The owner changed."] pub struct OwnerChanged { pub asset_id: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for OwnerChanged { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "OwnerChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some account `who` was frozen."] pub struct Frozen { pub asset_id: ::core::primitive::u32, pub who: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Frozen { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "Frozen"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some account `who` was thawed."] pub struct Thawed { pub asset_id: ::core::primitive::u32, pub who: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Thawed { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "Thawed"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some asset `asset_id` was frozen."] pub struct AssetFrozen { pub asset_id: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for AssetFrozen { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "AssetFrozen"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some asset `asset_id` was thawed."] pub struct AssetThawed { pub asset_id: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for AssetThawed { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "AssetThawed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Accounts were destroyed for given asset."] pub struct AccountsDestroyed { pub asset_id: ::core::primitive::u32, pub accounts_destroyed: ::core::primitive::u32, pub accounts_remaining: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for AccountsDestroyed { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "AccountsDestroyed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Approvals were destroyed for given asset."] pub struct ApprovalsDestroyed { pub asset_id: ::core::primitive::u32, pub approvals_destroyed: ::core::primitive::u32, pub approvals_remaining: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ApprovalsDestroyed { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "ApprovalsDestroyed"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An asset class is in the process of being destroyed."] pub struct DestructionStarted { pub asset_id: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for DestructionStarted { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "DestructionStarted"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An asset class was destroyed."] pub struct Destroyed { pub asset_id: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Destroyed { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "Destroyed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some asset class was force-created."] pub struct ForceCreated { pub asset_id: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for ForceCreated { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "ForceCreated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "New metadata has been set for an asset."] pub struct MetadataSet { pub asset_id: ::core::primitive::u32, pub name: ::std::vec::Vec<::core::primitive::u8>, pub symbol: ::std::vec::Vec<::core::primitive::u8>, pub decimals: ::core::primitive::u8, pub is_frozen: ::core::primitive::bool, } impl ::subxt::events::StaticEvent for MetadataSet { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "MetadataSet"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Metadata has been cleared for an asset."] pub struct MetadataCleared { pub asset_id: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for MetadataCleared { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "MetadataCleared"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "(Additional) funds have been approved for transfer to a destination account."] pub struct ApprovedTransfer { pub asset_id: ::core::primitive::u32, pub source: ::subxt::utils::AccountId32, pub delegate: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for ApprovedTransfer { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "ApprovedTransfer"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An approval for account `delegate` was cancelled by `owner`."] pub struct ApprovalCancelled { pub asset_id: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, pub delegate: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for ApprovalCancelled { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "ApprovalCancelled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `amount` was transferred in its entirety from `owner` to `destination` by"] #[doc = "the approved `delegate`."] pub struct TransferredApproved { pub asset_id: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, pub delegate: ::subxt::utils::AccountId32, pub destination: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for TransferredApproved { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "TransferredApproved"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An asset has had its attributes changed by the `Force` origin."] pub struct AssetStatusChanged { pub asset_id: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for AssetStatusChanged { const PALLET: &'static str = "Assets"; const EVENT: &'static str = "AssetStatusChanged"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Details of an asset."] pub fn asset( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_assets::types::AssetDetails< ::core::primitive::u128, ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Assets", "Asset", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 251u8, 148u8, 82u8, 150u8, 66u8, 26u8, 46u8, 186u8, 60u8, 59u8, 239u8, 190u8, 102u8, 156u8, 113u8, 175u8, 1u8, 117u8, 147u8, 236u8, 114u8, 88u8, 49u8, 210u8, 165u8, 162u8, 201u8, 230u8, 147u8, 141u8, 174u8, 221u8, ], ) } #[doc = " Details of an asset."] pub fn asset_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_assets::types::AssetDetails< ::core::primitive::u128, ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Assets", "Asset", Vec::new(), [ 251u8, 148u8, 82u8, 150u8, 66u8, 26u8, 46u8, 186u8, 60u8, 59u8, 239u8, 190u8, 102u8, 156u8, 113u8, 175u8, 1u8, 117u8, 147u8, 236u8, 114u8, 88u8, 49u8, 210u8, 165u8, 162u8, 201u8, 230u8, 147u8, 141u8, 174u8, 221u8, ], ) } #[doc = " The holdings of a specific account for a specific asset."] pub fn account( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_assets::types::AssetAccount< ::core::primitive::u128, ::core::primitive::u128, (), >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Assets" , "Account" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [109u8 , 245u8 , 93u8 , 133u8 , 206u8 , 68u8 , 94u8 , 233u8 , 29u8 , 113u8 , 245u8 , 201u8 , 241u8 , 2u8 , 200u8 , 179u8 , 37u8 , 199u8 , 128u8 , 243u8 , 49u8 , 50u8 , 122u8 , 139u8 , 135u8 , 48u8 , 201u8 , 109u8 , 195u8 , 38u8 , 205u8 , 32u8 ,]) } #[doc = " The holdings of a specific account for a specific asset."] pub fn account_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_assets::types::AssetAccount< ::core::primitive::u128, ::core::primitive::u128, (), >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Assets", "Account", Vec::new(), [ 109u8, 245u8, 93u8, 133u8, 206u8, 68u8, 94u8, 233u8, 29u8, 113u8, 245u8, 201u8, 241u8, 2u8, 200u8, 179u8, 37u8, 199u8, 128u8, 243u8, 49u8, 50u8, 122u8, 139u8, 135u8, 48u8, 201u8, 109u8, 195u8, 38u8, 205u8, 32u8, ], ) } #[doc = " Approved balance transfers. First balance is the amount approved for transfer. Second"] #[doc = " is the amount of `T::Currency` reserved for storing this."] #[doc = " First key is the asset ID, second key is the owner and third key is the delegate."] pub fn approvals( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, _2: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_assets::types::Approval< ::core::primitive::u128, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Assets" , "Approvals" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_2 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [210u8 , 147u8 , 203u8 , 49u8 , 232u8 , 215u8 , 116u8 , 154u8 , 43u8 , 154u8 , 69u8 , 159u8 , 241u8 , 28u8 , 238u8 , 101u8 , 108u8 , 162u8 , 242u8 , 121u8 , 138u8 , 164u8 , 217u8 , 243u8 , 72u8 , 173u8 , 75u8 , 109u8 , 194u8 , 9u8 , 196u8 , 163u8 ,]) } #[doc = " Approved balance transfers. First balance is the amount approved for transfer. Second"] #[doc = " is the amount of `T::Currency` reserved for storing this."] #[doc = " First key is the asset ID, second key is the owner and third key is the delegate."] pub fn approvals_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_assets::types::Approval< ::core::primitive::u128, ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Assets", "Approvals", Vec::new(), [ 210u8, 147u8, 203u8, 49u8, 232u8, 215u8, 116u8, 154u8, 43u8, 154u8, 69u8, 159u8, 241u8, 28u8, 238u8, 101u8, 108u8, 162u8, 242u8, 121u8, 138u8, 164u8, 217u8, 243u8, 72u8, 173u8, 75u8, 109u8, 194u8, 9u8, 196u8, 163u8, ], ) } #[doc = " Metadata of an asset."] pub fn metadata( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_assets::types::AssetMetadata< ::core::primitive::u128, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Assets", "Metadata", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 80u8, 115u8, 155u8, 115u8, 136u8, 108u8, 82u8, 93u8, 65u8, 130u8, 143u8, 228u8, 170u8, 234u8, 182u8, 170u8, 229u8, 217u8, 168u8, 71u8, 81u8, 80u8, 16u8, 112u8, 209u8, 82u8, 8u8, 165u8, 80u8, 137u8, 58u8, 170u8, ], ) } #[doc = " Metadata of an asset."] pub fn metadata_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_assets::types::AssetMetadata< ::core::primitive::u128, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Assets", "Metadata", Vec::new(), [ 80u8, 115u8, 155u8, 115u8, 136u8, 108u8, 82u8, 93u8, 65u8, 130u8, 143u8, 228u8, 170u8, 234u8, 182u8, 170u8, 229u8, 217u8, 168u8, 71u8, 81u8, 80u8, 16u8, 112u8, 209u8, 82u8, 8u8, 165u8, 80u8, 137u8, 58u8, 170u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Max number of items to destroy per `destroy_accounts` and `destroy_approvals` call."] #[doc = ""] #[doc = " Must be configured to result in a weight that makes each call fit in a block."] pub fn remove_items_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Assets", "RemoveItemsLimit", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The basic amount of funds that must be reserved for an asset."] pub fn asset_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Assets", "AssetDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount of funds that must be reserved for a non-provider asset account to be"] #[doc = " maintained."] pub fn asset_account_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Assets", "AssetAccountDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The basic amount of funds that must be reserved when adding metadata to your asset."] pub fn metadata_deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Assets", "MetadataDepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The additional funds that must be reserved for the number of bytes you store in your"] #[doc = " metadata."] pub fn metadata_deposit_per_byte( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Assets", "MetadataDepositPerByte", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The amount of funds that must be reserved when creating a new approval."] pub fn approval_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Assets", "ApprovalDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The maximum length of a name or symbol stored on-chain."] pub fn string_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Assets", "StringLimit", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod mmr { use super::root_mod; use super::runtime_types; pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Latest MMR Root hash."] pub fn root_hash( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::H256>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Mmr", "RootHash", vec![], [ 182u8, 163u8, 37u8, 44u8, 2u8, 163u8, 57u8, 184u8, 97u8, 55u8, 1u8, 116u8, 55u8, 169u8, 23u8, 221u8, 182u8, 5u8, 174u8, 217u8, 111u8, 55u8, 180u8, 161u8, 69u8, 120u8, 212u8, 73u8, 2u8, 1u8, 39u8, 224u8, ], ) } #[doc = " Current size of the MMR (number of leaves)."] pub fn number_of_leaves( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u64>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Mmr", "NumberOfLeaves", vec![], [ 138u8, 124u8, 23u8, 186u8, 255u8, 231u8, 187u8, 122u8, 213u8, 160u8, 29u8, 24u8, 88u8, 98u8, 171u8, 36u8, 195u8, 216u8, 27u8, 190u8, 192u8, 152u8, 8u8, 13u8, 210u8, 232u8, 45u8, 184u8, 240u8, 255u8, 156u8, 204u8, ], ) } #[doc = " Hashes of the nodes in the MMR."] #[doc = ""] #[doc = " Note this collection only contains MMR peaks, the inner nodes (and leaves)"] #[doc = " are pruned and only stored in the Offchain DB."] pub fn nodes( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u64>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::H256>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Mmr", "Nodes", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 188u8, 148u8, 126u8, 226u8, 142u8, 91u8, 61u8, 52u8, 213u8, 36u8, 120u8, 232u8, 20u8, 11u8, 61u8, 1u8, 130u8, 155u8, 81u8, 34u8, 153u8, 149u8, 210u8, 232u8, 113u8, 242u8, 249u8, 8u8, 61u8, 51u8, 148u8, 98u8, ], ) } #[doc = " Hashes of the nodes in the MMR."] #[doc = ""] #[doc = " Note this collection only contains MMR peaks, the inner nodes (and leaves)"] #[doc = " are pruned and only stored in the Offchain DB."] pub fn nodes_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::H256>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Mmr", "Nodes", Vec::new(), [ 188u8, 148u8, 126u8, 226u8, 142u8, 91u8, 61u8, 52u8, 213u8, 36u8, 120u8, 232u8, 20u8, 11u8, 61u8, 1u8, 130u8, 155u8, 81u8, 34u8, 153u8, 149u8, 210u8, 232u8, 113u8, 242u8, 249u8, 8u8, 61u8, 51u8, 148u8, 98u8, ], ) } } } } pub mod lottery { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BuyTicket { pub call: ::std::boxed::Box, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetCalls { pub calls: ::std::vec::Vec, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct StartLottery { pub price: ::core::primitive::u128, pub length: ::core::primitive::u32, pub delay: ::core::primitive::u32, pub repeat: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct StopRepeat; pub struct TransactionApi; impl TransactionApi { #[doc = "Buy a ticket to enter the lottery."] #[doc = ""] #[doc = "This extrinsic acts as a passthrough function for `call`. In all"] #[doc = "situations where `call` alone would succeed, this extrinsic should"] #[doc = "succeed."] #[doc = ""] #[doc = "If `call` is successful, then we will attempt to purchase a ticket,"] #[doc = "which may fail silently. To detect success of a ticket purchase, you"] #[doc = "should listen for the `TicketBought` event."] #[doc = ""] #[doc = "This extrinsic must be called by a signed origin."] pub fn buy_ticket( &self, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Lottery", "buy_ticket", BuyTicket { call: ::std::boxed::Box::new(call), }, [ 58u8, 43u8, 142u8, 199u8, 19u8, 122u8, 57u8, 118u8, 21u8, 22u8, 168u8, 133u8, 161u8, 83u8, 30u8, 152u8, 46u8, 160u8, 119u8, 240u8, 126u8, 169u8, 188u8, 114u8, 233u8, 161u8, 187u8, 131u8, 150u8, 212u8, 9u8, 195u8, ], ) } #[doc = "Set calls in storage which can be used to purchase a lottery ticket."] #[doc = ""] #[doc = "This function only matters if you use the `ValidateCall` implementation"] #[doc = "provided by this pallet, which uses storage to determine the valid calls."] #[doc = ""] #[doc = "This extrinsic must be called by the Manager origin."] pub fn set_calls( &self, calls: ::std::vec::Vec< runtime_types::kitchensink_runtime::RuntimeCall, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Lottery", "set_calls", SetCalls { calls }, [ 21u8, 51u8, 23u8, 152u8, 104u8, 152u8, 150u8, 49u8, 234u8, 17u8, 151u8, 103u8, 37u8, 62u8, 234u8, 171u8, 208u8, 9u8, 19u8, 42u8, 93u8, 182u8, 102u8, 73u8, 54u8, 45u8, 68u8, 248u8, 211u8, 16u8, 122u8, 51u8, ], ) } #[doc = "Start a lottery using the provided configuration."] #[doc = ""] #[doc = "This extrinsic must be called by the `ManagerOrigin`."] #[doc = ""] #[doc = "Parameters:"] #[doc = ""] #[doc = "* `price`: The cost of a single ticket."] #[doc = "* `length`: How long the lottery should run for starting at the current block."] #[doc = "* `delay`: How long after the lottery end we should wait before picking a winner."] #[doc = "* `repeat`: If the lottery should repeat when completed."] pub fn start_lottery( &self, price: ::core::primitive::u128, length: ::core::primitive::u32, delay: ::core::primitive::u32, repeat: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Lottery", "start_lottery", StartLottery { price, length, delay, repeat, }, [ 4u8, 194u8, 105u8, 75u8, 63u8, 167u8, 224u8, 4u8, 163u8, 148u8, 96u8, 248u8, 21u8, 190u8, 168u8, 101u8, 207u8, 152u8, 169u8, 203u8, 180u8, 103u8, 137u8, 151u8, 166u8, 187u8, 232u8, 219u8, 22u8, 89u8, 206u8, 194u8, ], ) } #[doc = "If a lottery is repeating, you can use this to stop the repeat."] #[doc = "The lottery will continue to run to completion."] #[doc = ""] #[doc = "This extrinsic must be called by the `ManagerOrigin`."] pub fn stop_repeat(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Lottery", "stop_repeat", StopRepeat {}, [ 28u8, 43u8, 248u8, 131u8, 209u8, 84u8, 75u8, 42u8, 22u8, 180u8, 126u8, 235u8, 116u8, 241u8, 167u8, 161u8, 25u8, 0u8, 22u8, 207u8, 167u8, 191u8, 89u8, 180u8, 54u8, 25u8, 14u8, 35u8, 90u8, 244u8, 5u8, 241u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_lottery::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A lottery has been started!"] pub struct LotteryStarted; impl ::subxt::events::StaticEvent for LotteryStarted { const PALLET: &'static str = "Lottery"; const EVENT: &'static str = "LotteryStarted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new set of calls have been set!"] pub struct CallsUpdated; impl ::subxt::events::StaticEvent for CallsUpdated { const PALLET: &'static str = "Lottery"; const EVENT: &'static str = "CallsUpdated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A winner has been chosen!"] pub struct Winner { pub winner: ::subxt::utils::AccountId32, pub lottery_balance: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Winner { const PALLET: &'static str = "Lottery"; const EVENT: &'static str = "Winner"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A ticket has been bought!"] pub struct TicketBought { pub who: ::subxt::utils::AccountId32, pub call_index: (::core::primitive::u8, ::core::primitive::u8), } impl ::subxt::events::StaticEvent for TicketBought { const PALLET: &'static str = "Lottery"; const EVENT: &'static str = "TicketBought"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { pub fn lottery_index( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Lottery", "LotteryIndex", vec![], [ 79u8, 74u8, 246u8, 125u8, 89u8, 183u8, 60u8, 48u8, 34u8, 211u8, 236u8, 222u8, 23u8, 158u8, 184u8, 140u8, 200u8, 80u8, 232u8, 5u8, 240u8, 218u8, 70u8, 221u8, 219u8, 1u8, 3u8, 203u8, 77u8, 3u8, 128u8, 89u8, ], ) } #[doc = " The configuration for the current lottery."] pub fn lottery( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_lottery::LotteryConfig< ::core::primitive::u32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Lottery", "Lottery", vec![], [ 46u8, 51u8, 122u8, 129u8, 145u8, 2u8, 183u8, 42u8, 184u8, 167u8, 30u8, 73u8, 175u8, 49u8, 109u8, 166u8, 188u8, 151u8, 171u8, 8u8, 186u8, 208u8, 227u8, 19u8, 252u8, 141u8, 56u8, 89u8, 229u8, 139u8, 247u8, 117u8, ], ) } #[doc = " Users who have purchased a ticket. (Lottery Index, Tickets Purchased)"] pub fn participants( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u8, ::core::primitive::u8, )>, )>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Lottery", "Participants", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 129u8, 243u8, 95u8, 30u8, 228u8, 183u8, 238u8, 141u8, 77u8, 8u8, 166u8, 197u8, 168u8, 93u8, 27u8, 40u8, 38u8, 22u8, 188u8, 55u8, 58u8, 154u8, 122u8, 122u8, 76u8, 57u8, 183u8, 210u8, 254u8, 185u8, 239u8, 242u8, ], ) } #[doc = " Users who have purchased a ticket. (Lottery Index, Tickets Purchased)"] pub fn participants_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u8, ::core::primitive::u8, )>, )>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Lottery", "Participants", Vec::new(), [ 129u8, 243u8, 95u8, 30u8, 228u8, 183u8, 238u8, 141u8, 77u8, 8u8, 166u8, 197u8, 168u8, 93u8, 27u8, 40u8, 38u8, 22u8, 188u8, 55u8, 58u8, 154u8, 122u8, 122u8, 76u8, 57u8, 183u8, 210u8, 254u8, 185u8, 239u8, 242u8, ], ) } #[doc = " Total number of tickets sold."] pub fn tickets_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Lottery", "TicketsCount", vec![], [ 112u8, 164u8, 111u8, 40u8, 98u8, 247u8, 174u8, 117u8, 198u8, 56u8, 109u8, 205u8, 38u8, 175u8, 118u8, 75u8, 136u8, 86u8, 95u8, 200u8, 233u8, 199u8, 195u8, 198u8, 161u8, 64u8, 199u8, 141u8, 125u8, 42u8, 187u8, 40u8, ], ) } #[doc = " Each ticket's owner."] #[doc = ""] #[doc = " May have residual storage from previous lotteries. Use `TicketsCount` to see which ones"] #[doc = " are actually valid ticket mappings."] pub fn tickets( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Lottery", "Tickets", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 146u8, 73u8, 177u8, 170u8, 239u8, 27u8, 41u8, 142u8, 212u8, 251u8, 124u8, 174u8, 237u8, 255u8, 133u8, 237u8, 34u8, 249u8, 246u8, 3u8, 153u8, 156u8, 80u8, 244u8, 65u8, 26u8, 106u8, 234u8, 150u8, 75u8, 93u8, 175u8, ], ) } #[doc = " Each ticket's owner."] #[doc = ""] #[doc = " May have residual storage from previous lotteries. Use `TicketsCount` to see which ones"] #[doc = " are actually valid ticket mappings."] pub fn tickets_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Lottery", "Tickets", Vec::new(), [ 146u8, 73u8, 177u8, 170u8, 239u8, 27u8, 41u8, 142u8, 212u8, 251u8, 124u8, 174u8, 237u8, 255u8, 133u8, 237u8, 34u8, 249u8, 246u8, 3u8, 153u8, 156u8, 80u8, 244u8, 65u8, 26u8, 106u8, 234u8, 150u8, 75u8, 93u8, 175u8, ], ) } #[doc = " The calls stored in this pallet to be used in an active lottery if configured"] #[doc = " by `Config::ValidateCall`."] pub fn call_indices( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u8, ::core::primitive::u8, )>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Lottery", "CallIndices", vec![], [ 244u8, 89u8, 150u8, 164u8, 63u8, 13u8, 41u8, 8u8, 140u8, 211u8, 163u8, 176u8, 239u8, 120u8, 247u8, 160u8, 131u8, 116u8, 13u8, 152u8, 154u8, 1u8, 128u8, 128u8, 182u8, 246u8, 45u8, 106u8, 88u8, 6u8, 135u8, 158u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The Lottery's pallet id"] pub fn pallet_id( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_support::PalletId, >, > { ::subxt::constants::StaticConstantAddress::new( "Lottery", "PalletId", [ 139u8, 109u8, 228u8, 151u8, 252u8, 32u8, 130u8, 69u8, 112u8, 154u8, 174u8, 45u8, 83u8, 245u8, 51u8, 132u8, 173u8, 5u8, 186u8, 24u8, 243u8, 9u8, 12u8, 214u8, 80u8, 74u8, 69u8, 189u8, 30u8, 94u8, 22u8, 39u8, ], ) } #[doc = " The max number of calls available in a single lottery."] pub fn max_calls( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Lottery", "MaxCalls", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Number of time we should try to generate a random number that has no modulo bias."] #[doc = " The larger this number, the more potential computation is used for picking the winner,"] #[doc = " but also the more likely that the chosen winner is done fairly."] pub fn max_generate_random( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Lottery", "MaxGenerateRandom", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod nis { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PlaceBid { #[codec(compact)] pub amount: ::core::primitive::u128, pub duration: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RetractBid { #[codec(compact)] pub amount: ::core::primitive::u128, pub duration: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct FundDeficit; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ThawPrivate { #[codec(compact)] pub index: ::core::primitive::u32, pub maybe_proportion: ::core::option::Option< runtime_types::sp_arithmetic::per_things::Perquintill, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ThawCommunal { #[codec(compact)] pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Communify { #[codec(compact)] pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Privatize { #[codec(compact)] pub index: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Place a bid."] #[doc = ""] #[doc = "Origin must be Signed, and account must have at least `amount` in free balance."] #[doc = ""] #[doc = "- `amount`: The amount of the bid; these funds will be reserved, and if/when"] #[doc = " consolidated, removed. Must be at least `MinBid`."] #[doc = "- `duration`: The number of periods before which the newly consolidated bid may be"] #[doc = " thawed. Must be greater than 1 and no more than `QueueCount`."] #[doc = ""] #[doc = "Complexities:"] #[doc = "- `Queues[duration].len()` (just take max)."] pub fn place_bid( &self, amount: ::core::primitive::u128, duration: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nis", "place_bid", PlaceBid { amount, duration }, [ 197u8, 16u8, 24u8, 59u8, 72u8, 162u8, 72u8, 124u8, 149u8, 28u8, 208u8, 47u8, 208u8, 0u8, 110u8, 122u8, 32u8, 225u8, 29u8, 21u8, 144u8, 75u8, 138u8, 188u8, 213u8, 188u8, 34u8, 231u8, 52u8, 191u8, 210u8, 158u8, ], ) } #[doc = "Retract a previously placed bid."] #[doc = ""] #[doc = "Origin must be Signed, and the account should have previously issued a still-active bid"] #[doc = "of `amount` for `duration`."] #[doc = ""] #[doc = "- `amount`: The amount of the previous bid."] #[doc = "- `duration`: The duration of the previous bid."] pub fn retract_bid( &self, amount: ::core::primitive::u128, duration: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nis", "retract_bid", RetractBid { amount, duration }, [ 139u8, 141u8, 178u8, 24u8, 250u8, 206u8, 70u8, 51u8, 249u8, 82u8, 172u8, 68u8, 157u8, 50u8, 110u8, 233u8, 163u8, 46u8, 204u8, 54u8, 154u8, 20u8, 18u8, 205u8, 137u8, 95u8, 187u8, 74u8, 250u8, 161u8, 220u8, 22u8, ], ) } #[doc = "Ensure we have sufficient funding for all potential payouts."] #[doc = ""] #[doc = "- `origin`: Must be accepted by `FundOrigin`."] pub fn fund_deficit(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nis", "fund_deficit", FundDeficit {}, [ 70u8, 45u8, 215u8, 5u8, 225u8, 2u8, 127u8, 191u8, 36u8, 210u8, 1u8, 35u8, 22u8, 17u8, 187u8, 237u8, 241u8, 245u8, 168u8, 204u8, 112u8, 25u8, 55u8, 124u8, 12u8, 26u8, 149u8, 7u8, 26u8, 248u8, 190u8, 125u8, ], ) } #[doc = "Reduce or remove an outstanding receipt, placing the according proportion of funds into"] #[doc = "the account of the owner."] #[doc = ""] #[doc = "- `origin`: Must be Signed and the account must be the owner of the receipt `index` as"] #[doc = " well as any fungible counterpart."] #[doc = "- `index`: The index of the receipt."] #[doc = "- `portion`: If `Some`, then only the given portion of the receipt should be thawed. If"] #[doc = " `None`, then all of it should be."] pub fn thaw_private( &self, index: ::core::primitive::u32, maybe_proportion: ::core::option::Option< runtime_types::sp_arithmetic::per_things::Perquintill, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nis", "thaw_private", ThawPrivate { index, maybe_proportion, }, [ 18u8, 152u8, 64u8, 60u8, 106u8, 168u8, 52u8, 210u8, 254u8, 246u8, 221u8, 41u8, 216u8, 11u8, 38u8, 22u8, 163u8, 199u8, 94u8, 181u8, 171u8, 99u8, 113u8, 27u8, 73u8, 187u8, 255u8, 106u8, 241u8, 83u8, 102u8, 253u8, ], ) } #[doc = "Reduce or remove an outstanding receipt, placing the according proportion of funds into"] #[doc = "the account of the owner."] #[doc = ""] #[doc = "- `origin`: Must be Signed and the account must be the owner of the fungible counterpart"] #[doc = " for receipt `index`."] #[doc = "- `index`: The index of the receipt."] pub fn thaw_communal( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nis", "thaw_communal", ThawCommunal { index }, [ 125u8, 60u8, 128u8, 54u8, 205u8, 231u8, 236u8, 247u8, 232u8, 152u8, 121u8, 17u8, 87u8, 97u8, 235u8, 115u8, 111u8, 156u8, 181u8, 98u8, 240u8, 232u8, 54u8, 130u8, 58u8, 170u8, 118u8, 16u8, 33u8, 65u8, 23u8, 36u8, ], ) } #[doc = "Make a private receipt communal and create fungible counterparts for its owner."] pub fn communify( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nis", "communify", Communify { index }, [ 88u8, 164u8, 59u8, 88u8, 62u8, 109u8, 248u8, 93u8, 253u8, 219u8, 115u8, 13u8, 135u8, 248u8, 134u8, 154u8, 160u8, 50u8, 233u8, 34u8, 50u8, 186u8, 70u8, 81u8, 125u8, 222u8, 162u8, 150u8, 113u8, 203u8, 91u8, 50u8, ], ) } #[doc = "Make a communal receipt private and burn fungible counterparts from its owner."] pub fn privatize( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nis", "privatize", Privatize { index }, [ 145u8, 182u8, 44u8, 183u8, 91u8, 5u8, 217u8, 200u8, 111u8, 211u8, 139u8, 10u8, 143u8, 255u8, 10u8, 57u8, 145u8, 64u8, 18u8, 190u8, 199u8, 164u8, 177u8, 131u8, 7u8, 30u8, 13u8, 181u8, 59u8, 174u8, 88u8, 36u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_nis::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A bid was successfully placed."] pub struct BidPlaced { pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, pub duration: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for BidPlaced { const PALLET: &'static str = "Nis"; const EVENT: &'static str = "BidPlaced"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A bid was successfully removed (before being accepted)."] pub struct BidRetracted { pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, pub duration: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for BidRetracted { const PALLET: &'static str = "Nis"; const EVENT: &'static str = "BidRetracted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A bid was dropped from a queue because of another, more substantial, bid was present."] pub struct BidDropped { pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, pub duration: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for BidDropped { const PALLET: &'static str = "Nis"; const EVENT: &'static str = "BidDropped"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A bid was accepted. The balance may not be released until expiry."] pub struct Issued { pub index: ::core::primitive::u32, pub expiry: ::core::primitive::u32, pub who: ::subxt::utils::AccountId32, pub proportion: runtime_types::sp_arithmetic::per_things::Perquintill, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Issued { const PALLET: &'static str = "Nis"; const EVENT: &'static str = "Issued"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An receipt has been (at least partially) thawed."] pub struct Thawed { pub index: ::core::primitive::u32, pub who: ::subxt::utils::AccountId32, pub proportion: runtime_types::sp_arithmetic::per_things::Perquintill, pub amount: ::core::primitive::u128, pub dropped: ::core::primitive::bool, } impl ::subxt::events::StaticEvent for Thawed { const PALLET: &'static str = "Nis"; const EVENT: &'static str = "Thawed"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An automatic funding of the deficit was made."] pub struct Funded { pub deficit: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Funded { const PALLET: &'static str = "Nis"; const EVENT: &'static str = "Funded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A receipt was transfered."] pub struct Transferred { pub from: ::subxt::utils::AccountId32, pub to: ::subxt::utils::AccountId32, pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Transferred { const PALLET: &'static str = "Nis"; const EVENT: &'static str = "Transferred"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The totals of items and balances within each queue. Saves a lot of storage reads in the"] #[doc = " case of sparsely packed queues."] #[doc = ""] #[doc = " The vector is indexed by duration in `Period`s, offset by one, so information on the queue"] #[doc = " whose duration is one `Period` would be storage `0`."] pub fn queue_totals( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u32, ::core::primitive::u128, )>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Nis", "QueueTotals", vec![], [ 230u8, 24u8, 0u8, 151u8, 63u8, 26u8, 180u8, 81u8, 179u8, 26u8, 176u8, 46u8, 2u8, 91u8, 250u8, 210u8, 212u8, 27u8, 47u8, 228u8, 2u8, 51u8, 64u8, 7u8, 218u8, 130u8, 210u8, 7u8, 92u8, 102u8, 184u8, 227u8, ], ) } #[doc = " The queues of bids. Indexed by duration (in `Period`s)."] pub fn queues( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_nis::pallet::Bid< ::core::primitive::u128, ::subxt::utils::AccountId32, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nis", "Queues", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 11u8, 50u8, 58u8, 232u8, 240u8, 243u8, 90u8, 103u8, 252u8, 238u8, 15u8, 75u8, 189u8, 241u8, 231u8, 50u8, 194u8, 134u8, 162u8, 220u8, 97u8, 217u8, 215u8, 135u8, 138u8, 189u8, 167u8, 15u8, 162u8, 247u8, 6u8, 74u8, ], ) } #[doc = " The queues of bids. Indexed by duration (in `Period`s)."] pub fn queues_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_nis::pallet::Bid< ::core::primitive::u128, ::subxt::utils::AccountId32, >, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nis", "Queues", Vec::new(), [ 11u8, 50u8, 58u8, 232u8, 240u8, 243u8, 90u8, 103u8, 252u8, 238u8, 15u8, 75u8, 189u8, 241u8, 231u8, 50u8, 194u8, 134u8, 162u8, 220u8, 97u8, 217u8, 215u8, 135u8, 138u8, 189u8, 167u8, 15u8, 162u8, 247u8, 6u8, 74u8, ], ) } #[doc = " Summary information over the general state."] pub fn summary( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nis::pallet::SummaryRecord< ::core::primitive::u32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Nis", "Summary", vec![], [ 34u8, 27u8, 67u8, 146u8, 199u8, 150u8, 63u8, 31u8, 117u8, 228u8, 20u8, 73u8, 110u8, 73u8, 49u8, 128u8, 154u8, 222u8, 20u8, 44u8, 240u8, 154u8, 199u8, 73u8, 87u8, 160u8, 165u8, 14u8, 53u8, 173u8, 90u8, 197u8, ], ) } #[doc = " The currently outstanding receipts, indexed according to the order of creation."] pub fn receipts( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nis::pallet::ReceiptRecord< ::subxt::utils::AccountId32, ::core::primitive::u32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nis", "Receipts", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 133u8, 81u8, 13u8, 58u8, 124u8, 55u8, 176u8, 92u8, 245u8, 46u8, 131u8, 139u8, 226u8, 81u8, 201u8, 103u8, 79u8, 8u8, 166u8, 161u8, 42u8, 226u8, 247u8, 125u8, 226u8, 219u8, 82u8, 43u8, 165u8, 19u8, 56u8, 172u8, ], ) } #[doc = " The currently outstanding receipts, indexed according to the order of creation."] pub fn receipts_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nis::pallet::ReceiptRecord< ::subxt::utils::AccountId32, ::core::primitive::u32, ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nis", "Receipts", Vec::new(), [ 133u8, 81u8, 13u8, 58u8, 124u8, 55u8, 176u8, 92u8, 245u8, 46u8, 131u8, 139u8, 226u8, 81u8, 201u8, 103u8, 79u8, 8u8, 166u8, 161u8, 42u8, 226u8, 247u8, 125u8, 226u8, 219u8, 82u8, 43u8, 165u8, 19u8, 56u8, 172u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The treasury's pallet id, used for deriving its sovereign account ID."] pub fn pallet_id( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_support::PalletId, >, > { ::subxt::constants::StaticConstantAddress::new( "Nis", "PalletId", [ 139u8, 109u8, 228u8, 151u8, 252u8, 32u8, 130u8, 69u8, 112u8, 154u8, 174u8, 45u8, 83u8, 245u8, 51u8, 132u8, 173u8, 5u8, 186u8, 24u8, 243u8, 9u8, 12u8, 214u8, 80u8, 74u8, 69u8, 189u8, 30u8, 94u8, 22u8, 39u8, ], ) } #[doc = " Number of duration queues in total. This sets the maximum duration supported, which is"] #[doc = " this value multiplied by `Period`."] pub fn queue_count( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nis", "QueueCount", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Maximum number of items that may be in each duration queue."] #[doc = ""] #[doc = " Must be larger than zero."] pub fn max_queue_len( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nis", "MaxQueueLen", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Portion of the queue which is free from ordering and just a FIFO."] #[doc = ""] #[doc = " Must be no greater than `MaxQueueLen`."] pub fn fifo_queue_len( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nis", "FifoQueueLen", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The base period for the duration queues. This is the common multiple across all"] #[doc = " supported freezing durations that can be bid upon."] pub fn base_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nis", "BasePeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The minimum amount of funds that may be placed in a bid. Note that this"] #[doc = " does not actually limit the amount which may be represented in a receipt since bids may"] #[doc = " be split up by the system."] #[doc = ""] #[doc = " It should be at least big enough to ensure that there is no possible storage spam attack"] #[doc = " or queue-filling attack."] pub fn min_bid( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Nis", "MinBid", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The minimum amount of funds which may intentionally be left remaining under a single"] #[doc = " receipt."] pub fn min_receipt( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_arithmetic::per_things::Perquintill, >, > { ::subxt::constants::StaticConstantAddress::new( "Nis", "MinReceipt", [ 6u8, 4u8, 24u8, 100u8, 110u8, 86u8, 4u8, 252u8, 70u8, 43u8, 169u8, 124u8, 204u8, 27u8, 252u8, 91u8, 99u8, 13u8, 149u8, 202u8, 65u8, 211u8, 125u8, 108u8, 127u8, 4u8, 146u8, 163u8, 41u8, 193u8, 25u8, 103u8, ], ) } #[doc = " The number of blocks between consecutive attempts to dequeue bids and create receipts."] #[doc = ""] #[doc = " A larger value results in fewer storage hits each block, but a slower period to get to"] #[doc = " the target."] pub fn intake_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nis", "IntakePeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum amount of bids that can consolidated into receipts in a single intake. A"] #[doc = " larger value here means less of the block available for transactions should there be a"] #[doc = " glut of bids."] pub fn max_intake_weight( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_weights::weight_v2::Weight, >, > { ::subxt::constants::StaticConstantAddress::new( "Nis", "MaxIntakeWeight", [ 206u8, 61u8, 253u8, 247u8, 163u8, 40u8, 161u8, 52u8, 134u8, 140u8, 206u8, 83u8, 44u8, 166u8, 226u8, 115u8, 181u8, 14u8, 227u8, 130u8, 210u8, 32u8, 85u8, 29u8, 230u8, 97u8, 130u8, 165u8, 147u8, 134u8, 106u8, 76u8, ], ) } #[doc = " The maximum proportion which may be thawed and the period over which it is reset."] pub fn thaw_throttle( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_arithmetic::per_things::Perquintill, ::core::primitive::u32, )>, > { ::subxt::constants::StaticConstantAddress::new( "Nis", "ThawThrottle", [ 186u8, 73u8, 125u8, 166u8, 127u8, 250u8, 1u8, 100u8, 253u8, 174u8, 176u8, 185u8, 210u8, 229u8, 218u8, 53u8, 27u8, 72u8, 79u8, 130u8, 87u8, 138u8, 50u8, 139u8, 205u8, 79u8, 190u8, 58u8, 140u8, 68u8, 70u8, 16u8, ], ) } #[doc = " The name for the reserve ID."] pub fn reserve_id( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<[::core::primitive::u8; 8usize]>, > { ::subxt::constants::StaticConstantAddress::new( "Nis", "ReserveId", [ 224u8, 197u8, 247u8, 125u8, 62u8, 180u8, 69u8, 91u8, 226u8, 36u8, 82u8, 148u8, 70u8, 147u8, 209u8, 40u8, 210u8, 229u8, 181u8, 191u8, 170u8, 205u8, 138u8, 97u8, 127u8, 59u8, 124u8, 244u8, 252u8, 30u8, 213u8, 179u8, ], ) } } } } pub mod uniques { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Create { pub collection: ::core::primitive::u32, pub admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceCreate { pub collection: ::core::primitive::u32, pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub free_holding: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Destroy { pub collection: ::core::primitive::u32, pub witness: runtime_types::pallet_uniques::types::DestroyWitness, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Mint { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Burn { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub check_owner: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Transfer { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Redeposit { pub collection: ::core::primitive::u32, pub items: ::std::vec::Vec<::core::primitive::u32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Freeze { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Thaw { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct FreezeCollection { pub collection: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ThawCollection { pub collection: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TransferOwnership { pub collection: ::core::primitive::u32, pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetTeam { pub collection: ::core::primitive::u32, pub issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ApproveTransfer { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelApproval { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub maybe_check_delegate: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceItemStatus { pub collection: ::core::primitive::u32, pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub free_holding: ::core::primitive::bool, pub is_frozen: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetAttribute { pub collection: ::core::primitive::u32, pub maybe_item: ::core::option::Option<::core::primitive::u32>, pub key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, pub value: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClearAttribute { pub collection: ::core::primitive::u32, pub maybe_item: ::core::option::Option<::core::primitive::u32>, pub key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetMetadata { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, pub is_frozen: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClearMetadata { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetCollectionMetadata { pub collection: ::core::primitive::u32, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, pub is_frozen: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClearCollectionMetadata { pub collection: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetAcceptOwnership { pub maybe_collection: ::core::option::Option<::core::primitive::u32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetCollectionMaxSupply { pub collection: ::core::primitive::u32, pub max_supply: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetPrice { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub price: ::core::option::Option<::core::primitive::u128>, pub whitelisted_buyer: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BuyItem { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub bid_price: ::core::primitive::u128, } pub struct TransactionApi; impl TransactionApi { #[doc = "Issue a new collection of non-fungible items from a public origin."] #[doc = ""] #[doc = "This new collection has no items initially and its owner is the origin."] #[doc = ""] #[doc = "The origin must conform to the configured `CreateOrigin` and have sufficient funds free."] #[doc = ""] #[doc = "`ItemDeposit` funds of sender are reserved."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `collection`: The identifier of the new collection. This must not be currently in use."] #[doc = "- `admin`: The admin of this collection. The admin is the initial address of each"] #[doc = "member of the collection's admin team."] #[doc = ""] #[doc = "Emits `Created` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn create( &self, collection: ::core::primitive::u32, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "create", Create { collection, admin }, [ 250u8, 79u8, 237u8, 220u8, 143u8, 6u8, 150u8, 213u8, 251u8, 95u8, 81u8, 65u8, 94u8, 176u8, 218u8, 190u8, 103u8, 116u8, 61u8, 188u8, 31u8, 180u8, 109u8, 209u8, 140u8, 102u8, 247u8, 41u8, 12u8, 21u8, 143u8, 162u8, ], ) } #[doc = "Issue a new collection of non-fungible items from a privileged origin."] #[doc = ""] #[doc = "This new collection has no items initially."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin`."] #[doc = ""] #[doc = "Unlike `create`, no funds are reserved."] #[doc = ""] #[doc = "- `collection`: The identifier of the new item. This must not be currently in use."] #[doc = "- `owner`: The owner of this collection of items. The owner has full superuser"] #[doc = " permissions"] #[doc = "over this item, but may later change and configure the permissions using"] #[doc = "`transfer_ownership` and `set_team`."] #[doc = ""] #[doc = "Emits `ForceCreated` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn force_create( &self, collection: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, free_holding: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "force_create", ForceCreate { collection, owner, free_holding, }, [ 128u8, 35u8, 126u8, 101u8, 171u8, 131u8, 36u8, 84u8, 196u8, 235u8, 243u8, 21u8, 43u8, 160u8, 101u8, 203u8, 58u8, 103u8, 236u8, 159u8, 217u8, 124u8, 94u8, 135u8, 37u8, 42u8, 159u8, 204u8, 163u8, 106u8, 86u8, 97u8, ], ) } #[doc = "Destroy a collection of fungible items."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin` or must be `Signed` and the sender must be the"] #[doc = "owner of the `collection`."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection to be destroyed."] #[doc = "- `witness`: Information on the items minted in the collection. This must be"] #[doc = "correct."] #[doc = ""] #[doc = "Emits `Destroyed` event when successful."] #[doc = ""] #[doc = "Weight: `O(n + m)` where:"] #[doc = "- `n = witness.items`"] #[doc = "- `m = witness.item_metadatas`"] #[doc = "- `a = witness.attributes`"] pub fn destroy( &self, collection: ::core::primitive::u32, witness: runtime_types::pallet_uniques::types::DestroyWitness, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "destroy", Destroy { collection, witness, }, [ 194u8, 219u8, 14u8, 11u8, 254u8, 25u8, 217u8, 157u8, 117u8, 236u8, 144u8, 148u8, 151u8, 141u8, 40u8, 60u8, 243u8, 241u8, 140u8, 184u8, 45u8, 153u8, 33u8, 177u8, 248u8, 79u8, 67u8, 249u8, 47u8, 244u8, 198u8, 138u8, ], ) } #[doc = "Mint an item of a particular collection."] #[doc = ""] #[doc = "The origin must be Signed and the sender must be the Issuer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be minted."] #[doc = "- `item`: The item value of the item to be minted."] #[doc = "- `beneficiary`: The initial owner of the minted item."] #[doc = ""] #[doc = "Emits `Issued` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn mint( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "mint", Mint { collection, item, owner, }, [ 55u8, 248u8, 214u8, 184u8, 144u8, 201u8, 35u8, 97u8, 81u8, 129u8, 159u8, 219u8, 46u8, 107u8, 174u8, 115u8, 73u8, 198u8, 140u8, 172u8, 254u8, 157u8, 182u8, 0u8, 71u8, 237u8, 226u8, 202u8, 136u8, 65u8, 174u8, 246u8, ], ) } #[doc = "Destroy a single item."] #[doc = ""] #[doc = "Origin must be Signed and the signing account must be either:"] #[doc = "- the Admin of the `collection`;"] #[doc = "- the Owner of the `item`;"] #[doc = ""] #[doc = "- `collection`: The collection of the item to be burned."] #[doc = "- `item`: The item of the item to be burned."] #[doc = "- `check_owner`: If `Some` then the operation will fail with `WrongOwner` unless the"] #[doc = " item is owned by this value."] #[doc = ""] #[doc = "Emits `Burned` with the actual amount burned."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: `check_owner.is_some()`."] pub fn burn( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, check_owner: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "burn", Burn { collection, item, check_owner, }, [ 215u8, 138u8, 65u8, 126u8, 201u8, 135u8, 73u8, 194u8, 2u8, 196u8, 229u8, 103u8, 140u8, 74u8, 21u8, 144u8, 111u8, 99u8, 200u8, 210u8, 191u8, 108u8, 220u8, 56u8, 64u8, 89u8, 216u8, 181u8, 175u8, 57u8, 41u8, 173u8, ], ) } #[doc = "Move an item from the sender account to another."] #[doc = ""] #[doc = "This resets the approved account of the item."] #[doc = ""] #[doc = "Origin must be Signed and the signing account must be either:"] #[doc = "- the Admin of the `collection`;"] #[doc = "- the Owner of the `item`;"] #[doc = "- the approved delegate for the `item` (in this case, the approval is reset)."] #[doc = ""] #[doc = "Arguments:"] #[doc = "- `collection`: The collection of the item to be transferred."] #[doc = "- `item`: The item of the item to be transferred."] #[doc = "- `dest`: The account to receive ownership of the item."] #[doc = ""] #[doc = "Emits `Transferred`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn transfer( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "transfer", Transfer { collection, item, dest, }, [ 223u8, 90u8, 63u8, 140u8, 84u8, 72u8, 67u8, 84u8, 225u8, 84u8, 4u8, 197u8, 17u8, 53u8, 151u8, 209u8, 163u8, 114u8, 253u8, 225u8, 44u8, 171u8, 240u8, 8u8, 112u8, 8u8, 20u8, 25u8, 224u8, 131u8, 175u8, 40u8, ], ) } #[doc = "Reevaluate the deposits on some items."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection to be frozen."] #[doc = "- `items`: The items of the collection whose deposits will be reevaluated."] #[doc = ""] #[doc = "NOTE: This exists as a best-effort function. Any items which are unknown or"] #[doc = "in the case that the owner account does not have reservable funds to pay for a"] #[doc = "deposit increase are ignored. Generally the owner isn't going to call this on items"] #[doc = "whose existing deposit is less than the refreshed deposit as it would only cost them,"] #[doc = "so it's of little consequence."] #[doc = ""] #[doc = "It will still return an error in the case that the collection is unknown of the signer"] #[doc = "is not permitted to call it."] #[doc = ""] #[doc = "Weight: `O(items.len())`"] pub fn redeposit( &self, collection: ::core::primitive::u32, items: ::std::vec::Vec<::core::primitive::u32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "redeposit", Redeposit { collection, items }, [ 81u8, 142u8, 143u8, 126u8, 12u8, 71u8, 139u8, 28u8, 170u8, 219u8, 195u8, 22u8, 146u8, 69u8, 202u8, 7u8, 202u8, 113u8, 93u8, 187u8, 113u8, 16u8, 8u8, 76u8, 3u8, 124u8, 248u8, 38u8, 17u8, 232u8, 120u8, 145u8, ], ) } #[doc = "Disallow further unprivileged transfer of an item."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be frozen."] #[doc = "- `item`: The item of the item to be frozen."] #[doc = ""] #[doc = "Emits `Frozen`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn freeze( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "freeze", Freeze { collection, item }, [ 71u8, 169u8, 3u8, 86u8, 145u8, 29u8, 181u8, 125u8, 226u8, 255u8, 19u8, 202u8, 166u8, 193u8, 183u8, 145u8, 184u8, 67u8, 80u8, 51u8, 241u8, 132u8, 226u8, 206u8, 24u8, 249u8, 189u8, 1u8, 2u8, 65u8, 53u8, 114u8, ], ) } #[doc = "Re-allow unprivileged transfer of an item."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be thawed."] #[doc = "- `item`: The item of the item to be thawed."] #[doc = ""] #[doc = "Emits `Thawed`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn thaw( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "thaw", Thaw { collection, item }, [ 17u8, 158u8, 130u8, 248u8, 75u8, 216u8, 110u8, 113u8, 113u8, 243u8, 157u8, 40u8, 140u8, 41u8, 128u8, 255u8, 188u8, 7u8, 135u8, 27u8, 251u8, 123u8, 192u8, 220u8, 149u8, 111u8, 215u8, 26u8, 92u8, 188u8, 219u8, 90u8, ], ) } #[doc = "Disallow further unprivileged transfers for a whole collection."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection to be frozen."] #[doc = ""] #[doc = "Emits `CollectionFrozen`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn freeze_collection( &self, collection: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "freeze_collection", FreezeCollection { collection }, [ 17u8, 75u8, 230u8, 120u8, 48u8, 46u8, 9u8, 118u8, 130u8, 136u8, 249u8, 123u8, 110u8, 105u8, 145u8, 232u8, 243u8, 80u8, 149u8, 59u8, 233u8, 151u8, 24u8, 140u8, 40u8, 60u8, 250u8, 54u8, 25u8, 168u8, 147u8, 194u8, ], ) } #[doc = "Re-allow unprivileged transfers for a whole collection."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Admin of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection to be thawed."] #[doc = ""] #[doc = "Emits `CollectionThawed`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn thaw_collection( &self, collection: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "thaw_collection", ThawCollection { collection }, [ 134u8, 69u8, 120u8, 153u8, 244u8, 7u8, 197u8, 28u8, 169u8, 128u8, 183u8, 72u8, 46u8, 41u8, 47u8, 173u8, 251u8, 33u8, 195u8, 245u8, 74u8, 156u8, 165u8, 9u8, 164u8, 32u8, 144u8, 158u8, 58u8, 202u8, 69u8, 213u8, ], ) } #[doc = "Change the Owner of a collection."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection whose owner should be changed."] #[doc = "- `owner`: The new Owner of this collection. They must have called"] #[doc = " `set_accept_ownership` with `collection` in order for this operation to succeed."] #[doc = ""] #[doc = "Emits `OwnerChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn transfer_ownership( &self, collection: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "transfer_ownership", TransferOwnership { collection, owner }, [ 217u8, 228u8, 51u8, 96u8, 179u8, 215u8, 163u8, 137u8, 231u8, 239u8, 181u8, 113u8, 48u8, 144u8, 91u8, 140u8, 50u8, 175u8, 81u8, 251u8, 128u8, 208u8, 38u8, 246u8, 103u8, 219u8, 65u8, 179u8, 153u8, 4u8, 154u8, 181u8, ], ) } #[doc = "Change the Issuer, Admin and Freezer of a collection."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection whose team should be changed."] #[doc = "- `issuer`: The new Issuer of this collection."] #[doc = "- `admin`: The new Admin of this collection."] #[doc = "- `freezer`: The new Freezer of this collection."] #[doc = ""] #[doc = "Emits `TeamChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn set_team( &self, collection: ::core::primitive::u32, issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "set_team", SetTeam { collection, issuer, admin, freezer, }, [ 34u8, 168u8, 70u8, 30u8, 29u8, 186u8, 131u8, 181u8, 132u8, 63u8, 163u8, 22u8, 244u8, 41u8, 205u8, 234u8, 17u8, 238u8, 54u8, 64u8, 158u8, 136u8, 50u8, 40u8, 242u8, 117u8, 111u8, 211u8, 168u8, 156u8, 156u8, 27u8, ], ) } #[doc = "Approve an item to be transferred by a delegated third-party account."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin` or must be `Signed` and the sender must be"] #[doc = "either the owner of the `item` or the admin of the collection."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be approved for delegated transfer."] #[doc = "- `item`: The item of the item to be approved for delegated transfer."] #[doc = "- `delegate`: The account to delegate permission to transfer the item."] #[doc = ""] #[doc = "Important NOTE: The `approved` account gets reset after each transfer."] #[doc = ""] #[doc = "Emits `ApprovedTransfer` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn approve_transfer( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "approve_transfer", ApproveTransfer { collection, item, delegate, }, [ 101u8, 171u8, 204u8, 251u8, 223u8, 253u8, 213u8, 182u8, 128u8, 86u8, 244u8, 4u8, 19u8, 173u8, 197u8, 93u8, 80u8, 13u8, 234u8, 229u8, 47u8, 60u8, 100u8, 77u8, 112u8, 138u8, 74u8, 178u8, 95u8, 244u8, 12u8, 52u8, ], ) } #[doc = "Cancel the prior approval for the transfer of an item by a delegate."] #[doc = ""] #[doc = "Origin must be either:"] #[doc = "- the `Force` origin;"] #[doc = "- `Signed` with the signer being the Admin of the `collection`;"] #[doc = "- `Signed` with the signer being the Owner of the `item`;"] #[doc = ""] #[doc = "Arguments:"] #[doc = "- `collection`: The collection of the item of whose approval will be cancelled."] #[doc = "- `item`: The item of the item of whose approval will be cancelled."] #[doc = "- `maybe_check_delegate`: If `Some` will ensure that the given account is the one to"] #[doc = " which permission of transfer is delegated."] #[doc = ""] #[doc = "Emits `ApprovalCancelled` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn cancel_approval( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, maybe_check_delegate: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "cancel_approval", CancelApproval { collection, item, maybe_check_delegate, }, [ 66u8, 69u8, 36u8, 135u8, 174u8, 24u8, 110u8, 166u8, 77u8, 128u8, 3u8, 102u8, 186u8, 253u8, 130u8, 191u8, 2u8, 159u8, 54u8, 217u8, 190u8, 45u8, 64u8, 54u8, 29u8, 196u8, 99u8, 204u8, 74u8, 128u8, 143u8, 84u8, ], ) } #[doc = "Alter the attributes of a given item."] #[doc = ""] #[doc = "Origin must be `ForceOrigin`."] #[doc = ""] #[doc = "- `collection`: The identifier of the item."] #[doc = "- `owner`: The new Owner of this item."] #[doc = "- `issuer`: The new Issuer of this item."] #[doc = "- `admin`: The new Admin of this item."] #[doc = "- `freezer`: The new Freezer of this item."] #[doc = "- `free_holding`: Whether a deposit is taken for holding an item of this collection."] #[doc = "- `is_frozen`: Whether this collection is frozen except for permissioned/admin"] #[doc = "instructions."] #[doc = ""] #[doc = "Emits `ItemStatusChanged` with the identity of the item."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn force_item_status( &self, collection: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, free_holding: ::core::primitive::bool, is_frozen: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "force_item_status", ForceItemStatus { collection, owner, issuer, admin, freezer, free_holding, is_frozen, }, [ 80u8, 205u8, 188u8, 92u8, 184u8, 129u8, 222u8, 36u8, 205u8, 131u8, 248u8, 126u8, 56u8, 209u8, 7u8, 109u8, 105u8, 176u8, 173u8, 65u8, 75u8, 130u8, 117u8, 50u8, 124u8, 27u8, 233u8, 146u8, 5u8, 114u8, 226u8, 230u8, ], ) } #[doc = "Set an attribute for a collection or item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`collection`."] #[doc = ""] #[doc = "If the origin is Signed, then funds of signer are reserved according to the formula:"] #[doc = "`MetadataDepositBase + DepositPerByte * (key.len + value.len)` taking into"] #[doc = "account any already reserved funds."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to set."] #[doc = "- `maybe_item`: The identifier of the item whose metadata to set."] #[doc = "- `key`: The key of the attribute."] #[doc = "- `value`: The value to which to set the attribute."] #[doc = ""] #[doc = "Emits `AttributeSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn set_attribute( &self, collection: ::core::primitive::u32, maybe_item: ::core::option::Option<::core::primitive::u32>, key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, value: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "set_attribute", SetAttribute { collection, maybe_item, key, value, }, [ 227u8, 229u8, 21u8, 73u8, 122u8, 15u8, 156u8, 240u8, 210u8, 78u8, 83u8, 101u8, 42u8, 92u8, 160u8, 235u8, 225u8, 150u8, 221u8, 160u8, 204u8, 221u8, 9u8, 175u8, 122u8, 145u8, 169u8, 28u8, 71u8, 148u8, 188u8, 20u8, ], ) } #[doc = "Clear an attribute for a collection or item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`collection`."] #[doc = ""] #[doc = "Any deposit is freed for the collection's owner."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to clear."] #[doc = "- `maybe_item`: The identifier of the item whose metadata to clear."] #[doc = "- `key`: The key of the attribute."] #[doc = ""] #[doc = "Emits `AttributeCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn clear_attribute( &self, collection: ::core::primitive::u32, maybe_item: ::core::option::Option<::core::primitive::u32>, key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "clear_attribute", ClearAttribute { collection, maybe_item, key, }, [ 246u8, 34u8, 148u8, 125u8, 22u8, 119u8, 14u8, 109u8, 181u8, 113u8, 246u8, 243u8, 83u8, 171u8, 77u8, 0u8, 162u8, 15u8, 76u8, 250u8, 119u8, 186u8, 0u8, 176u8, 74u8, 207u8, 70u8, 33u8, 218u8, 134u8, 239u8, 78u8, ], ) } #[doc = "Set the metadata for an item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`collection`."] #[doc = ""] #[doc = "If the origin is Signed, then funds of signer are reserved according to the formula:"] #[doc = "`MetadataDepositBase + DepositPerByte * data.len` taking into"] #[doc = "account any already reserved funds."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to set."] #[doc = "- `item`: The identifier of the item whose metadata to set."] #[doc = "- `data`: The general information of this item. Limited in length by `StringLimit`."] #[doc = "- `is_frozen`: Whether the metadata should be frozen against further changes."] #[doc = ""] #[doc = "Emits `MetadataSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn set_metadata( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, is_frozen: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "set_metadata", SetMetadata { collection, item, data, is_frozen, }, [ 182u8, 1u8, 20u8, 121u8, 184u8, 169u8, 101u8, 195u8, 60u8, 196u8, 77u8, 79u8, 207u8, 175u8, 109u8, 136u8, 214u8, 201u8, 99u8, 32u8, 89u8, 8u8, 181u8, 182u8, 226u8, 166u8, 146u8, 224u8, 48u8, 231u8, 146u8, 123u8, ], ) } #[doc = "Clear the metadata for an item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`item`."] #[doc = ""] #[doc = "Any deposit is freed for the collection's owner."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to clear."] #[doc = "- `item`: The identifier of the item whose metadata to clear."] #[doc = ""] #[doc = "Emits `MetadataCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn clear_metadata( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "clear_metadata", ClearMetadata { collection, item }, [ 113u8, 75u8, 211u8, 250u8, 129u8, 61u8, 231u8, 204u8, 141u8, 151u8, 65u8, 108u8, 230u8, 68u8, 51u8, 165u8, 126u8, 211u8, 51u8, 33u8, 9u8, 47u8, 50u8, 71u8, 123u8, 71u8, 43u8, 162u8, 76u8, 1u8, 90u8, 222u8, ], ) } #[doc = "Set the metadata for a collection."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] #[doc = "the `collection`."] #[doc = ""] #[doc = "If the origin is `Signed`, then funds of signer are reserved according to the formula:"] #[doc = "`MetadataDepositBase + DepositPerByte * data.len` taking into"] #[doc = "account any already reserved funds."] #[doc = ""] #[doc = "- `collection`: The identifier of the item whose metadata to update."] #[doc = "- `data`: The general information of this item. Limited in length by `StringLimit`."] #[doc = "- `is_frozen`: Whether the metadata should be frozen against further changes."] #[doc = ""] #[doc = "Emits `CollectionMetadataSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn set_collection_metadata( &self, collection: ::core::primitive::u32, data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, is_frozen: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "set_collection_metadata", SetCollectionMetadata { collection, data, is_frozen, }, [ 98u8, 156u8, 235u8, 75u8, 88u8, 239u8, 86u8, 131u8, 2u8, 226u8, 12u8, 122u8, 135u8, 145u8, 138u8, 220u8, 36u8, 120u8, 21u8, 27u8, 222u8, 11u8, 99u8, 44u8, 250u8, 233u8, 219u8, 65u8, 33u8, 152u8, 226u8, 51u8, ], ) } #[doc = "Clear the metadata for a collection."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] #[doc = "the `collection`."] #[doc = ""] #[doc = "Any deposit is freed for the collection's owner."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose metadata to clear."] #[doc = ""] #[doc = "Emits `CollectionMetadataCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn clear_collection_metadata( &self, collection: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "clear_collection_metadata", ClearCollectionMetadata { collection }, [ 218u8, 108u8, 43u8, 96u8, 85u8, 130u8, 198u8, 167u8, 28u8, 4u8, 151u8, 185u8, 162u8, 123u8, 120u8, 42u8, 72u8, 37u8, 250u8, 135u8, 100u8, 37u8, 193u8, 232u8, 62u8, 91u8, 18u8, 120u8, 241u8, 47u8, 73u8, 209u8, ], ) } #[doc = "Set (or reset) the acceptance of ownership for a particular account."] #[doc = ""] #[doc = "Origin must be `Signed` and if `maybe_collection` is `Some`, then the signer must have a"] #[doc = "provider reference."] #[doc = ""] #[doc = "- `maybe_collection`: The identifier of the collection whose ownership the signer is"] #[doc = " willing to accept, or if `None`, an indication that the signer is willing to accept no"] #[doc = " ownership transferal."] #[doc = ""] #[doc = "Emits `OwnershipAcceptanceChanged`."] pub fn set_accept_ownership( &self, maybe_collection: ::core::option::Option<::core::primitive::u32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "set_accept_ownership", SetAcceptOwnership { maybe_collection }, [ 171u8, 174u8, 217u8, 70u8, 115u8, 1u8, 231u8, 149u8, 223u8, 227u8, 6u8, 226u8, 190u8, 144u8, 101u8, 21u8, 147u8, 243u8, 123u8, 228u8, 42u8, 27u8, 126u8, 58u8, 31u8, 233u8, 54u8, 157u8, 193u8, 212u8, 114u8, 232u8, ], ) } #[doc = "Set the maximum amount of items a collection could have."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] #[doc = "the `collection`."] #[doc = ""] #[doc = "Note: This function can only succeed once per collection."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection to change."] #[doc = "- `max_supply`: The maximum amount of items a collection could have."] #[doc = ""] #[doc = "Emits `CollectionMaxSupplySet` event when successful."] pub fn set_collection_max_supply( &self, collection: ::core::primitive::u32, max_supply: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "set_collection_max_supply", SetCollectionMaxSupply { collection, max_supply, }, [ 116u8, 134u8, 93u8, 228u8, 6u8, 198u8, 26u8, 168u8, 154u8, 137u8, 0u8, 151u8, 1u8, 187u8, 36u8, 154u8, 62u8, 193u8, 250u8, 83u8, 41u8, 135u8, 187u8, 4u8, 132u8, 234u8, 207u8, 127u8, 153u8, 157u8, 76u8, 80u8, ], ) } #[doc = "Set (or reset) the price for an item."] #[doc = ""] #[doc = "Origin must be Signed and must be the owner of the asset `item`."] #[doc = ""] #[doc = "- `collection`: The collection of the item."] #[doc = "- `item`: The item to set the price for."] #[doc = "- `price`: The price for the item. Pass `None`, to reset the price."] #[doc = "- `buyer`: Restricts the buy operation to a specific account."] #[doc = ""] #[doc = "Emits `ItemPriceSet` on success if the price is not `None`."] #[doc = "Emits `ItemPriceRemoved` on success if the price is `None`."] pub fn set_price( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, price: ::core::option::Option<::core::primitive::u128>, whitelisted_buyer: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "set_price", SetPrice { collection, item, price, whitelisted_buyer, }, [ 159u8, 178u8, 134u8, 144u8, 165u8, 80u8, 141u8, 253u8, 194u8, 11u8, 8u8, 215u8, 7u8, 82u8, 138u8, 62u8, 81u8, 178u8, 75u8, 84u8, 97u8, 175u8, 161u8, 97u8, 125u8, 175u8, 70u8, 247u8, 209u8, 132u8, 48u8, 196u8, ], ) } #[doc = "Allows to buy an item if it's up for sale."] #[doc = ""] #[doc = "Origin must be Signed and must not be the owner of the `item`."] #[doc = ""] #[doc = "- `collection`: The collection of the item."] #[doc = "- `item`: The item the sender wants to buy."] #[doc = "- `bid_price`: The price the sender is willing to pay."] #[doc = ""] #[doc = "Emits `ItemBought` on success."] pub fn buy_item( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, bid_price: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Uniques", "buy_item", BuyItem { collection, item, bid_price, }, [ 79u8, 39u8, 106u8, 21u8, 227u8, 244u8, 7u8, 107u8, 125u8, 114u8, 24u8, 254u8, 208u8, 67u8, 31u8, 123u8, 134u8, 29u8, 94u8, 243u8, 164u8, 137u8, 191u8, 71u8, 17u8, 170u8, 226u8, 172u8, 233u8, 198u8, 226u8, 33u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_uniques::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A `collection` was created."] pub struct Created { pub collection: ::core::primitive::u32, pub creator: ::subxt::utils::AccountId32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Created { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "Created"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A `collection` was force-created."] pub struct ForceCreated { pub collection: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for ForceCreated { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "ForceCreated"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A `collection` was destroyed."] pub struct Destroyed { pub collection: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Destroyed { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "Destroyed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `item` was issued."] pub struct Issued { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Issued { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "Issued"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `item` was transferred."] pub struct Transferred { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub from: ::subxt::utils::AccountId32, pub to: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Transferred { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "Transferred"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `item` was destroyed."] pub struct Burned { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Burned { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "Burned"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some `item` was frozen."] pub struct Frozen { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Frozen { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "Frozen"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some `item` was thawed."] pub struct Thawed { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Thawed { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "Thawed"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some `collection` was frozen."] pub struct CollectionFrozen { pub collection: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for CollectionFrozen { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "CollectionFrozen"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some `collection` was thawed."] pub struct CollectionThawed { pub collection: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for CollectionThawed { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "CollectionThawed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The owner changed."] pub struct OwnerChanged { pub collection: ::core::primitive::u32, pub new_owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for OwnerChanged { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "OwnerChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The management team changed."] pub struct TeamChanged { pub collection: ::core::primitive::u32, pub issuer: ::subxt::utils::AccountId32, pub admin: ::subxt::utils::AccountId32, pub freezer: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for TeamChanged { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "TeamChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `item` of a `collection` has been approved by the `owner` for transfer by"] #[doc = "a `delegate`."] pub struct ApprovedTransfer { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, pub delegate: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for ApprovedTransfer { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "ApprovedTransfer"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An approval for a `delegate` account to transfer the `item` of an item"] #[doc = "`collection` was cancelled by its `owner`."] pub struct ApprovalCancelled { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, pub delegate: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for ApprovalCancelled { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "ApprovalCancelled"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A `collection` has had its attributes changed by the `Force` origin."] pub struct ItemStatusChanged { pub collection: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ItemStatusChanged { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "ItemStatusChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "New metadata has been set for a `collection`."] pub struct CollectionMetadataSet { pub collection: ::core::primitive::u32, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, pub is_frozen: ::core::primitive::bool, } impl ::subxt::events::StaticEvent for CollectionMetadataSet { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "CollectionMetadataSet"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Metadata has been cleared for a `collection`."] pub struct CollectionMetadataCleared { pub collection: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for CollectionMetadataCleared { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "CollectionMetadataCleared"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "New metadata has been set for an item."] pub struct MetadataSet { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, pub is_frozen: ::core::primitive::bool, } impl ::subxt::events::StaticEvent for MetadataSet { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "MetadataSet"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Metadata has been cleared for an item."] pub struct MetadataCleared { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for MetadataCleared { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "MetadataCleared"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Metadata has been cleared for an item."] pub struct Redeposited { pub collection: ::core::primitive::u32, pub successful_items: ::std::vec::Vec<::core::primitive::u32>, } impl ::subxt::events::StaticEvent for Redeposited { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "Redeposited"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "New attribute metadata has been set for a `collection` or `item`."] pub struct AttributeSet { pub collection: ::core::primitive::u32, pub maybe_item: ::core::option::Option<::core::primitive::u32>, pub key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, pub value: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } impl ::subxt::events::StaticEvent for AttributeSet { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "AttributeSet"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Attribute metadata has been cleared for a `collection` or `item`."] pub struct AttributeCleared { pub collection: ::core::primitive::u32, pub maybe_item: ::core::option::Option<::core::primitive::u32>, pub key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } impl ::subxt::events::StaticEvent for AttributeCleared { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "AttributeCleared"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Ownership acceptance has changed for an account."] pub struct OwnershipAcceptanceChanged { pub who: ::subxt::utils::AccountId32, pub maybe_collection: ::core::option::Option<::core::primitive::u32>, } impl ::subxt::events::StaticEvent for OwnershipAcceptanceChanged { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "OwnershipAcceptanceChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Max supply has been set for a collection."] pub struct CollectionMaxSupplySet { pub collection: ::core::primitive::u32, pub max_supply: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for CollectionMaxSupplySet { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "CollectionMaxSupplySet"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The price was set for the instance."] pub struct ItemPriceSet { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub price: ::core::primitive::u128, pub whitelisted_buyer: ::core::option::Option<::subxt::utils::AccountId32>, } impl ::subxt::events::StaticEvent for ItemPriceSet { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "ItemPriceSet"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The price for the instance was removed."] pub struct ItemPriceRemoved { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ItemPriceRemoved { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "ItemPriceRemoved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An item was bought."] pub struct ItemBought { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub price: ::core::primitive::u128, pub seller: ::subxt::utils::AccountId32, pub buyer: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for ItemBought { const PALLET: &'static str = "Uniques"; const EVENT: &'static str = "ItemBought"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Details of a collection."] pub fn class( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_uniques::types::CollectionDetails< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "Class", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 32u8, 21u8, 193u8, 165u8, 1u8, 239u8, 178u8, 63u8, 20u8, 180u8, 240u8, 180u8, 62u8, 46u8, 37u8, 198u8, 10u8, 245u8, 49u8, 64u8, 27u8, 217u8, 0u8, 251u8, 116u8, 50u8, 166u8, 201u8, 108u8, 73u8, 233u8, 218u8, ], ) } #[doc = " Details of a collection."] pub fn class_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_uniques::types::CollectionDetails< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "Class", Vec::new(), [ 32u8, 21u8, 193u8, 165u8, 1u8, 239u8, 178u8, 63u8, 20u8, 180u8, 240u8, 180u8, 62u8, 46u8, 37u8, 198u8, 10u8, 245u8, 49u8, 64u8, 27u8, 217u8, 0u8, 251u8, 116u8, 50u8, 166u8, 201u8, 108u8, 73u8, 233u8, 218u8, ], ) } #[doc = " The collection, if any, of which an account is willing to take ownership."] pub fn ownership_acceptance( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "OwnershipAcceptance", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 166u8, 46u8, 6u8, 129u8, 145u8, 240u8, 8u8, 115u8, 232u8, 123u8, 153u8, 254u8, 202u8, 128u8, 141u8, 17u8, 207u8, 218u8, 201u8, 239u8, 220u8, 233u8, 22u8, 123u8, 126u8, 151u8, 67u8, 90u8, 51u8, 167u8, 189u8, 39u8, ], ) } #[doc = " The collection, if any, of which an account is willing to take ownership."] pub fn ownership_acceptance_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "OwnershipAcceptance", Vec::new(), [ 166u8, 46u8, 6u8, 129u8, 145u8, 240u8, 8u8, 115u8, 232u8, 123u8, 153u8, 254u8, 202u8, 128u8, 141u8, 17u8, 207u8, 218u8, 201u8, 239u8, 220u8, 233u8, 22u8, 123u8, 126u8, 151u8, 67u8, 90u8, 51u8, 167u8, 189u8, 39u8, ], ) } #[doc = " The items held by any given account; set out this way so that items owned by a single"] #[doc = " account can be enumerated."] pub fn account( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, _2: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<()>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Uniques" , "Account" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_2 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [83u8 , 188u8 , 8u8 , 123u8 , 84u8 , 224u8 , 52u8 , 18u8 , 81u8 , 207u8 , 139u8 , 149u8 , 209u8 , 246u8 , 211u8 , 132u8 , 63u8 , 86u8 , 145u8 , 33u8 , 4u8 , 252u8 , 90u8 , 88u8 , 89u8 , 145u8 , 147u8 , 164u8 , 223u8 , 162u8 , 119u8 , 161u8 ,]) } #[doc = " The items held by any given account; set out this way so that items owned by a single"] #[doc = " account can be enumerated."] pub fn account_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<()>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "Account", Vec::new(), [ 83u8, 188u8, 8u8, 123u8, 84u8, 224u8, 52u8, 18u8, 81u8, 207u8, 139u8, 149u8, 209u8, 246u8, 211u8, 132u8, 63u8, 86u8, 145u8, 33u8, 4u8, 252u8, 90u8, 88u8, 89u8, 145u8, 147u8, 164u8, 223u8, 162u8, 119u8, 161u8, ], ) } #[doc = " The collections owned by any given account; set out this way so that collections owned by"] #[doc = " a single account can be enumerated."] pub fn class_account( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<()>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Uniques" , "ClassAccount" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [150u8 , 252u8 , 105u8 , 208u8 , 130u8 , 203u8 , 171u8 , 17u8 , 240u8 , 159u8 , 148u8 , 32u8 , 191u8 , 48u8 , 240u8 , 199u8 , 128u8 , 68u8 , 24u8 , 41u8 , 77u8 , 159u8 , 32u8 , 109u8 , 37u8 , 65u8 , 127u8 , 147u8 , 65u8 , 91u8 , 111u8 , 175u8 ,]) } #[doc = " The collections owned by any given account; set out this way so that collections owned by"] #[doc = " a single account can be enumerated."] pub fn class_account_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<()>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "ClassAccount", Vec::new(), [ 150u8, 252u8, 105u8, 208u8, 130u8, 203u8, 171u8, 17u8, 240u8, 159u8, 148u8, 32u8, 191u8, 48u8, 240u8, 199u8, 128u8, 68u8, 24u8, 41u8, 77u8, 159u8, 32u8, 109u8, 37u8, 65u8, 127u8, 147u8, 65u8, 91u8, 111u8, 175u8, ], ) } #[doc = " The items in existence and their ownership details."] pub fn asset( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_uniques::types::ItemDetails< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Uniques" , "Asset" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [91u8 , 5u8 , 41u8 , 213u8 , 166u8 , 235u8 , 22u8 , 162u8 , 111u8 , 84u8 , 106u8 , 54u8 , 15u8 , 132u8 , 79u8 , 56u8 , 143u8 , 39u8 , 101u8 , 224u8 , 232u8 , 98u8 , 165u8 , 137u8 , 182u8 , 175u8 , 150u8 , 169u8 , 120u8 , 198u8 , 189u8 , 55u8 ,]) } #[doc = " The items in existence and their ownership details."] pub fn asset_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_uniques::types::ItemDetails< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "Asset", Vec::new(), [ 91u8, 5u8, 41u8, 213u8, 166u8, 235u8, 22u8, 162u8, 111u8, 84u8, 106u8, 54u8, 15u8, 132u8, 79u8, 56u8, 143u8, 39u8, 101u8, 224u8, 232u8, 98u8, 165u8, 137u8, 182u8, 175u8, 150u8, 169u8, 120u8, 198u8, 189u8, 55u8, ], ) } #[doc = " Metadata of a collection."] pub fn class_metadata_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_uniques::types::CollectionMetadata< ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "ClassMetadataOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 30u8, 185u8, 220u8, 71u8, 235u8, 255u8, 56u8, 170u8, 95u8, 244u8, 64u8, 125u8, 173u8, 211u8, 208u8, 153u8, 179u8, 237u8, 82u8, 45u8, 113u8, 6u8, 239u8, 245u8, 151u8, 224u8, 74u8, 69u8, 47u8, 127u8, 163u8, 102u8, ], ) } #[doc = " Metadata of a collection."] pub fn class_metadata_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_uniques::types::CollectionMetadata< ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "ClassMetadataOf", Vec::new(), [ 30u8, 185u8, 220u8, 71u8, 235u8, 255u8, 56u8, 170u8, 95u8, 244u8, 64u8, 125u8, 173u8, 211u8, 208u8, 153u8, 179u8, 237u8, 82u8, 45u8, 113u8, 6u8, 239u8, 245u8, 151u8, 224u8, 74u8, 69u8, 47u8, 127u8, 163u8, 102u8, ], ) } #[doc = " Metadata of an item."] pub fn instance_metadata_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_uniques::types::ItemMetadata< ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Uniques" , "InstanceMetadataOf" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [53u8 , 239u8 , 109u8 , 42u8 , 253u8 , 16u8 , 125u8 , 128u8 , 52u8 , 166u8 , 174u8 , 60u8 , 17u8 , 144u8 , 226u8 , 83u8 , 199u8 , 35u8 , 195u8 , 77u8 , 57u8 , 13u8 , 128u8 , 49u8 , 47u8 , 115u8 , 239u8 , 33u8 , 33u8 , 127u8 , 154u8 , 247u8 ,]) } #[doc = " Metadata of an item."] pub fn instance_metadata_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_uniques::types::ItemMetadata< ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "InstanceMetadataOf", Vec::new(), [ 53u8, 239u8, 109u8, 42u8, 253u8, 16u8, 125u8, 128u8, 52u8, 166u8, 174u8, 60u8, 17u8, 144u8, 226u8, 83u8, 199u8, 35u8, 195u8, 77u8, 57u8, 13u8, 128u8, 49u8, 47u8, 115u8, 239u8, 33u8, 33u8, 127u8, 154u8, 247u8, ], ) } #[doc = " Attributes of a collection."] pub fn attribute( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow< ::core::option::Option<::core::primitive::u32>, >, _2: impl ::std::borrow::Borrow< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, ::core::primitive::u128, )>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Uniques" , "Attribute" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_2 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [101u8 , 37u8 , 8u8 , 243u8 , 33u8 , 252u8 , 251u8 , 102u8 , 206u8 , 223u8 , 64u8 , 117u8 , 252u8 , 22u8 , 122u8 , 201u8 , 99u8 , 126u8 , 64u8 , 208u8 , 136u8 , 97u8 , 244u8 , 139u8 , 17u8 , 112u8 , 67u8 , 70u8 , 148u8 , 164u8 , 167u8 , 188u8 ,]) } #[doc = " Attributes of a collection."] pub fn attribute_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, ::core::primitive::u128, )>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "Attribute", Vec::new(), [ 101u8, 37u8, 8u8, 243u8, 33u8, 252u8, 251u8, 102u8, 206u8, 223u8, 64u8, 117u8, 252u8, 22u8, 122u8, 201u8, 99u8, 126u8, 64u8, 208u8, 136u8, 97u8, 244u8, 139u8, 17u8, 112u8, 67u8, 70u8, 148u8, 164u8, 167u8, 188u8, ], ) } #[doc = " Price of an asset instance."] pub fn item_price_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u128, ::core::option::Option<::subxt::utils::AccountId32>, )>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Uniques" , "ItemPriceOf" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [63u8 , 143u8 , 204u8 , 99u8 , 128u8 , 218u8 , 233u8 , 140u8 , 216u8 , 44u8 , 248u8 , 111u8 , 204u8 , 40u8 , 248u8 , 249u8 , 24u8 , 130u8 , 50u8 , 255u8 , 30u8 , 42u8 , 220u8 , 136u8 , 228u8 , 64u8 , 158u8 , 195u8 , 233u8 , 105u8 , 137u8 , 216u8 ,]) } #[doc = " Price of an asset instance."] pub fn item_price_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u128, ::core::option::Option<::subxt::utils::AccountId32>, )>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "ItemPriceOf", Vec::new(), [ 63u8, 143u8, 204u8, 99u8, 128u8, 218u8, 233u8, 140u8, 216u8, 44u8, 248u8, 111u8, 204u8, 40u8, 248u8, 249u8, 24u8, 130u8, 50u8, 255u8, 30u8, 42u8, 220u8, 136u8, 228u8, 64u8, 158u8, 195u8, 233u8, 105u8, 137u8, 216u8, ], ) } #[doc = " Keeps track of the number of items a collection might have."] pub fn collection_max_supply( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "CollectionMaxSupply", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 86u8, 134u8, 143u8, 101u8, 154u8, 17u8, 75u8, 144u8, 113u8, 61u8, 172u8, 98u8, 72u8, 224u8, 127u8, 136u8, 27u8, 129u8, 56u8, 236u8, 141u8, 59u8, 174u8, 48u8, 29u8, 214u8, 36u8, 121u8, 25u8, 141u8, 122u8, 196u8, ], ) } #[doc = " Keeps track of the number of items a collection might have."] pub fn collection_max_supply_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Uniques", "CollectionMaxSupply", Vec::new(), [ 86u8, 134u8, 143u8, 101u8, 154u8, 17u8, 75u8, 144u8, 113u8, 61u8, 172u8, 98u8, 72u8, 224u8, 127u8, 136u8, 27u8, 129u8, 56u8, 236u8, 141u8, 59u8, 174u8, 48u8, 29u8, 214u8, 36u8, 121u8, 25u8, 141u8, 122u8, 196u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The basic amount of funds that must be reserved for collection."] pub fn collection_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Uniques", "CollectionDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The basic amount of funds that must be reserved for an item."] pub fn item_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Uniques", "ItemDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The basic amount of funds that must be reserved when adding metadata to your item."] pub fn metadata_deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Uniques", "MetadataDepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The basic amount of funds that must be reserved when adding an attribute to an item."] pub fn attribute_deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Uniques", "AttributeDepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The additional funds that must be reserved for the number of bytes store in metadata,"] #[doc = " either \"normal\" metadata or attribute metadata."] pub fn deposit_per_byte( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Uniques", "DepositPerByte", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The maximum length of data stored on-chain."] pub fn string_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Uniques", "StringLimit", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum length of an attribute key."] pub fn key_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Uniques", "KeyLimit", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum length of an attribute value."] pub fn value_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Uniques", "ValueLimit", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod nfts { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Create { pub admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub config: runtime_types::pallet_nfts::types::CollectionConfig< ::core::primitive::u128, ::core::primitive::u32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceCreate { pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub config: runtime_types::pallet_nfts::types::CollectionConfig< ::core::primitive::u128, ::core::primitive::u32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Destroy { pub collection: ::core::primitive::u32, pub witness: runtime_types::pallet_nfts::types::DestroyWitness, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Mint { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub mint_to: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub witness_data: ::core::option::Option< runtime_types::pallet_nfts::types::MintWitness< ::core::primitive::u32, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceMint { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub mint_to: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub item_config: runtime_types::pallet_nfts::types::ItemConfig, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Burn { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub check_owner: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Transfer { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Redeposit { pub collection: ::core::primitive::u32, pub items: ::std::vec::Vec<::core::primitive::u32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct LockItemTransfer { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UnlockItemTransfer { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct LockCollection { pub collection: ::core::primitive::u32, pub lock_settings: runtime_types::pallet_nfts::types::BitFlags< runtime_types::pallet_nfts::types::CollectionSetting, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TransferOwnership { pub collection: ::core::primitive::u32, pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetTeam { pub collection: ::core::primitive::u32, pub issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceCollectionOwner { pub collection: ::core::primitive::u32, pub owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceCollectionConfig { pub collection: ::core::primitive::u32, pub config: runtime_types::pallet_nfts::types::CollectionConfig< ::core::primitive::u128, ::core::primitive::u32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ApproveTransfer { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub maybe_deadline: ::core::option::Option<::core::primitive::u32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelApproval { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClearAllTransferApprovals { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct LockItemProperties { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub lock_metadata: ::core::primitive::bool, pub lock_attributes: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetAttribute { pub collection : :: core :: primitive :: u32 , pub maybe_item : :: core :: option :: Option < :: core :: primitive :: u32 > , pub namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 > , pub key : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , pub value : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceSetAttribute { pub set_as : :: core :: option :: Option < :: subxt :: utils :: AccountId32 > , pub collection : :: core :: primitive :: u32 , pub maybe_item : :: core :: option :: Option < :: core :: primitive :: u32 > , pub namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 > , pub key : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , pub value : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClearAttribute { pub collection : :: core :: primitive :: u32 , pub maybe_item : :: core :: option :: Option < :: core :: primitive :: u32 > , pub namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 > , pub key : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ApproveItemAttributes { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelItemAttributesApproval { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub witness: runtime_types::pallet_nfts::types::CancelAttributesApprovalWitness, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetMetadata { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClearMetadata { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetCollectionMetadata { pub collection: ::core::primitive::u32, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClearCollectionMetadata { pub collection: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetAcceptOwnership { pub maybe_collection: ::core::option::Option<::core::primitive::u32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetCollectionMaxSupply { pub collection: ::core::primitive::u32, pub max_supply: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UpdateMintSettings { pub collection: ::core::primitive::u32, pub mint_settings: runtime_types::pallet_nfts::types::MintSettings< ::core::primitive::u128, ::core::primitive::u32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetPrice { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub price: ::core::option::Option<::core::primitive::u128>, pub whitelisted_buyer: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BuyItem { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub bid_price: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PayTips { pub tips: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_nfts::types::ItemTip< ::core::primitive::u32, ::core::primitive::u32, ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CreateSwap { pub offered_collection: ::core::primitive::u32, pub offered_item: ::core::primitive::u32, pub desired_collection: ::core::primitive::u32, pub maybe_desired_item: ::core::option::Option<::core::primitive::u32>, pub maybe_price: ::core::option::Option< runtime_types::pallet_nfts::types::PriceWithDirection< ::core::primitive::u128, >, >, pub duration: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelSwap { pub offered_collection: ::core::primitive::u32, pub offered_item: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClaimSwap { pub send_collection: ::core::primitive::u32, pub send_item: ::core::primitive::u32, pub receive_collection: ::core::primitive::u32, pub receive_item: ::core::primitive::u32, pub witness_price: ::core::option::Option< runtime_types::pallet_nfts::types::PriceWithDirection< ::core::primitive::u128, >, >, } pub struct TransactionApi; impl TransactionApi { #[doc = "Issue a new collection of non-fungible items from a public origin."] #[doc = ""] #[doc = "This new collection has no items initially and its owner is the origin."] #[doc = ""] #[doc = "The origin must be Signed and the sender must have sufficient funds free."] #[doc = ""] #[doc = "`ItemDeposit` funds of sender are reserved."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `admin`: The admin of this collection. The admin is the initial address of each"] #[doc = "member of the collection's admin team."] #[doc = ""] #[doc = "Emits `Created` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn create( &self, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, config: runtime_types::pallet_nfts::types::CollectionConfig< ::core::primitive::u128, ::core::primitive::u32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "create", Create { admin, config }, [ 39u8, 4u8, 38u8, 44u8, 147u8, 41u8, 137u8, 135u8, 131u8, 186u8, 47u8, 61u8, 129u8, 151u8, 187u8, 234u8, 92u8, 11u8, 75u8, 150u8, 166u8, 187u8, 114u8, 41u8, 74u8, 33u8, 200u8, 13u8, 104u8, 73u8, 35u8, 58u8, ], ) } #[doc = "Issue a new collection of non-fungible items from a privileged origin."] #[doc = ""] #[doc = "This new collection has no items initially."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin`."] #[doc = ""] #[doc = "Unlike `create`, no funds are reserved."] #[doc = ""] #[doc = "- `owner`: The owner of this collection of items. The owner has full superuser"] #[doc = " permissions over this item, but may later change and configure the permissions using"] #[doc = " `transfer_ownership` and `set_team`."] #[doc = ""] #[doc = "Emits `ForceCreated` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn force_create( &self, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, config: runtime_types::pallet_nfts::types::CollectionConfig< ::core::primitive::u128, ::core::primitive::u32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "force_create", ForceCreate { owner, config }, [ 90u8, 0u8, 154u8, 141u8, 23u8, 101u8, 243u8, 20u8, 255u8, 61u8, 114u8, 183u8, 127u8, 92u8, 131u8, 14u8, 179u8, 96u8, 133u8, 180u8, 69u8, 67u8, 133u8, 205u8, 167u8, 207u8, 173u8, 56u8, 185u8, 241u8, 129u8, 74u8, ], ) } #[doc = "Destroy a collection of fungible items."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin` or must be `Signed` and the sender must be the"] #[doc = "owner of the `collection`."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection to be destroyed."] #[doc = "- `witness`: Information on the items minted in the collection. This must be"] #[doc = "correct."] #[doc = ""] #[doc = "Emits `Destroyed` event when successful."] #[doc = ""] #[doc = "Weight: `O(n + m)` where:"] #[doc = "- `n = witness.items`"] #[doc = "- `m = witness.item_metadatas`"] #[doc = "- `a = witness.attributes`"] pub fn destroy( &self, collection: ::core::primitive::u32, witness: runtime_types::pallet_nfts::types::DestroyWitness, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "destroy", Destroy { collection, witness, }, [ 194u8, 219u8, 14u8, 11u8, 254u8, 25u8, 217u8, 157u8, 117u8, 236u8, 144u8, 148u8, 151u8, 141u8, 40u8, 60u8, 243u8, 241u8, 140u8, 184u8, 45u8, 153u8, 33u8, 177u8, 248u8, 79u8, 67u8, 249u8, 47u8, 244u8, 198u8, 138u8, ], ) } #[doc = "Mint an item of a particular collection."] #[doc = ""] #[doc = "The origin must be Signed and the sender must be the Issuer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be minted."] #[doc = "- `item`: An identifier of the new item."] #[doc = "- `mint_to`: Account into which the item will be minted."] #[doc = "- `witness_data`: When the mint type is `HolderOf(collection_id)`, then the owned"] #[doc = " item_id from that collection needs to be provided within the witness data object."] #[doc = ""] #[doc = "Note: the deposit will be taken from the `origin` and not the `owner` of the `item`."] #[doc = ""] #[doc = "Emits `Issued` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn mint( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, mint_to: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, witness_data: ::core::option::Option< runtime_types::pallet_nfts::types::MintWitness< ::core::primitive::u32, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "mint", Mint { collection, item, mint_to, witness_data, }, [ 242u8, 13u8, 249u8, 201u8, 133u8, 131u8, 113u8, 75u8, 214u8, 186u8, 242u8, 24u8, 48u8, 50u8, 241u8, 168u8, 60u8, 18u8, 132u8, 151u8, 84u8, 243u8, 93u8, 128u8, 215u8, 66u8, 14u8, 218u8, 138u8, 88u8, 185u8, 56u8, ], ) } #[doc = "Mint an item of a particular collection from a privileged origin."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin` or must be `Signed` and the sender must be the"] #[doc = "Issuer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be minted."] #[doc = "- `item`: An identifier of the new item."] #[doc = "- `mint_to`: Account into which the item will be minted."] #[doc = "- `item_config`: A config of the new item."] #[doc = ""] #[doc = "Emits `Issued` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn force_mint( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, mint_to: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, item_config: runtime_types::pallet_nfts::types::ItemConfig, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "force_mint", ForceMint { collection, item, mint_to, item_config, }, [ 178u8, 21u8, 236u8, 7u8, 99u8, 52u8, 79u8, 176u8, 166u8, 27u8, 167u8, 111u8, 15u8, 106u8, 139u8, 203u8, 173u8, 57u8, 103u8, 167u8, 241u8, 196u8, 201u8, 16u8, 245u8, 68u8, 26u8, 71u8, 152u8, 132u8, 107u8, 73u8, ], ) } #[doc = "Destroy a single item."] #[doc = ""] #[doc = "Origin must be Signed and the signing account must be either:"] #[doc = "- the Admin of the `collection`;"] #[doc = "- the Owner of the `item`;"] #[doc = ""] #[doc = "- `collection`: The collection of the item to be burned."] #[doc = "- `item`: The item to be burned."] #[doc = "- `check_owner`: If `Some` then the operation will fail with `WrongOwner` unless the"] #[doc = " item is owned by this value."] #[doc = ""] #[doc = "Emits `Burned` with the actual amount burned."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: `check_owner.is_some()`."] pub fn burn( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, check_owner: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "burn", Burn { collection, item, check_owner, }, [ 215u8, 138u8, 65u8, 126u8, 201u8, 135u8, 73u8, 194u8, 2u8, 196u8, 229u8, 103u8, 140u8, 74u8, 21u8, 144u8, 111u8, 99u8, 200u8, 210u8, 191u8, 108u8, 220u8, 56u8, 64u8, 89u8, 216u8, 181u8, 175u8, 57u8, 41u8, 173u8, ], ) } #[doc = "Move an item from the sender account to another."] #[doc = ""] #[doc = "Origin must be Signed and the signing account must be either:"] #[doc = "- the Admin of the `collection`;"] #[doc = "- the Owner of the `item`;"] #[doc = "- the approved delegate for the `item` (in this case, the approval is reset)."] #[doc = ""] #[doc = "Arguments:"] #[doc = "- `collection`: The collection of the item to be transferred."] #[doc = "- `item`: The item to be transferred."] #[doc = "- `dest`: The account to receive ownership of the item."] #[doc = ""] #[doc = "Emits `Transferred`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn transfer( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "transfer", Transfer { collection, item, dest, }, [ 223u8, 90u8, 63u8, 140u8, 84u8, 72u8, 67u8, 84u8, 225u8, 84u8, 4u8, 197u8, 17u8, 53u8, 151u8, 209u8, 163u8, 114u8, 253u8, 225u8, 44u8, 171u8, 240u8, 8u8, 112u8, 8u8, 20u8, 25u8, 224u8, 131u8, 175u8, 40u8, ], ) } #[doc = "Re-evaluate the deposits on some items."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection of the items to be reevaluated."] #[doc = "- `items`: The items of the collection whose deposits will be reevaluated."] #[doc = ""] #[doc = "NOTE: This exists as a best-effort function. Any items which are unknown or"] #[doc = "in the case that the owner account does not have reservable funds to pay for a"] #[doc = "deposit increase are ignored. Generally the owner isn't going to call this on items"] #[doc = "whose existing deposit is less than the refreshed deposit as it would only cost them,"] #[doc = "so it's of little consequence."] #[doc = ""] #[doc = "It will still return an error in the case that the collection is unknown or the signer"] #[doc = "is not permitted to call it."] #[doc = ""] #[doc = "Weight: `O(items.len())`"] pub fn redeposit( &self, collection: ::core::primitive::u32, items: ::std::vec::Vec<::core::primitive::u32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "redeposit", Redeposit { collection, items }, [ 81u8, 142u8, 143u8, 126u8, 12u8, 71u8, 139u8, 28u8, 170u8, 219u8, 195u8, 22u8, 146u8, 69u8, 202u8, 7u8, 202u8, 113u8, 93u8, 187u8, 113u8, 16u8, 8u8, 76u8, 3u8, 124u8, 248u8, 38u8, 17u8, 232u8, 120u8, 145u8, ], ) } #[doc = "Disallow further unprivileged transfer of an item."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be changed."] #[doc = "- `item`: The item to become non-transferable."] #[doc = ""] #[doc = "Emits `ItemTransferLocked`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn lock_item_transfer( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "lock_item_transfer", LockItemTransfer { collection, item }, [ 234u8, 3u8, 222u8, 142u8, 68u8, 171u8, 104u8, 48u8, 216u8, 153u8, 167u8, 77u8, 161u8, 153u8, 191u8, 245u8, 190u8, 228u8, 255u8, 138u8, 215u8, 196u8, 189u8, 121u8, 251u8, 56u8, 158u8, 157u8, 156u8, 189u8, 135u8, 16u8, ], ) } #[doc = "Re-allow unprivileged transfer of an item."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be changed."] #[doc = "- `item`: The item to become transferable."] #[doc = ""] #[doc = "Emits `ItemTransferUnlocked`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn unlock_item_transfer( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "unlock_item_transfer", UnlockItemTransfer { collection, item }, [ 33u8, 30u8, 131u8, 204u8, 136u8, 8u8, 180u8, 37u8, 180u8, 93u8, 79u8, 20u8, 113u8, 73u8, 213u8, 68u8, 158u8, 72u8, 10u8, 46u8, 204u8, 109u8, 132u8, 127u8, 42u8, 78u8, 196u8, 228u8, 84u8, 61u8, 139u8, 85u8, ], ) } #[doc = "Disallows specified settings for the whole collection."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection to be locked."] #[doc = "- `lock_settings`: The settings to be locked."] #[doc = ""] #[doc = "Note: it's possible to only lock(set) the setting, but not to unset it."] #[doc = "Emits `CollectionLocked`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn lock_collection( &self, collection: ::core::primitive::u32, lock_settings: runtime_types::pallet_nfts::types::BitFlags< runtime_types::pallet_nfts::types::CollectionSetting, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "lock_collection", LockCollection { collection, lock_settings, }, [ 116u8, 190u8, 188u8, 12u8, 163u8, 231u8, 39u8, 163u8, 83u8, 109u8, 15u8, 248u8, 154u8, 19u8, 9u8, 27u8, 160u8, 66u8, 105u8, 55u8, 164u8, 61u8, 8u8, 139u8, 210u8, 192u8, 116u8, 44u8, 75u8, 4u8, 166u8, 215u8, ], ) } #[doc = "Change the Owner of a collection."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection whose owner should be changed."] #[doc = "- `owner`: The new Owner of this collection. They must have called"] #[doc = " `set_accept_ownership` with `collection` in order for this operation to succeed."] #[doc = ""] #[doc = "Emits `OwnerChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn transfer_ownership( &self, collection: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "transfer_ownership", TransferOwnership { collection, owner }, [ 217u8, 228u8, 51u8, 96u8, 179u8, 215u8, 163u8, 137u8, 231u8, 239u8, 181u8, 113u8, 48u8, 144u8, 91u8, 140u8, 50u8, 175u8, 81u8, 251u8, 128u8, 208u8, 38u8, 246u8, 103u8, 219u8, 65u8, 179u8, 153u8, 4u8, 154u8, 181u8, ], ) } #[doc = "Change the Issuer, Admin and Freezer of a collection."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`collection`."] #[doc = ""] #[doc = "- `collection`: The collection whose team should be changed."] #[doc = "- `issuer`: The new Issuer of this collection."] #[doc = "- `admin`: The new Admin of this collection."] #[doc = "- `freezer`: The new Freezer of this collection."] #[doc = ""] #[doc = "Emits `TeamChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn set_team( &self, collection: ::core::primitive::u32, issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "set_team", SetTeam { collection, issuer, admin, freezer, }, [ 34u8, 168u8, 70u8, 30u8, 29u8, 186u8, 131u8, 181u8, 132u8, 63u8, 163u8, 22u8, 244u8, 41u8, 205u8, 234u8, 17u8, 238u8, 54u8, 64u8, 158u8, 136u8, 50u8, 40u8, 242u8, 117u8, 111u8, 211u8, 168u8, 156u8, 156u8, 27u8, ], ) } #[doc = "Change the Owner of a collection."] #[doc = ""] #[doc = "Origin must be `ForceOrigin`."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection."] #[doc = "- `owner`: The new Owner of this collection."] #[doc = ""] #[doc = "Emits `OwnerChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn force_collection_owner( &self, collection: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "force_collection_owner", ForceCollectionOwner { collection, owner }, [ 170u8, 152u8, 48u8, 227u8, 138u8, 164u8, 130u8, 169u8, 175u8, 227u8, 210u8, 90u8, 78u8, 126u8, 18u8, 171u8, 115u8, 42u8, 102u8, 13u8, 221u8, 210u8, 188u8, 170u8, 230u8, 105u8, 40u8, 124u8, 168u8, 127u8, 17u8, 53u8, ], ) } #[doc = "Change the config of a collection."] #[doc = ""] #[doc = "Origin must be `ForceOrigin`."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection."] #[doc = "- `config`: The new config of this collection."] #[doc = ""] #[doc = "Emits `CollectionConfigChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn force_collection_config( &self, collection: ::core::primitive::u32, config: runtime_types::pallet_nfts::types::CollectionConfig< ::core::primitive::u128, ::core::primitive::u32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "force_collection_config", ForceCollectionConfig { collection, config }, [ 6u8, 58u8, 170u8, 231u8, 3u8, 28u8, 161u8, 69u8, 157u8, 145u8, 67u8, 247u8, 153u8, 129u8, 105u8, 169u8, 227u8, 12u8, 166u8, 11u8, 219u8, 186u8, 145u8, 102u8, 192u8, 36u8, 44u8, 230u8, 213u8, 63u8, 240u8, 227u8, ], ) } #[doc = "Approve an item to be transferred by a delegated third-party account."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`item`."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be approved for delegated transfer."] #[doc = "- `item`: The item to be approved for delegated transfer."] #[doc = "- `delegate`: The account to delegate permission to transfer the item."] #[doc = "- `maybe_deadline`: Optional deadline for the approval. Specified by providing the"] #[doc = "\tnumber of blocks after which the approval will expire"] #[doc = ""] #[doc = "Emits `TransferApproved` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn approve_transfer( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, maybe_deadline: ::core::option::Option<::core::primitive::u32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "approve_transfer", ApproveTransfer { collection, item, delegate, maybe_deadline, }, [ 203u8, 41u8, 60u8, 28u8, 226u8, 166u8, 64u8, 195u8, 219u8, 2u8, 245u8, 4u8, 171u8, 221u8, 218u8, 209u8, 31u8, 160u8, 142u8, 215u8, 93u8, 49u8, 174u8, 105u8, 117u8, 52u8, 166u8, 177u8, 206u8, 189u8, 101u8, 113u8, ], ) } #[doc = "Cancel one of the transfer approvals for a specific item."] #[doc = ""] #[doc = "Origin must be either:"] #[doc = "- the `Force` origin;"] #[doc = "- `Signed` with the signer being the Admin of the `collection`;"] #[doc = "- `Signed` with the signer being the Owner of the `item`;"] #[doc = ""] #[doc = "Arguments:"] #[doc = "- `collection`: The collection of the item of whose approval will be cancelled."] #[doc = "- `item`: The item of the collection of whose approval will be cancelled."] #[doc = "- `delegate`: The account that is going to loose their approval."] #[doc = ""] #[doc = "Emits `ApprovalCancelled` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn cancel_approval( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "cancel_approval", CancelApproval { collection, item, delegate, }, [ 129u8, 99u8, 206u8, 28u8, 18u8, 72u8, 197u8, 126u8, 239u8, 204u8, 219u8, 232u8, 160u8, 110u8, 206u8, 64u8, 162u8, 54u8, 134u8, 7u8, 221u8, 61u8, 95u8, 23u8, 71u8, 10u8, 25u8, 244u8, 14u8, 31u8, 179u8, 58u8, ], ) } #[doc = "Cancel all the approvals of a specific item."] #[doc = ""] #[doc = "Origin must be either:"] #[doc = "- the `Force` origin;"] #[doc = "- `Signed` with the signer being the Admin of the `collection`;"] #[doc = "- `Signed` with the signer being the Owner of the `item`;"] #[doc = ""] #[doc = "Arguments:"] #[doc = "- `collection`: The collection of the item of whose approvals will be cleared."] #[doc = "- `item`: The item of the collection of whose approvals will be cleared."] #[doc = ""] #[doc = "Emits `AllApprovalsCancelled` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn clear_all_transfer_approvals( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "clear_all_transfer_approvals", ClearAllTransferApprovals { collection, item }, [ 95u8, 218u8, 189u8, 248u8, 199u8, 163u8, 184u8, 65u8, 200u8, 240u8, 134u8, 224u8, 12u8, 139u8, 222u8, 193u8, 78u8, 71u8, 63u8, 57u8, 124u8, 249u8, 239u8, 188u8, 38u8, 15u8, 203u8, 184u8, 243u8, 87u8, 17u8, 166u8, ], ) } #[doc = "Disallows changing the metadata or attributes of the item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`collection`."] #[doc = ""] #[doc = "- `collection`: The collection if the `item`."] #[doc = "- `item`: An item to be locked."] #[doc = "- `lock_metadata`: Specifies whether the metadata should be locked."] #[doc = "- `lock_attributes`: Specifies whether the attributes in the `CollectionOwner` namespace"] #[doc = " should be locked."] #[doc = ""] #[doc = "Note: `lock_attributes` affects the attributes in the `CollectionOwner` namespace"] #[doc = "only. When the metadata or attributes are locked, it won't be possible the unlock them."] #[doc = ""] #[doc = "Emits `ItemPropertiesLocked`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn lock_item_properties( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, lock_metadata: ::core::primitive::bool, lock_attributes: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "lock_item_properties", LockItemProperties { collection, item, lock_metadata, lock_attributes, }, [ 243u8, 23u8, 227u8, 8u8, 254u8, 177u8, 170u8, 38u8, 48u8, 179u8, 166u8, 53u8, 131u8, 186u8, 211u8, 107u8, 186u8, 116u8, 204u8, 188u8, 15u8, 206u8, 79u8, 136u8, 179u8, 141u8, 146u8, 22u8, 156u8, 90u8, 21u8, 213u8, ], ) } #[doc = "Set an attribute for a collection or item."] #[doc = ""] #[doc = "Origin must be Signed and must conform to the namespace ruleset:"] #[doc = "- `CollectionOwner` namespace could be modified by the `collection` owner only;"] #[doc = "- `ItemOwner` namespace could be modified by the `maybe_item` owner only. `maybe_item`"] #[doc = " should be set in that case;"] #[doc = "- `Account(AccountId)` namespace could be modified only when the `origin` was given a"] #[doc = " permission to do so;"] #[doc = ""] #[doc = "The funds of `origin` are reserved according to the formula:"] #[doc = "`AttributeDepositBase + DepositPerByte * (key.len + value.len)` taking into"] #[doc = "account any already reserved funds."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to set."] #[doc = "- `maybe_item`: The identifier of the item whose metadata to set."] #[doc = "- `namespace`: Attribute's namespace."] #[doc = "- `key`: The key of the attribute."] #[doc = "- `value`: The value to which to set the attribute."] #[doc = ""] #[doc = "Emits `AttributeSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn set_attribute( &self, collection: ::core::primitive::u32, maybe_item: ::core::option::Option<::core::primitive::u32>, namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 >, key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, value: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "set_attribute", SetAttribute { collection, maybe_item, namespace, key, value, }, [ 191u8, 30u8, 39u8, 37u8, 65u8, 243u8, 40u8, 67u8, 160u8, 45u8, 63u8, 196u8, 221u8, 105u8, 159u8, 211u8, 198u8, 125u8, 14u8, 233u8, 59u8, 208u8, 197u8, 137u8, 88u8, 101u8, 234u8, 71u8, 102u8, 161u8, 219u8, 179u8, ], ) } #[doc = "Force-set an attribute for a collection or item."] #[doc = ""] #[doc = "Origin must be `ForceOrigin`."] #[doc = ""] #[doc = "If the attribute already exists and it was set by another account, the deposit"] #[doc = "will be returned to the previous owner."] #[doc = ""] #[doc = "- `set_as`: An optional owner of the attribute."] #[doc = "- `collection`: The identifier of the collection whose item's metadata to set."] #[doc = "- `maybe_item`: The identifier of the item whose metadata to set."] #[doc = "- `namespace`: Attribute's namespace."] #[doc = "- `key`: The key of the attribute."] #[doc = "- `value`: The value to which to set the attribute."] #[doc = ""] #[doc = "Emits `AttributeSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn force_set_attribute( &self, set_as: ::core::option::Option<::subxt::utils::AccountId32>, collection: ::core::primitive::u32, maybe_item: ::core::option::Option<::core::primitive::u32>, namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 >, key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, value: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "force_set_attribute", ForceSetAttribute { set_as, collection, maybe_item, namespace, key, value, }, [ 8u8, 111u8, 29u8, 35u8, 198u8, 9u8, 1u8, 219u8, 122u8, 60u8, 134u8, 199u8, 254u8, 1u8, 85u8, 126u8, 58u8, 137u8, 243u8, 228u8, 252u8, 143u8, 95u8, 8u8, 251u8, 3u8, 86u8, 11u8, 40u8, 87u8, 138u8, 230u8, ], ) } #[doc = "Clear an attribute for a collection or item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "attribute."] #[doc = ""] #[doc = "Any deposit is freed for the collection's owner."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to clear."] #[doc = "- `maybe_item`: The identifier of the item whose metadata to clear."] #[doc = "- `namespace`: Attribute's namespace."] #[doc = "- `key`: The key of the attribute."] #[doc = ""] #[doc = "Emits `AttributeCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn clear_attribute( &self, collection: ::core::primitive::u32, maybe_item: ::core::option::Option<::core::primitive::u32>, namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 >, key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "clear_attribute", ClearAttribute { collection, maybe_item, namespace, key, }, [ 110u8, 144u8, 255u8, 153u8, 138u8, 39u8, 100u8, 38u8, 242u8, 147u8, 177u8, 103u8, 167u8, 154u8, 46u8, 57u8, 16u8, 82u8, 153u8, 228u8, 3u8, 161u8, 198u8, 61u8, 73u8, 28u8, 93u8, 216u8, 120u8, 194u8, 183u8, 220u8, ], ) } #[doc = "Approve item's attributes to be changed by a delegated third-party account."] #[doc = ""] #[doc = "Origin must be Signed and must be an owner of the `item`."] #[doc = ""] #[doc = "- `collection`: A collection of the item."] #[doc = "- `item`: The item that holds attributes."] #[doc = "- `delegate`: The account to delegate permission to change attributes of the item."] #[doc = ""] #[doc = "Emits `ItemAttributesApprovalAdded` on success."] pub fn approve_item_attributes( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "approve_item_attributes", ApproveItemAttributes { collection, item, delegate, }, [ 194u8, 174u8, 249u8, 37u8, 88u8, 207u8, 198u8, 238u8, 83u8, 11u8, 170u8, 0u8, 56u8, 5u8, 64u8, 138u8, 30u8, 184u8, 71u8, 79u8, 178u8, 189u8, 125u8, 249u8, 141u8, 173u8, 164u8, 109u8, 192u8, 0u8, 179u8, 67u8, ], ) } #[doc = "Cancel the previously provided approval to change item's attributes."] #[doc = "All the previously set attributes by the `delegate` will be removed."] #[doc = ""] #[doc = "Origin must be Signed and must be an owner of the `item`."] #[doc = ""] #[doc = "- `collection`: Collection that the item is contained within."] #[doc = "- `item`: The item that holds attributes."] #[doc = "- `delegate`: The previously approved account to remove."] #[doc = ""] #[doc = "Emits `ItemAttributesApprovalRemoved` on success."] pub fn cancel_item_attributes_approval( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, witness : runtime_types :: pallet_nfts :: types :: CancelAttributesApprovalWitness, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "cancel_item_attributes_approval", CancelItemAttributesApproval { collection, item, delegate, witness, }, [ 237u8, 139u8, 12u8, 197u8, 94u8, 100u8, 182u8, 14u8, 202u8, 190u8, 87u8, 148u8, 61u8, 240u8, 8u8, 197u8, 28u8, 18u8, 85u8, 86u8, 215u8, 201u8, 54u8, 187u8, 141u8, 68u8, 156u8, 231u8, 15u8, 219u8, 234u8, 26u8, ], ) } #[doc = "Set the metadata for an item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`collection`."] #[doc = ""] #[doc = "If the origin is Signed, then funds of signer are reserved according to the formula:"] #[doc = "`MetadataDepositBase + DepositPerByte * data.len` taking into"] #[doc = "account any already reserved funds."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to set."] #[doc = "- `item`: The identifier of the item whose metadata to set."] #[doc = "- `data`: The general information of this item. Limited in length by `StringLimit`."] #[doc = ""] #[doc = "Emits `ItemMetadataSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn set_metadata( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "set_metadata", SetMetadata { collection, item, data, }, [ 45u8, 223u8, 215u8, 10u8, 235u8, 165u8, 61u8, 151u8, 170u8, 176u8, 34u8, 182u8, 95u8, 218u8, 7u8, 115u8, 99u8, 241u8, 221u8, 190u8, 211u8, 24u8, 44u8, 121u8, 79u8, 93u8, 37u8, 154u8, 155u8, 205u8, 176u8, 158u8, ], ) } #[doc = "Clear the metadata for an item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`collection`."] #[doc = ""] #[doc = "Any deposit is freed for the collection's owner."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to clear."] #[doc = "- `item`: The identifier of the item whose metadata to clear."] #[doc = ""] #[doc = "Emits `ItemMetadataCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn clear_metadata( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "clear_metadata", ClearMetadata { collection, item }, [ 113u8, 75u8, 211u8, 250u8, 129u8, 61u8, 231u8, 204u8, 141u8, 151u8, 65u8, 108u8, 230u8, 68u8, 51u8, 165u8, 126u8, 211u8, 51u8, 33u8, 9u8, 47u8, 50u8, 71u8, 123u8, 71u8, 43u8, 162u8, 76u8, 1u8, 90u8, 222u8, ], ) } #[doc = "Set the metadata for a collection."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] #[doc = "the `collection`."] #[doc = ""] #[doc = "If the origin is `Signed`, then funds of signer are reserved according to the formula:"] #[doc = "`MetadataDepositBase + DepositPerByte * data.len` taking into"] #[doc = "account any already reserved funds."] #[doc = ""] #[doc = "- `collection`: The identifier of the item whose metadata to update."] #[doc = "- `data`: The general information of this item. Limited in length by `StringLimit`."] #[doc = ""] #[doc = "Emits `CollectionMetadataSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn set_collection_metadata( &self, collection: ::core::primitive::u32, data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "set_collection_metadata", SetCollectionMetadata { collection, data }, [ 32u8, 118u8, 96u8, 38u8, 27u8, 73u8, 98u8, 37u8, 105u8, 42u8, 127u8, 130u8, 202u8, 159u8, 214u8, 72u8, 127u8, 178u8, 5u8, 184u8, 217u8, 59u8, 205u8, 120u8, 161u8, 177u8, 186u8, 204u8, 117u8, 111u8, 5u8, 10u8, ], ) } #[doc = "Clear the metadata for a collection."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] #[doc = "the `collection`."] #[doc = ""] #[doc = "Any deposit is freed for the collection's owner."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose metadata to clear."] #[doc = ""] #[doc = "Emits `CollectionMetadataCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn clear_collection_metadata( &self, collection: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "clear_collection_metadata", ClearCollectionMetadata { collection }, [ 218u8, 108u8, 43u8, 96u8, 85u8, 130u8, 198u8, 167u8, 28u8, 4u8, 151u8, 185u8, 162u8, 123u8, 120u8, 42u8, 72u8, 37u8, 250u8, 135u8, 100u8, 37u8, 193u8, 232u8, 62u8, 91u8, 18u8, 120u8, 241u8, 47u8, 73u8, 209u8, ], ) } #[doc = "Set (or reset) the acceptance of ownership for a particular account."] #[doc = ""] #[doc = "Origin must be `Signed` and if `maybe_collection` is `Some`, then the signer must have a"] #[doc = "provider reference."] #[doc = ""] #[doc = "- `maybe_collection`: The identifier of the collection whose ownership the signer is"] #[doc = " willing to accept, or if `None`, an indication that the signer is willing to accept no"] #[doc = " ownership transferal."] #[doc = ""] #[doc = "Emits `OwnershipAcceptanceChanged`."] pub fn set_accept_ownership( &self, maybe_collection: ::core::option::Option<::core::primitive::u32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "set_accept_ownership", SetAcceptOwnership { maybe_collection }, [ 171u8, 174u8, 217u8, 70u8, 115u8, 1u8, 231u8, 149u8, 223u8, 227u8, 6u8, 226u8, 190u8, 144u8, 101u8, 21u8, 147u8, 243u8, 123u8, 228u8, 42u8, 27u8, 126u8, 58u8, 31u8, 233u8, 54u8, 157u8, 193u8, 212u8, 114u8, 232u8, ], ) } #[doc = "Set the maximum number of items a collection could have."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] #[doc = "the `collection`."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection to change."] #[doc = "- `max_supply`: The maximum number of items a collection could have."] #[doc = ""] #[doc = "Emits `CollectionMaxSupplySet` event when successful."] pub fn set_collection_max_supply( &self, collection: ::core::primitive::u32, max_supply: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "set_collection_max_supply", SetCollectionMaxSupply { collection, max_supply, }, [ 116u8, 134u8, 93u8, 228u8, 6u8, 198u8, 26u8, 168u8, 154u8, 137u8, 0u8, 151u8, 1u8, 187u8, 36u8, 154u8, 62u8, 193u8, 250u8, 83u8, 41u8, 135u8, 187u8, 4u8, 132u8, 234u8, 207u8, 127u8, 153u8, 157u8, 76u8, 80u8, ], ) } #[doc = "Update mint settings."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] #[doc = "the `collection`."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection to change."] #[doc = "- `mint_settings`: The new mint settings."] #[doc = ""] #[doc = "Emits `CollectionMintSettingsUpdated` event when successful."] pub fn update_mint_settings( &self, collection: ::core::primitive::u32, mint_settings: runtime_types::pallet_nfts::types::MintSettings< ::core::primitive::u128, ::core::primitive::u32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "update_mint_settings", UpdateMintSettings { collection, mint_settings, }, [ 194u8, 13u8, 39u8, 21u8, 179u8, 228u8, 251u8, 99u8, 247u8, 10u8, 0u8, 247u8, 69u8, 226u8, 191u8, 143u8, 182u8, 128u8, 112u8, 142u8, 138u8, 99u8, 197u8, 62u8, 246u8, 150u8, 184u8, 172u8, 100u8, 238u8, 236u8, 236u8, ], ) } #[doc = "Set (or reset) the price for an item."] #[doc = ""] #[doc = "Origin must be Signed and must be the owner of the asset `item`."] #[doc = ""] #[doc = "- `collection`: The collection of the item."] #[doc = "- `item`: The item to set the price for."] #[doc = "- `price`: The price for the item. Pass `None`, to reset the price."] #[doc = "- `buyer`: Restricts the buy operation to a specific account."] #[doc = ""] #[doc = "Emits `ItemPriceSet` on success if the price is not `None`."] #[doc = "Emits `ItemPriceRemoved` on success if the price is `None`."] pub fn set_price( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, price: ::core::option::Option<::core::primitive::u128>, whitelisted_buyer: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "set_price", SetPrice { collection, item, price, whitelisted_buyer, }, [ 159u8, 178u8, 134u8, 144u8, 165u8, 80u8, 141u8, 253u8, 194u8, 11u8, 8u8, 215u8, 7u8, 82u8, 138u8, 62u8, 81u8, 178u8, 75u8, 84u8, 97u8, 175u8, 161u8, 97u8, 125u8, 175u8, 70u8, 247u8, 209u8, 132u8, 48u8, 196u8, ], ) } #[doc = "Allows to buy an item if it's up for sale."] #[doc = ""] #[doc = "Origin must be Signed and must not be the owner of the `item`."] #[doc = ""] #[doc = "- `collection`: The collection of the item."] #[doc = "- `item`: The item the sender wants to buy."] #[doc = "- `bid_price`: The price the sender is willing to pay."] #[doc = ""] #[doc = "Emits `ItemBought` on success."] pub fn buy_item( &self, collection: ::core::primitive::u32, item: ::core::primitive::u32, bid_price: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "buy_item", BuyItem { collection, item, bid_price, }, [ 79u8, 39u8, 106u8, 21u8, 227u8, 244u8, 7u8, 107u8, 125u8, 114u8, 24u8, 254u8, 208u8, 67u8, 31u8, 123u8, 134u8, 29u8, 94u8, 243u8, 164u8, 137u8, 191u8, 71u8, 17u8, 170u8, 226u8, 172u8, 233u8, 198u8, 226u8, 33u8, ], ) } #[doc = "Allows to pay the tips."] #[doc = ""] #[doc = "Origin must be Signed."] #[doc = ""] #[doc = "- `tips`: Tips array."] #[doc = ""] #[doc = "Emits `TipSent` on every tip transfer."] pub fn pay_tips( &self, tips: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_nfts::types::ItemTip< ::core::primitive::u32, ::core::primitive::u32, ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "pay_tips", PayTips { tips }, [ 139u8, 37u8, 187u8, 31u8, 201u8, 46u8, 235u8, 234u8, 117u8, 184u8, 146u8, 246u8, 127u8, 116u8, 180u8, 166u8, 69u8, 43u8, 152u8, 109u8, 10u8, 43u8, 67u8, 92u8, 118u8, 242u8, 217u8, 166u8, 35u8, 73u8, 148u8, 226u8, ], ) } #[doc = "Register a new atomic swap, declaring an intention to send an `item` in exchange for"] #[doc = "`desired_item` from origin to target on the current blockchain."] #[doc = "The target can execute the swap during the specified `duration` of blocks (if set)."] #[doc = "Additionally, the price could be set for the desired `item`."] #[doc = ""] #[doc = "Origin must be Signed and must be an owner of the `item`."] #[doc = ""] #[doc = "- `collection`: The collection of the item."] #[doc = "- `item`: The item an owner wants to give."] #[doc = "- `desired_collection`: The collection of the desired item."] #[doc = "- `desired_item`: The desired item an owner wants to receive."] #[doc = "- `maybe_price`: The price an owner is willing to pay or receive for the desired `item`."] #[doc = "- `duration`: A deadline for the swap. Specified by providing the number of blocks"] #[doc = "\tafter which the swap will expire."] #[doc = ""] #[doc = "Emits `SwapCreated` on success."] pub fn create_swap( &self, offered_collection: ::core::primitive::u32, offered_item: ::core::primitive::u32, desired_collection: ::core::primitive::u32, maybe_desired_item: ::core::option::Option<::core::primitive::u32>, maybe_price: ::core::option::Option< runtime_types::pallet_nfts::types::PriceWithDirection< ::core::primitive::u128, >, >, duration: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "create_swap", CreateSwap { offered_collection, offered_item, desired_collection, maybe_desired_item, maybe_price, duration, }, [ 71u8, 97u8, 120u8, 17u8, 181u8, 119u8, 135u8, 247u8, 45u8, 11u8, 240u8, 111u8, 120u8, 47u8, 66u8, 66u8, 104u8, 248u8, 224u8, 129u8, 153u8, 148u8, 233u8, 20u8, 105u8, 169u8, 54u8, 191u8, 22u8, 169u8, 148u8, 31u8, ], ) } #[doc = "Cancel an atomic swap."] #[doc = ""] #[doc = "Origin must be Signed."] #[doc = "Origin must be an owner of the `item` if the deadline hasn't expired."] #[doc = ""] #[doc = "- `collection`: The collection of the item."] #[doc = "- `item`: The item an owner wants to give."] #[doc = ""] #[doc = "Emits `SwapCancelled` on success."] pub fn cancel_swap( &self, offered_collection: ::core::primitive::u32, offered_item: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "cancel_swap", CancelSwap { offered_collection, offered_item, }, [ 87u8, 2u8, 127u8, 158u8, 82u8, 37u8, 1u8, 140u8, 227u8, 31u8, 131u8, 188u8, 250u8, 66u8, 147u8, 211u8, 65u8, 6u8, 251u8, 60u8, 82u8, 45u8, 217u8, 114u8, 204u8, 161u8, 25u8, 166u8, 135u8, 7u8, 119u8, 91u8, ], ) } #[doc = "Claim an atomic swap."] #[doc = "This method executes a pending swap, that was created by a counterpart before."] #[doc = ""] #[doc = "Origin must be Signed and must be an owner of the `item`."] #[doc = ""] #[doc = "- `send_collection`: The collection of the item to be sent."] #[doc = "- `send_item`: The item to be sent."] #[doc = "- `receive_collection`: The collection of the item to be received."] #[doc = "- `receive_item`: The item to be received."] #[doc = "- `witness_price`: A price that was previously agreed on."] #[doc = ""] #[doc = "Emits `SwapClaimed` on success."] pub fn claim_swap( &self, send_collection: ::core::primitive::u32, send_item: ::core::primitive::u32, receive_collection: ::core::primitive::u32, receive_item: ::core::primitive::u32, witness_price: ::core::option::Option< runtime_types::pallet_nfts::types::PriceWithDirection< ::core::primitive::u128, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Nfts", "claim_swap", ClaimSwap { send_collection, send_item, receive_collection, receive_item, witness_price, }, [ 221u8, 120u8, 31u8, 254u8, 154u8, 243u8, 53u8, 56u8, 138u8, 174u8, 83u8, 58u8, 78u8, 240u8, 177u8, 153u8, 1u8, 27u8, 203u8, 147u8, 53u8, 24u8, 186u8, 196u8, 22u8, 161u8, 106u8, 125u8, 166u8, 212u8, 116u8, 247u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_nfts::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A `collection` was created."] pub struct Created { pub collection: ::core::primitive::u32, pub creator: ::subxt::utils::AccountId32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Created { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "Created"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A `collection` was force-created."] pub struct ForceCreated { pub collection: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for ForceCreated { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ForceCreated"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A `collection` was destroyed."] pub struct Destroyed { pub collection: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Destroyed { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "Destroyed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `item` was issued."] pub struct Issued { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Issued { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "Issued"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `item` was transferred."] pub struct Transferred { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub from: ::subxt::utils::AccountId32, pub to: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Transferred { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "Transferred"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `item` was destroyed."] pub struct Burned { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Burned { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "Burned"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `item` became non-transferable."] pub struct ItemTransferLocked { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ItemTransferLocked { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ItemTransferLocked"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `item` became transferable."] pub struct ItemTransferUnlocked { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ItemTransferUnlocked { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ItemTransferUnlocked"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "`item` metadata or attributes were locked."] pub struct ItemPropertiesLocked { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub lock_metadata: ::core::primitive::bool, pub lock_attributes: ::core::primitive::bool, } impl ::subxt::events::StaticEvent for ItemPropertiesLocked { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ItemPropertiesLocked"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some `collection` was locked."] pub struct CollectionLocked { pub collection: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for CollectionLocked { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "CollectionLocked"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The owner changed."] pub struct OwnerChanged { pub collection: ::core::primitive::u32, pub new_owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for OwnerChanged { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "OwnerChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The management team changed."] pub struct TeamChanged { pub collection: ::core::primitive::u32, pub issuer: ::subxt::utils::AccountId32, pub admin: ::subxt::utils::AccountId32, pub freezer: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for TeamChanged { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "TeamChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `item` of a `collection` has been approved by the `owner` for transfer by"] #[doc = "a `delegate`."] pub struct TransferApproved { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, pub delegate: ::subxt::utils::AccountId32, pub deadline: ::core::option::Option<::core::primitive::u32>, } impl ::subxt::events::StaticEvent for TransferApproved { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "TransferApproved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An approval for a `delegate` account to transfer the `item` of an item"] #[doc = "`collection` was cancelled by its `owner`."] pub struct ApprovalCancelled { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, pub delegate: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for ApprovalCancelled { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ApprovalCancelled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "All approvals of an item got cancelled."] pub struct AllApprovalsCancelled { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub owner: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for AllApprovalsCancelled { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "AllApprovalsCancelled"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A `collection` has had its config changed by the `Force` origin."] pub struct CollectionConfigChanged { pub collection: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for CollectionConfigChanged { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "CollectionConfigChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "New metadata has been set for a `collection`."] pub struct CollectionMetadataSet { pub collection: ::core::primitive::u32, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } impl ::subxt::events::StaticEvent for CollectionMetadataSet { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "CollectionMetadataSet"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Metadata has been cleared for a `collection`."] pub struct CollectionMetadataCleared { pub collection: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for CollectionMetadataCleared { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "CollectionMetadataCleared"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "New metadata has been set for an item."] pub struct ItemMetadataSet { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } impl ::subxt::events::StaticEvent for ItemMetadataSet { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ItemMetadataSet"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Metadata has been cleared for an item."] pub struct ItemMetadataCleared { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ItemMetadataCleared { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ItemMetadataCleared"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The deposit for a set of `item`s within a `collection` has been updated."] pub struct Redeposited { pub collection: ::core::primitive::u32, pub successful_items: ::std::vec::Vec<::core::primitive::u32>, } impl ::subxt::events::StaticEvent for Redeposited { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "Redeposited"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "New attribute metadata has been set for a `collection` or `item`."] pub struct AttributeSet { pub collection : :: core :: primitive :: u32 , pub maybe_item : :: core :: option :: Option < :: core :: primitive :: u32 > , pub key : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , pub value : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , pub namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 > , } impl ::subxt::events::StaticEvent for AttributeSet { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "AttributeSet"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Attribute metadata has been cleared for a `collection` or `item`."] pub struct AttributeCleared { pub collection : :: core :: primitive :: u32 , pub maybe_item : :: core :: option :: Option < :: core :: primitive :: u32 > , pub key : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , pub namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 > , } impl ::subxt::events::StaticEvent for AttributeCleared { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "AttributeCleared"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new approval to modify item attributes was added."] pub struct ItemAttributesApprovalAdded { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub delegate: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for ItemAttributesApprovalAdded { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ItemAttributesApprovalAdded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new approval to modify item attributes was removed."] pub struct ItemAttributesApprovalRemoved { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub delegate: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for ItemAttributesApprovalRemoved { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ItemAttributesApprovalRemoved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Ownership acceptance has changed for an account."] pub struct OwnershipAcceptanceChanged { pub who: ::subxt::utils::AccountId32, pub maybe_collection: ::core::option::Option<::core::primitive::u32>, } impl ::subxt::events::StaticEvent for OwnershipAcceptanceChanged { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "OwnershipAcceptanceChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Max supply has been set for a collection."] pub struct CollectionMaxSupplySet { pub collection: ::core::primitive::u32, pub max_supply: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for CollectionMaxSupplySet { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "CollectionMaxSupplySet"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Mint settings for a collection had changed."] pub struct CollectionMintSettingsUpdated { pub collection: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for CollectionMintSettingsUpdated { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "CollectionMintSettingsUpdated"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Event gets emitted when the `NextCollectionId` gets incremented."] pub struct NextCollectionIdIncremented { pub next_id: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for NextCollectionIdIncremented { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "NextCollectionIdIncremented"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The price was set for the item."] pub struct ItemPriceSet { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub price: ::core::primitive::u128, pub whitelisted_buyer: ::core::option::Option<::subxt::utils::AccountId32>, } impl ::subxt::events::StaticEvent for ItemPriceSet { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ItemPriceSet"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The price for the item was removed."] pub struct ItemPriceRemoved { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ItemPriceRemoved { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ItemPriceRemoved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An item was bought."] pub struct ItemBought { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub price: ::core::primitive::u128, pub seller: ::subxt::utils::AccountId32, pub buyer: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for ItemBought { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "ItemBought"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A tip was sent."] pub struct TipSent { pub collection: ::core::primitive::u32, pub item: ::core::primitive::u32, pub sender: ::subxt::utils::AccountId32, pub receiver: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for TipSent { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "TipSent"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An `item` swap intent was created."] pub struct SwapCreated { pub offered_collection: ::core::primitive::u32, pub offered_item: ::core::primitive::u32, pub desired_collection: ::core::primitive::u32, pub desired_item: ::core::option::Option<::core::primitive::u32>, pub price: ::core::option::Option< runtime_types::pallet_nfts::types::PriceWithDirection< ::core::primitive::u128, >, >, pub deadline: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for SwapCreated { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "SwapCreated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The swap was cancelled."] pub struct SwapCancelled { pub offered_collection: ::core::primitive::u32, pub offered_item: ::core::primitive::u32, pub desired_collection: ::core::primitive::u32, pub desired_item: ::core::option::Option<::core::primitive::u32>, pub price: ::core::option::Option< runtime_types::pallet_nfts::types::PriceWithDirection< ::core::primitive::u128, >, >, pub deadline: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for SwapCancelled { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "SwapCancelled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The swap has been claimed."] pub struct SwapClaimed { pub sent_collection: ::core::primitive::u32, pub sent_item: ::core::primitive::u32, pub sent_item_owner: ::subxt::utils::AccountId32, pub received_collection: ::core::primitive::u32, pub received_item: ::core::primitive::u32, pub received_item_owner: ::subxt::utils::AccountId32, pub price: ::core::option::Option< runtime_types::pallet_nfts::types::PriceWithDirection< ::core::primitive::u128, >, >, pub deadline: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for SwapClaimed { const PALLET: &'static str = "Nfts"; const EVENT: &'static str = "SwapClaimed"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Details of a collection."] pub fn collection( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::CollectionDetails< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "Collection", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 145u8, 183u8, 254u8, 29u8, 238u8, 211u8, 62u8, 231u8, 207u8, 208u8, 244u8, 89u8, 247u8, 204u8, 29u8, 15u8, 30u8, 28u8, 182u8, 28u8, 190u8, 236u8, 133u8, 125u8, 89u8, 46u8, 31u8, 212u8, 86u8, 211u8, 108u8, 195u8, ], ) } #[doc = " Details of a collection."] pub fn collection_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::CollectionDetails< ::subxt::utils::AccountId32, ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "Collection", Vec::new(), [ 145u8, 183u8, 254u8, 29u8, 238u8, 211u8, 62u8, 231u8, 207u8, 208u8, 244u8, 89u8, 247u8, 204u8, 29u8, 15u8, 30u8, 28u8, 182u8, 28u8, 190u8, 236u8, 133u8, 125u8, 89u8, 46u8, 31u8, 212u8, 86u8, 211u8, 108u8, 195u8, ], ) } #[doc = " The collection, if any, of which an account is willing to take ownership."] pub fn ownership_acceptance( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "OwnershipAcceptance", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 166u8, 46u8, 6u8, 129u8, 145u8, 240u8, 8u8, 115u8, 232u8, 123u8, 153u8, 254u8, 202u8, 128u8, 141u8, 17u8, 207u8, 218u8, 201u8, 239u8, 220u8, 233u8, 22u8, 123u8, 126u8, 151u8, 67u8, 90u8, 51u8, 167u8, 189u8, 39u8, ], ) } #[doc = " The collection, if any, of which an account is willing to take ownership."] pub fn ownership_acceptance_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "OwnershipAcceptance", Vec::new(), [ 166u8, 46u8, 6u8, 129u8, 145u8, 240u8, 8u8, 115u8, 232u8, 123u8, 153u8, 254u8, 202u8, 128u8, 141u8, 17u8, 207u8, 218u8, 201u8, 239u8, 220u8, 233u8, 22u8, 123u8, 126u8, 151u8, 67u8, 90u8, 51u8, 167u8, 189u8, 39u8, ], ) } #[doc = " The items held by any given account; set out this way so that items owned by a single"] #[doc = " account can be enumerated."] pub fn account( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, _2: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<()>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Nfts" , "Account" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_2 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [83u8 , 188u8 , 8u8 , 123u8 , 84u8 , 224u8 , 52u8 , 18u8 , 81u8 , 207u8 , 139u8 , 149u8 , 209u8 , 246u8 , 211u8 , 132u8 , 63u8 , 86u8 , 145u8 , 33u8 , 4u8 , 252u8 , 90u8 , 88u8 , 89u8 , 145u8 , 147u8 , 164u8 , 223u8 , 162u8 , 119u8 , 161u8 ,]) } #[doc = " The items held by any given account; set out this way so that items owned by a single"] #[doc = " account can be enumerated."] pub fn account_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<()>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "Account", Vec::new(), [ 83u8, 188u8, 8u8, 123u8, 84u8, 224u8, 52u8, 18u8, 81u8, 207u8, 139u8, 149u8, 209u8, 246u8, 211u8, 132u8, 63u8, 86u8, 145u8, 33u8, 4u8, 252u8, 90u8, 88u8, 89u8, 145u8, 147u8, 164u8, 223u8, 162u8, 119u8, 161u8, ], ) } #[doc = " The collections owned by any given account; set out this way so that collections owned by"] #[doc = " a single account can be enumerated."] pub fn collection_account( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<()>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Nfts" , "CollectionAccount" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [173u8 , 183u8 , 58u8 , 232u8 , 121u8 , 133u8 , 40u8 , 226u8 , 60u8 , 146u8 , 31u8 , 110u8 , 186u8 , 235u8 , 206u8 , 160u8 , 36u8 , 221u8 , 27u8 , 222u8 , 91u8 , 107u8 , 93u8 , 19u8 , 5u8 , 24u8 , 51u8 , 220u8 , 79u8 , 26u8 , 216u8 , 26u8 ,]) } #[doc = " The collections owned by any given account; set out this way so that collections owned by"] #[doc = " a single account can be enumerated."] pub fn collection_account_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<()>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "CollectionAccount", Vec::new(), [ 173u8, 183u8, 58u8, 232u8, 121u8, 133u8, 40u8, 226u8, 60u8, 146u8, 31u8, 110u8, 186u8, 235u8, 206u8, 160u8, 36u8, 221u8, 27u8, 222u8, 91u8, 107u8, 93u8, 19u8, 5u8, 24u8, 51u8, 220u8, 79u8, 26u8, 216u8, 26u8, ], ) } #[doc = " The items in existence and their ownership details."] #[doc = " Stores collection roles as per account."] pub fn collection_role_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::BitFlags< runtime_types::pallet_nfts::types::CollectionRole, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Nfts" , "CollectionRoleOf" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [220u8 , 76u8 , 45u8 , 235u8 , 74u8 , 231u8 , 161u8 , 241u8 , 235u8 , 154u8 , 69u8 , 168u8 , 62u8 , 45u8 , 234u8 , 106u8 , 17u8 , 17u8 , 152u8 , 220u8 , 144u8 , 67u8 , 159u8 , 137u8 , 39u8 , 130u8 , 169u8 , 111u8 , 109u8 , 195u8 , 9u8 , 96u8 ,]) } #[doc = " The items in existence and their ownership details."] #[doc = " Stores collection roles as per account."] pub fn collection_role_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::BitFlags< runtime_types::pallet_nfts::types::CollectionRole, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "CollectionRoleOf", Vec::new(), [ 220u8, 76u8, 45u8, 235u8, 74u8, 231u8, 161u8, 241u8, 235u8, 154u8, 69u8, 168u8, 62u8, 45u8, 234u8, 106u8, 17u8, 17u8, 152u8, 220u8, 144u8, 67u8, 159u8, 137u8, 39u8, 130u8, 169u8, 111u8, 109u8, 195u8, 9u8, 96u8, ], ) } #[doc = " The items in existence and their ownership details."] pub fn item (& self , _0 : impl :: std :: borrow :: Borrow < :: core :: primitive :: u32 > , _1 : impl :: std :: borrow :: Borrow < :: core :: primitive :: u32 > ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: pallet_nfts :: types :: ItemDetails < :: subxt :: utils :: AccountId32 , runtime_types :: pallet_nfts :: types :: ItemDeposit < :: core :: primitive :: u128 , :: subxt :: utils :: AccountId32 > , runtime_types :: sp_core :: bounded :: bounded_btree_map :: BoundedBTreeMap < :: subxt :: utils :: AccountId32 , :: core :: option :: Option < :: core :: primitive :: u32 > > > > , :: subxt :: storage :: address :: Yes , () , :: subxt :: storage :: address :: Yes >{ :: subxt :: storage :: address :: StaticStorageAddress :: new ("Nfts" , "Item" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [159u8 , 81u8 , 47u8 , 170u8 , 54u8 , 246u8 , 176u8 , 130u8 , 225u8 , 246u8 , 29u8 , 6u8 , 214u8 , 178u8 , 133u8 , 248u8 , 248u8 , 1u8 , 237u8 , 171u8 , 64u8 , 2u8 , 83u8 , 107u8 , 225u8 , 36u8 , 30u8 , 194u8 , 185u8 , 218u8 , 245u8 , 62u8 ,]) } #[doc = " The items in existence and their ownership details."] pub fn item_root (& self ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: pallet_nfts :: types :: ItemDetails < :: subxt :: utils :: AccountId32 , runtime_types :: pallet_nfts :: types :: ItemDeposit < :: core :: primitive :: u128 , :: subxt :: utils :: AccountId32 > , runtime_types :: sp_core :: bounded :: bounded_btree_map :: BoundedBTreeMap < :: subxt :: utils :: AccountId32 , :: core :: option :: Option < :: core :: primitive :: u32 > > > > , () , () , :: subxt :: storage :: address :: Yes >{ ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "Item", Vec::new(), [ 159u8, 81u8, 47u8, 170u8, 54u8, 246u8, 176u8, 130u8, 225u8, 246u8, 29u8, 6u8, 214u8, 178u8, 133u8, 248u8, 248u8, 1u8, 237u8, 171u8, 64u8, 2u8, 83u8, 107u8, 225u8, 36u8, 30u8, 194u8, 185u8, 218u8, 245u8, 62u8, ], ) } #[doc = " Metadata of a collection."] pub fn collection_metadata_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::CollectionMetadata< ::core::primitive::u128, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "CollectionMetadataOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 174u8, 253u8, 204u8, 147u8, 93u8, 148u8, 155u8, 23u8, 38u8, 174u8, 76u8, 126u8, 200u8, 105u8, 78u8, 38u8, 173u8, 92u8, 153u8, 190u8, 200u8, 130u8, 172u8, 131u8, 96u8, 181u8, 133u8, 163u8, 219u8, 113u8, 233u8, 135u8, ], ) } #[doc = " Metadata of a collection."] pub fn collection_metadata_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::CollectionMetadata< ::core::primitive::u128, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "CollectionMetadataOf", Vec::new(), [ 174u8, 253u8, 204u8, 147u8, 93u8, 148u8, 155u8, 23u8, 38u8, 174u8, 76u8, 126u8, 200u8, 105u8, 78u8, 38u8, 173u8, 92u8, 153u8, 190u8, 200u8, 130u8, 172u8, 131u8, 96u8, 181u8, 133u8, 163u8, 219u8, 113u8, 233u8, 135u8, ], ) } #[doc = " Metadata of an item."] pub fn item_metadata_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::ItemMetadata< runtime_types::pallet_nfts::types::ItemMetadataDeposit< ::core::primitive::u128, ::subxt::utils::AccountId32, >, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Nfts" , "ItemMetadataOf" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [73u8 , 89u8 , 88u8 , 237u8 , 245u8 , 109u8 , 23u8 , 98u8 , 221u8 , 5u8 , 107u8 , 61u8 , 161u8 , 23u8 , 73u8 , 171u8 , 55u8 , 141u8 , 210u8 , 35u8 , 37u8 , 54u8 , 72u8 , 206u8 , 172u8 , 41u8 , 250u8 , 142u8 , 52u8 , 133u8 , 131u8 , 111u8 ,]) } #[doc = " Metadata of an item."] pub fn item_metadata_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::ItemMetadata< runtime_types::pallet_nfts::types::ItemMetadataDeposit< ::core::primitive::u128, ::subxt::utils::AccountId32, >, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "ItemMetadataOf", Vec::new(), [ 73u8, 89u8, 88u8, 237u8, 245u8, 109u8, 23u8, 98u8, 221u8, 5u8, 107u8, 61u8, 161u8, 23u8, 73u8, 171u8, 55u8, 141u8, 210u8, 35u8, 37u8, 54u8, 72u8, 206u8, 172u8, 41u8, 250u8, 142u8, 52u8, 133u8, 131u8, 111u8, ], ) } #[doc = " Attributes of a collection."] pub fn attribute( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow< ::core::option::Option<::core::primitive::u32>, >, _2 : impl :: std :: borrow :: Borrow < runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 > >, _3: impl ::std::borrow::Borrow< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, runtime_types::pallet_nfts::types::AttributeDeposit< ::core::primitive::u128, ::subxt::utils::AccountId32, >, )>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Nfts" , "Attribute" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_2 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_3 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [140u8 , 179u8 , 237u8 , 237u8 , 226u8 , 18u8 , 187u8 , 225u8 , 239u8 , 191u8 , 94u8 , 239u8 , 157u8 , 110u8 , 226u8 , 85u8 , 61u8 , 199u8 , 159u8 , 141u8 , 250u8 , 254u8 , 187u8 , 83u8 , 57u8 , 232u8 , 133u8 , 119u8 , 118u8 , 41u8 , 201u8 , 25u8 ,]) } #[doc = " Attributes of a collection."] pub fn attribute_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, runtime_types::pallet_nfts::types::AttributeDeposit< ::core::primitive::u128, ::subxt::utils::AccountId32, >, )>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "Attribute", Vec::new(), [ 140u8, 179u8, 237u8, 237u8, 226u8, 18u8, 187u8, 225u8, 239u8, 191u8, 94u8, 239u8, 157u8, 110u8, 226u8, 85u8, 61u8, 199u8, 159u8, 141u8, 250u8, 254u8, 187u8, 83u8, 57u8, 232u8, 133u8, 119u8, 118u8, 41u8, 201u8, 25u8, ], ) } #[doc = " A price of an item."] pub fn item_price_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u128, ::core::option::Option<::subxt::utils::AccountId32>, )>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Nfts" , "ItemPriceOf" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [63u8 , 143u8 , 204u8 , 99u8 , 128u8 , 218u8 , 233u8 , 140u8 , 216u8 , 44u8 , 248u8 , 111u8 , 204u8 , 40u8 , 248u8 , 249u8 , 24u8 , 130u8 , 50u8 , 255u8 , 30u8 , 42u8 , 220u8 , 136u8 , 228u8 , 64u8 , 158u8 , 195u8 , 233u8 , 105u8 , 137u8 , 216u8 ,]) } #[doc = " A price of an item."] pub fn item_price_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<( ::core::primitive::u128, ::core::option::Option<::subxt::utils::AccountId32>, )>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "ItemPriceOf", Vec::new(), [ 63u8, 143u8, 204u8, 99u8, 128u8, 218u8, 233u8, 140u8, 216u8, 44u8, 248u8, 111u8, 204u8, 40u8, 248u8, 249u8, 24u8, 130u8, 50u8, 255u8, 30u8, 42u8, 220u8, 136u8, 228u8, 64u8, 158u8, 195u8, 233u8, 105u8, 137u8, 216u8, ], ) } #[doc = " Item attribute approvals."] pub fn item_attributes_approvals_of (& self , _0 : impl :: std :: borrow :: Borrow < :: core :: primitive :: u32 > , _1 : impl :: std :: borrow :: Borrow < :: core :: primitive :: u32 > ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: sp_core :: bounded :: bounded_btree_set :: BoundedBTreeSet < :: subxt :: utils :: AccountId32 > > , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes >{ :: subxt :: storage :: address :: StaticStorageAddress :: new ("Nfts" , "ItemAttributesApprovalsOf" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [11u8 , 53u8 , 249u8 , 252u8 , 0u8 , 48u8 , 6u8 , 72u8 , 254u8 , 133u8 , 66u8 , 97u8 , 165u8 , 132u8 , 215u8 , 65u8 , 111u8 , 64u8 , 99u8 , 228u8 , 48u8 , 188u8 , 240u8 , 246u8 , 69u8 , 9u8 , 165u8 , 33u8 , 155u8 , 249u8 , 164u8 , 237u8 ,]) } #[doc = " Item attribute approvals."] pub fn item_attributes_approvals_of_root (& self ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: sp_core :: bounded :: bounded_btree_set :: BoundedBTreeSet < :: subxt :: utils :: AccountId32 > > , () , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes >{ ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "ItemAttributesApprovalsOf", Vec::new(), [ 11u8, 53u8, 249u8, 252u8, 0u8, 48u8, 6u8, 72u8, 254u8, 133u8, 66u8, 97u8, 165u8, 132u8, 215u8, 65u8, 111u8, 64u8, 99u8, 228u8, 48u8, 188u8, 240u8, 246u8, 69u8, 9u8, 165u8, 33u8, 155u8, 249u8, 164u8, 237u8, ], ) } #[doc = " Stores the `CollectionId` that is going to be used for the next collection."] #[doc = " This gets incremented whenever a new collection is created."] pub fn next_collection_id( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "NextCollectionId", vec![], [ 247u8, 80u8, 254u8, 162u8, 36u8, 233u8, 151u8, 211u8, 1u8, 156u8, 102u8, 9u8, 21u8, 175u8, 224u8, 254u8, 255u8, 73u8, 26u8, 42u8, 112u8, 107u8, 159u8, 108u8, 25u8, 22u8, 84u8, 113u8, 108u8, 18u8, 253u8, 66u8, ], ) } #[doc = " Handles all the pending swaps."] pub fn pending_swap_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::PendingSwap< ::core::primitive::u32, ::core::primitive::u32, runtime_types::pallet_nfts::types::PriceWithDirection< ::core::primitive::u128, >, ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Nfts" , "PendingSwapOf" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [230u8 , 132u8 , 138u8 , 201u8 , 217u8 , 119u8 , 35u8 , 191u8 , 184u8 , 202u8 , 9u8 , 3u8 , 29u8 , 246u8 , 228u8 , 210u8 , 195u8 , 141u8 , 179u8 , 160u8 , 130u8 , 40u8 , 121u8 , 133u8 , 209u8 , 218u8 , 64u8 , 18u8 , 36u8 , 62u8 , 1u8 , 203u8 ,]) } #[doc = " Handles all the pending swaps."] pub fn pending_swap_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::PendingSwap< ::core::primitive::u32, ::core::primitive::u32, runtime_types::pallet_nfts::types::PriceWithDirection< ::core::primitive::u128, >, ::core::primitive::u32, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "PendingSwapOf", Vec::new(), [ 230u8, 132u8, 138u8, 201u8, 217u8, 119u8, 35u8, 191u8, 184u8, 202u8, 9u8, 3u8, 29u8, 246u8, 228u8, 210u8, 195u8, 141u8, 179u8, 160u8, 130u8, 40u8, 121u8, 133u8, 209u8, 218u8, 64u8, 18u8, 36u8, 62u8, 1u8, 203u8, ], ) } #[doc = " Config of a collection."] pub fn collection_config_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::CollectionConfig< ::core::primitive::u128, ::core::primitive::u32, ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "CollectionConfigOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 65u8, 20u8, 107u8, 140u8, 134u8, 116u8, 78u8, 79u8, 217u8, 215u8, 30u8, 185u8, 18u8, 87u8, 127u8, 59u8, 152u8, 94u8, 144u8, 138u8, 24u8, 9u8, 250u8, 225u8, 7u8, 176u8, 31u8, 75u8, 171u8, 24u8, 132u8, 168u8, ], ) } #[doc = " Config of a collection."] pub fn collection_config_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::CollectionConfig< ::core::primitive::u128, ::core::primitive::u32, ::core::primitive::u32, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "CollectionConfigOf", Vec::new(), [ 65u8, 20u8, 107u8, 140u8, 134u8, 116u8, 78u8, 79u8, 217u8, 215u8, 30u8, 185u8, 18u8, 87u8, 127u8, 59u8, 152u8, 94u8, 144u8, 138u8, 24u8, 9u8, 250u8, 225u8, 7u8, 176u8, 31u8, 75u8, 171u8, 24u8, 132u8, 168u8, ], ) } #[doc = " Config of an item."] pub fn item_config_of( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::ItemConfig, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("Nfts" , "ItemConfigOf" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat)] , [13u8 , 64u8 , 28u8 , 168u8 , 121u8 , 178u8 , 11u8 , 143u8 , 107u8 , 185u8 , 148u8 , 54u8 , 212u8 , 83u8 , 251u8 , 165u8 , 19u8 , 222u8 , 130u8 , 90u8 , 111u8 , 144u8 , 146u8 , 255u8 , 68u8 , 66u8 , 225u8 , 62u8 , 89u8 , 33u8 , 200u8 , 120u8 ,]) } #[doc = " Config of an item."] pub fn item_config_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::ItemConfig, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Nfts", "ItemConfigOf", Vec::new(), [ 13u8, 64u8, 28u8, 168u8, 121u8, 178u8, 11u8, 143u8, 107u8, 185u8, 148u8, 54u8, 212u8, 83u8, 251u8, 165u8, 19u8, 222u8, 130u8, 90u8, 111u8, 144u8, 146u8, 255u8, 68u8, 66u8, 225u8, 62u8, 89u8, 33u8, 200u8, 120u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The basic amount of funds that must be reserved for collection."] pub fn collection_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "CollectionDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The basic amount of funds that must be reserved for an item."] pub fn item_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "ItemDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The basic amount of funds that must be reserved when adding metadata to your item."] pub fn metadata_deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "MetadataDepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The basic amount of funds that must be reserved when adding an attribute to an item."] pub fn attribute_deposit_base( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "AttributeDepositBase", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The additional funds that must be reserved for the number of bytes store in metadata,"] #[doc = " either \"normal\" metadata or attribute metadata."] pub fn deposit_per_byte( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "DepositPerByte", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The maximum length of data stored on-chain."] pub fn string_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "StringLimit", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum length of an attribute key."] pub fn key_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "KeyLimit", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum length of an attribute value."] pub fn value_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "ValueLimit", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum approvals an item could have."] pub fn approvals_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "ApprovalsLimit", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum attributes approvals an item could have."] pub fn item_attributes_approvals_limit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "ItemAttributesApprovalsLimit", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The max number of tips a user could send."] pub fn max_tips( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "MaxTips", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The max duration in blocks for deadlines."] pub fn max_deadline_duration( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "MaxDeadlineDuration", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Disables some of pallet's features."] pub fn features( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nfts::types::BitFlags< runtime_types::pallet_nfts::types::PalletFeature, >, >, > { ::subxt::constants::StaticConstantAddress::new( "Nfts", "Features", [ 6u8, 4u8, 24u8, 100u8, 110u8, 86u8, 4u8, 252u8, 70u8, 43u8, 169u8, 124u8, 204u8, 27u8, 252u8, 91u8, 99u8, 13u8, 149u8, 202u8, 65u8, 211u8, 125u8, 108u8, 127u8, 4u8, 146u8, 163u8, 41u8, 193u8, 25u8, 103u8, ], ) } } } } pub mod transaction_storage { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Store { pub data: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Renew { pub block: ::core::primitive::u32, pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CheckProof { pub proof: runtime_types::sp_transaction_storage_proof::TransactionStorageProof, } pub struct TransactionApi; impl TransactionApi { #[doc = "Index and store data off chain. Minimum data size is 1 bytes, maximum is"] #[doc = "`MaxTransactionSize`. Data will be removed after `STORAGE_PERIOD` blocks, unless `renew`"] #[doc = "is called. # "] #[doc = "- n*log(n) of data size, as all data is pushed to an in-memory trie."] #[doc = "Additionally contains a DB write."] #[doc = "# "] pub fn store( &self, data: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TransactionStorage", "store", Store { data }, [ 43u8, 208u8, 69u8, 186u8, 52u8, 197u8, 110u8, 180u8, 94u8, 179u8, 108u8, 83u8, 54u8, 128u8, 76u8, 158u8, 198u8, 25u8, 251u8, 31u8, 79u8, 228u8, 104u8, 120u8, 79u8, 187u8, 167u8, 112u8, 133u8, 201u8, 208u8, 28u8, ], ) } #[doc = "Renew previously stored data. Parameters are the block number that contains"] #[doc = "previous `store` or `renew` call and transaction index within that block."] #[doc = "Transaction index is emitted in the `Stored` or `Renewed` event."] #[doc = "Applies same fees as `store`."] #[doc = "# "] #[doc = "- Constant."] #[doc = "# "] pub fn renew( &self, block: ::core::primitive::u32, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TransactionStorage", "renew", Renew { block, index }, [ 72u8, 33u8, 43u8, 220u8, 210u8, 211u8, 107u8, 206u8, 156u8, 0u8, 45u8, 233u8, 72u8, 154u8, 47u8, 176u8, 73u8, 116u8, 93u8, 121u8, 197u8, 15u8, 166u8, 53u8, 101u8, 202u8, 21u8, 208u8, 62u8, 115u8, 100u8, 66u8, ], ) } #[doc = "Check storage proof for block number `block_number() - StoragePeriod`."] #[doc = "If such block does not exist the proof is expected to be `None`."] #[doc = "# "] #[doc = "- Linear w.r.t the number of indexed transactions in the proved block for random"] #[doc = " probing."] #[doc = "There's a DB read for each transaction."] #[doc = "Here we assume a maximum of 100 probed transactions."] #[doc = "# "] pub fn check_proof( &self, proof : runtime_types :: sp_transaction_storage_proof :: TransactionStorageProof, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "TransactionStorage", "check_proof", CheckProof { proof }, [ 102u8, 90u8, 179u8, 228u8, 197u8, 192u8, 53u8, 148u8, 7u8, 97u8, 25u8, 243u8, 247u8, 161u8, 108u8, 197u8, 137u8, 219u8, 154u8, 198u8, 4u8, 7u8, 47u8, 150u8, 156u8, 234u8, 20u8, 51u8, 180u8, 134u8, 10u8, 19u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_transaction_storage::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Stored data under specified index."] pub struct Stored { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Stored { const PALLET: &'static str = "TransactionStorage"; const EVENT: &'static str = "Stored"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Renewed data under specified index."] pub struct Renewed { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Renewed { const PALLET: &'static str = "TransactionStorage"; const EVENT: &'static str = "Renewed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Storage proof was successfully checked."] pub struct ProofChecked; impl ::subxt::events::StaticEvent for ProofChecked { const PALLET: &'static str = "TransactionStorage"; const EVENT: &'static str = "ProofChecked"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Collection of transaction metadata by block number."] pub fn transactions( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_transaction_storage::TransactionInfo, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "TransactionStorage", "Transactions", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 135u8, 204u8, 74u8, 229u8, 33u8, 97u8, 220u8, 224u8, 215u8, 234u8, 152u8, 113u8, 14u8, 232u8, 161u8, 97u8, 235u8, 241u8, 216u8, 115u8, 252u8, 15u8, 116u8, 110u8, 239u8, 105u8, 246u8, 15u8, 154u8, 213u8, 163u8, 87u8, ], ) } #[doc = " Collection of transaction metadata by block number."] pub fn transactions_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_transaction_storage::TransactionInfo, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "TransactionStorage", "Transactions", Vec::new(), [ 135u8, 204u8, 74u8, 229u8, 33u8, 97u8, 220u8, 224u8, 215u8, 234u8, 152u8, 113u8, 14u8, 232u8, 161u8, 97u8, 235u8, 241u8, 216u8, 115u8, 252u8, 15u8, 116u8, 110u8, 239u8, 105u8, 246u8, 15u8, 154u8, 213u8, 163u8, 87u8, ], ) } #[doc = " Count indexed chunks for each block."] pub fn chunk_count( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "TransactionStorage", "ChunkCount", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 28u8, 45u8, 130u8, 130u8, 223u8, 108u8, 11u8, 246u8, 112u8, 28u8, 132u8, 216u8, 71u8, 251u8, 141u8, 186u8, 179u8, 73u8, 225u8, 87u8, 38u8, 182u8, 117u8, 213u8, 79u8, 107u8, 92u8, 43u8, 167u8, 155u8, 213u8, 135u8, ], ) } #[doc = " Count indexed chunks for each block."] pub fn chunk_count_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "TransactionStorage", "ChunkCount", Vec::new(), [ 28u8, 45u8, 130u8, 130u8, 223u8, 108u8, 11u8, 246u8, 112u8, 28u8, 132u8, 216u8, 71u8, 251u8, 141u8, 186u8, 179u8, 73u8, 225u8, 87u8, 38u8, 182u8, 117u8, 213u8, 79u8, 107u8, 92u8, 43u8, 167u8, 155u8, 213u8, 135u8, ], ) } #[doc = " Storage fee per byte."] pub fn byte_fee( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "TransactionStorage", "ByteFee", vec![], [ 175u8, 21u8, 92u8, 118u8, 196u8, 19u8, 87u8, 215u8, 167u8, 205u8, 139u8, 138u8, 17u8, 164u8, 85u8, 191u8, 90u8, 206u8, 35u8, 255u8, 50u8, 63u8, 0u8, 20u8, 222u8, 219u8, 77u8, 220u8, 57u8, 143u8, 24u8, 185u8, ], ) } #[doc = " Storage fee per transaction."] pub fn entry_fee( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "TransactionStorage", "EntryFee", vec![], [ 66u8, 20u8, 76u8, 16u8, 189u8, 156u8, 164u8, 45u8, 163u8, 66u8, 121u8, 196u8, 103u8, 131u8, 30u8, 188u8, 166u8, 46u8, 142u8, 113u8, 38u8, 138u8, 109u8, 33u8, 59u8, 61u8, 239u8, 4u8, 135u8, 76u8, 105u8, 137u8, ], ) } #[doc = " Storage period for data in blocks. Should match `sp_storage_proof::DEFAULT_STORAGE_PERIOD`"] #[doc = " for block authoring."] pub fn storage_period( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "TransactionStorage", "StoragePeriod", vec![], [ 10u8, 53u8, 101u8, 7u8, 28u8, 0u8, 14u8, 145u8, 138u8, 50u8, 14u8, 182u8, 105u8, 25u8, 57u8, 166u8, 116u8, 232u8, 84u8, 255u8, 71u8, 88u8, 85u8, 28u8, 21u8, 223u8, 119u8, 122u8, 204u8, 44u8, 171u8, 118u8, ], ) } pub fn block_transactions( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_transaction_storage::TransactionInfo, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "TransactionStorage", "BlockTransactions", vec![], [ 238u8, 72u8, 1u8, 41u8, 254u8, 6u8, 252u8, 199u8, 151u8, 11u8, 246u8, 236u8, 68u8, 18u8, 147u8, 235u8, 60u8, 178u8, 21u8, 120u8, 216u8, 53u8, 83u8, 29u8, 132u8, 91u8, 14u8, 120u8, 238u8, 88u8, 160u8, 208u8, ], ) } #[doc = " Was the proof checked in this block?"] pub fn proof_checked( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::bool>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "TransactionStorage", "ProofChecked", vec![], [ 120u8, 50u8, 236u8, 167u8, 184u8, 166u8, 35u8, 208u8, 129u8, 112u8, 151u8, 218u8, 123u8, 60u8, 71u8, 12u8, 210u8, 162u8, 52u8, 7u8, 192u8, 197u8, 117u8, 101u8, 102u8, 179u8, 62u8, 240u8, 146u8, 249u8, 190u8, 18u8, ], ) } } } } pub mod voter_list { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Rebag { pub dislocated: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PutInFrontOf { pub lighter: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } pub struct TransactionApi; impl TransactionApi { #[doc = "Declare that some `dislocated` account has, through rewards or penalties, sufficiently"] #[doc = "changed its score that it should properly fall into a different bag than its current"] #[doc = "one."] #[doc = ""] #[doc = "Anyone can call this function about any potentially dislocated account."] #[doc = ""] #[doc = "Will always update the stored score of `dislocated` to the correct score, based on"] #[doc = "`ScoreProvider`."] #[doc = ""] #[doc = "If `dislocated` does not exists, it returns an error."] pub fn rebag( &self, dislocated: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "VoterList", "rebag", Rebag { dislocated }, [ 0u8, 168u8, 218u8, 188u8, 236u8, 124u8, 250u8, 201u8, 237u8, 20u8, 97u8, 150u8, 117u8, 232u8, 116u8, 237u8, 55u8, 151u8, 71u8, 119u8, 42u8, 48u8, 10u8, 66u8, 167u8, 208u8, 184u8, 228u8, 146u8, 181u8, 84u8, 70u8, ], ) } #[doc = "Move the caller's Id directly in front of `lighter`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and can only be called by the Id of"] #[doc = "the account going in front of `lighter`."] #[doc = ""] #[doc = "Only works if"] #[doc = "- both nodes are within the same bag,"] #[doc = "- and `origin` has a greater `Score` than `lighter`."] pub fn put_in_front_of( &self, lighter: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "VoterList", "put_in_front_of", PutInFrontOf { lighter }, [ 104u8, 36u8, 96u8, 80u8, 236u8, 75u8, 203u8, 232u8, 136u8, 167u8, 205u8, 143u8, 200u8, 53u8, 124u8, 148u8, 76u8, 246u8, 71u8, 246u8, 205u8, 82u8, 32u8, 186u8, 33u8, 5u8, 183u8, 127u8, 153u8, 232u8, 80u8, 164u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_bags_list::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Moved an account from one bag to another."] pub struct Rebagged { pub who: ::subxt::utils::AccountId32, pub from: ::core::primitive::u64, pub to: ::core::primitive::u64, } impl ::subxt::events::StaticEvent for Rebagged { const PALLET: &'static str = "VoterList"; const EVENT: &'static str = "Rebagged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Updated the score of some account to the given amount."] pub struct ScoreUpdated { pub who: ::subxt::utils::AccountId32, pub new_score: ::core::primitive::u64, } impl ::subxt::events::StaticEvent for ScoreUpdated { const PALLET: &'static str = "VoterList"; const EVENT: &'static str = "ScoreUpdated"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " A single node, within some bag."] #[doc = ""] #[doc = " Nodes store links forward and back within their respective bags."] pub fn list_nodes( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_bags_list::list::Node, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "VoterList", "ListNodes", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 176u8, 186u8, 93u8, 51u8, 100u8, 184u8, 240u8, 29u8, 70u8, 3u8, 117u8, 47u8, 23u8, 66u8, 231u8, 234u8, 53u8, 8u8, 234u8, 175u8, 181u8, 8u8, 161u8, 154u8, 48u8, 178u8, 147u8, 227u8, 122u8, 115u8, 57u8, 97u8, ], ) } #[doc = " A single node, within some bag."] #[doc = ""] #[doc = " Nodes store links forward and back within their respective bags."] pub fn list_nodes_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_bags_list::list::Node, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "VoterList", "ListNodes", Vec::new(), [ 176u8, 186u8, 93u8, 51u8, 100u8, 184u8, 240u8, 29u8, 70u8, 3u8, 117u8, 47u8, 23u8, 66u8, 231u8, 234u8, 53u8, 8u8, 234u8, 175u8, 181u8, 8u8, 161u8, 154u8, 48u8, 178u8, 147u8, 227u8, 122u8, 115u8, 57u8, 97u8, ], ) } #[doc = "Counter for the related counted storage map"] pub fn counter_for_list_nodes( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "VoterList", "CounterForListNodes", vec![], [ 156u8, 168u8, 97u8, 33u8, 84u8, 117u8, 220u8, 89u8, 62u8, 182u8, 24u8, 88u8, 231u8, 244u8, 41u8, 19u8, 210u8, 131u8, 87u8, 0u8, 241u8, 230u8, 160u8, 142u8, 128u8, 153u8, 83u8, 36u8, 88u8, 247u8, 70u8, 130u8, ], ) } #[doc = " A bag stored in storage."] #[doc = ""] #[doc = " Stores a `Bag` struct, which stores head and tail pointers to itself."] pub fn list_bags( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u64>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_bags_list::list::Bag, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "VoterList", "ListBags", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 38u8, 86u8, 63u8, 92u8, 85u8, 59u8, 225u8, 244u8, 14u8, 155u8, 76u8, 249u8, 153u8, 140u8, 179u8, 7u8, 96u8, 170u8, 236u8, 179u8, 4u8, 18u8, 232u8, 146u8, 216u8, 51u8, 135u8, 116u8, 196u8, 117u8, 143u8, 153u8, ], ) } #[doc = " A bag stored in storage."] #[doc = ""] #[doc = " Stores a `Bag` struct, which stores head and tail pointers to itself."] pub fn list_bags_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_bags_list::list::Bag, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "VoterList", "ListBags", Vec::new(), [ 38u8, 86u8, 63u8, 92u8, 85u8, 59u8, 225u8, 244u8, 14u8, 155u8, 76u8, 249u8, 153u8, 140u8, 179u8, 7u8, 96u8, 170u8, 236u8, 179u8, 4u8, 18u8, 232u8, 146u8, 216u8, 51u8, 135u8, 116u8, 196u8, 117u8, 143u8, 153u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The list of thresholds separating the various bags."] #[doc = ""] #[doc = " Ids are separated into unsorted bags according to their score. This specifies the"] #[doc = " thresholds separating the bags. An id's bag is the largest bag for which the id's score"] #[doc = " is less than or equal to its upper threshold."] #[doc = ""] #[doc = " When ids are iterated, higher bags are iterated completely before lower bags. This means"] #[doc = " that iteration is _semi-sorted_: ids of higher score tend to come before ids of lower"] #[doc = " score, but peer ids within a particular bag are sorted in insertion order."] #[doc = ""] #[doc = " # Expressing the constant"] #[doc = ""] #[doc = " This constant must be sorted in strictly increasing order. Duplicate items are not"] #[doc = " permitted."] #[doc = ""] #[doc = " There is an implied upper limit of `Score::MAX`; that value does not need to be"] #[doc = " specified within the bag. For any two threshold lists, if one ends with"] #[doc = " `Score::MAX`, the other one does not, and they are otherwise equal, the two"] #[doc = " lists will behave identically."] #[doc = ""] #[doc = " # Calculation"] #[doc = ""] #[doc = " It is recommended to generate the set of thresholds in a geometric series, such that"] #[doc = " there exists some constant ratio such that `threshold[k + 1] == (threshold[k] *"] #[doc = " constant_ratio).max(threshold[k] + 1)` for all `k`."] #[doc = ""] #[doc = " The helpers in the `/utils/frame/generate-bags` module can simplify this calculation."] #[doc = ""] #[doc = " # Examples"] #[doc = ""] #[doc = " - If `BagThresholds::get().is_empty()`, then all ids are put into the same bag, and"] #[doc = " iteration is strictly in insertion order."] #[doc = " - If `BagThresholds::get().len() == 64`, and the thresholds are determined according to"] #[doc = " the procedure given above, then the constant ratio is equal to 2."] #[doc = " - If `BagThresholds::get().len() == 200`, and the thresholds are determined according to"] #[doc = " the procedure given above, then the constant ratio is approximately equal to 1.248."] #[doc = " - If the threshold list begins `[1, 2, 3, ...]`, then an id with score 0 or 1 will fall"] #[doc = " into bag 0, an id with score 2 will fall into bag 1, etc."] #[doc = ""] #[doc = " # Migration"] #[doc = ""] #[doc = " In the event that this list ever changes, a copy of the old bags list must be retained."] #[doc = " With that `List::migrate` can be called, which will perform the appropriate migration."] pub fn bag_thresholds( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u64>, >, > { ::subxt::constants::StaticConstantAddress::new( "VoterList", "BagThresholds", [ 103u8, 102u8, 255u8, 165u8, 124u8, 54u8, 5u8, 172u8, 112u8, 234u8, 25u8, 175u8, 178u8, 19u8, 251u8, 73u8, 91u8, 192u8, 227u8, 81u8, 249u8, 45u8, 126u8, 116u8, 7u8, 37u8, 9u8, 200u8, 167u8, 182u8, 12u8, 131u8, ], ) } } } } pub mod state_trie_migration { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ControlAutoMigration { pub maybe_config: ::core::option::Option< runtime_types::pallet_state_trie_migration::pallet::MigrationLimits, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ContinueMigrate { pub limits: runtime_types::pallet_state_trie_migration::pallet::MigrationLimits, pub real_size_upper: ::core::primitive::u32, pub witness_task: runtime_types::pallet_state_trie_migration::pallet::MigrationTask, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct MigrateCustomTop { pub keys: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, pub witness_size: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct MigrateCustomChild { pub root: ::std::vec::Vec<::core::primitive::u8>, pub child_keys: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, pub total_size: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetSignedMaxLimits { pub limits: runtime_types::pallet_state_trie_migration::pallet::MigrationLimits, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ForceSetProgress { pub progress_top: runtime_types::pallet_state_trie_migration::pallet::Progress, pub progress_child: runtime_types::pallet_state_trie_migration::pallet::Progress, } pub struct TransactionApi; impl TransactionApi { #[doc = "Control the automatic migration."] #[doc = ""] #[doc = "The dispatch origin of this call must be [`Config::ControlOrigin`]."] pub fn control_auto_migration( &self, maybe_config : :: core :: option :: Option < runtime_types :: pallet_state_trie_migration :: pallet :: MigrationLimits >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "StateTrieMigration", "control_auto_migration", ControlAutoMigration { maybe_config }, [ 162u8, 96u8, 125u8, 236u8, 212u8, 188u8, 150u8, 69u8, 75u8, 40u8, 116u8, 249u8, 80u8, 248u8, 180u8, 38u8, 167u8, 228u8, 116u8, 130u8, 201u8, 59u8, 27u8, 3u8, 24u8, 209u8, 40u8, 0u8, 238u8, 100u8, 173u8, 128u8, ], ) } #[doc = "Continue the migration for the given `limits`."] #[doc = ""] #[doc = "The dispatch origin of this call can be any signed account."] #[doc = ""] #[doc = "This transaction has NO MONETARY INCENTIVES. calling it will not reward anyone. Albeit,"] #[doc = "Upon successful execution, the transaction fee is returned."] #[doc = ""] #[doc = "The (potentially over-estimated) of the byte length of all the data read must be"] #[doc = "provided for up-front fee-payment and weighing. In essence, the caller is guaranteeing"] #[doc = "that executing the current `MigrationTask` with the given `limits` will not exceed"] #[doc = "`real_size_upper` bytes of read data."] #[doc = ""] #[doc = "The `witness_task` is merely a helper to prevent the caller from being slashed or"] #[doc = "generally trigger a migration that they do not intend. This parameter is just a message"] #[doc = "from caller, saying that they believed `witness_task` was the last state of the"] #[doc = "migration, and they only wish for their transaction to do anything, if this assumption"] #[doc = "holds. In case `witness_task` does not match, the transaction fails."] #[doc = ""] #[doc = "Based on the documentation of [`MigrationTask::migrate_until_exhaustion`], the"] #[doc = "recommended way of doing this is to pass a `limit` that only bounds `count`, as the"] #[doc = "`size` limit can always be overwritten."] pub fn continue_migrate( &self, limits : runtime_types :: pallet_state_trie_migration :: pallet :: MigrationLimits, real_size_upper: ::core::primitive::u32, witness_task : runtime_types :: pallet_state_trie_migration :: pallet :: MigrationTask, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "StateTrieMigration", "continue_migrate", ContinueMigrate { limits, real_size_upper, witness_task, }, [ 13u8, 29u8, 35u8, 220u8, 79u8, 73u8, 159u8, 203u8, 121u8, 137u8, 71u8, 108u8, 143u8, 95u8, 183u8, 127u8, 247u8, 1u8, 63u8, 10u8, 69u8, 1u8, 196u8, 237u8, 175u8, 147u8, 252u8, 168u8, 152u8, 217u8, 135u8, 109u8, ], ) } #[doc = "Migrate the list of top keys by iterating each of them one by one."] #[doc = ""] #[doc = "This does not affect the global migration process tracker ([`MigrationProcess`]), and"] #[doc = "should only be used in case any keys are leftover due to a bug."] pub fn migrate_custom_top( &self, keys: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, witness_size: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "StateTrieMigration", "migrate_custom_top", MigrateCustomTop { keys, witness_size }, [ 186u8, 249u8, 25u8, 216u8, 251u8, 100u8, 32u8, 31u8, 174u8, 158u8, 202u8, 41u8, 18u8, 130u8, 187u8, 105u8, 83u8, 125u8, 131u8, 212u8, 98u8, 120u8, 152u8, 207u8, 208u8, 1u8, 183u8, 181u8, 169u8, 129u8, 163u8, 161u8, ], ) } #[doc = "Migrate the list of child keys by iterating each of them one by one."] #[doc = ""] #[doc = "All of the given child keys must be present under one `child_root`."] #[doc = ""] #[doc = "This does not affect the global migration process tracker ([`MigrationProcess`]), and"] #[doc = "should only be used in case any keys are leftover due to a bug."] pub fn migrate_custom_child( &self, root: ::std::vec::Vec<::core::primitive::u8>, child_keys: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, total_size: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "StateTrieMigration", "migrate_custom_child", MigrateCustomChild { root, child_keys, total_size, }, [ 79u8, 93u8, 66u8, 136u8, 84u8, 153u8, 42u8, 104u8, 242u8, 99u8, 225u8, 125u8, 233u8, 196u8, 151u8, 160u8, 164u8, 228u8, 36u8, 186u8, 12u8, 247u8, 118u8, 12u8, 96u8, 218u8, 38u8, 120u8, 33u8, 147u8, 2u8, 214u8, ], ) } #[doc = "Set the maximum limit of the signed migration."] pub fn set_signed_max_limits( &self, limits : runtime_types :: pallet_state_trie_migration :: pallet :: MigrationLimits, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "StateTrieMigration", "set_signed_max_limits", SetSignedMaxLimits { limits }, [ 95u8, 185u8, 123u8, 100u8, 144u8, 68u8, 67u8, 101u8, 101u8, 137u8, 229u8, 154u8, 172u8, 128u8, 4u8, 164u8, 230u8, 63u8, 196u8, 243u8, 118u8, 187u8, 220u8, 168u8, 73u8, 51u8, 254u8, 233u8, 214u8, 238u8, 16u8, 227u8, ], ) } #[doc = "Forcefully set the progress the running migration."] #[doc = ""] #[doc = "This is only useful in one case: the next key to migrate is too big to be migrated with"] #[doc = "a signed account, in a parachain context, and we simply want to skip it. A reasonable"] #[doc = "example of this would be `:code:`, which is both very expensive to migrate, and commonly"] #[doc = "used, so probably it is already migrated."] #[doc = ""] #[doc = "In case you mess things up, you can also, in principle, use this to reset the migration"] #[doc = "process."] pub fn force_set_progress( &self, progress_top : runtime_types :: pallet_state_trie_migration :: pallet :: Progress, progress_child : runtime_types :: pallet_state_trie_migration :: pallet :: Progress, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "StateTrieMigration", "force_set_progress", ForceSetProgress { progress_top, progress_child, }, [ 29u8, 180u8, 184u8, 136u8, 24u8, 192u8, 64u8, 95u8, 243u8, 171u8, 184u8, 20u8, 62u8, 5u8, 1u8, 25u8, 12u8, 105u8, 137u8, 81u8, 161u8, 39u8, 215u8, 180u8, 225u8, 24u8, 122u8, 124u8, 122u8, 183u8, 141u8, 224u8, ], ) } } } #[doc = "Inner events of this pallet."] pub type Event = runtime_types::pallet_state_trie_migration::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Given number of `(top, child)` keys were migrated respectively, with the given"] #[doc = "`compute`."] pub struct Migrated { pub top: ::core::primitive::u32, pub child: ::core::primitive::u32, pub compute: runtime_types::pallet_state_trie_migration::pallet::MigrationCompute, } impl ::subxt::events::StaticEvent for Migrated { const PALLET: &'static str = "StateTrieMigration"; const EVENT: &'static str = "Migrated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some account got slashed by the given amount."] pub struct Slashed { pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Slashed { const PALLET: &'static str = "StateTrieMigration"; const EVENT: &'static str = "Slashed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The auto migration task finished."] pub struct AutoMigrationFinished; impl ::subxt::events::StaticEvent for AutoMigrationFinished { const PALLET: &'static str = "StateTrieMigration"; const EVENT: &'static str = "AutoMigrationFinished"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Migration got halted due to an error or miss-configuration."] pub struct Halted { pub error: runtime_types::pallet_state_trie_migration::pallet::Error, } impl ::subxt::events::StaticEvent for Halted { const PALLET: &'static str = "StateTrieMigration"; const EVENT: &'static str = "Halted"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Migration progress."] #[doc = ""] #[doc = " This stores the snapshot of the last migrated keys. It can be set into motion and move"] #[doc = " forward by any of the means provided by this pallet."] pub fn migration_process( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_state_trie_migration::pallet::MigrationTask, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "StateTrieMigration", "MigrationProcess", vec![], [ 151u8, 248u8, 89u8, 241u8, 228u8, 249u8, 59u8, 199u8, 21u8, 95u8, 182u8, 95u8, 205u8, 226u8, 119u8, 123u8, 241u8, 60u8, 242u8, 52u8, 113u8, 101u8, 170u8, 140u8, 66u8, 66u8, 248u8, 130u8, 130u8, 140u8, 206u8, 202u8, ], ) } #[doc = " The limits that are imposed on automatic migrations."] #[doc = ""] #[doc = " If set to None, then no automatic migration happens."] pub fn auto_limits (& self ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < :: core :: option :: Option < runtime_types :: pallet_state_trie_migration :: pallet :: MigrationLimits > > , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes , () >{ ::subxt::storage::address::StaticStorageAddress::new( "StateTrieMigration", "AutoLimits", vec![], [ 214u8, 100u8, 160u8, 204u8, 4u8, 205u8, 205u8, 100u8, 60u8, 127u8, 84u8, 243u8, 50u8, 164u8, 153u8, 1u8, 250u8, 123u8, 134u8, 109u8, 115u8, 173u8, 102u8, 104u8, 18u8, 134u8, 43u8, 3u8, 7u8, 26u8, 157u8, 39u8, ], ) } #[doc = " The maximum limits that the signed migration could use."] #[doc = ""] #[doc = " If not set, no signed submission is allowed."] pub fn signed_migration_max_limits (& self ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: pallet_state_trie_migration :: pallet :: MigrationLimits > , :: subxt :: storage :: address :: Yes , () , () >{ ::subxt::storage::address::StaticStorageAddress::new( "StateTrieMigration", "SignedMigrationMaxLimits", vec![], [ 142u8, 87u8, 222u8, 135u8, 24u8, 133u8, 45u8, 18u8, 104u8, 31u8, 147u8, 121u8, 17u8, 155u8, 64u8, 166u8, 209u8, 145u8, 231u8, 65u8, 172u8, 104u8, 165u8, 19u8, 181u8, 240u8, 169u8, 6u8, 249u8, 140u8, 63u8, 252u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Maximal number of bytes that a key can have."] #[doc = ""] #[doc = " FRAME itself does not limit the key length."] #[doc = " The concrete value must therefore depend on your storage usage."] #[doc = " A [`frame_support::storage::StorageNMap`] for example can have an arbitrary number of"] #[doc = " keys which are then hashed and concatenated, resulting in arbitrarily long keys."] #[doc = ""] #[doc = " Use the *state migration RPC* to retrieve the length of the longest key in your"] #[doc = " storage: "] #[doc = ""] #[doc = " The migration will halt with a `Halted` event if this value is too small."] #[doc = " Since there is no real penalty from over-estimating, it is advised to use a large"] #[doc = " value. The default is 512 byte."] #[doc = ""] #[doc = " Some key lengths for reference:"] #[doc = " - [`frame_support::storage::StorageValue`]: 32 byte"] #[doc = " - [`frame_support::storage::StorageMap`]: 64 byte"] #[doc = " - [`frame_support::storage::StorageDoubleMap`]: 96 byte"] #[doc = ""] #[doc = " For more info see"] #[doc = " "] pub fn max_key_len( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "StateTrieMigration", "MaxKeyLen", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod child_bounties { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AddChildBounty { #[codec(compact)] pub parent_bounty_id: ::core::primitive::u32, #[codec(compact)] pub value: ::core::primitive::u128, pub description: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ProposeCurator { #[codec(compact)] pub parent_bounty_id: ::core::primitive::u32, #[codec(compact)] pub child_bounty_id: ::core::primitive::u32, pub curator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub fee: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AcceptCurator { #[codec(compact)] pub parent_bounty_id: ::core::primitive::u32, #[codec(compact)] pub child_bounty_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UnassignCurator { #[codec(compact)] pub parent_bounty_id: ::core::primitive::u32, #[codec(compact)] pub child_bounty_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AwardChildBounty { #[codec(compact)] pub parent_bounty_id: ::core::primitive::u32, #[codec(compact)] pub child_bounty_id: ::core::primitive::u32, pub beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClaimChildBounty { #[codec(compact)] pub parent_bounty_id: ::core::primitive::u32, #[codec(compact)] pub child_bounty_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CloseChildBounty { #[codec(compact)] pub parent_bounty_id: ::core::primitive::u32, #[codec(compact)] pub child_bounty_id: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Add a new child-bounty."] #[doc = ""] #[doc = "The dispatch origin for this call must be the curator of parent"] #[doc = "bounty and the parent bounty must be in \"active\" state."] #[doc = ""] #[doc = "Child-bounty gets added successfully & fund gets transferred from"] #[doc = "parent bounty to child-bounty account, if parent bounty has enough"] #[doc = "funds, else the call fails."] #[doc = ""] #[doc = "Upper bound to maximum number of active child bounties that can be"] #[doc = "added are managed via runtime trait config"] #[doc = "[`Config::MaxActiveChildBountyCount`]."] #[doc = ""] #[doc = "If the call is success, the status of child-bounty is updated to"] #[doc = "\"Added\"."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty for which child-bounty is being added."] #[doc = "- `value`: Value for executing the proposal."] #[doc = "- `description`: Text description for the child-bounty."] pub fn add_child_bounty( &self, parent_bounty_id: ::core::primitive::u32, value: ::core::primitive::u128, description: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ChildBounties", "add_child_bounty", AddChildBounty { parent_bounty_id, value, description, }, [ 210u8, 156u8, 242u8, 121u8, 28u8, 214u8, 212u8, 203u8, 46u8, 45u8, 110u8, 25u8, 33u8, 138u8, 136u8, 71u8, 23u8, 102u8, 203u8, 122u8, 77u8, 162u8, 112u8, 133u8, 43u8, 73u8, 201u8, 176u8, 102u8, 68u8, 188u8, 8u8, ], ) } #[doc = "Propose curator for funded child-bounty."] #[doc = ""] #[doc = "The dispatch origin for this call must be curator of parent bounty."] #[doc = ""] #[doc = "Parent bounty must be in active state, for this child-bounty call to"] #[doc = "work."] #[doc = ""] #[doc = "Child-bounty must be in \"Added\" state, for processing the call. And"] #[doc = "state of child-bounty is moved to \"CuratorProposed\" on successful"] #[doc = "call completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] #[doc = "- `curator`: Address of child-bounty curator."] #[doc = "- `fee`: payment fee to child-bounty curator for execution."] pub fn propose_curator( &self, parent_bounty_id: ::core::primitive::u32, child_bounty_id: ::core::primitive::u32, curator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, fee: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ChildBounties", "propose_curator", ProposeCurator { parent_bounty_id, child_bounty_id, curator, fee, }, [ 147u8, 32u8, 161u8, 72u8, 92u8, 246u8, 250u8, 138u8, 98u8, 84u8, 229u8, 228u8, 217u8, 128u8, 168u8, 20u8, 73u8, 113u8, 55u8, 207u8, 117u8, 52u8, 9u8, 139u8, 223u8, 149u8, 48u8, 1u8, 8u8, 82u8, 133u8, 112u8, ], ) } #[doc = "Accept the curator role for the child-bounty."] #[doc = ""] #[doc = "The dispatch origin for this call must be the curator of this"] #[doc = "child-bounty."] #[doc = ""] #[doc = "A deposit will be reserved from the curator and refund upon"] #[doc = "successful payout or cancellation."] #[doc = ""] #[doc = "Fee for curator is deducted from curator fee of parent bounty."] #[doc = ""] #[doc = "Parent bounty must be in active state, for this child-bounty call to"] #[doc = "work."] #[doc = ""] #[doc = "Child-bounty must be in \"CuratorProposed\" state, for processing the"] #[doc = "call. And state of child-bounty is moved to \"Active\" on successful"] #[doc = "call completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] pub fn accept_curator( &self, parent_bounty_id: ::core::primitive::u32, child_bounty_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ChildBounties", "accept_curator", AcceptCurator { parent_bounty_id, child_bounty_id, }, [ 112u8, 175u8, 238u8, 54u8, 132u8, 20u8, 206u8, 59u8, 220u8, 228u8, 207u8, 222u8, 132u8, 240u8, 188u8, 0u8, 210u8, 225u8, 234u8, 142u8, 232u8, 53u8, 64u8, 89u8, 220u8, 29u8, 28u8, 123u8, 125u8, 207u8, 10u8, 52u8, ], ) } #[doc = "Unassign curator from a child-bounty."] #[doc = ""] #[doc = "The dispatch origin for this call can be either `RejectOrigin`, or"] #[doc = "the curator of the parent bounty, or any signed origin."] #[doc = ""] #[doc = "For the origin other than T::RejectOrigin and the child-bounty"] #[doc = "curator, parent bounty must be in active state, for this call to"] #[doc = "work. We allow child-bounty curator and T::RejectOrigin to execute"] #[doc = "this call irrespective of the parent bounty state."] #[doc = ""] #[doc = "If this function is called by the `RejectOrigin` or the"] #[doc = "parent bounty curator, we assume that the child-bounty curator is"] #[doc = "malicious or inactive. As a result, child-bounty curator deposit is"] #[doc = "slashed."] #[doc = ""] #[doc = "If the origin is the child-bounty curator, we take this as a sign"] #[doc = "that they are unable to do their job, and are willingly giving up."] #[doc = "We could slash the deposit, but for now we allow them to unreserve"] #[doc = "their deposit and exit without issue. (We may want to change this if"] #[doc = "it is abused.)"] #[doc = ""] #[doc = "Finally, the origin can be anyone iff the child-bounty curator is"] #[doc = "\"inactive\". Expiry update due of parent bounty is used to estimate"] #[doc = "inactive state of child-bounty curator."] #[doc = ""] #[doc = "This allows anyone in the community to call out that a child-bounty"] #[doc = "curator is not doing their due diligence, and we should pick a new"] #[doc = "one. In this case the child-bounty curator deposit is slashed."] #[doc = ""] #[doc = "State of child-bounty is moved to Added state on successful call"] #[doc = "completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] pub fn unassign_curator( &self, parent_bounty_id: ::core::primitive::u32, child_bounty_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ChildBounties", "unassign_curator", UnassignCurator { parent_bounty_id, child_bounty_id, }, [ 228u8, 189u8, 46u8, 75u8, 121u8, 161u8, 150u8, 87u8, 207u8, 86u8, 192u8, 50u8, 52u8, 61u8, 49u8, 88u8, 178u8, 182u8, 89u8, 72u8, 203u8, 45u8, 41u8, 26u8, 149u8, 114u8, 154u8, 169u8, 118u8, 128u8, 13u8, 211u8, ], ) } #[doc = "Award child-bounty to a beneficiary."] #[doc = ""] #[doc = "The beneficiary will be able to claim the funds after a delay."] #[doc = ""] #[doc = "The dispatch origin for this call must be the parent curator or"] #[doc = "curator of this child-bounty."] #[doc = ""] #[doc = "Parent bounty must be in active state, for this child-bounty call to"] #[doc = "work."] #[doc = ""] #[doc = "Child-bounty must be in active state, for processing the call. And"] #[doc = "state of child-bounty is moved to \"PendingPayout\" on successful call"] #[doc = "completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] #[doc = "- `beneficiary`: Beneficiary account."] pub fn award_child_bounty( &self, parent_bounty_id: ::core::primitive::u32, child_bounty_id: ::core::primitive::u32, beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ChildBounties", "award_child_bounty", AwardChildBounty { parent_bounty_id, child_bounty_id, beneficiary, }, [ 214u8, 25u8, 53u8, 19u8, 146u8, 11u8, 223u8, 173u8, 22u8, 235u8, 27u8, 57u8, 90u8, 171u8, 161u8, 45u8, 102u8, 37u8, 171u8, 110u8, 215u8, 151u8, 46u8, 136u8, 93u8, 7u8, 254u8, 112u8, 47u8, 42u8, 144u8, 140u8, ], ) } #[doc = "Claim the payout from an awarded child-bounty after payout delay."] #[doc = ""] #[doc = "The dispatch origin for this call may be any signed origin."] #[doc = ""] #[doc = "Call works independent of parent bounty state, No need for parent"] #[doc = "bounty to be in active state."] #[doc = ""] #[doc = "The Beneficiary is paid out with agreed bounty value. Curator fee is"] #[doc = "paid & curator deposit is unreserved."] #[doc = ""] #[doc = "Child-bounty must be in \"PendingPayout\" state, for processing the"] #[doc = "call. And instance of child-bounty is removed from the state on"] #[doc = "successful call completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] pub fn claim_child_bounty( &self, parent_bounty_id: ::core::primitive::u32, child_bounty_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ChildBounties", "claim_child_bounty", ClaimChildBounty { parent_bounty_id, child_bounty_id, }, [ 134u8, 243u8, 151u8, 228u8, 38u8, 174u8, 96u8, 140u8, 104u8, 124u8, 166u8, 206u8, 126u8, 211u8, 17u8, 100u8, 172u8, 5u8, 234u8, 171u8, 125u8, 2u8, 191u8, 163u8, 72u8, 29u8, 163u8, 107u8, 65u8, 92u8, 41u8, 45u8, ], ) } #[doc = "Cancel a proposed or active child-bounty. Child-bounty account funds"] #[doc = "are transferred to parent bounty account. The child-bounty curator"] #[doc = "deposit may be unreserved if possible."] #[doc = ""] #[doc = "The dispatch origin for this call must be either parent curator or"] #[doc = "`T::RejectOrigin`."] #[doc = ""] #[doc = "If the state of child-bounty is `Active`, curator deposit is"] #[doc = "unreserved."] #[doc = ""] #[doc = "If the state of child-bounty is `PendingPayout`, call fails &"] #[doc = "returns `PendingPayout` error."] #[doc = ""] #[doc = "For the origin other than T::RejectOrigin, parent bounty must be in"] #[doc = "active state, for this child-bounty call to work. For origin"] #[doc = "T::RejectOrigin execution is forced."] #[doc = ""] #[doc = "Instance of child-bounty is removed from the state on successful"] #[doc = "call completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] pub fn close_child_bounty( &self, parent_bounty_id: ::core::primitive::u32, child_bounty_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ChildBounties", "close_child_bounty", CloseChildBounty { parent_bounty_id, child_bounty_id, }, [ 40u8, 0u8, 235u8, 75u8, 36u8, 196u8, 29u8, 26u8, 30u8, 172u8, 240u8, 44u8, 129u8, 243u8, 55u8, 211u8, 96u8, 159u8, 72u8, 96u8, 142u8, 68u8, 41u8, 238u8, 157u8, 167u8, 90u8, 141u8, 213u8, 249u8, 222u8, 22u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_child_bounties::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A child-bounty is added."] pub struct Added { pub index: ::core::primitive::u32, pub child_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Added { const PALLET: &'static str = "ChildBounties"; const EVENT: &'static str = "Added"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A child-bounty is awarded to a beneficiary."] pub struct Awarded { pub index: ::core::primitive::u32, pub child_index: ::core::primitive::u32, pub beneficiary: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Awarded { const PALLET: &'static str = "ChildBounties"; const EVENT: &'static str = "Awarded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A child-bounty is claimed by beneficiary."] pub struct Claimed { pub index: ::core::primitive::u32, pub child_index: ::core::primitive::u32, pub payout: ::core::primitive::u128, pub beneficiary: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for Claimed { const PALLET: &'static str = "ChildBounties"; const EVENT: &'static str = "Claimed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A child-bounty is cancelled."] pub struct Canceled { pub index: ::core::primitive::u32, pub child_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Canceled { const PALLET: &'static str = "ChildBounties"; const EVENT: &'static str = "Canceled"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Number of total child bounties."] pub fn child_bounty_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "ChildBounties", "ChildBountyCount", vec![], [ 46u8, 10u8, 183u8, 160u8, 98u8, 215u8, 39u8, 253u8, 81u8, 94u8, 114u8, 147u8, 115u8, 162u8, 33u8, 117u8, 160u8, 214u8, 167u8, 7u8, 109u8, 143u8, 158u8, 1u8, 200u8, 205u8, 17u8, 93u8, 89u8, 26u8, 30u8, 95u8, ], ) } #[doc = " Number of child bounties per parent bounty."] #[doc = " Map of parent bounty index to number of child bounties."] pub fn parent_child_bounties( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ChildBounties", "ParentChildBounties", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 127u8, 161u8, 181u8, 79u8, 235u8, 196u8, 252u8, 162u8, 39u8, 15u8, 251u8, 49u8, 125u8, 80u8, 101u8, 24u8, 234u8, 88u8, 212u8, 126u8, 63u8, 63u8, 19u8, 75u8, 137u8, 125u8, 38u8, 250u8, 77u8, 49u8, 76u8, 188u8, ], ) } #[doc = " Number of child bounties per parent bounty."] #[doc = " Map of parent bounty index to number of child bounties."] pub fn parent_child_bounties_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ChildBounties", "ParentChildBounties", Vec::new(), [ 127u8, 161u8, 181u8, 79u8, 235u8, 196u8, 252u8, 162u8, 39u8, 15u8, 251u8, 49u8, 125u8, 80u8, 101u8, 24u8, 234u8, 88u8, 212u8, 126u8, 63u8, 63u8, 19u8, 75u8, 137u8, 125u8, 38u8, 250u8, 77u8, 49u8, 76u8, 188u8, ], ) } #[doc = " Child bounties that have been added."] pub fn child_bounties( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_child_bounties::ChildBounty< ::subxt::utils::AccountId32, ::core::primitive::u128, ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ChildBounties", "ChildBounties", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 66u8, 132u8, 251u8, 223u8, 216u8, 52u8, 162u8, 150u8, 229u8, 239u8, 219u8, 182u8, 211u8, 228u8, 181u8, 46u8, 243u8, 151u8, 111u8, 235u8, 105u8, 40u8, 39u8, 10u8, 245u8, 113u8, 78u8, 116u8, 219u8, 186u8, 165u8, 91u8, ], ) } #[doc = " Child bounties that have been added."] pub fn child_bounties_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_child_bounties::ChildBounty< ::subxt::utils::AccountId32, ::core::primitive::u128, ::core::primitive::u32, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ChildBounties", "ChildBounties", Vec::new(), [ 66u8, 132u8, 251u8, 223u8, 216u8, 52u8, 162u8, 150u8, 229u8, 239u8, 219u8, 182u8, 211u8, 228u8, 181u8, 46u8, 243u8, 151u8, 111u8, 235u8, 105u8, 40u8, 39u8, 10u8, 245u8, 113u8, 78u8, 116u8, 219u8, 186u8, 165u8, 91u8, ], ) } #[doc = " The description of each child-bounty."] pub fn child_bounty_descriptions( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ChildBounties", "ChildBountyDescriptions", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 193u8, 200u8, 40u8, 30u8, 14u8, 71u8, 90u8, 42u8, 58u8, 253u8, 225u8, 158u8, 172u8, 10u8, 45u8, 238u8, 36u8, 144u8, 184u8, 153u8, 11u8, 157u8, 125u8, 220u8, 175u8, 31u8, 28u8, 93u8, 207u8, 212u8, 141u8, 74u8, ], ) } #[doc = " The description of each child-bounty."] pub fn child_bounty_descriptions_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ChildBounties", "ChildBountyDescriptions", Vec::new(), [ 193u8, 200u8, 40u8, 30u8, 14u8, 71u8, 90u8, 42u8, 58u8, 253u8, 225u8, 158u8, 172u8, 10u8, 45u8, 238u8, 36u8, 144u8, 184u8, 153u8, 11u8, 157u8, 125u8, 220u8, 175u8, 31u8, 28u8, 93u8, 207u8, 212u8, 141u8, 74u8, ], ) } #[doc = " The cumulative child-bounty curator fee for each parent bounty."] pub fn children_curator_fees( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ChildBounties", "ChildrenCuratorFees", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 174u8, 128u8, 86u8, 179u8, 133u8, 76u8, 98u8, 169u8, 234u8, 166u8, 249u8, 214u8, 172u8, 171u8, 8u8, 161u8, 105u8, 69u8, 148u8, 151u8, 35u8, 174u8, 118u8, 139u8, 101u8, 56u8, 85u8, 211u8, 121u8, 168u8, 0u8, 216u8, ], ) } #[doc = " The cumulative child-bounty curator fee for each parent bounty."] pub fn children_curator_fees_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ChildBounties", "ChildrenCuratorFees", Vec::new(), [ 174u8, 128u8, 86u8, 179u8, 133u8, 76u8, 98u8, 169u8, 234u8, 166u8, 249u8, 214u8, 172u8, 171u8, 8u8, 161u8, 105u8, 69u8, 148u8, 151u8, 35u8, 174u8, 118u8, 139u8, 101u8, 56u8, 85u8, 211u8, 121u8, 168u8, 0u8, 216u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Maximum number of child bounties that can be added to a parent bounty."] pub fn max_active_child_bounty_count( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ChildBounties", "MaxActiveChildBountyCount", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Minimum value for a child-bounty."] pub fn child_bounty_value_minimum( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "ChildBounties", "ChildBountyValueMinimum", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } } } } pub mod referenda { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Submit { pub proposal_origin: ::std::boxed::Box, pub proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, pub enactment_moment: runtime_types::frame_support::traits::schedule::DispatchTime< ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PlaceDecisionDeposit { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RefundDecisionDeposit { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Cancel { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Kill { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct NudgeReferendum { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OneFewerDeciding { pub track: ::core::primitive::u16, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RefundSubmissionDeposit { pub index: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Propose a referendum on a privileged action."] #[doc = ""] #[doc = "- `origin`: must be `SubmitOrigin` and the account must have `SubmissionDeposit` funds"] #[doc = " available."] #[doc = "- `proposal_origin`: The origin from which the proposal should be executed."] #[doc = "- `proposal`: The proposal."] #[doc = "- `enactment_moment`: The moment that the proposal should be enacted."] #[doc = ""] #[doc = "Emits `Submitted`."] pub fn submit( &self, proposal_origin: runtime_types::kitchensink_runtime::OriginCaller, proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, enactment_moment : runtime_types :: frame_support :: traits :: schedule :: DispatchTime < :: core :: primitive :: u32 >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Referenda", "submit", Submit { proposal_origin: ::std::boxed::Box::new(proposal_origin), proposal, enactment_moment, }, [ 91u8, 158u8, 209u8, 182u8, 19u8, 184u8, 252u8, 30u8, 200u8, 62u8, 92u8, 254u8, 200u8, 245u8, 134u8, 143u8, 135u8, 67u8, 95u8, 107u8, 115u8, 109u8, 12u8, 48u8, 111u8, 239u8, 84u8, 255u8, 23u8, 26u8, 140u8, 187u8, ], ) } #[doc = "Post the Decision Deposit for a referendum."] #[doc = ""] #[doc = "- `origin`: must be `Signed` and the account must have funds available for the"] #[doc = " referendum's track's Decision Deposit."] #[doc = "- `index`: The index of the submitted referendum whose Decision Deposit is yet to be"] #[doc = " posted."] #[doc = ""] #[doc = "Emits `DecisionDepositPlaced`."] pub fn place_decision_deposit( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Referenda", "place_decision_deposit", PlaceDecisionDeposit { index }, [ 118u8, 227u8, 8u8, 55u8, 41u8, 171u8, 244u8, 40u8, 164u8, 232u8, 119u8, 129u8, 139u8, 123u8, 77u8, 70u8, 219u8, 236u8, 145u8, 159u8, 84u8, 111u8, 36u8, 4u8, 206u8, 5u8, 139u8, 231u8, 11u8, 231u8, 6u8, 30u8, ], ) } #[doc = "Refund the Decision Deposit for a closed referendum back to the depositor."] #[doc = ""] #[doc = "- `origin`: must be `Signed` or `Root`."] #[doc = "- `index`: The index of a closed referendum whose Decision Deposit has not yet been"] #[doc = " refunded."] #[doc = ""] #[doc = "Emits `DecisionDepositRefunded`."] pub fn refund_decision_deposit( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Referenda", "refund_decision_deposit", RefundDecisionDeposit { index }, [ 120u8, 116u8, 89u8, 51u8, 255u8, 76u8, 150u8, 74u8, 54u8, 93u8, 19u8, 64u8, 13u8, 177u8, 144u8, 93u8, 132u8, 150u8, 244u8, 48u8, 202u8, 223u8, 201u8, 130u8, 112u8, 167u8, 29u8, 207u8, 112u8, 181u8, 43u8, 93u8, ], ) } #[doc = "Cancel an ongoing referendum."] #[doc = ""] #[doc = "- `origin`: must be the `CancelOrigin`."] #[doc = "- `index`: The index of the referendum to be cancelled."] #[doc = ""] #[doc = "Emits `Cancelled`."] pub fn cancel( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Referenda", "cancel", Cancel { index }, [ 247u8, 55u8, 146u8, 211u8, 168u8, 140u8, 248u8, 217u8, 218u8, 235u8, 25u8, 39u8, 47u8, 132u8, 134u8, 18u8, 239u8, 70u8, 223u8, 50u8, 245u8, 101u8, 97u8, 39u8, 226u8, 4u8, 196u8, 16u8, 66u8, 177u8, 178u8, 252u8, ], ) } #[doc = "Cancel an ongoing referendum and slash the deposits."] #[doc = ""] #[doc = "- `origin`: must be the `KillOrigin`."] #[doc = "- `index`: The index of the referendum to be cancelled."] #[doc = ""] #[doc = "Emits `Killed` and `DepositSlashed`."] pub fn kill( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Referenda", "kill", Kill { index }, [ 98u8, 109u8, 143u8, 42u8, 24u8, 80u8, 39u8, 243u8, 249u8, 141u8, 104u8, 195u8, 29u8, 93u8, 149u8, 37u8, 27u8, 130u8, 84u8, 178u8, 246u8, 26u8, 113u8, 224u8, 157u8, 94u8, 16u8, 14u8, 158u8, 80u8, 148u8, 198u8, ], ) } #[doc = "Advance a referendum onto its next logical state. Only used internally."] #[doc = ""] #[doc = "- `origin`: must be `Root`."] #[doc = "- `index`: the referendum to be advanced."] pub fn nudge_referendum( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Referenda", "nudge_referendum", NudgeReferendum { index }, [ 60u8, 221u8, 153u8, 136u8, 107u8, 209u8, 59u8, 178u8, 208u8, 170u8, 10u8, 225u8, 213u8, 170u8, 228u8, 64u8, 204u8, 166u8, 7u8, 230u8, 243u8, 15u8, 206u8, 114u8, 8u8, 128u8, 46u8, 150u8, 114u8, 241u8, 112u8, 97u8, ], ) } #[doc = "Advance a track onto its next logical state. Only used internally."] #[doc = ""] #[doc = "- `origin`: must be `Root`."] #[doc = "- `track`: the track to be advanced."] #[doc = ""] #[doc = "Action item for when there is now one fewer referendum in the deciding phase and the"] #[doc = "`DecidingCount` is not yet updated. This means that we should either:"] #[doc = "- begin deciding another referendum (and leave `DecidingCount` alone); or"] #[doc = "- decrement `DecidingCount`."] pub fn one_fewer_deciding( &self, track: ::core::primitive::u16, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Referenda", "one_fewer_deciding", OneFewerDeciding { track }, [ 239u8, 43u8, 70u8, 73u8, 77u8, 28u8, 75u8, 62u8, 29u8, 67u8, 110u8, 120u8, 234u8, 236u8, 126u8, 99u8, 46u8, 183u8, 169u8, 16u8, 143u8, 233u8, 137u8, 247u8, 138u8, 96u8, 32u8, 223u8, 149u8, 52u8, 214u8, 195u8, ], ) } #[doc = "Refund the Submission Deposit for a closed referendum back to the depositor."] #[doc = ""] #[doc = "- `origin`: must be `Signed` or `Root`."] #[doc = "- `index`: The index of a closed referendum whose Submission Deposit has not yet been"] #[doc = " refunded."] #[doc = ""] #[doc = "Emits `SubmissionDepositRefunded`."] pub fn refund_submission_deposit( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Referenda", "refund_submission_deposit", RefundSubmissionDeposit { index }, [ 101u8, 147u8, 237u8, 27u8, 220u8, 116u8, 73u8, 131u8, 191u8, 92u8, 134u8, 31u8, 175u8, 172u8, 129u8, 225u8, 91u8, 33u8, 23u8, 132u8, 89u8, 19u8, 81u8, 238u8, 133u8, 243u8, 56u8, 70u8, 143u8, 43u8, 176u8, 83u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_referenda::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has been submitted."] pub struct Submitted { pub index: ::core::primitive::u32, pub track: ::core::primitive::u16, pub proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, } impl ::subxt::events::StaticEvent for Submitted { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "Submitted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The decision deposit has been placed."] pub struct DecisionDepositPlaced { pub index: ::core::primitive::u32, pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for DecisionDepositPlaced { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "DecisionDepositPlaced"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The decision deposit has been refunded."] pub struct DecisionDepositRefunded { pub index: ::core::primitive::u32, pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for DecisionDepositRefunded { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "DecisionDepositRefunded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A deposit has been slashaed."] pub struct DepositSlashed { pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for DepositSlashed { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "DepositSlashed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has moved into the deciding phase."] pub struct DecisionStarted { pub index: ::core::primitive::u32, pub track: ::core::primitive::u16, pub proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, pub tally: runtime_types::pallet_conviction_voting::types::Tally< ::core::primitive::u128, >, } impl ::subxt::events::StaticEvent for DecisionStarted { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "DecisionStarted"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ConfirmStarted { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ConfirmStarted { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "ConfirmStarted"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ConfirmAborted { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ConfirmAborted { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "ConfirmAborted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has ended its confirmation phase and is ready for approval."] pub struct Confirmed { pub index: ::core::primitive::u32, pub tally: runtime_types::pallet_conviction_voting::types::Tally< ::core::primitive::u128, >, } impl ::subxt::events::StaticEvent for Confirmed { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "Confirmed"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has been approved and its proposal has been scheduled."] pub struct Approved { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Approved { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "Approved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proposal has been rejected by referendum."] pub struct Rejected { pub index: ::core::primitive::u32, pub tally: runtime_types::pallet_conviction_voting::types::Tally< ::core::primitive::u128, >, } impl ::subxt::events::StaticEvent for Rejected { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "Rejected"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has been timed out without being decided."] pub struct TimedOut { pub index: ::core::primitive::u32, pub tally: runtime_types::pallet_conviction_voting::types::Tally< ::core::primitive::u128, >, } impl ::subxt::events::StaticEvent for TimedOut { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "TimedOut"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has been cancelled."] pub struct Cancelled { pub index: ::core::primitive::u32, pub tally: runtime_types::pallet_conviction_voting::types::Tally< ::core::primitive::u128, >, } impl ::subxt::events::StaticEvent for Cancelled { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "Cancelled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has been killed."] pub struct Killed { pub index: ::core::primitive::u32, pub tally: runtime_types::pallet_conviction_voting::types::Tally< ::core::primitive::u128, >, } impl ::subxt::events::StaticEvent for Killed { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "Killed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The submission deposit has been refunded."] pub struct SubmissionDepositRefunded { pub index: ::core::primitive::u32, pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for SubmissionDepositRefunded { const PALLET: &'static str = "Referenda"; const EVENT: &'static str = "SubmissionDepositRefunded"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The next free referendum index, aka the number of referenda started so far."] pub fn referendum_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Referenda", "ReferendumCount", vec![], [ 153u8, 210u8, 106u8, 244u8, 156u8, 70u8, 124u8, 251u8, 123u8, 75u8, 7u8, 189u8, 199u8, 145u8, 95u8, 119u8, 137u8, 11u8, 240u8, 160u8, 151u8, 248u8, 229u8, 231u8, 89u8, 222u8, 18u8, 237u8, 144u8, 78u8, 99u8, 58u8, ], ) } #[doc = " Information concerning any given referendum."] pub fn referendum_info_for( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_referenda::types::ReferendumInfo< ::core::primitive::u16, runtime_types::kitchensink_runtime::OriginCaller, ::core::primitive::u32, runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, ::core::primitive::u128, runtime_types::pallet_conviction_voting::types::Tally< ::core::primitive::u128, >, ::subxt::utils::AccountId32, (::core::primitive::u32, ::core::primitive::u32), >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Referenda", "ReferendumInfoFor", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 25u8, 217u8, 0u8, 39u8, 178u8, 83u8, 21u8, 62u8, 224u8, 149u8, 196u8, 86u8, 187u8, 173u8, 75u8, 17u8, 234u8, 126u8, 202u8, 44u8, 196u8, 253u8, 214u8, 158u8, 119u8, 128u8, 69u8, 239u8, 178u8, 51u8, 117u8, 16u8, ], ) } #[doc = " Information concerning any given referendum."] pub fn referendum_info_for_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_referenda::types::ReferendumInfo< ::core::primitive::u16, runtime_types::kitchensink_runtime::OriginCaller, ::core::primitive::u32, runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, ::core::primitive::u128, runtime_types::pallet_conviction_voting::types::Tally< ::core::primitive::u128, >, ::subxt::utils::AccountId32, (::core::primitive::u32, ::core::primitive::u32), >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Referenda", "ReferendumInfoFor", Vec::new(), [ 25u8, 217u8, 0u8, 39u8, 178u8, 83u8, 21u8, 62u8, 224u8, 149u8, 196u8, 86u8, 187u8, 173u8, 75u8, 17u8, 234u8, 126u8, 202u8, 44u8, 196u8, 253u8, 214u8, 158u8, 119u8, 128u8, 69u8, 239u8, 178u8, 51u8, 117u8, 16u8, ], ) } #[doc = " The sorted list of referenda ready to be decided but not yet being decided, ordered by"] #[doc = " conviction-weighted approvals."] #[doc = ""] #[doc = " This should be empty if `DecidingCount` is less than `TrackInfo::max_deciding`."] pub fn track_queue( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u16>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u32, ::core::primitive::u128, )>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Referenda", "TrackQueue", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 254u8, 82u8, 183u8, 246u8, 168u8, 87u8, 175u8, 224u8, 192u8, 117u8, 129u8, 244u8, 18u8, 18u8, 249u8, 30u8, 51u8, 133u8, 244u8, 117u8, 194u8, 174u8, 99u8, 51u8, 155u8, 76u8, 206u8, 202u8, 109u8, 39u8, 253u8, 240u8, ], ) } #[doc = " The sorted list of referenda ready to be decided but not yet being decided, ordered by"] #[doc = " conviction-weighted approvals."] #[doc = ""] #[doc = " This should be empty if `DecidingCount` is less than `TrackInfo::max_deciding`."] pub fn track_queue_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u32, ::core::primitive::u128, )>, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Referenda", "TrackQueue", Vec::new(), [ 254u8, 82u8, 183u8, 246u8, 168u8, 87u8, 175u8, 224u8, 192u8, 117u8, 129u8, 244u8, 18u8, 18u8, 249u8, 30u8, 51u8, 133u8, 244u8, 117u8, 194u8, 174u8, 99u8, 51u8, 155u8, 76u8, 206u8, 202u8, 109u8, 39u8, 253u8, 240u8, ], ) } #[doc = " The number of referenda being decided currently."] pub fn deciding_count( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u16>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Referenda", "DecidingCount", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 101u8, 153u8, 200u8, 225u8, 229u8, 227u8, 232u8, 26u8, 98u8, 60u8, 60u8, 94u8, 204u8, 195u8, 193u8, 69u8, 50u8, 72u8, 31u8, 250u8, 224u8, 179u8, 139u8, 207u8, 19u8, 156u8, 67u8, 234u8, 177u8, 223u8, 63u8, 150u8, ], ) } #[doc = " The number of referenda being decided currently."] pub fn deciding_count_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Referenda", "DecidingCount", Vec::new(), [ 101u8, 153u8, 200u8, 225u8, 229u8, 227u8, 232u8, 26u8, 98u8, 60u8, 60u8, 94u8, 204u8, 195u8, 193u8, 69u8, 50u8, 72u8, 31u8, 250u8, 224u8, 179u8, 139u8, 207u8, 19u8, 156u8, 67u8, 234u8, 177u8, 223u8, 63u8, 150u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The minimum amount to be used as a deposit for a public referendum proposal."] pub fn submission_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Referenda", "SubmissionDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " Maximum size of the referendum queue for a single track."] pub fn max_queued( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Referenda", "MaxQueued", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The number of blocks after submission that a referendum must begin being decided by."] #[doc = " Once this passes, then anyone may cancel the referendum."] pub fn undeciding_timeout( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Referenda", "UndecidingTimeout", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Quantization level for the referendum wakeup scheduler. A higher number will result in"] #[doc = " fewer storage reads/writes needed for smaller voters, but also result in delays to the"] #[doc = " automatic referendum status changes. Explicit servicing instructions are unaffected."] pub fn alarm_interval( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Referenda", "AlarmInterval", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Information concerning the different referendum tracks."] pub fn tracks( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<( ::core::primitive::u16, runtime_types::pallet_referenda::types::TrackInfo< ::core::primitive::u128, ::core::primitive::u32, >, )>, >, > { ::subxt::constants::StaticConstantAddress::new( "Referenda", "Tracks", [ 71u8, 253u8, 246u8, 54u8, 168u8, 190u8, 182u8, 15u8, 207u8, 26u8, 50u8, 138u8, 212u8, 124u8, 13u8, 203u8, 27u8, 35u8, 224u8, 1u8, 176u8, 192u8, 197u8, 220u8, 147u8, 94u8, 196u8, 150u8, 125u8, 23u8, 48u8, 255u8, ], ) } } } } pub mod remark { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Store { pub remark: ::std::vec::Vec<::core::primitive::u8>, } pub struct TransactionApi; impl TransactionApi { #[doc = "Index and store data off chain."] pub fn store( &self, remark: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Remark", "store", Store { remark }, [ 55u8, 111u8, 88u8, 127u8, 252u8, 241u8, 51u8, 152u8, 154u8, 138u8, 228u8, 171u8, 59u8, 29u8, 135u8, 236u8, 227u8, 108u8, 169u8, 205u8, 25u8, 96u8, 118u8, 73u8, 105u8, 132u8, 150u8, 148u8, 94u8, 230u8, 66u8, 73u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_remark::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Stored data off chain."] pub struct Stored { pub sender: ::subxt::utils::AccountId32, pub content_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Stored { const PALLET: &'static str = "Remark"; const EVENT: &'static str = "Stored"; } } } pub mod root_testing { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct FillBlock { pub ratio: runtime_types::sp_arithmetic::per_things::Perbill, } pub struct TransactionApi; impl TransactionApi { #[doc = "A dispatch that will fill the block weight up to the given ratio."] pub fn fill_block( &self, ratio: runtime_types::sp_arithmetic::per_things::Perbill, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RootTesting", "fill_block", FillBlock { ratio }, [ 48u8, 18u8, 205u8, 90u8, 222u8, 4u8, 20u8, 251u8, 173u8, 76u8, 167u8, 4u8, 83u8, 203u8, 160u8, 89u8, 132u8, 218u8, 191u8, 145u8, 130u8, 245u8, 177u8, 201u8, 169u8, 129u8, 173u8, 105u8, 88u8, 45u8, 136u8, 191u8, ], ) } } } } pub mod conviction_voting { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vote { #[codec(compact)] pub poll_index: ::core::primitive::u32, pub vote: runtime_types::pallet_conviction_voting::vote::AccountVote< ::core::primitive::u128, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Delegate { pub class: ::core::primitive::u16, pub to: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub conviction: runtime_types::pallet_conviction_voting::conviction::Conviction, pub balance: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Undelegate { pub class: ::core::primitive::u16, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Unlock { pub class: ::core::primitive::u16, pub target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveVote { pub class: ::core::option::Option<::core::primitive::u16>, pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveOtherVote { pub target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub class: ::core::primitive::u16, pub index: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Vote in a poll. If `vote.is_aye()`, the vote is to enact the proposal;"] #[doc = "otherwise it is a vote to keep the status quo."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_."] #[doc = ""] #[doc = "- `poll_index`: The index of the poll to vote for."] #[doc = "- `vote`: The vote configuration."] #[doc = ""] #[doc = "Weight: `O(R)` where R is the number of polls the voter has voted on."] pub fn vote( &self, poll_index: ::core::primitive::u32, vote: runtime_types::pallet_conviction_voting::vote::AccountVote< ::core::primitive::u128, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ConvictionVoting", "vote", Vote { poll_index, vote }, [ 255u8, 8u8, 191u8, 166u8, 7u8, 48u8, 227u8, 0u8, 34u8, 109u8, 3u8, 172u8, 168u8, 37u8, 220u8, 229u8, 88u8, 61u8, 117u8, 212u8, 131u8, 124u8, 74u8, 60u8, 83u8, 62u8, 193u8, 66u8, 162u8, 121u8, 76u8, 180u8, ], ) } #[doc = "Delegate the voting power (with some given conviction) of the sending account for a"] #[doc = "particular class of polls."] #[doc = ""] #[doc = "The balance delegated is locked for as long as it's delegated, and thereafter for the"] #[doc = "time appropriate for the conviction's lock period."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_, and the signing account must either:"] #[doc = " - be delegating already; or"] #[doc = " - have no voting activity (if there is, then it will need to be removed/consolidated"] #[doc = " through `reap_vote` or `unvote`)."] #[doc = ""] #[doc = "- `to`: The account whose voting the `target` account's voting power will follow."] #[doc = "- `class`: The class of polls to delegate. To delegate multiple classes, multiple calls"] #[doc = " to this function are required."] #[doc = "- `conviction`: The conviction that will be attached to the delegated votes. When the"] #[doc = " account is undelegated, the funds will be locked for the corresponding period."] #[doc = "- `balance`: The amount of the account's balance to be used in delegating. This must not"] #[doc = " be more than the account's current balance."] #[doc = ""] #[doc = "Emits `Delegated`."] #[doc = ""] #[doc = "Weight: `O(R)` where R is the number of polls the voter delegating to has"] #[doc = " voted on. Weight is initially charged as if maximum votes, but is refunded later."] pub fn delegate( &self, class: ::core::primitive::u16, to: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, conviction : runtime_types :: pallet_conviction_voting :: conviction :: Conviction, balance: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ConvictionVoting", "delegate", Delegate { class, to, conviction, balance, }, [ 171u8, 252u8, 251u8, 36u8, 176u8, 75u8, 66u8, 106u8, 199u8, 126u8, 94u8, 221u8, 146u8, 1u8, 172u8, 60u8, 160u8, 245u8, 47u8, 98u8, 183u8, 66u8, 96u8, 19u8, 129u8, 163u8, 118u8, 216u8, 54u8, 109u8, 190u8, 103u8, ], ) } #[doc = "Undelegate the voting power of the sending account for a particular class of polls."] #[doc = ""] #[doc = "Tokens may be unlocked following once an amount of time consistent with the lock period"] #[doc = "of the conviction with which the delegation was issued has passed."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_ and the signing account must be"] #[doc = "currently delegating."] #[doc = ""] #[doc = "- `class`: The class of polls to remove the delegation from."] #[doc = ""] #[doc = "Emits `Undelegated`."] #[doc = ""] #[doc = "Weight: `O(R)` where R is the number of polls the voter delegating to has"] #[doc = " voted on. Weight is initially charged as if maximum votes, but is refunded later."] pub fn undelegate( &self, class: ::core::primitive::u16, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ConvictionVoting", "undelegate", Undelegate { class }, [ 0u8, 244u8, 151u8, 108u8, 96u8, 240u8, 126u8, 247u8, 29u8, 33u8, 25u8, 34u8, 253u8, 207u8, 107u8, 227u8, 139u8, 64u8, 184u8, 112u8, 246u8, 81u8, 201u8, 41u8, 32u8, 201u8, 194u8, 201u8, 4u8, 170u8, 40u8, 83u8, ], ) } #[doc = "Remove the lock caused by prior voting/delegating which has expired within a particular"] #[doc = "class."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_."] #[doc = ""] #[doc = "- `class`: The class of polls to unlock."] #[doc = "- `target`: The account to remove the lock on."] #[doc = ""] #[doc = "Weight: `O(R)` with R number of vote of target."] pub fn unlock( &self, class: ::core::primitive::u16, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ConvictionVoting", "unlock", Unlock { class, target }, [ 165u8, 17u8, 167u8, 109u8, 53u8, 26u8, 241u8, 236u8, 105u8, 144u8, 12u8, 61u8, 100u8, 52u8, 54u8, 88u8, 203u8, 255u8, 63u8, 215u8, 137u8, 156u8, 112u8, 243u8, 79u8, 136u8, 147u8, 185u8, 102u8, 0u8, 57u8, 223u8, ], ) } #[doc = "Remove a vote for a poll."] #[doc = ""] #[doc = "If:"] #[doc = "- the poll was cancelled, or"] #[doc = "- the poll is ongoing, or"] #[doc = "- the poll has ended such that"] #[doc = " - the vote of the account was in opposition to the result; or"] #[doc = " - there was no conviction to the account's vote; or"] #[doc = " - the account made a split vote"] #[doc = "...then the vote is removed cleanly and a following call to `unlock` may result in more"] #[doc = "funds being available."] #[doc = ""] #[doc = "If, however, the poll has ended and:"] #[doc = "- it finished corresponding to the vote of the account, and"] #[doc = "- the account made a standard vote with conviction, and"] #[doc = "- the lock period of the conviction is not over"] #[doc = "...then the lock will be aggregated into the overall account's lock, which may involve"] #[doc = "*overlocking* (where the two locks are combined into a single lock that is the maximum"] #[doc = "of both the amount locked and the time is it locked for)."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_, and the signer must have a vote"] #[doc = "registered for poll `index`."] #[doc = ""] #[doc = "- `index`: The index of poll of the vote to be removed."] #[doc = "- `class`: Optional parameter, if given it indicates the class of the poll. For polls"] #[doc = " which have finished or are cancelled, this must be `Some`."] #[doc = ""] #[doc = "Weight: `O(R + log R)` where R is the number of polls that `target` has voted on."] #[doc = " Weight is calculated for the maximum number of vote."] pub fn remove_vote( &self, class: ::core::option::Option<::core::primitive::u16>, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ConvictionVoting", "remove_vote", RemoveVote { class, index }, [ 151u8, 255u8, 135u8, 195u8, 137u8, 27u8, 116u8, 193u8, 245u8, 78u8, 38u8, 130u8, 233u8, 28u8, 235u8, 50u8, 144u8, 191u8, 39u8, 68u8, 17u8, 214u8, 25u8, 2u8, 120u8, 14u8, 219u8, 205u8, 59u8, 192u8, 125u8, 142u8, ], ) } #[doc = "Remove a vote for a poll."] #[doc = ""] #[doc = "If the `target` is equal to the signer, then this function is exactly equivalent to"] #[doc = "`remove_vote`. If not equal to the signer, then the vote must have expired,"] #[doc = "either because the poll was cancelled, because the voter lost the poll or"] #[doc = "because the conviction period is over."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_."] #[doc = ""] #[doc = "- `target`: The account of the vote to be removed; this account must have voted for poll"] #[doc = " `index`."] #[doc = "- `index`: The index of poll of the vote to be removed."] #[doc = "- `class`: The class of the poll."] #[doc = ""] #[doc = "Weight: `O(R + log R)` where R is the number of polls that `target` has voted on."] #[doc = " Weight is calculated for the maximum number of vote."] pub fn remove_other_vote( &self, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, class: ::core::primitive::u16, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "ConvictionVoting", "remove_other_vote", RemoveOtherVote { target, class, index, }, [ 9u8, 219u8, 232u8, 254u8, 85u8, 1u8, 189u8, 186u8, 87u8, 95u8, 27u8, 248u8, 14u8, 165u8, 86u8, 167u8, 230u8, 18u8, 225u8, 151u8, 105u8, 169u8, 84u8, 254u8, 201u8, 122u8, 157u8, 189u8, 40u8, 29u8, 107u8, 21u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_conviction_voting::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has delegated their vote to another account. \\[who, target\\]"] pub struct Delegated( pub ::subxt::utils::AccountId32, pub ::subxt::utils::AccountId32, ); impl ::subxt::events::StaticEvent for Delegated { const PALLET: &'static str = "ConvictionVoting"; const EVENT: &'static str = "Delegated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An \\[account\\] has cancelled a previous delegation operation."] pub struct Undelegated(pub ::subxt::utils::AccountId32); impl ::subxt::events::StaticEvent for Undelegated { const PALLET: &'static str = "ConvictionVoting"; const EVENT: &'static str = "Undelegated"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " All voting for a particular voter in a particular voting class. We store the balance for the"] #[doc = " number of votes that we have recorded."] pub fn voting_for( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, _1: impl ::std::borrow::Borrow<::core::primitive::u16>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_conviction_voting::vote::Voting< ::core::primitive::u128, ::subxt::utils::AccountId32, ::core::primitive::u32, ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ConvictionVoting", "VotingFor", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 45u8, 18u8, 71u8, 145u8, 31u8, 220u8, 221u8, 51u8, 69u8, 73u8, 153u8, 139u8, 46u8, 231u8, 122u8, 15u8, 98u8, 186u8, 57u8, 121u8, 24u8, 241u8, 161u8, 150u8, 252u8, 133u8, 65u8, 232u8, 21u8, 28u8, 25u8, 75u8, ], ) } #[doc = " All voting for a particular voter in a particular voting class. We store the balance for the"] #[doc = " number of votes that we have recorded."] pub fn voting_for_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_conviction_voting::vote::Voting< ::core::primitive::u128, ::subxt::utils::AccountId32, ::core::primitive::u32, ::core::primitive::u32, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ConvictionVoting", "VotingFor", Vec::new(), [ 45u8, 18u8, 71u8, 145u8, 31u8, 220u8, 221u8, 51u8, 69u8, 73u8, 153u8, 139u8, 46u8, 231u8, 122u8, 15u8, 98u8, 186u8, 57u8, 121u8, 24u8, 241u8, 161u8, 150u8, 252u8, 133u8, 65u8, 232u8, 21u8, 28u8, 25u8, 75u8, ], ) } #[doc = " The voting classes which have a non-zero lock requirement and the lock amounts which they"] #[doc = " require. The actual amount locked on behalf of this pallet should always be the maximum of"] #[doc = " this list."] pub fn class_locks_for( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u16, ::core::primitive::u128, )>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ConvictionVoting", "ClassLocksFor", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 65u8, 181u8, 225u8, 49u8, 35u8, 141u8, 185u8, 155u8, 124u8, 178u8, 118u8, 51u8, 220u8, 232u8, 95u8, 24u8, 181u8, 135u8, 42u8, 207u8, 103u8, 166u8, 244u8, 249u8, 106u8, 96u8, 177u8, 56u8, 243u8, 117u8, 228u8, 145u8, ], ) } #[doc = " The voting classes which have a non-zero lock requirement and the lock amounts which they"] #[doc = " require. The actual amount locked on behalf of this pallet should always be the maximum of"] #[doc = " this list."] pub fn class_locks_for_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u16, ::core::primitive::u128, )>, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "ConvictionVoting", "ClassLocksFor", Vec::new(), [ 65u8, 181u8, 225u8, 49u8, 35u8, 141u8, 185u8, 155u8, 124u8, 178u8, 118u8, 51u8, 220u8, 232u8, 95u8, 24u8, 181u8, 135u8, 42u8, 207u8, 103u8, 166u8, 244u8, 249u8, 106u8, 96u8, 177u8, 56u8, 243u8, 117u8, 228u8, 145u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The maximum number of concurrent votes an account may have."] #[doc = ""] #[doc = " Also used to compute weight, an overly large value can lead to extrinsics with large"] #[doc = " weight estimation: see `delegate` for instance."] pub fn max_votes( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ConvictionVoting", "MaxVotes", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The minimum period of vote locking."] #[doc = ""] #[doc = " It should be no shorter than enactment period to ensure that in the case of an approval,"] #[doc = " those successful voters are locked into the consequences that their votes entail."] pub fn vote_locking_period( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "ConvictionVoting", "VoteLockingPeriod", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod whitelist { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct WhitelistCall { pub call_hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveWhitelistedCall { pub call_hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DispatchWhitelistedCall { pub call_hash: ::subxt::utils::H256, pub call_encoded_len: ::core::primitive::u32, pub call_weight_witness: runtime_types::sp_weights::weight_v2::Weight, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DispatchWhitelistedCallWithPreimage { pub call: ::std::boxed::Box, } pub struct TransactionApi; impl TransactionApi { pub fn whitelist_call( &self, call_hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Whitelist", "whitelist_call", WhitelistCall { call_hash }, [ 21u8, 246u8, 244u8, 176u8, 163u8, 80u8, 45u8, 191u8, 3u8, 180u8, 150u8, 66u8, 168u8, 3u8, 196u8, 129u8, 177u8, 104u8, 48u8, 5u8, 201u8, 208u8, 226u8, 76u8, 148u8, 116u8, 206u8, 119u8, 145u8, 78u8, 86u8, 41u8, ], ) } pub fn remove_whitelisted_call( &self, call_hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Whitelist", "remove_whitelisted_call", RemoveWhitelistedCall { call_hash }, [ 142u8, 227u8, 198u8, 110u8, 90u8, 127u8, 218u8, 117u8, 181u8, 209u8, 210u8, 86u8, 133u8, 95u8, 244u8, 64u8, 50u8, 240u8, 220u8, 50u8, 212u8, 106u8, 4u8, 189u8, 2u8, 72u8, 96u8, 52u8, 187u8, 140u8, 144u8, 76u8, ], ) } pub fn dispatch_whitelisted_call( &self, call_hash: ::subxt::utils::H256, call_encoded_len: ::core::primitive::u32, call_weight_witness: runtime_types::sp_weights::weight_v2::Weight, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Whitelist", "dispatch_whitelisted_call", DispatchWhitelistedCall { call_hash, call_encoded_len, call_weight_witness, }, [ 243u8, 130u8, 216u8, 251u8, 131u8, 220u8, 75u8, 210u8, 203u8, 137u8, 174u8, 95u8, 134u8, 252u8, 76u8, 33u8, 230u8, 185u8, 125u8, 15u8, 200u8, 85u8, 46u8, 43u8, 34u8, 205u8, 245u8, 85u8, 46u8, 78u8, 245u8, 135u8, ], ) } pub fn dispatch_whitelisted_call_with_preimage( &self, call: runtime_types::kitchensink_runtime::RuntimeCall, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Whitelist", "dispatch_whitelisted_call_with_preimage", DispatchWhitelistedCallWithPreimage { call: ::std::boxed::Box::new(call), }, [ 53u8, 243u8, 154u8, 73u8, 65u8, 246u8, 13u8, 203u8, 160u8, 243u8, 238u8, 79u8, 185u8, 70u8, 103u8, 134u8, 237u8, 253u8, 90u8, 164u8, 81u8, 238u8, 180u8, 46u8, 183u8, 76u8, 216u8, 30u8, 18u8, 244u8, 56u8, 196u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_whitelist::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CallWhitelisted { pub call_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for CallWhitelisted { const PALLET: &'static str = "Whitelist"; const EVENT: &'static str = "CallWhitelisted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct WhitelistedCallRemoved { pub call_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for WhitelistedCallRemoved { const PALLET: &'static str = "Whitelist"; const EVENT: &'static str = "WhitelistedCallRemoved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct WhitelistedCallDispatched { pub call_hash: ::subxt::utils::H256, pub result: ::core::result::Result< runtime_types::frame_support::dispatch::PostDispatchInfo, runtime_types::sp_runtime::DispatchErrorWithPostInfo< runtime_types::frame_support::dispatch::PostDispatchInfo, >, >, } impl ::subxt::events::StaticEvent for WhitelistedCallDispatched { const PALLET: &'static str = "Whitelist"; const EVENT: &'static str = "WhitelistedCallDispatched"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { pub fn whitelisted_call( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<()>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Whitelist", "WhitelistedCall", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 251u8, 179u8, 58u8, 232u8, 231u8, 121u8, 89u8, 218u8, 90u8, 70u8, 96u8, 132u8, 54u8, 41u8, 18u8, 129u8, 197u8, 122u8, 221u8, 206u8, 41u8, 100u8, 200u8, 141u8, 71u8, 98u8, 3u8, 3u8, 112u8, 167u8, 196u8, 77u8, ], ) } pub fn whitelisted_call_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<()>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Whitelist", "WhitelistedCall", Vec::new(), [ 251u8, 179u8, 58u8, 232u8, 231u8, 121u8, 89u8, 218u8, 90u8, 70u8, 96u8, 132u8, 54u8, 41u8, 18u8, 129u8, 197u8, 122u8, 221u8, 206u8, 41u8, 100u8, 200u8, 141u8, 71u8, 98u8, 3u8, 3u8, 112u8, 167u8, 196u8, 77u8, ], ) } } } } pub mod alliance_motion { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetMembers { pub new_members: ::std::vec::Vec<::subxt::utils::AccountId32>, pub prime: ::core::option::Option<::subxt::utils::AccountId32>, pub old_count: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Execute { pub proposal: ::std::boxed::Box, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Propose { #[codec(compact)] pub threshold: ::core::primitive::u32, pub proposal: ::std::boxed::Box, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vote { pub proposal: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, pub approve: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CloseOldWeight { pub proposal_hash: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, #[codec(compact)] pub proposal_weight_bound: runtime_types::sp_weights::OldWeight, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DisapproveProposal { pub proposal_hash: ::subxt::utils::H256, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Close { pub proposal_hash: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, pub proposal_weight_bound: runtime_types::sp_weights::weight_v2::Weight, #[codec(compact)] pub length_bound: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Set the collective's membership."] #[doc = ""] #[doc = "- `new_members`: The new member list. Be nice to the chain and provide it sorted."] #[doc = "- `prime`: The prime member whose vote sets the default."] #[doc = "- `old_count`: The upper bound for the previous number of members in storage. Used for"] #[doc = " weight estimation."] #[doc = ""] #[doc = "Requires root origin."] #[doc = ""] #[doc = "NOTE: Does not enforce the expected `MaxMembers` limit on the amount of members, but"] #[doc = " the weight estimations rely on it to estimate dispatchable weight."] #[doc = ""] #[doc = "# WARNING:"] #[doc = ""] #[doc = "The `pallet-collective` can also be managed by logic outside of the pallet through the"] #[doc = "implementation of the trait [`ChangeMembers`]."] #[doc = "Any call to `set_members` must be careful that the member set doesn't get out of sync"] #[doc = "with other logic managing the member set."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(MP + N)` where:"] #[doc = " - `M` old-members-count (code- and governance-bounded)"] #[doc = " - `N` new-members-count (code- and governance-bounded)"] #[doc = " - `P` proposals-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 1 storage mutation (codec `O(M)` read, `O(N)` write) for reading and writing the"] #[doc = " members"] #[doc = " - 1 storage read (codec `O(P)`) for reading the proposals"] #[doc = " - `P` storage mutations (codec `O(M)`) for updating the votes for each proposal"] #[doc = " - 1 storage write (codec `O(1)`) for deleting the old `prime` and setting the new one"] #[doc = "# "] pub fn set_members( &self, new_members: ::std::vec::Vec<::subxt::utils::AccountId32>, prime: ::core::option::Option<::subxt::utils::AccountId32>, old_count: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "AllianceMotion", "set_members", SetMembers { new_members, prime, old_count, }, [ 196u8, 103u8, 123u8, 125u8, 226u8, 177u8, 126u8, 37u8, 160u8, 114u8, 34u8, 136u8, 219u8, 84u8, 199u8, 94u8, 242u8, 20u8, 126u8, 126u8, 166u8, 190u8, 198u8, 33u8, 162u8, 113u8, 237u8, 222u8, 90u8, 1u8, 2u8, 234u8, ], ) } #[doc = "Dispatch a proposal from a member using the `Member` origin."] #[doc = ""] #[doc = "Origin must be a member of the collective."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(M + P)` where `M` members-count (code-bounded) and `P` complexity of dispatching"] #[doc = " `proposal`"] #[doc = "- DB: 1 read (codec `O(M)`) + DB access of `proposal`"] #[doc = "- 1 event"] #[doc = "# "] pub fn execute( &self, proposal: runtime_types::kitchensink_runtime::RuntimeCall, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "AllianceMotion", "execute", Execute { proposal: ::std::boxed::Box::new(proposal), length_bound, }, [ 11u8, 230u8, 151u8, 156u8, 17u8, 226u8, 224u8, 243u8, 34u8, 47u8, 174u8, 194u8, 108u8, 108u8, 225u8, 234u8, 208u8, 246u8, 234u8, 1u8, 163u8, 25u8, 151u8, 208u8, 10u8, 87u8, 0u8, 47u8, 171u8, 217u8, 193u8, 141u8, ], ) } #[doc = "Add a new proposal to either be voted on or executed directly."] #[doc = ""] #[doc = "Requires the sender to be member."] #[doc = ""] #[doc = "`threshold` determines whether `proposal` is executed directly (`threshold < 2`)"] #[doc = "or put up for voting."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1)` or `O(B + M + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - branching is influenced by `threshold` where:"] #[doc = " - `P1` is proposal execution complexity (`threshold < 2`)"] #[doc = " - `P2` is proposals-count (code-bounded) (`threshold >= 2`)"] #[doc = "- DB:"] #[doc = " - 1 storage read `is_member` (codec `O(M)`)"] #[doc = " - 1 storage read `ProposalOf::contains_key` (codec `O(1)`)"] #[doc = " - DB accesses influenced by `threshold`:"] #[doc = " - EITHER storage accesses done by `proposal` (`threshold < 2`)"] #[doc = " - OR proposal insertion (`threshold <= 2`)"] #[doc = " - 1 storage mutation `Proposals` (codec `O(P2)`)"] #[doc = " - 1 storage mutation `ProposalCount` (codec `O(1)`)"] #[doc = " - 1 storage write `ProposalOf` (codec `O(B)`)"] #[doc = " - 1 storage write `Voting` (codec `O(M)`)"] #[doc = " - 1 event"] #[doc = "# "] pub fn propose( &self, threshold: ::core::primitive::u32, proposal: runtime_types::kitchensink_runtime::RuntimeCall, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "AllianceMotion", "propose", Propose { threshold, proposal: ::std::boxed::Box::new(proposal), length_bound, }, [ 86u8, 118u8, 118u8, 134u8, 244u8, 21u8, 74u8, 68u8, 219u8, 175u8, 153u8, 175u8, 75u8, 118u8, 200u8, 66u8, 152u8, 203u8, 5u8, 224u8, 152u8, 129u8, 167u8, 208u8, 225u8, 247u8, 119u8, 116u8, 33u8, 68u8, 75u8, 245u8, ], ) } #[doc = "Add an aye or nay vote for the sender to the given proposal."] #[doc = ""] #[doc = "Requires the sender to be a member."] #[doc = ""] #[doc = "Transaction fees will be waived if the member is voting on any particular proposal"] #[doc = "for the first time and the call is successful. Subsequent vote changes will charge a"] #[doc = "fee."] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(M)` where `M` is members-count (code- and governance-bounded)"] #[doc = "- DB:"] #[doc = " - 1 storage read `Members` (codec `O(M)`)"] #[doc = " - 1 storage mutation `Voting` (codec `O(M)`)"] #[doc = "- 1 event"] #[doc = "# "] pub fn vote( &self, proposal: ::subxt::utils::H256, index: ::core::primitive::u32, approve: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "AllianceMotion", "vote", Vote { proposal, index, approve, }, [ 108u8, 46u8, 180u8, 148u8, 145u8, 24u8, 173u8, 56u8, 36u8, 100u8, 216u8, 43u8, 178u8, 202u8, 26u8, 136u8, 93u8, 84u8, 80u8, 134u8, 14u8, 42u8, 248u8, 205u8, 68u8, 92u8, 79u8, 11u8, 113u8, 115u8, 157u8, 100u8, ], ) } #[doc = "Close a vote that is either approved, disapproved or whose voting period has ended."] #[doc = ""] #[doc = "May be called by any signed account in order to finish voting and close the proposal."] #[doc = ""] #[doc = "If called before the end of the voting period it will only close the vote if it is"] #[doc = "has enough votes to be approved or disapproved."] #[doc = ""] #[doc = "If called after the end of the voting period abstentions are counted as rejections"] #[doc = "unless there is a prime member set and the prime member cast an approval."] #[doc = ""] #[doc = "If the close operation completes successfully with disapproval, the transaction fee will"] #[doc = "be waived. Otherwise execution of the approved operation will be charged to the caller."] #[doc = ""] #[doc = "+ `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed"] #[doc = "proposal."] #[doc = "+ `length_bound`: The upper bound for the length of the proposal in storage. Checked via"] #[doc = "`storage::read` so it is `size_of::() == 4` larger than the pure length."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1 + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - `P1` is the complexity of `proposal` preimage."] #[doc = " - `P2` is proposal-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`)"] #[doc = " - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec"] #[doc = " `O(P2)`)"] #[doc = " - any mutations done while executing `proposal` (`P1`)"] #[doc = "- up to 3 events"] #[doc = "# "] pub fn close_old_weight( &self, proposal_hash: ::subxt::utils::H256, index: ::core::primitive::u32, proposal_weight_bound: runtime_types::sp_weights::OldWeight, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "AllianceMotion", "close_old_weight", CloseOldWeight { proposal_hash, index, proposal_weight_bound, length_bound, }, [ 133u8, 219u8, 90u8, 40u8, 102u8, 95u8, 4u8, 199u8, 45u8, 234u8, 109u8, 17u8, 162u8, 63u8, 102u8, 186u8, 95u8, 182u8, 13u8, 123u8, 227u8, 20u8, 186u8, 207u8, 12u8, 47u8, 87u8, 252u8, 244u8, 172u8, 60u8, 206u8, ], ) } #[doc = "Disapprove a proposal, close, and remove it from the system, regardless of its current"] #[doc = "state."] #[doc = ""] #[doc = "Must be called by the Root origin."] #[doc = ""] #[doc = "Parameters:"] #[doc = "* `proposal_hash`: The hash of the proposal that should be disapproved."] #[doc = ""] #[doc = "# "] #[doc = "Complexity: O(P) where P is the number of max proposals"] #[doc = "DB Weight:"] #[doc = "* Reads: Proposals"] #[doc = "* Writes: Voting, Proposals, ProposalOf"] #[doc = "# "] pub fn disapprove_proposal( &self, proposal_hash: ::subxt::utils::H256, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "AllianceMotion", "disapprove_proposal", DisapproveProposal { proposal_hash }, [ 25u8, 123u8, 1u8, 8u8, 74u8, 37u8, 3u8, 40u8, 97u8, 37u8, 175u8, 224u8, 72u8, 155u8, 123u8, 109u8, 104u8, 43u8, 91u8, 125u8, 199u8, 51u8, 17u8, 225u8, 133u8, 38u8, 120u8, 76u8, 164u8, 5u8, 194u8, 201u8, ], ) } #[doc = "Close a vote that is either approved, disapproved or whose voting period has ended."] #[doc = ""] #[doc = "May be called by any signed account in order to finish voting and close the proposal."] #[doc = ""] #[doc = "If called before the end of the voting period it will only close the vote if it is"] #[doc = "has enough votes to be approved or disapproved."] #[doc = ""] #[doc = "If called after the end of the voting period abstentions are counted as rejections"] #[doc = "unless there is a prime member set and the prime member cast an approval."] #[doc = ""] #[doc = "If the close operation completes successfully with disapproval, the transaction fee will"] #[doc = "be waived. Otherwise execution of the approved operation will be charged to the caller."] #[doc = ""] #[doc = "+ `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed"] #[doc = "proposal."] #[doc = "+ `length_bound`: The upper bound for the length of the proposal in storage. Checked via"] #[doc = "`storage::read` so it is `size_of::() == 4` larger than the pure length."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1 + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - `P1` is the complexity of `proposal` preimage."] #[doc = " - `P2` is proposal-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`)"] #[doc = " - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec"] #[doc = " `O(P2)`)"] #[doc = " - any mutations done while executing `proposal` (`P1`)"] #[doc = "- up to 3 events"] #[doc = "# "] pub fn close( &self, proposal_hash: ::subxt::utils::H256, index: ::core::primitive::u32, proposal_weight_bound: runtime_types::sp_weights::weight_v2::Weight, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "AllianceMotion", "close", Close { proposal_hash, index, proposal_weight_bound, length_bound, }, [ 191u8, 138u8, 89u8, 247u8, 97u8, 51u8, 45u8, 193u8, 76u8, 16u8, 80u8, 225u8, 197u8, 83u8, 204u8, 133u8, 169u8, 16u8, 86u8, 32u8, 125u8, 16u8, 116u8, 185u8, 45u8, 20u8, 76u8, 148u8, 206u8, 163u8, 154u8, 30u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_collective::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion (given hash) has been proposed (by given account) with a threshold (given"] #[doc = "`MemberCount`)."] pub struct Proposed { pub account: ::subxt::utils::AccountId32, pub proposal_index: ::core::primitive::u32, pub proposal_hash: ::subxt::utils::H256, pub threshold: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Proposed { const PALLET: &'static str = "AllianceMotion"; const EVENT: &'static str = "Proposed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion (given hash) has been voted on by given account, leaving"] #[doc = "a tally (yes votes and no votes given respectively as `MemberCount`)."] pub struct Voted { pub account: ::subxt::utils::AccountId32, pub proposal_hash: ::subxt::utils::H256, pub voted: ::core::primitive::bool, pub yes: ::core::primitive::u32, pub no: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Voted { const PALLET: &'static str = "AllianceMotion"; const EVENT: &'static str = "Voted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion was approved by the required threshold."] pub struct Approved { pub proposal_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Approved { const PALLET: &'static str = "AllianceMotion"; const EVENT: &'static str = "Approved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion was not approved by the required threshold."] pub struct Disapproved { pub proposal_hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Disapproved { const PALLET: &'static str = "AllianceMotion"; const EVENT: &'static str = "Disapproved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A motion was executed; result will be `Ok` if it returned without error."] pub struct Executed { pub proposal_hash: ::subxt::utils::H256, pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for Executed { const PALLET: &'static str = "AllianceMotion"; const EVENT: &'static str = "Executed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A single member did some action; result will be `Ok` if it returned without error."] pub struct MemberExecuted { pub proposal_hash: ::subxt::utils::H256, pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for MemberExecuted { const PALLET: &'static str = "AllianceMotion"; const EVENT: &'static str = "MemberExecuted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proposal was closed because its threshold was reached or after its duration was up."] pub struct Closed { pub proposal_hash: ::subxt::utils::H256, pub yes: ::core::primitive::u32, pub no: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Closed { const PALLET: &'static str = "AllianceMotion"; const EVENT: &'static str = "Closed"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The hashes of the active proposals."] pub fn proposals( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::H256, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "AllianceMotion", "Proposals", vec![], [ 10u8, 133u8, 82u8, 54u8, 193u8, 41u8, 253u8, 159u8, 56u8, 96u8, 249u8, 148u8, 43u8, 57u8, 116u8, 43u8, 222u8, 243u8, 237u8, 231u8, 238u8, 60u8, 26u8, 225u8, 19u8, 203u8, 213u8, 220u8, 114u8, 217u8, 100u8, 27u8, ], ) } #[doc = " Actual proposal for a given hash, if it's current."] pub fn proposal_of( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::kitchensink_runtime::RuntimeCall, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "AllianceMotion", "ProposalOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 7u8, 48u8, 66u8, 129u8, 189u8, 239u8, 162u8, 148u8, 206u8, 226u8, 56u8, 83u8, 105u8, 85u8, 12u8, 168u8, 84u8, 118u8, 7u8, 7u8, 100u8, 5u8, 245u8, 209u8, 143u8, 242u8, 48u8, 78u8, 157u8, 98u8, 42u8, 127u8, ], ) } #[doc = " Actual proposal for a given hash, if it's current."] pub fn proposal_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::kitchensink_runtime::RuntimeCall, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "AllianceMotion", "ProposalOf", Vec::new(), [ 7u8, 48u8, 66u8, 129u8, 189u8, 239u8, 162u8, 148u8, 206u8, 226u8, 56u8, 83u8, 105u8, 85u8, 12u8, 168u8, 84u8, 118u8, 7u8, 7u8, 100u8, 5u8, 245u8, 209u8, 143u8, 242u8, 48u8, 78u8, 157u8, 98u8, 42u8, 127u8, ], ) } #[doc = " Votes on a given proposal, if it is ongoing."] pub fn voting( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_collective::Votes< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "AllianceMotion", "Voting", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Identity, )], [ 89u8, 108u8, 65u8, 58u8, 60u8, 116u8, 54u8, 68u8, 179u8, 73u8, 161u8, 168u8, 78u8, 213u8, 208u8, 54u8, 244u8, 58u8, 70u8, 209u8, 170u8, 136u8, 215u8, 3u8, 2u8, 105u8, 229u8, 217u8, 240u8, 230u8, 107u8, 221u8, ], ) } #[doc = " Votes on a given proposal, if it is ongoing."] pub fn voting_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_collective::Votes< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "AllianceMotion", "Voting", Vec::new(), [ 89u8, 108u8, 65u8, 58u8, 60u8, 116u8, 54u8, 68u8, 179u8, 73u8, 161u8, 168u8, 78u8, 213u8, 208u8, 54u8, 244u8, 58u8, 70u8, 209u8, 170u8, 136u8, 215u8, 3u8, 2u8, 105u8, 229u8, 217u8, 240u8, 230u8, 107u8, 221u8, ], ) } #[doc = " Proposals so far."] pub fn proposal_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "AllianceMotion", "ProposalCount", vec![], [ 132u8, 145u8, 78u8, 218u8, 51u8, 189u8, 55u8, 172u8, 143u8, 33u8, 140u8, 99u8, 124u8, 208u8, 57u8, 232u8, 154u8, 110u8, 32u8, 142u8, 24u8, 149u8, 109u8, 105u8, 30u8, 83u8, 39u8, 177u8, 127u8, 160u8, 34u8, 70u8, ], ) } #[doc = " The current members of the collective. This is stored sorted (just by value)."] pub fn members( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::subxt::utils::AccountId32>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "AllianceMotion", "Members", vec![], [ 162u8, 72u8, 174u8, 204u8, 140u8, 105u8, 205u8, 176u8, 197u8, 117u8, 206u8, 134u8, 157u8, 110u8, 139u8, 54u8, 43u8, 233u8, 25u8, 51u8, 36u8, 238u8, 94u8, 124u8, 221u8, 52u8, 237u8, 71u8, 125u8, 56u8, 129u8, 222u8, ], ) } #[doc = " The prime member that helps determine the default vote behavior in case of absentations."] pub fn prime( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "AllianceMotion", "Prime", vec![], [ 108u8, 118u8, 54u8, 193u8, 207u8, 227u8, 119u8, 97u8, 23u8, 239u8, 157u8, 69u8, 56u8, 142u8, 106u8, 17u8, 215u8, 159u8, 48u8, 42u8, 185u8, 209u8, 49u8, 159u8, 32u8, 168u8, 111u8, 158u8, 159u8, 217u8, 244u8, 158u8, ], ) } } } } pub mod alliance { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Propose { #[codec(compact)] pub threshold: ::core::primitive::u32, pub proposal: ::std::boxed::Box, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vote { pub proposal: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, pub approve: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CloseOldWeight { pub proposal_hash: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, #[codec(compact)] pub proposal_weight_bound: runtime_types::sp_weights::OldWeight, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct InitMembers { pub fellows: ::std::vec::Vec<::subxt::utils::AccountId32>, pub allies: ::std::vec::Vec<::subxt::utils::AccountId32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Disband { pub witness: runtime_types::pallet_alliance::types::DisbandWitness, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetRule { pub rule: runtime_types::pallet_alliance::types::Cid, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Announce { pub announcement: runtime_types::pallet_alliance::types::Cid, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveAnnouncement { pub announcement: runtime_types::pallet_alliance::types::Cid, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct JoinAlliance; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct NominateAlly { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ElevateAlly { pub ally: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct GiveRetirementNotice; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Retire; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct KickMember { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AddUnscrupulousItems { pub items: ::std::vec::Vec< runtime_types::pallet_alliance::UnscrupulousItem< ::subxt::utils::AccountId32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveUnscrupulousItems { pub items: ::std::vec::Vec< runtime_types::pallet_alliance::UnscrupulousItem< ::subxt::utils::AccountId32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Close { pub proposal_hash: ::subxt::utils::H256, #[codec(compact)] pub index: ::core::primitive::u32, pub proposal_weight_bound: runtime_types::sp_weights::weight_v2::Weight, #[codec(compact)] pub length_bound: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AbdicateFellowStatus; pub struct TransactionApi; impl TransactionApi { #[doc = "Add a new proposal to be voted on."] #[doc = ""] #[doc = "Must be called by a Fellow."] pub fn propose( &self, threshold: ::core::primitive::u32, proposal: runtime_types::kitchensink_runtime::RuntimeCall, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "propose", Propose { threshold, proposal: ::std::boxed::Box::new(proposal), length_bound, }, [ 86u8, 118u8, 118u8, 134u8, 244u8, 21u8, 74u8, 68u8, 219u8, 175u8, 153u8, 175u8, 75u8, 118u8, 200u8, 66u8, 152u8, 203u8, 5u8, 224u8, 152u8, 129u8, 167u8, 208u8, 225u8, 247u8, 119u8, 116u8, 33u8, 68u8, 75u8, 245u8, ], ) } #[doc = "Add an aye or nay vote for the sender to the given proposal."] #[doc = ""] #[doc = "Must be called by a Fellow."] pub fn vote( &self, proposal: ::subxt::utils::H256, index: ::core::primitive::u32, approve: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "vote", Vote { proposal, index, approve, }, [ 108u8, 46u8, 180u8, 148u8, 145u8, 24u8, 173u8, 56u8, 36u8, 100u8, 216u8, 43u8, 178u8, 202u8, 26u8, 136u8, 93u8, 84u8, 80u8, 134u8, 14u8, 42u8, 248u8, 205u8, 68u8, 92u8, 79u8, 11u8, 113u8, 115u8, 157u8, 100u8, ], ) } #[doc = "Close a vote that is either approved, disapproved, or whose voting period has ended."] #[doc = ""] #[doc = "Must be called by a Fellow."] pub fn close_old_weight( &self, proposal_hash: ::subxt::utils::H256, index: ::core::primitive::u32, proposal_weight_bound: runtime_types::sp_weights::OldWeight, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "close_old_weight", CloseOldWeight { proposal_hash, index, proposal_weight_bound, length_bound, }, [ 133u8, 219u8, 90u8, 40u8, 102u8, 95u8, 4u8, 199u8, 45u8, 234u8, 109u8, 17u8, 162u8, 63u8, 102u8, 186u8, 95u8, 182u8, 13u8, 123u8, 227u8, 20u8, 186u8, 207u8, 12u8, 47u8, 87u8, 252u8, 244u8, 172u8, 60u8, 206u8, ], ) } #[doc = "Initialize the Alliance, onboard fellows and allies."] #[doc = ""] #[doc = "The Alliance must be empty, and the call must provide some founding members."] #[doc = ""] #[doc = "Must be called by the Root origin."] pub fn init_members( &self, fellows: ::std::vec::Vec<::subxt::utils::AccountId32>, allies: ::std::vec::Vec<::subxt::utils::AccountId32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "init_members", InitMembers { fellows, allies }, [ 182u8, 105u8, 49u8, 160u8, 26u8, 175u8, 215u8, 71u8, 58u8, 176u8, 86u8, 29u8, 68u8, 186u8, 241u8, 47u8, 251u8, 136u8, 123u8, 151u8, 246u8, 42u8, 232u8, 154u8, 210u8, 14u8, 165u8, 104u8, 163u8, 140u8, 196u8, 164u8, ], ) } #[doc = "Disband the Alliance, remove all active members and unreserve deposits."] #[doc = ""] #[doc = "Witness data must be set."] pub fn disband( &self, witness: runtime_types::pallet_alliance::types::DisbandWitness, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "disband", Disband { witness }, [ 140u8, 243u8, 193u8, 235u8, 169u8, 181u8, 78u8, 54u8, 75u8, 109u8, 70u8, 148u8, 49u8, 154u8, 225u8, 76u8, 65u8, 92u8, 149u8, 53u8, 62u8, 106u8, 228u8, 172u8, 10u8, 189u8, 108u8, 144u8, 195u8, 6u8, 250u8, 202u8, ], ) } #[doc = "Set a new IPFS CID to the alliance rule."] pub fn set_rule( &self, rule: runtime_types::pallet_alliance::types::Cid, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "set_rule", SetRule { rule }, [ 31u8, 78u8, 248u8, 0u8, 135u8, 28u8, 162u8, 57u8, 155u8, 173u8, 159u8, 212u8, 213u8, 135u8, 191u8, 88u8, 161u8, 119u8, 122u8, 52u8, 190u8, 214u8, 31u8, 10u8, 210u8, 231u8, 245u8, 248u8, 49u8, 60u8, 236u8, 67u8, ], ) } #[doc = "Make an announcement of a new IPFS CID about alliance issues."] pub fn announce( &self, announcement: runtime_types::pallet_alliance::types::Cid, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "announce", Announce { announcement }, [ 197u8, 120u8, 117u8, 49u8, 53u8, 91u8, 207u8, 16u8, 31u8, 250u8, 85u8, 0u8, 111u8, 24u8, 222u8, 255u8, 121u8, 191u8, 98u8, 85u8, 45u8, 237u8, 106u8, 60u8, 142u8, 69u8, 125u8, 1u8, 128u8, 190u8, 99u8, 14u8, ], ) } #[doc = "Remove an announcement."] pub fn remove_announcement( &self, announcement: runtime_types::pallet_alliance::types::Cid, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "remove_announcement", RemoveAnnouncement { announcement }, [ 7u8, 152u8, 0u8, 165u8, 149u8, 198u8, 155u8, 138u8, 187u8, 125u8, 30u8, 240u8, 229u8, 216u8, 215u8, 40u8, 150u8, 232u8, 76u8, 242u8, 98u8, 11u8, 145u8, 165u8, 253u8, 6u8, 208u8, 136u8, 122u8, 122u8, 176u8, 107u8, ], ) } #[doc = "Submit oneself for candidacy. A fixed deposit is reserved."] pub fn join_alliance( &self, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "join_alliance", JoinAlliance {}, [ 54u8, 110u8, 66u8, 7u8, 137u8, 10u8, 43u8, 147u8, 162u8, 126u8, 85u8, 199u8, 167u8, 112u8, 27u8, 210u8, 42u8, 224u8, 29u8, 118u8, 67u8, 77u8, 31u8, 133u8, 66u8, 24u8, 114u8, 185u8, 109u8, 159u8, 183u8, 157u8, ], ) } #[doc = "A Fellow can nominate someone to join the alliance as an Ally. There is no deposit"] #[doc = "required from the nominator or nominee."] pub fn nominate_ally( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "nominate_ally", NominateAlly { who }, [ 60u8, 213u8, 72u8, 150u8, 238u8, 14u8, 199u8, 171u8, 147u8, 94u8, 169u8, 243u8, 40u8, 238u8, 132u8, 118u8, 66u8, 122u8, 193u8, 195u8, 237u8, 59u8, 82u8, 248u8, 8u8, 151u8, 188u8, 226u8, 167u8, 18u8, 228u8, 105u8, ], ) } #[doc = "Elevate an Ally to Fellow."] pub fn elevate_ally( &self, ally: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "elevate_ally", ElevateAlly { ally }, [ 235u8, 131u8, 98u8, 158u8, 30u8, 159u8, 195u8, 25u8, 41u8, 162u8, 10u8, 148u8, 73u8, 210u8, 10u8, 190u8, 226u8, 109u8, 193u8, 218u8, 12u8, 242u8, 172u8, 215u8, 56u8, 131u8, 31u8, 210u8, 215u8, 198u8, 81u8, 74u8, ], ) } #[doc = "As a member, give a retirement notice and start a retirement period required to pass in"] #[doc = "order to retire."] pub fn give_retirement_notice( &self, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "give_retirement_notice", GiveRetirementNotice {}, [ 179u8, 19u8, 191u8, 72u8, 65u8, 196u8, 142u8, 253u8, 35u8, 215u8, 175u8, 47u8, 14u8, 238u8, 153u8, 157u8, 20u8, 44u8, 174u8, 91u8, 133u8, 42u8, 48u8, 44u8, 116u8, 53u8, 27u8, 247u8, 198u8, 87u8, 50u8, 195u8, ], ) } #[doc = "As a member, retire from the Alliance and unreserve the deposit."] #[doc = ""] #[doc = "This can only be done once you have called `give_retirement_notice` and the"] #[doc = "`RetirementPeriod` has passed."] pub fn retire(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "retire", Retire {}, [ 6u8, 231u8, 211u8, 120u8, 5u8, 242u8, 96u8, 98u8, 132u8, 36u8, 217u8, 219u8, 22u8, 76u8, 196u8, 151u8, 140u8, 92u8, 186u8, 138u8, 76u8, 219u8, 73u8, 242u8, 155u8, 169u8, 9u8, 184u8, 76u8, 23u8, 71u8, 116u8, ], ) } #[doc = "Kick a member from the Alliance and slash its deposit."] pub fn kick_member( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "kick_member", KickMember { who }, [ 49u8, 234u8, 214u8, 238u8, 122u8, 243u8, 103u8, 51u8, 232u8, 73u8, 207u8, 236u8, 126u8, 122u8, 60u8, 177u8, 130u8, 109u8, 68u8, 44u8, 89u8, 46u8, 236u8, 226u8, 181u8, 200u8, 98u8, 183u8, 245u8, 227u8, 27u8, 118u8, ], ) } #[doc = "Add accounts or websites to the list of unscrupulous items."] pub fn add_unscrupulous_items( &self, items: ::std::vec::Vec< runtime_types::pallet_alliance::UnscrupulousItem< ::subxt::utils::AccountId32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "add_unscrupulous_items", AddUnscrupulousItems { items }, [ 222u8, 68u8, 94u8, 39u8, 39u8, 0u8, 161u8, 99u8, 42u8, 25u8, 34u8, 150u8, 225u8, 133u8, 240u8, 91u8, 127u8, 68u8, 188u8, 121u8, 126u8, 130u8, 1u8, 147u8, 73u8, 114u8, 34u8, 88u8, 39u8, 97u8, 158u8, 197u8, ], ) } #[doc = "Deem some items no longer unscrupulous."] pub fn remove_unscrupulous_items( &self, items: ::std::vec::Vec< runtime_types::pallet_alliance::UnscrupulousItem< ::subxt::utils::AccountId32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "remove_unscrupulous_items", RemoveUnscrupulousItems { items }, [ 231u8, 184u8, 191u8, 126u8, 10u8, 183u8, 103u8, 127u8, 145u8, 98u8, 57u8, 176u8, 124u8, 161u8, 129u8, 66u8, 100u8, 100u8, 154u8, 155u8, 206u8, 42u8, 180u8, 62u8, 240u8, 33u8, 53u8, 251u8, 46u8, 203u8, 42u8, 234u8, ], ) } #[doc = "Close a vote that is either approved, disapproved, or whose voting period has ended."] #[doc = ""] #[doc = "Must be called by a Fellow."] pub fn close( &self, proposal_hash: ::subxt::utils::H256, index: ::core::primitive::u32, proposal_weight_bound: runtime_types::sp_weights::weight_v2::Weight, length_bound: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "close", Close { proposal_hash, index, proposal_weight_bound, length_bound, }, [ 191u8, 138u8, 89u8, 247u8, 97u8, 51u8, 45u8, 193u8, 76u8, 16u8, 80u8, 225u8, 197u8, 83u8, 204u8, 133u8, 169u8, 16u8, 86u8, 32u8, 125u8, 16u8, 116u8, 185u8, 45u8, 20u8, 76u8, 148u8, 206u8, 163u8, 154u8, 30u8, ], ) } #[doc = "Abdicate one's position as a voting member and just be an Ally. May be used by Fellows"] #[doc = "who do not want to leave the Alliance but do not have the capacity to participate"] #[doc = "operationally for some time."] pub fn abdicate_fellow_status( &self, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Alliance", "abdicate_fellow_status", AbdicateFellowStatus {}, [ 32u8, 251u8, 224u8, 133u8, 152u8, 60u8, 139u8, 40u8, 253u8, 116u8, 170u8, 79u8, 149u8, 89u8, 27u8, 203u8, 160u8, 75u8, 81u8, 144u8, 9u8, 98u8, 139u8, 215u8, 253u8, 193u8, 211u8, 93u8, 208u8, 143u8, 41u8, 175u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_alliance::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new rule has been set."] pub struct NewRuleSet { pub rule: runtime_types::pallet_alliance::types::Cid, } impl ::subxt::events::StaticEvent for NewRuleSet { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "NewRuleSet"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A new announcement has been proposed."] pub struct Announced { pub announcement: runtime_types::pallet_alliance::types::Cid, } impl ::subxt::events::StaticEvent for Announced { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "Announced"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An on-chain announcement has been removed."] pub struct AnnouncementRemoved { pub announcement: runtime_types::pallet_alliance::types::Cid, } impl ::subxt::events::StaticEvent for AnnouncementRemoved { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "AnnouncementRemoved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Some accounts have been initialized as members (fellows/allies)."] pub struct MembersInitialized { pub fellows: ::std::vec::Vec<::subxt::utils::AccountId32>, pub allies: ::std::vec::Vec<::subxt::utils::AccountId32>, } impl ::subxt::events::StaticEvent for MembersInitialized { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "MembersInitialized"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An account has been added as an Ally and reserved its deposit."] pub struct NewAllyJoined { pub ally: ::subxt::utils::AccountId32, pub nominator: ::core::option::Option<::subxt::utils::AccountId32>, pub reserved: ::core::option::Option<::core::primitive::u128>, } impl ::subxt::events::StaticEvent for NewAllyJoined { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "NewAllyJoined"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An ally has been elevated to Fellow."] pub struct AllyElevated { pub ally: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for AllyElevated { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "AllyElevated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A member gave retirement notice and their retirement period started."] pub struct MemberRetirementPeriodStarted { pub member: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for MemberRetirementPeriodStarted { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "MemberRetirementPeriodStarted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A member has retired with its deposit unreserved."] pub struct MemberRetired { pub member: ::subxt::utils::AccountId32, pub unreserved: ::core::option::Option<::core::primitive::u128>, } impl ::subxt::events::StaticEvent for MemberRetired { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "MemberRetired"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A member has been kicked out with its deposit slashed."] pub struct MemberKicked { pub member: ::subxt::utils::AccountId32, pub slashed: ::core::option::Option<::core::primitive::u128>, } impl ::subxt::events::StaticEvent for MemberKicked { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "MemberKicked"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Accounts or websites have been added into the list of unscrupulous items."] pub struct UnscrupulousItemAdded { pub items: ::std::vec::Vec< runtime_types::pallet_alliance::UnscrupulousItem< ::subxt::utils::AccountId32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, } impl ::subxt::events::StaticEvent for UnscrupulousItemAdded { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "UnscrupulousItemAdded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Accounts or websites have been removed from the list of unscrupulous items."] pub struct UnscrupulousItemRemoved { pub items: ::std::vec::Vec< runtime_types::pallet_alliance::UnscrupulousItem< ::subxt::utils::AccountId32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, } impl ::subxt::events::StaticEvent for UnscrupulousItemRemoved { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "UnscrupulousItemRemoved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Alliance disbanded. Includes number deleted members and unreserved deposits."] pub struct AllianceDisbanded { pub fellow_members: ::core::primitive::u32, pub ally_members: ::core::primitive::u32, pub unreserved: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for AllianceDisbanded { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "AllianceDisbanded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A Fellow abdicated their voting rights. They are now an Ally."] pub struct FellowAbdicated { pub fellow: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for FellowAbdicated { const PALLET: &'static str = "Alliance"; const EVENT: &'static str = "FellowAbdicated"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The IPFS CID of the alliance rule."] #[doc = " Fellows can propose a new rule with a super-majority."] pub fn rule( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_alliance::types::Cid, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Alliance", "Rule", vec![], [ 132u8, 179u8, 91u8, 202u8, 26u8, 39u8, 178u8, 5u8, 221u8, 59u8, 148u8, 116u8, 113u8, 55u8, 88u8, 104u8, 208u8, 165u8, 100u8, 78u8, 123u8, 208u8, 191u8, 217u8, 36u8, 33u8, 103u8, 11u8, 5u8, 161u8, 207u8, 170u8, ], ) } #[doc = " The current IPFS CIDs of any announcements."] pub fn announcements( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_alliance::types::Cid, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Alliance", "Announcements", vec![], [ 217u8, 117u8, 75u8, 244u8, 196u8, 60u8, 185u8, 248u8, 13u8, 121u8, 132u8, 36u8, 112u8, 233u8, 210u8, 170u8, 4u8, 247u8, 109u8, 226u8, 211u8, 37u8, 117u8, 15u8, 214u8, 7u8, 100u8, 0u8, 15u8, 0u8, 179u8, 96u8, ], ) } #[doc = " Maps members to their candidacy deposit."] pub fn deposit_of( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Alliance", "DepositOf", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 144u8, 38u8, 94u8, 133u8, 11u8, 36u8, 151u8, 247u8, 63u8, 168u8, 80u8, 116u8, 39u8, 78u8, 240u8, 0u8, 11u8, 182u8, 118u8, 208u8, 224u8, 184u8, 116u8, 51u8, 166u8, 133u8, 227u8, 246u8, 92u8, 146u8, 175u8, 65u8, ], ) } #[doc = " Maps members to their candidacy deposit."] pub fn deposit_of_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Alliance", "DepositOf", Vec::new(), [ 144u8, 38u8, 94u8, 133u8, 11u8, 36u8, 151u8, 247u8, 63u8, 168u8, 80u8, 116u8, 39u8, 78u8, 240u8, 0u8, 11u8, 182u8, 118u8, 208u8, 224u8, 184u8, 116u8, 51u8, 166u8, 133u8, 227u8, 246u8, 92u8, 146u8, 175u8, 65u8, ], ) } #[doc = " Maps member type to members of each type."] pub fn members( &self, _0: impl ::std::borrow::Borrow, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Alliance", "Members", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 238u8, 61u8, 156u8, 136u8, 196u8, 188u8, 124u8, 182u8, 195u8, 205u8, 210u8, 204u8, 73u8, 227u8, 32u8, 127u8, 124u8, 181u8, 105u8, 59u8, 164u8, 180u8, 186u8, 222u8, 20u8, 129u8, 133u8, 95u8, 87u8, 246u8, 155u8, 144u8, ], ) } #[doc = " Maps member type to members of each type."] pub fn members_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Alliance", "Members", Vec::new(), [ 238u8, 61u8, 156u8, 136u8, 196u8, 188u8, 124u8, 182u8, 195u8, 205u8, 210u8, 204u8, 73u8, 227u8, 32u8, 127u8, 124u8, 181u8, 105u8, 59u8, 164u8, 180u8, 186u8, 222u8, 20u8, 129u8, 133u8, 95u8, 87u8, 246u8, 155u8, 144u8, ], ) } #[doc = " A set of members who gave a retirement notice. They can retire after the end of retirement"] #[doc = " period stored as a future block number."] pub fn retiring_members( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Alliance", "RetiringMembers", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 195u8, 185u8, 238u8, 11u8, 200u8, 34u8, 221u8, 178u8, 171u8, 139u8, 211u8, 27u8, 109u8, 173u8, 203u8, 218u8, 147u8, 40u8, 29u8, 226u8, 65u8, 77u8, 199u8, 81u8, 153u8, 145u8, 97u8, 229u8, 54u8, 242u8, 12u8, 187u8, ], ) } #[doc = " A set of members who gave a retirement notice. They can retire after the end of retirement"] #[doc = " period stored as a future block number."] pub fn retiring_members_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Alliance", "RetiringMembers", Vec::new(), [ 195u8, 185u8, 238u8, 11u8, 200u8, 34u8, 221u8, 178u8, 171u8, 139u8, 211u8, 27u8, 109u8, 173u8, 203u8, 218u8, 147u8, 40u8, 29u8, 226u8, 65u8, 77u8, 199u8, 81u8, 153u8, 145u8, 97u8, 229u8, 54u8, 242u8, 12u8, 187u8, ], ) } #[doc = " The current list of accounts deemed unscrupulous. These accounts non grata cannot submit"] #[doc = " candidacy."] pub fn unscrupulous_accounts( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Alliance", "UnscrupulousAccounts", vec![], [ 5u8, 149u8, 47u8, 164u8, 130u8, 46u8, 136u8, 88u8, 153u8, 77u8, 176u8, 127u8, 165u8, 163u8, 40u8, 117u8, 137u8, 67u8, 72u8, 4u8, 151u8, 209u8, 172u8, 20u8, 64u8, 162u8, 48u8, 199u8, 224u8, 85u8, 157u8, 44u8, ], ) } #[doc = " The current list of websites deemed unscrupulous."] pub fn unscrupulous_websites( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "Alliance", "UnscrupulousWebsites", vec![], [ 231u8, 15u8, 27u8, 215u8, 117u8, 150u8, 199u8, 19u8, 209u8, 43u8, 144u8, 212u8, 160u8, 32u8, 195u8, 26u8, 128u8, 3u8, 151u8, 53u8, 230u8, 102u8, 44u8, 42u8, 205u8, 68u8, 175u8, 206u8, 239u8, 236u8, 68u8, 160u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The maximum number of the unscrupulous items supported by the pallet."] pub fn max_unscrupulous_items( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Alliance", "MaxUnscrupulousItems", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum length of a website URL."] pub fn max_website_url_length( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Alliance", "MaxWebsiteUrlLength", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The deposit required for submitting candidacy."] pub fn ally_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "Alliance", "AllyDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " The maximum number of announcements."] pub fn max_announcements_count( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Alliance", "MaxAnnouncementsCount", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of members per member role."] pub fn max_members_count( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "Alliance", "MaxMembersCount", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } } } } pub mod nomination_pools { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Join { #[codec(compact)] pub amount: ::core::primitive::u128, pub pool_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BondExtra { pub extra: runtime_types::pallet_nomination_pools::BondExtra< ::core::primitive::u128, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ClaimPayout; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Unbond { pub member_account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] pub unbonding_points: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PoolWithdrawUnbonded { pub pool_id: ::core::primitive::u32, pub num_slashing_spans: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct WithdrawUnbonded { pub member_account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub num_slashing_spans: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Create { #[codec(compact)] pub amount: ::core::primitive::u128, pub root: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub nominator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub state_toggler: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CreateWithPoolId { #[codec(compact)] pub amount: ::core::primitive::u128, pub root: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub nominator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub state_toggler: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub pool_id: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Nominate { pub pool_id: ::core::primitive::u32, pub validators: ::std::vec::Vec<::subxt::utils::AccountId32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetState { pub pool_id: ::core::primitive::u32, pub state: runtime_types::pallet_nomination_pools::PoolState, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetMetadata { pub pool_id: ::core::primitive::u32, pub metadata: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SetConfigs { pub min_join_bond: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u128, >, pub min_create_bond: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u128, >, pub max_pools: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u32, >, pub max_members: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u32, >, pub max_members_per_pool: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UpdateRoles { pub pool_id: ::core::primitive::u32, pub new_root: runtime_types::pallet_nomination_pools::ConfigOp< ::subxt::utils::AccountId32, >, pub new_nominator: runtime_types::pallet_nomination_pools::ConfigOp< ::subxt::utils::AccountId32, >, pub new_state_toggler: runtime_types::pallet_nomination_pools::ConfigOp< ::subxt::utils::AccountId32, >, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Chill { pub pool_id: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Stake funds with a pool. The amount to bond is transferred from the member to the"] #[doc = "pools account and immediately increases the pools bond."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "* An account can only be a member of a single pool."] #[doc = "* An account cannot join the same pool multiple times."] #[doc = "* This call will *not* dust the member account, so the member must have at least"] #[doc = " `existential deposit + amount` in their account."] #[doc = "* Only a pool with [`PoolState::Open`] can be joined"] pub fn join( &self, amount: ::core::primitive::u128, pool_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "join", Join { amount, pool_id }, [ 205u8, 66u8, 42u8, 72u8, 146u8, 148u8, 119u8, 162u8, 101u8, 183u8, 46u8, 176u8, 221u8, 204u8, 197u8, 20u8, 75u8, 226u8, 29u8, 118u8, 208u8, 60u8, 192u8, 247u8, 222u8, 100u8, 69u8, 80u8, 172u8, 13u8, 69u8, 250u8, ], ) } #[doc = "Bond `extra` more funds from `origin` into the pool to which they already belong."] #[doc = ""] #[doc = "Additional funds can come from either the free balance of the account, of from the"] #[doc = "accumulated rewards, see [`BondExtra`]."] #[doc = ""] #[doc = "Bonding extra funds implies an automatic payout of all pending rewards as well."] pub fn bond_extra( &self, extra: runtime_types::pallet_nomination_pools::BondExtra< ::core::primitive::u128, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "bond_extra", BondExtra { extra }, [ 50u8, 72u8, 181u8, 216u8, 249u8, 27u8, 250u8, 177u8, 253u8, 22u8, 240u8, 100u8, 184u8, 202u8, 197u8, 34u8, 21u8, 188u8, 248u8, 191u8, 11u8, 10u8, 236u8, 161u8, 168u8, 37u8, 38u8, 238u8, 61u8, 183u8, 86u8, 55u8, ], ) } #[doc = "A bonded member can use this to claim their payout based on the rewards that the pool"] #[doc = "has accumulated since their last claimed payout (OR since joining if this is there first"] #[doc = "time claiming rewards). The payout will be transferred to the member's account."] #[doc = ""] #[doc = "The member will earn rewards pro rata based on the members stake vs the sum of the"] #[doc = "members in the pools stake. Rewards do not \"expire\"."] pub fn claim_payout(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "claim_payout", ClaimPayout {}, [ 128u8, 58u8, 138u8, 55u8, 64u8, 16u8, 129u8, 25u8, 211u8, 229u8, 193u8, 115u8, 47u8, 45u8, 155u8, 221u8, 218u8, 1u8, 222u8, 5u8, 236u8, 32u8, 88u8, 0u8, 198u8, 72u8, 196u8, 181u8, 104u8, 16u8, 212u8, 29u8, ], ) } #[doc = "Unbond up to `unbonding_points` of the `member_account`'s funds from the pool. It"] #[doc = "implicitly collects the rewards one last time, since not doing so would mean some"] #[doc = "rewards would be forfeited."] #[doc = ""] #[doc = "Under certain conditions, this call can be dispatched permissionlessly (i.e. by any"] #[doc = "account)."] #[doc = ""] #[doc = "# Conditions for a permissionless dispatch."] #[doc = ""] #[doc = "* The pool is blocked and the caller is either the root or state-toggler. This is"] #[doc = " refereed to as a kick."] #[doc = "* The pool is destroying and the member is not the depositor."] #[doc = "* The pool is destroying, the member is the depositor and no other members are in the"] #[doc = " pool."] #[doc = ""] #[doc = "## Conditions for permissioned dispatch (i.e. the caller is also the"] #[doc = "`member_account`):"] #[doc = ""] #[doc = "* The caller is not the depositor."] #[doc = "* The caller is the depositor, the pool is destroying and no other members are in the"] #[doc = " pool."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "If there are too many unlocking chunks to unbond with the pool account,"] #[doc = "[`Call::pool_withdraw_unbonded`] can be called to try and minimize unlocking chunks."] #[doc = "The [`StakingInterface::unbond`] will implicitly call [`Call::pool_withdraw_unbonded`]"] #[doc = "to try to free chunks if necessary (ie. if unbound was called and no unlocking chunks"] #[doc = "are available). However, it may not be possible to release the current unlocking chunks,"] #[doc = "in which case, the result of this call will likely be the `NoMoreChunks` error from the"] #[doc = "staking system."] pub fn unbond( &self, member_account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, unbonding_points: ::core::primitive::u128, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "unbond", Unbond { member_account, unbonding_points, }, [ 139u8, 71u8, 78u8, 184u8, 141u8, 89u8, 179u8, 123u8, 153u8, 30u8, 116u8, 186u8, 148u8, 49u8, 48u8, 98u8, 33u8, 21u8, 29u8, 106u8, 180u8, 212u8, 37u8, 251u8, 237u8, 21u8, 255u8, 13u8, 236u8, 73u8, 250u8, 57u8, ], ) } #[doc = "Call `withdraw_unbonded` for the pools account. This call can be made by any account."] #[doc = ""] #[doc = "This is useful if their are too many unlocking chunks to call `unbond`, and some"] #[doc = "can be cleared by withdrawing. In the case there are too many unlocking chunks, the user"] #[doc = "would probably see an error like `NoMoreChunks` emitted from the staking system when"] #[doc = "they attempt to unbond."] pub fn pool_withdraw_unbonded( &self, pool_id: ::core::primitive::u32, num_slashing_spans: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "pool_withdraw_unbonded", PoolWithdrawUnbonded { pool_id, num_slashing_spans, }, [ 152u8, 245u8, 131u8, 247u8, 106u8, 214u8, 154u8, 8u8, 7u8, 210u8, 149u8, 218u8, 118u8, 46u8, 242u8, 182u8, 191u8, 119u8, 28u8, 199u8, 36u8, 49u8, 219u8, 123u8, 58u8, 203u8, 211u8, 226u8, 217u8, 36u8, 56u8, 0u8, ], ) } #[doc = "Withdraw unbonded funds from `member_account`. If no bonded funds can be unbonded, an"] #[doc = "error is returned."] #[doc = ""] #[doc = "Under certain conditions, this call can be dispatched permissionlessly (i.e. by any"] #[doc = "account)."] #[doc = ""] #[doc = "# Conditions for a permissionless dispatch"] #[doc = ""] #[doc = "* The pool is in destroy mode and the target is not the depositor."] #[doc = "* The target is the depositor and they are the only member in the sub pools."] #[doc = "* The pool is blocked and the caller is either the root or state-toggler."] #[doc = ""] #[doc = "# Conditions for permissioned dispatch"] #[doc = ""] #[doc = "* The caller is the target and they are not the depositor."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "If the target is the depositor, the pool will be destroyed."] pub fn withdraw_unbonded( &self, member_account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, num_slashing_spans: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "withdraw_unbonded", WithdrawUnbonded { member_account, num_slashing_spans, }, [ 192u8, 183u8, 121u8, 87u8, 176u8, 70u8, 91u8, 226u8, 156u8, 79u8, 87u8, 34u8, 227u8, 84u8, 22u8, 235u8, 3u8, 181u8, 166u8, 194u8, 147u8, 72u8, 27u8, 221u8, 57u8, 14u8, 44u8, 70u8, 253u8, 236u8, 44u8, 84u8, ], ) } #[doc = "Create a new delegation pool."] #[doc = ""] #[doc = "# Arguments"] #[doc = ""] #[doc = "* `amount` - The amount of funds to delegate to the pool. This also acts of a sort of"] #[doc = " deposit since the pools creator cannot fully unbond funds until the pool is being"] #[doc = " destroyed."] #[doc = "* `index` - A disambiguation index for creating the account. Likely only useful when"] #[doc = " creating multiple pools in the same extrinsic."] #[doc = "* `root` - The account to set as [`PoolRoles::root`]."] #[doc = "* `nominator` - The account to set as the [`PoolRoles::nominator`]."] #[doc = "* `state_toggler` - The account to set as the [`PoolRoles::state_toggler`]."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "In addition to `amount`, the caller will transfer the existential deposit; so the caller"] #[doc = "needs at have at least `amount + existential_deposit` transferrable."] pub fn create( &self, amount: ::core::primitive::u128, root: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, nominator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, state_toggler: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "create", Create { amount, root, nominator, state_toggler, }, [ 73u8, 99u8, 205u8, 59u8, 21u8, 182u8, 163u8, 158u8, 99u8, 182u8, 182u8, 63u8, 212u8, 84u8, 48u8, 244u8, 95u8, 153u8, 86u8, 104u8, 92u8, 93u8, 191u8, 79u8, 163u8, 123u8, 20u8, 121u8, 241u8, 194u8, 79u8, 112u8, ], ) } #[doc = "Create a new delegation pool with a previously used pool id"] #[doc = ""] #[doc = "# Arguments"] #[doc = ""] #[doc = "same as `create` with the inclusion of"] #[doc = "* `pool_id` - `A valid PoolId."] pub fn create_with_pool_id( &self, amount: ::core::primitive::u128, root: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, nominator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, state_toggler: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pool_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "create_with_pool_id", CreateWithPoolId { amount, root, nominator, state_toggler, pool_id, }, [ 113u8, 67u8, 242u8, 175u8, 174u8, 4u8, 116u8, 44u8, 157u8, 35u8, 13u8, 23u8, 55u8, 80u8, 255u8, 103u8, 196u8, 247u8, 105u8, 152u8, 108u8, 145u8, 180u8, 169u8, 252u8, 159u8, 175u8, 241u8, 122u8, 136u8, 252u8, 95u8, ], ) } #[doc = "Nominate on behalf of the pool."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed by the pool nominator or the pool"] #[doc = "root role."] #[doc = ""] #[doc = "This directly forward the call to the staking pallet, on behalf of the pool bonded"] #[doc = "account."] pub fn nominate( &self, pool_id: ::core::primitive::u32, validators: ::std::vec::Vec<::subxt::utils::AccountId32>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "nominate", Nominate { pool_id, validators, }, [ 10u8, 235u8, 64u8, 157u8, 36u8, 249u8, 186u8, 27u8, 79u8, 172u8, 25u8, 3u8, 203u8, 19u8, 192u8, 182u8, 36u8, 103u8, 13u8, 20u8, 89u8, 140u8, 159u8, 4u8, 132u8, 242u8, 192u8, 146u8, 55u8, 251u8, 216u8, 255u8, ], ) } #[doc = "Set a new state for the pool."] #[doc = ""] #[doc = "If a pool is already in the `Destroying` state, then under no condition can its state"] #[doc = "change again."] #[doc = ""] #[doc = "The dispatch origin of this call must be either:"] #[doc = ""] #[doc = "1. signed by the state toggler, or the root role of the pool,"] #[doc = "2. if the pool conditions to be open are NOT met (as described by `ok_to_be_open`), and"] #[doc = " then the state of the pool can be permissionlessly changed to `Destroying`."] pub fn set_state( &self, pool_id: ::core::primitive::u32, state: runtime_types::pallet_nomination_pools::PoolState, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "set_state", SetState { pool_id, state }, [ 104u8, 40u8, 213u8, 88u8, 159u8, 115u8, 35u8, 249u8, 78u8, 180u8, 99u8, 1u8, 225u8, 218u8, 192u8, 151u8, 25u8, 194u8, 192u8, 187u8, 39u8, 170u8, 212u8, 125u8, 75u8, 250u8, 248u8, 175u8, 159u8, 161u8, 151u8, 162u8, ], ) } #[doc = "Set a new metadata for the pool."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed by the state toggler, or the root role"] #[doc = "of the pool."] pub fn set_metadata( &self, pool_id: ::core::primitive::u32, metadata: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "set_metadata", SetMetadata { pool_id, metadata }, [ 156u8, 81u8, 170u8, 161u8, 34u8, 100u8, 183u8, 174u8, 5u8, 81u8, 31u8, 76u8, 12u8, 42u8, 77u8, 1u8, 6u8, 26u8, 168u8, 7u8, 8u8, 115u8, 158u8, 151u8, 30u8, 211u8, 52u8, 177u8, 234u8, 87u8, 125u8, 127u8, ], ) } #[doc = "Update configurations for the nomination pools. The origin for this call must be"] #[doc = "Root."] #[doc = ""] #[doc = "# Arguments"] #[doc = ""] #[doc = "* `min_join_bond` - Set [`MinJoinBond`]."] #[doc = "* `min_create_bond` - Set [`MinCreateBond`]."] #[doc = "* `max_pools` - Set [`MaxPools`]."] #[doc = "* `max_members` - Set [`MaxPoolMembers`]."] #[doc = "* `max_members_per_pool` - Set [`MaxPoolMembersPerPool`]."] pub fn set_configs( &self, min_join_bond: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u128, >, min_create_bond: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u128, >, max_pools: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u32, >, max_members: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u32, >, max_members_per_pool : runtime_types :: pallet_nomination_pools :: ConfigOp < :: core :: primitive :: u32 >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "set_configs", SetConfigs { min_join_bond, min_create_bond, max_pools, max_members, max_members_per_pool, }, [ 143u8, 196u8, 211u8, 30u8, 71u8, 15u8, 150u8, 243u8, 7u8, 178u8, 179u8, 168u8, 40u8, 116u8, 220u8, 140u8, 18u8, 206u8, 6u8, 189u8, 190u8, 37u8, 68u8, 41u8, 45u8, 233u8, 247u8, 172u8, 185u8, 34u8, 243u8, 187u8, ], ) } #[doc = "Update the roles of the pool."] #[doc = ""] #[doc = "The root is the only entity that can change any of the roles, including itself,"] #[doc = "excluding the depositor, who can never change."] #[doc = ""] #[doc = "It emits an event, notifying UIs of the role change. This event is quite relevant to"] #[doc = "most pool members and they should be informed of changes to pool roles."] pub fn update_roles( &self, pool_id: ::core::primitive::u32, new_root: runtime_types::pallet_nomination_pools::ConfigOp< ::subxt::utils::AccountId32, >, new_nominator: runtime_types::pallet_nomination_pools::ConfigOp< ::subxt::utils::AccountId32, >, new_state_toggler: runtime_types::pallet_nomination_pools::ConfigOp< ::subxt::utils::AccountId32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "update_roles", UpdateRoles { pool_id, new_root, new_nominator, new_state_toggler, }, [ 247u8, 95u8, 234u8, 56u8, 181u8, 229u8, 158u8, 97u8, 69u8, 165u8, 38u8, 17u8, 27u8, 209u8, 204u8, 250u8, 91u8, 193u8, 35u8, 93u8, 215u8, 131u8, 148u8, 73u8, 67u8, 188u8, 92u8, 32u8, 34u8, 37u8, 113u8, 93u8, ], ) } #[doc = "Chill on behalf of the pool."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed by the pool nominator or the pool"] #[doc = "root role, same as [`Pallet::nominate`]."] #[doc = ""] #[doc = "This directly forward the call to the staking pallet, on behalf of the pool bonded"] #[doc = "account."] pub fn chill( &self, pool_id: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "NominationPools", "chill", Chill { pool_id }, [ 41u8, 114u8, 128u8, 121u8, 244u8, 15u8, 15u8, 52u8, 129u8, 88u8, 239u8, 167u8, 216u8, 38u8, 123u8, 240u8, 172u8, 229u8, 132u8, 64u8, 175u8, 87u8, 217u8, 27u8, 11u8, 124u8, 1u8, 140u8, 40u8, 191u8, 187u8, 36u8, ], ) } } } #[doc = "Events of this pallet."] pub type Event = runtime_types::pallet_nomination_pools::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A pool has been created."] pub struct Created { pub depositor: ::subxt::utils::AccountId32, pub pool_id: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Created { const PALLET: &'static str = "NominationPools"; const EVENT: &'static str = "Created"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A member has became bonded in a pool."] pub struct Bonded { pub member: ::subxt::utils::AccountId32, pub pool_id: ::core::primitive::u32, pub bonded: ::core::primitive::u128, pub joined: ::core::primitive::bool, } impl ::subxt::events::StaticEvent for Bonded { const PALLET: &'static str = "NominationPools"; const EVENT: &'static str = "Bonded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A payout has been made to a member."] pub struct PaidOut { pub member: ::subxt::utils::AccountId32, pub pool_id: ::core::primitive::u32, pub payout: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for PaidOut { const PALLET: &'static str = "NominationPools"; const EVENT: &'static str = "PaidOut"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A member has unbonded from their pool."] #[doc = ""] #[doc = "- `balance` is the corresponding balance of the number of points that has been"] #[doc = " requested to be unbonded (the argument of the `unbond` transaction) from the bonded"] #[doc = " pool."] #[doc = "- `points` is the number of points that are issued as a result of `balance` being"] #[doc = "dissolved into the corresponding unbonding pool."] #[doc = "- `era` is the era in which the balance will be unbonded."] #[doc = "In the absence of slashing, these values will match. In the presence of slashing, the"] #[doc = "number of points that are issued in the unbonding pool will be less than the amount"] #[doc = "requested to be unbonded."] pub struct Unbonded { pub member: ::subxt::utils::AccountId32, pub pool_id: ::core::primitive::u32, pub balance: ::core::primitive::u128, pub points: ::core::primitive::u128, pub era: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Unbonded { const PALLET: &'static str = "NominationPools"; const EVENT: &'static str = "Unbonded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A member has withdrawn from their pool."] #[doc = ""] #[doc = "The given number of `points` have been dissolved in return of `balance`."] #[doc = ""] #[doc = "Similar to `Unbonded` event, in the absence of slashing, the ratio of point to balance"] #[doc = "will be 1."] pub struct Withdrawn { pub member: ::subxt::utils::AccountId32, pub pool_id: ::core::primitive::u32, pub balance: ::core::primitive::u128, pub points: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Withdrawn { const PALLET: &'static str = "NominationPools"; const EVENT: &'static str = "Withdrawn"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A pool has been destroyed."] pub struct Destroyed { pub pool_id: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Destroyed { const PALLET: &'static str = "NominationPools"; const EVENT: &'static str = "Destroyed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The state of a pool has changed"] pub struct StateChanged { pub pool_id: ::core::primitive::u32, pub new_state: runtime_types::pallet_nomination_pools::PoolState, } impl ::subxt::events::StaticEvent for StateChanged { const PALLET: &'static str = "NominationPools"; const EVENT: &'static str = "StateChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A member has been removed from a pool."] #[doc = ""] #[doc = "The removal can be voluntary (withdrawn all unbonded funds) or involuntary (kicked)."] pub struct MemberRemoved { pub pool_id: ::core::primitive::u32, pub member: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for MemberRemoved { const PALLET: &'static str = "NominationPools"; const EVENT: &'static str = "MemberRemoved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The roles of a pool have been updated to the given new roles. Note that the depositor"] #[doc = "can never change."] pub struct RolesUpdated { pub root: ::core::option::Option<::subxt::utils::AccountId32>, pub state_toggler: ::core::option::Option<::subxt::utils::AccountId32>, pub nominator: ::core::option::Option<::subxt::utils::AccountId32>, } impl ::subxt::events::StaticEvent for RolesUpdated { const PALLET: &'static str = "NominationPools"; const EVENT: &'static str = "RolesUpdated"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The active balance of pool `pool_id` has been slashed to `balance`."] pub struct PoolSlashed { pub pool_id: ::core::primitive::u32, pub balance: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for PoolSlashed { const PALLET: &'static str = "NominationPools"; const EVENT: &'static str = "PoolSlashed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The unbond pool at `era` of pool `pool_id` has been slashed to `balance`."] pub struct UnbondingPoolSlashed { pub pool_id: ::core::primitive::u32, pub era: ::core::primitive::u32, pub balance: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for UnbondingPoolSlashed { const PALLET: &'static str = "NominationPools"; const EVENT: &'static str = "UnbondingPoolSlashed"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " Minimum amount to bond to join a pool."] pub fn min_join_bond( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "MinJoinBond", vec![], [ 125u8, 239u8, 45u8, 225u8, 74u8, 129u8, 247u8, 184u8, 205u8, 58u8, 45u8, 186u8, 126u8, 170u8, 112u8, 120u8, 23u8, 190u8, 247u8, 97u8, 131u8, 126u8, 215u8, 44u8, 147u8, 122u8, 132u8, 212u8, 217u8, 84u8, 240u8, 91u8, ], ) } #[doc = " Minimum bond required to create a pool."] #[doc = ""] #[doc = " This is the amount that the depositor must put as their initial stake in the pool, as an"] #[doc = " indication of \"skin in the game\"."] #[doc = ""] #[doc = " This is the value that will always exist in the staking ledger of the pool bonded account"] #[doc = " while all other accounts leave."] pub fn min_create_bond( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "MinCreateBond", vec![], [ 31u8, 208u8, 240u8, 158u8, 23u8, 218u8, 212u8, 138u8, 92u8, 210u8, 207u8, 170u8, 32u8, 60u8, 5u8, 21u8, 84u8, 162u8, 1u8, 111u8, 181u8, 243u8, 24u8, 148u8, 193u8, 253u8, 248u8, 190u8, 16u8, 222u8, 219u8, 67u8, ], ) } #[doc = " Maximum number of nomination pools that can exist. If `None`, then an unbounded number of"] #[doc = " pools can exist."] pub fn max_pools( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "MaxPools", vec![], [ 216u8, 111u8, 68u8, 103u8, 33u8, 50u8, 109u8, 3u8, 176u8, 195u8, 23u8, 73u8, 112u8, 138u8, 9u8, 194u8, 233u8, 73u8, 68u8, 215u8, 162u8, 255u8, 217u8, 173u8, 141u8, 27u8, 72u8, 199u8, 7u8, 240u8, 25u8, 34u8, ], ) } #[doc = " Maximum number of members that can exist in the system. If `None`, then the count"] #[doc = " members are not bound on a system wide basis."] pub fn max_pool_members( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "MaxPoolMembers", vec![], [ 82u8, 217u8, 26u8, 234u8, 223u8, 241u8, 66u8, 182u8, 43u8, 233u8, 59u8, 242u8, 202u8, 254u8, 69u8, 50u8, 254u8, 196u8, 166u8, 89u8, 120u8, 87u8, 76u8, 148u8, 31u8, 197u8, 49u8, 88u8, 206u8, 41u8, 242u8, 62u8, ], ) } #[doc = " Maximum number of members that may belong to pool. If `None`, then the count of"] #[doc = " members is not bound on a per pool basis."] pub fn max_pool_members_per_pool( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "MaxPoolMembersPerPool", vec![], [ 93u8, 241u8, 16u8, 169u8, 138u8, 199u8, 128u8, 149u8, 65u8, 30u8, 55u8, 11u8, 41u8, 252u8, 83u8, 250u8, 9u8, 33u8, 152u8, 239u8, 195u8, 147u8, 16u8, 248u8, 180u8, 153u8, 88u8, 231u8, 248u8, 169u8, 186u8, 48u8, ], ) } #[doc = " Active members."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn pool_members( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nomination_pools::PoolMember, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "PoolMembers", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 252u8, 236u8, 201u8, 127u8, 219u8, 1u8, 19u8, 144u8, 5u8, 108u8, 70u8, 30u8, 177u8, 232u8, 253u8, 237u8, 211u8, 91u8, 63u8, 62u8, 155u8, 151u8, 153u8, 165u8, 206u8, 53u8, 111u8, 31u8, 60u8, 120u8, 100u8, 249u8, ], ) } #[doc = " Active members."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn pool_members_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nomination_pools::PoolMember, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "PoolMembers", Vec::new(), [ 252u8, 236u8, 201u8, 127u8, 219u8, 1u8, 19u8, 144u8, 5u8, 108u8, 70u8, 30u8, 177u8, 232u8, 253u8, 237u8, 211u8, 91u8, 63u8, 62u8, 155u8, 151u8, 153u8, 165u8, 206u8, 53u8, 111u8, 31u8, 60u8, 120u8, 100u8, 249u8, ], ) } #[doc = "Counter for the related counted storage map"] pub fn counter_for_pool_members( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "CounterForPoolMembers", vec![], [ 114u8, 126u8, 27u8, 138u8, 119u8, 44u8, 45u8, 129u8, 84u8, 107u8, 171u8, 206u8, 117u8, 141u8, 20u8, 75u8, 229u8, 237u8, 31u8, 229u8, 124u8, 190u8, 27u8, 124u8, 63u8, 59u8, 167u8, 42u8, 62u8, 212u8, 160u8, 2u8, ], ) } #[doc = " Storage for bonded pools."] pub fn bonded_pools( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nomination_pools::BondedPoolInner, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "BondedPools", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 34u8, 51u8, 86u8, 95u8, 237u8, 118u8, 40u8, 212u8, 128u8, 227u8, 113u8, 6u8, 116u8, 28u8, 96u8, 223u8, 63u8, 249u8, 33u8, 152u8, 61u8, 7u8, 205u8, 220u8, 221u8, 174u8, 207u8, 39u8, 53u8, 176u8, 13u8, 74u8, ], ) } #[doc = " Storage for bonded pools."] pub fn bonded_pools_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nomination_pools::BondedPoolInner, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "BondedPools", Vec::new(), [ 34u8, 51u8, 86u8, 95u8, 237u8, 118u8, 40u8, 212u8, 128u8, 227u8, 113u8, 6u8, 116u8, 28u8, 96u8, 223u8, 63u8, 249u8, 33u8, 152u8, 61u8, 7u8, 205u8, 220u8, 221u8, 174u8, 207u8, 39u8, 53u8, 176u8, 13u8, 74u8, ], ) } #[doc = "Counter for the related counted storage map"] pub fn counter_for_bonded_pools( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "CounterForBondedPools", vec![], [ 134u8, 94u8, 199u8, 73u8, 174u8, 253u8, 66u8, 242u8, 233u8, 244u8, 140u8, 170u8, 242u8, 40u8, 41u8, 185u8, 183u8, 151u8, 58u8, 111u8, 221u8, 225u8, 81u8, 71u8, 169u8, 219u8, 223u8, 135u8, 8u8, 171u8, 180u8, 236u8, ], ) } #[doc = " Reward pools. This is where there rewards for each pool accumulate. When a members payout"] #[doc = " is claimed, the balance comes out fo the reward pool. Keyed by the bonded pools account."] pub fn reward_pools( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nomination_pools::RewardPool, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "RewardPools", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 139u8, 123u8, 46u8, 107u8, 9u8, 83u8, 141u8, 12u8, 188u8, 225u8, 170u8, 215u8, 154u8, 21u8, 100u8, 95u8, 237u8, 245u8, 46u8, 216u8, 199u8, 184u8, 187u8, 155u8, 8u8, 16u8, 34u8, 177u8, 153u8, 65u8, 109u8, 198u8, ], ) } #[doc = " Reward pools. This is where there rewards for each pool accumulate. When a members payout"] #[doc = " is claimed, the balance comes out fo the reward pool. Keyed by the bonded pools account."] pub fn reward_pools_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nomination_pools::RewardPool, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "RewardPools", Vec::new(), [ 139u8, 123u8, 46u8, 107u8, 9u8, 83u8, 141u8, 12u8, 188u8, 225u8, 170u8, 215u8, 154u8, 21u8, 100u8, 95u8, 237u8, 245u8, 46u8, 216u8, 199u8, 184u8, 187u8, 155u8, 8u8, 16u8, 34u8, 177u8, 153u8, 65u8, 109u8, 198u8, ], ) } #[doc = "Counter for the related counted storage map"] pub fn counter_for_reward_pools( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "CounterForRewardPools", vec![], [ 209u8, 139u8, 212u8, 116u8, 210u8, 178u8, 213u8, 38u8, 75u8, 23u8, 188u8, 57u8, 253u8, 213u8, 95u8, 118u8, 182u8, 250u8, 45u8, 205u8, 17u8, 175u8, 17u8, 201u8, 234u8, 14u8, 98u8, 49u8, 143u8, 135u8, 201u8, 81u8, ], ) } #[doc = " Groups of unbonding pools. Each group of unbonding pools belongs to a bonded pool,"] #[doc = " hence the name sub-pools. Keyed by the bonded pools account."] pub fn sub_pools_storage( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nomination_pools::SubPools, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "SubPoolsStorage", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 231u8, 13u8, 111u8, 248u8, 1u8, 208u8, 179u8, 134u8, 224u8, 196u8, 94u8, 201u8, 229u8, 29u8, 155u8, 211u8, 163u8, 150u8, 157u8, 34u8, 68u8, 238u8, 55u8, 4u8, 222u8, 96u8, 186u8, 29u8, 205u8, 237u8, 80u8, 42u8, ], ) } #[doc = " Groups of unbonding pools. Each group of unbonding pools belongs to a bonded pool,"] #[doc = " hence the name sub-pools. Keyed by the bonded pools account."] pub fn sub_pools_storage_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_nomination_pools::SubPools, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "SubPoolsStorage", Vec::new(), [ 231u8, 13u8, 111u8, 248u8, 1u8, 208u8, 179u8, 134u8, 224u8, 196u8, 94u8, 201u8, 229u8, 29u8, 155u8, 211u8, 163u8, 150u8, 157u8, 34u8, 68u8, 238u8, 55u8, 4u8, 222u8, 96u8, 186u8, 29u8, 205u8, 237u8, 80u8, 42u8, ], ) } #[doc = "Counter for the related counted storage map"] pub fn counter_for_sub_pools_storage( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "CounterForSubPoolsStorage", vec![], [ 212u8, 145u8, 212u8, 226u8, 234u8, 31u8, 26u8, 240u8, 107u8, 91u8, 171u8, 120u8, 41u8, 195u8, 16u8, 86u8, 55u8, 127u8, 103u8, 93u8, 128u8, 48u8, 69u8, 104u8, 168u8, 236u8, 81u8, 54u8, 2u8, 184u8, 215u8, 51u8, ], ) } #[doc = " Metadata for the pool."] pub fn metadata( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "Metadata", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 108u8, 250u8, 163u8, 54u8, 192u8, 143u8, 239u8, 62u8, 97u8, 163u8, 161u8, 215u8, 171u8, 225u8, 49u8, 18u8, 37u8, 200u8, 143u8, 254u8, 136u8, 26u8, 54u8, 187u8, 39u8, 3u8, 216u8, 24u8, 188u8, 25u8, 243u8, 251u8, ], ) } #[doc = " Metadata for the pool."] pub fn metadata_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "Metadata", Vec::new(), [ 108u8, 250u8, 163u8, 54u8, 192u8, 143u8, 239u8, 62u8, 97u8, 163u8, 161u8, 215u8, 171u8, 225u8, 49u8, 18u8, 37u8, 200u8, 143u8, 254u8, 136u8, 26u8, 54u8, 187u8, 39u8, 3u8, 216u8, 24u8, 188u8, 25u8, 243u8, 251u8, ], ) } #[doc = "Counter for the related counted storage map"] pub fn counter_for_metadata( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "CounterForMetadata", vec![], [ 190u8, 232u8, 77u8, 134u8, 245u8, 89u8, 160u8, 187u8, 163u8, 68u8, 188u8, 204u8, 31u8, 145u8, 219u8, 165u8, 213u8, 1u8, 167u8, 90u8, 175u8, 218u8, 147u8, 144u8, 158u8, 226u8, 23u8, 233u8, 55u8, 168u8, 161u8, 237u8, ], ) } #[doc = " Ever increasing number of all pools created so far."] pub fn last_pool_id( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "LastPoolId", vec![], [ 50u8, 254u8, 218u8, 41u8, 213u8, 184u8, 170u8, 166u8, 31u8, 29u8, 196u8, 57u8, 215u8, 20u8, 40u8, 40u8, 19u8, 22u8, 9u8, 184u8, 11u8, 21u8, 21u8, 125u8, 97u8, 38u8, 219u8, 209u8, 2u8, 238u8, 247u8, 51u8, ], ) } #[doc = " A reverse lookup from the pool's account id to its id."] #[doc = ""] #[doc = " This is only used for slashing. In all other instances, the pool id is used, and the"] #[doc = " accounts are deterministically derived from it."] pub fn reverse_pool_id_lookup( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "ReversePoolIdLookup", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 178u8, 161u8, 51u8, 220u8, 128u8, 1u8, 135u8, 83u8, 236u8, 159u8, 36u8, 237u8, 120u8, 128u8, 6u8, 191u8, 41u8, 159u8, 94u8, 178u8, 174u8, 235u8, 221u8, 173u8, 44u8, 81u8, 211u8, 255u8, 231u8, 81u8, 16u8, 87u8, ], ) } #[doc = " A reverse lookup from the pool's account id to its id."] #[doc = ""] #[doc = " This is only used for slashing. In all other instances, the pool id is used, and the"] #[doc = " accounts are deterministically derived from it."] pub fn reverse_pool_id_lookup_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "ReversePoolIdLookup", Vec::new(), [ 178u8, 161u8, 51u8, 220u8, 128u8, 1u8, 135u8, 83u8, 236u8, 159u8, 36u8, 237u8, 120u8, 128u8, 6u8, 191u8, 41u8, 159u8, 94u8, 178u8, 174u8, 235u8, 221u8, 173u8, 44u8, 81u8, 211u8, 255u8, 231u8, 81u8, 16u8, 87u8, ], ) } #[doc = "Counter for the related counted storage map"] pub fn counter_for_reverse_pool_id_lookup( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "NominationPools", "CounterForReversePoolIdLookup", vec![], [ 148u8, 83u8, 81u8, 33u8, 188u8, 72u8, 148u8, 208u8, 245u8, 178u8, 52u8, 245u8, 229u8, 140u8, 100u8, 152u8, 8u8, 217u8, 161u8, 80u8, 226u8, 42u8, 15u8, 252u8, 90u8, 197u8, 120u8, 114u8, 144u8, 90u8, 199u8, 123u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The nomination pool's pallet id."] pub fn pallet_id( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< runtime_types::frame_support::PalletId, >, > { ::subxt::constants::StaticConstantAddress::new( "NominationPools", "PalletId", [ 139u8, 109u8, 228u8, 151u8, 252u8, 32u8, 130u8, 69u8, 112u8, 154u8, 174u8, 45u8, 83u8, 245u8, 51u8, 132u8, 173u8, 5u8, 186u8, 24u8, 243u8, 9u8, 12u8, 214u8, 80u8, 74u8, 69u8, 189u8, 30u8, 94u8, 22u8, 39u8, ], ) } #[doc = " The maximum pool points-to-balance ratio that an `open` pool can have."] #[doc = ""] #[doc = " This is important in the event slashing takes place and the pool's points-to-balance"] #[doc = " ratio becomes disproportional."] #[doc = ""] #[doc = " Moreover, this relates to the `RewardCounter` type as well, as the arithmetic operations"] #[doc = " are a function of number of points, and by setting this value to e.g. 10, you ensure"] #[doc = " that the total number of points in the system are at most 10 times the total_issuance of"] #[doc = " the chain, in the absolute worse case."] #[doc = ""] #[doc = " For a value of 10, the threshold would be a pool points-to-balance ratio of 10:1."] #[doc = " Such a scenario would also be the equivalent of the pool being 90% slashed."] pub fn max_points_to_balance( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u8>, > { ::subxt::constants::StaticConstantAddress::new( "NominationPools", "MaxPointsToBalance", [ 141u8, 130u8, 11u8, 35u8, 226u8, 114u8, 92u8, 179u8, 168u8, 110u8, 28u8, 91u8, 221u8, 64u8, 4u8, 148u8, 201u8, 193u8, 185u8, 66u8, 226u8, 114u8, 97u8, 79u8, 62u8, 212u8, 202u8, 114u8, 237u8, 228u8, 183u8, 165u8, ], ) } } } } pub mod ranked_polls { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Submit { pub proposal_origin: ::std::boxed::Box, pub proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, pub enactment_moment: runtime_types::frame_support::traits::schedule::DispatchTime< ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PlaceDecisionDeposit { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RefundDecisionDeposit { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Cancel { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Kill { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct NudgeReferendum { pub index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OneFewerDeciding { pub track: ::core::primitive::u16, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RefundSubmissionDeposit { pub index: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Propose a referendum on a privileged action."] #[doc = ""] #[doc = "- `origin`: must be `SubmitOrigin` and the account must have `SubmissionDeposit` funds"] #[doc = " available."] #[doc = "- `proposal_origin`: The origin from which the proposal should be executed."] #[doc = "- `proposal`: The proposal."] #[doc = "- `enactment_moment`: The moment that the proposal should be enacted."] #[doc = ""] #[doc = "Emits `Submitted`."] pub fn submit( &self, proposal_origin: runtime_types::kitchensink_runtime::OriginCaller, proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, enactment_moment : runtime_types :: frame_support :: traits :: schedule :: DispatchTime < :: core :: primitive :: u32 >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedPolls", "submit", Submit { proposal_origin: ::std::boxed::Box::new(proposal_origin), proposal, enactment_moment, }, [ 91u8, 158u8, 209u8, 182u8, 19u8, 184u8, 252u8, 30u8, 200u8, 62u8, 92u8, 254u8, 200u8, 245u8, 134u8, 143u8, 135u8, 67u8, 95u8, 107u8, 115u8, 109u8, 12u8, 48u8, 111u8, 239u8, 84u8, 255u8, 23u8, 26u8, 140u8, 187u8, ], ) } #[doc = "Post the Decision Deposit for a referendum."] #[doc = ""] #[doc = "- `origin`: must be `Signed` and the account must have funds available for the"] #[doc = " referendum's track's Decision Deposit."] #[doc = "- `index`: The index of the submitted referendum whose Decision Deposit is yet to be"] #[doc = " posted."] #[doc = ""] #[doc = "Emits `DecisionDepositPlaced`."] pub fn place_decision_deposit( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedPolls", "place_decision_deposit", PlaceDecisionDeposit { index }, [ 118u8, 227u8, 8u8, 55u8, 41u8, 171u8, 244u8, 40u8, 164u8, 232u8, 119u8, 129u8, 139u8, 123u8, 77u8, 70u8, 219u8, 236u8, 145u8, 159u8, 84u8, 111u8, 36u8, 4u8, 206u8, 5u8, 139u8, 231u8, 11u8, 231u8, 6u8, 30u8, ], ) } #[doc = "Refund the Decision Deposit for a closed referendum back to the depositor."] #[doc = ""] #[doc = "- `origin`: must be `Signed` or `Root`."] #[doc = "- `index`: The index of a closed referendum whose Decision Deposit has not yet been"] #[doc = " refunded."] #[doc = ""] #[doc = "Emits `DecisionDepositRefunded`."] pub fn refund_decision_deposit( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedPolls", "refund_decision_deposit", RefundDecisionDeposit { index }, [ 120u8, 116u8, 89u8, 51u8, 255u8, 76u8, 150u8, 74u8, 54u8, 93u8, 19u8, 64u8, 13u8, 177u8, 144u8, 93u8, 132u8, 150u8, 244u8, 48u8, 202u8, 223u8, 201u8, 130u8, 112u8, 167u8, 29u8, 207u8, 112u8, 181u8, 43u8, 93u8, ], ) } #[doc = "Cancel an ongoing referendum."] #[doc = ""] #[doc = "- `origin`: must be the `CancelOrigin`."] #[doc = "- `index`: The index of the referendum to be cancelled."] #[doc = ""] #[doc = "Emits `Cancelled`."] pub fn cancel( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedPolls", "cancel", Cancel { index }, [ 247u8, 55u8, 146u8, 211u8, 168u8, 140u8, 248u8, 217u8, 218u8, 235u8, 25u8, 39u8, 47u8, 132u8, 134u8, 18u8, 239u8, 70u8, 223u8, 50u8, 245u8, 101u8, 97u8, 39u8, 226u8, 4u8, 196u8, 16u8, 66u8, 177u8, 178u8, 252u8, ], ) } #[doc = "Cancel an ongoing referendum and slash the deposits."] #[doc = ""] #[doc = "- `origin`: must be the `KillOrigin`."] #[doc = "- `index`: The index of the referendum to be cancelled."] #[doc = ""] #[doc = "Emits `Killed` and `DepositSlashed`."] pub fn kill( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedPolls", "kill", Kill { index }, [ 98u8, 109u8, 143u8, 42u8, 24u8, 80u8, 39u8, 243u8, 249u8, 141u8, 104u8, 195u8, 29u8, 93u8, 149u8, 37u8, 27u8, 130u8, 84u8, 178u8, 246u8, 26u8, 113u8, 224u8, 157u8, 94u8, 16u8, 14u8, 158u8, 80u8, 148u8, 198u8, ], ) } #[doc = "Advance a referendum onto its next logical state. Only used internally."] #[doc = ""] #[doc = "- `origin`: must be `Root`."] #[doc = "- `index`: the referendum to be advanced."] pub fn nudge_referendum( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedPolls", "nudge_referendum", NudgeReferendum { index }, [ 60u8, 221u8, 153u8, 136u8, 107u8, 209u8, 59u8, 178u8, 208u8, 170u8, 10u8, 225u8, 213u8, 170u8, 228u8, 64u8, 204u8, 166u8, 7u8, 230u8, 243u8, 15u8, 206u8, 114u8, 8u8, 128u8, 46u8, 150u8, 114u8, 241u8, 112u8, 97u8, ], ) } #[doc = "Advance a track onto its next logical state. Only used internally."] #[doc = ""] #[doc = "- `origin`: must be `Root`."] #[doc = "- `track`: the track to be advanced."] #[doc = ""] #[doc = "Action item for when there is now one fewer referendum in the deciding phase and the"] #[doc = "`DecidingCount` is not yet updated. This means that we should either:"] #[doc = "- begin deciding another referendum (and leave `DecidingCount` alone); or"] #[doc = "- decrement `DecidingCount`."] pub fn one_fewer_deciding( &self, track: ::core::primitive::u16, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedPolls", "one_fewer_deciding", OneFewerDeciding { track }, [ 239u8, 43u8, 70u8, 73u8, 77u8, 28u8, 75u8, 62u8, 29u8, 67u8, 110u8, 120u8, 234u8, 236u8, 126u8, 99u8, 46u8, 183u8, 169u8, 16u8, 143u8, 233u8, 137u8, 247u8, 138u8, 96u8, 32u8, 223u8, 149u8, 52u8, 214u8, 195u8, ], ) } #[doc = "Refund the Submission Deposit for a closed referendum back to the depositor."] #[doc = ""] #[doc = "- `origin`: must be `Signed` or `Root`."] #[doc = "- `index`: The index of a closed referendum whose Submission Deposit has not yet been"] #[doc = " refunded."] #[doc = ""] #[doc = "Emits `SubmissionDepositRefunded`."] pub fn refund_submission_deposit( &self, index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedPolls", "refund_submission_deposit", RefundSubmissionDeposit { index }, [ 101u8, 147u8, 237u8, 27u8, 220u8, 116u8, 73u8, 131u8, 191u8, 92u8, 134u8, 31u8, 175u8, 172u8, 129u8, 225u8, 91u8, 33u8, 23u8, 132u8, 89u8, 19u8, 81u8, 238u8, 133u8, 243u8, 56u8, 70u8, 143u8, 43u8, 176u8, 83u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_referenda::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has been submitted."] pub struct Submitted { pub index: ::core::primitive::u32, pub track: ::core::primitive::u16, pub proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, } impl ::subxt::events::StaticEvent for Submitted { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "Submitted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The decision deposit has been placed."] pub struct DecisionDepositPlaced { pub index: ::core::primitive::u32, pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for DecisionDepositPlaced { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "DecisionDepositPlaced"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The decision deposit has been refunded."] pub struct DecisionDepositRefunded { pub index: ::core::primitive::u32, pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for DecisionDepositRefunded { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "DecisionDepositRefunded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A deposit has been slashaed."] pub struct DepositSlashed { pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for DepositSlashed { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "DepositSlashed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has moved into the deciding phase."] pub struct DecisionStarted { pub index: ::core::primitive::u32, pub track: ::core::primitive::u16, pub proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, pub tally: runtime_types::pallet_ranked_collective::Tally, } impl ::subxt::events::StaticEvent for DecisionStarted { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "DecisionStarted"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ConfirmStarted { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ConfirmStarted { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "ConfirmStarted"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ConfirmAborted { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for ConfirmAborted { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "ConfirmAborted"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has ended its confirmation phase and is ready for approval."] pub struct Confirmed { pub index: ::core::primitive::u32, pub tally: runtime_types::pallet_ranked_collective::Tally, } impl ::subxt::events::StaticEvent for Confirmed { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "Confirmed"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has been approved and its proposal has been scheduled."] pub struct Approved { pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for Approved { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "Approved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A proposal has been rejected by referendum."] pub struct Rejected { pub index: ::core::primitive::u32, pub tally: runtime_types::pallet_ranked_collective::Tally, } impl ::subxt::events::StaticEvent for Rejected { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "Rejected"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has been timed out without being decided."] pub struct TimedOut { pub index: ::core::primitive::u32, pub tally: runtime_types::pallet_ranked_collective::Tally, } impl ::subxt::events::StaticEvent for TimedOut { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "TimedOut"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has been cancelled."] pub struct Cancelled { pub index: ::core::primitive::u32, pub tally: runtime_types::pallet_ranked_collective::Tally, } impl ::subxt::events::StaticEvent for Cancelled { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "Cancelled"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A referendum has been killed."] pub struct Killed { pub index: ::core::primitive::u32, pub tally: runtime_types::pallet_ranked_collective::Tally, } impl ::subxt::events::StaticEvent for Killed { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "Killed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The submission deposit has been refunded."] pub struct SubmissionDepositRefunded { pub index: ::core::primitive::u32, pub who: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for SubmissionDepositRefunded { const PALLET: &'static str = "RankedPolls"; const EVENT: &'static str = "SubmissionDepositRefunded"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The next free referendum index, aka the number of referenda started so far."] pub fn referendum_count( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "RankedPolls", "ReferendumCount", vec![], [ 153u8, 210u8, 106u8, 244u8, 156u8, 70u8, 124u8, 251u8, 123u8, 75u8, 7u8, 189u8, 199u8, 145u8, 95u8, 119u8, 137u8, 11u8, 240u8, 160u8, 151u8, 248u8, 229u8, 231u8, 89u8, 222u8, 18u8, 237u8, 144u8, 78u8, 99u8, 58u8, ], ) } #[doc = " Information concerning any given referendum."] pub fn referendum_info_for( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_referenda::types::ReferendumInfo< ::core::primitive::u16, runtime_types::kitchensink_runtime::OriginCaller, ::core::primitive::u32, runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, ::core::primitive::u128, runtime_types::pallet_ranked_collective::Tally, ::subxt::utils::AccountId32, (::core::primitive::u32, ::core::primitive::u32), >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedPolls", "ReferendumInfoFor", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 128u8, 64u8, 140u8, 106u8, 75u8, 20u8, 189u8, 69u8, 252u8, 236u8, 182u8, 172u8, 253u8, 97u8, 170u8, 219u8, 220u8, 136u8, 0u8, 231u8, 212u8, 97u8, 82u8, 41u8, 156u8, 142u8, 33u8, 208u8, 70u8, 185u8, 182u8, 244u8, ], ) } #[doc = " Information concerning any given referendum."] pub fn referendum_info_for_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_referenda::types::ReferendumInfo< ::core::primitive::u16, runtime_types::kitchensink_runtime::OriginCaller, ::core::primitive::u32, runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, ::core::primitive::u128, runtime_types::pallet_ranked_collective::Tally, ::subxt::utils::AccountId32, (::core::primitive::u32, ::core::primitive::u32), >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedPolls", "ReferendumInfoFor", Vec::new(), [ 128u8, 64u8, 140u8, 106u8, 75u8, 20u8, 189u8, 69u8, 252u8, 236u8, 182u8, 172u8, 253u8, 97u8, 170u8, 219u8, 220u8, 136u8, 0u8, 231u8, 212u8, 97u8, 82u8, 41u8, 156u8, 142u8, 33u8, 208u8, 70u8, 185u8, 182u8, 244u8, ], ) } #[doc = " The sorted list of referenda ready to be decided but not yet being decided, ordered by"] #[doc = " conviction-weighted approvals."] #[doc = ""] #[doc = " This should be empty if `DecidingCount` is less than `TrackInfo::max_deciding`."] pub fn track_queue( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u16>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u32, ::core::primitive::u32, )>, >, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedPolls", "TrackQueue", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 250u8, 6u8, 4u8, 145u8, 233u8, 136u8, 58u8, 26u8, 252u8, 117u8, 90u8, 85u8, 189u8, 21u8, 196u8, 201u8, 108u8, 23u8, 161u8, 157u8, 149u8, 70u8, 77u8, 137u8, 159u8, 246u8, 244u8, 45u8, 134u8, 36u8, 231u8, 254u8, ], ) } #[doc = " The sorted list of referenda ready to be decided but not yet being decided, ordered by"] #[doc = " conviction-weighted approvals."] #[doc = ""] #[doc = " This should be empty if `DecidingCount` is less than `TrackInfo::max_deciding`."] pub fn track_queue_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u32, ::core::primitive::u32, )>, >, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedPolls", "TrackQueue", Vec::new(), [ 250u8, 6u8, 4u8, 145u8, 233u8, 136u8, 58u8, 26u8, 252u8, 117u8, 90u8, 85u8, 189u8, 21u8, 196u8, 201u8, 108u8, 23u8, 161u8, 157u8, 149u8, 70u8, 77u8, 137u8, 159u8, 246u8, 244u8, 45u8, 134u8, 36u8, 231u8, 254u8, ], ) } #[doc = " The number of referenda being decided currently."] pub fn deciding_count( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u16>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedPolls", "DecidingCount", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 101u8, 153u8, 200u8, 225u8, 229u8, 227u8, 232u8, 26u8, 98u8, 60u8, 60u8, 94u8, 204u8, 195u8, 193u8, 69u8, 50u8, 72u8, 31u8, 250u8, 224u8, 179u8, 139u8, 207u8, 19u8, 156u8, 67u8, 234u8, 177u8, 223u8, 63u8, 150u8, ], ) } #[doc = " The number of referenda being decided currently."] pub fn deciding_count_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedPolls", "DecidingCount", Vec::new(), [ 101u8, 153u8, 200u8, 225u8, 229u8, 227u8, 232u8, 26u8, 98u8, 60u8, 60u8, 94u8, 204u8, 195u8, 193u8, 69u8, 50u8, 72u8, 31u8, 250u8, 224u8, 179u8, 139u8, 207u8, 19u8, 156u8, 67u8, 234u8, 177u8, 223u8, 63u8, 150u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The minimum amount to be used as a deposit for a public referendum proposal."] pub fn submission_deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "RankedPolls", "SubmissionDeposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } #[doc = " Maximum size of the referendum queue for a single track."] pub fn max_queued( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "RankedPolls", "MaxQueued", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The number of blocks after submission that a referendum must begin being decided by."] #[doc = " Once this passes, then anyone may cancel the referendum."] pub fn undeciding_timeout( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "RankedPolls", "UndecidingTimeout", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Quantization level for the referendum wakeup scheduler. A higher number will result in"] #[doc = " fewer storage reads/writes needed for smaller voters, but also result in delays to the"] #[doc = " automatic referendum status changes. Explicit servicing instructions are unaffected."] pub fn alarm_interval( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "RankedPolls", "AlarmInterval", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " Information concerning the different referendum tracks."] pub fn tracks( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<( ::core::primitive::u16, runtime_types::pallet_referenda::types::TrackInfo< ::core::primitive::u128, ::core::primitive::u32, >, )>, >, > { ::subxt::constants::StaticConstantAddress::new( "RankedPolls", "Tracks", [ 71u8, 253u8, 246u8, 54u8, 168u8, 190u8, 182u8, 15u8, 207u8, 26u8, 50u8, 138u8, 212u8, 124u8, 13u8, 203u8, 27u8, 35u8, 224u8, 1u8, 176u8, 192u8, 197u8, 220u8, 147u8, 94u8, 196u8, 150u8, 125u8, 23u8, 48u8, 255u8, ], ) } } } } pub mod ranked_collective { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AddMember { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PromoteMember { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DemoteMember { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RemoveMember { pub who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pub min_rank: ::core::primitive::u16, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vote { pub poll: ::core::primitive::u32, pub aye: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CleanupPoll { pub poll_index: ::core::primitive::u32, pub max: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Introduce a new member."] #[doc = ""] #[doc = "- `origin`: Must be the `AdminOrigin`."] #[doc = "- `who`: Account of non-member which will become a member."] #[doc = "- `rank`: The rank to give the new member."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn add_member( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedCollective", "add_member", AddMember { who }, [ 168u8, 166u8, 6u8, 167u8, 12u8, 109u8, 99u8, 96u8, 240u8, 57u8, 60u8, 174u8, 57u8, 52u8, 131u8, 16u8, 230u8, 172u8, 23u8, 140u8, 48u8, 131u8, 73u8, 131u8, 133u8, 217u8, 137u8, 50u8, 165u8, 149u8, 174u8, 188u8, ], ) } #[doc = "Increment the rank of an existing member by one."] #[doc = ""] #[doc = "- `origin`: Must be the `AdminOrigin`."] #[doc = "- `who`: Account of existing member."] #[doc = ""] #[doc = "Weight: `O(1)`"] pub fn promote_member( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedCollective", "promote_member", PromoteMember { who }, [ 253u8, 173u8, 241u8, 51u8, 86u8, 53u8, 201u8, 217u8, 19u8, 193u8, 223u8, 249u8, 125u8, 125u8, 97u8, 12u8, 36u8, 68u8, 93u8, 152u8, 83u8, 14u8, 106u8, 38u8, 163u8, 216u8, 63u8, 79u8, 254u8, 6u8, 79u8, 80u8, ], ) } #[doc = "Decrement the rank of an existing member by one. If the member is already at rank zero,"] #[doc = "then they are removed entirely."] #[doc = ""] #[doc = "- `origin`: Must be the `AdminOrigin`."] #[doc = "- `who`: Account of existing member of rank greater than zero."] #[doc = ""] #[doc = "Weight: `O(1)`, less if the member's index is highest in its rank."] pub fn demote_member( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedCollective", "demote_member", DemoteMember { who }, [ 199u8, 199u8, 22u8, 115u8, 223u8, 23u8, 187u8, 33u8, 89u8, 244u8, 148u8, 87u8, 75u8, 187u8, 108u8, 176u8, 69u8, 250u8, 72u8, 90u8, 161u8, 218u8, 14u8, 156u8, 82u8, 159u8, 200u8, 141u8, 217u8, 221u8, 65u8, 174u8, ], ) } #[doc = "Remove the member entirely."] #[doc = ""] #[doc = "- `origin`: Must be the `AdminOrigin`."] #[doc = "- `who`: Account of existing member of rank greater than zero."] #[doc = "- `min_rank`: The rank of the member or greater."] #[doc = ""] #[doc = "Weight: `O(min_rank)`."] pub fn remove_member( &self, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, min_rank: ::core::primitive::u16, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedCollective", "remove_member", RemoveMember { who, min_rank }, [ 244u8, 61u8, 35u8, 202u8, 97u8, 223u8, 51u8, 2u8, 76u8, 170u8, 141u8, 197u8, 90u8, 159u8, 112u8, 185u8, 180u8, 45u8, 51u8, 206u8, 121u8, 227u8, 206u8, 134u8, 72u8, 243u8, 4u8, 83u8, 167u8, 63u8, 65u8, 44u8, ], ) } #[doc = "Add an aye or nay vote for the sender to the given proposal."] #[doc = ""] #[doc = "- `origin`: Must be `Signed` by a member account."] #[doc = "- `poll`: Index of a poll which is ongoing."] #[doc = "- `aye`: `true` if the vote is to approve the proposal, `false` otherwise."] #[doc = ""] #[doc = "Transaction fees are be waived if the member is voting on any particular proposal"] #[doc = "for the first time and the call is successful. Subsequent vote changes will charge a"] #[doc = "fee."] #[doc = ""] #[doc = "Weight: `O(1)`, less if there was no previous vote on the poll by the member."] pub fn vote( &self, poll: ::core::primitive::u32, aye: ::core::primitive::bool, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedCollective", "vote", Vote { poll, aye }, [ 76u8, 243u8, 228u8, 228u8, 168u8, 70u8, 128u8, 140u8, 206u8, 48u8, 220u8, 178u8, 134u8, 107u8, 76u8, 106u8, 137u8, 0u8, 200u8, 156u8, 21u8, 160u8, 123u8, 213u8, 251u8, 105u8, 94u8, 249u8, 63u8, 164u8, 196u8, 243u8, ], ) } #[doc = "Remove votes from the given poll. It must have ended."] #[doc = ""] #[doc = "- `origin`: Must be `Signed` by any account."] #[doc = "- `poll_index`: Index of a poll which is completed and for which votes continue to"] #[doc = " exist."] #[doc = "- `max`: Maximum number of vote items from remove in this call."] #[doc = ""] #[doc = "Transaction fees are waived if the operation is successful."] #[doc = ""] #[doc = "Weight `O(max)` (less if there are fewer items to remove than `max`)."] pub fn cleanup_poll( &self, poll_index: ::core::primitive::u32, max: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "RankedCollective", "cleanup_poll", CleanupPoll { poll_index, max }, [ 163u8, 143u8, 138u8, 57u8, 50u8, 73u8, 137u8, 95u8, 35u8, 87u8, 114u8, 216u8, 49u8, 151u8, 196u8, 247u8, 46u8, 255u8, 155u8, 63u8, 178u8, 240u8, 54u8, 124u8, 9u8, 168u8, 11u8, 228u8, 205u8, 162u8, 233u8, 183u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_ranked_collective::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A member `who` has been added."] pub struct MemberAdded { pub who: ::subxt::utils::AccountId32, } impl ::subxt::events::StaticEvent for MemberAdded { const PALLET: &'static str = "RankedCollective"; const EVENT: &'static str = "MemberAdded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The member `who`se rank has been changed to the given `rank`."] pub struct RankChanged { pub who: ::subxt::utils::AccountId32, pub rank: ::core::primitive::u16, } impl ::subxt::events::StaticEvent for RankChanged { const PALLET: &'static str = "RankedCollective"; const EVENT: &'static str = "RankChanged"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The member `who` of given `rank` has been removed from the collective."] pub struct MemberRemoved { pub who: ::subxt::utils::AccountId32, pub rank: ::core::primitive::u16, } impl ::subxt::events::StaticEvent for MemberRemoved { const PALLET: &'static str = "RankedCollective"; const EVENT: &'static str = "MemberRemoved"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The member `who` has voted for the `poll` with the given `vote` leading to an updated"] #[doc = "`tally`."] pub struct Voted { pub who: ::subxt::utils::AccountId32, pub poll: ::core::primitive::u32, pub vote: runtime_types::pallet_ranked_collective::VoteRecord, pub tally: runtime_types::pallet_ranked_collective::Tally, } impl ::subxt::events::StaticEvent for Voted { const PALLET: &'static str = "RankedCollective"; const EVENT: &'static str = "Voted"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The number of members in the collective who have at least the rank according to the index"] #[doc = " of the vec."] pub fn member_count( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u16>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedCollective", "MemberCount", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 122u8, 103u8, 33u8, 235u8, 19u8, 181u8, 16u8, 140u8, 233u8, 252u8, 27u8, 219u8, 12u8, 127u8, 16u8, 137u8, 240u8, 120u8, 208u8, 247u8, 81u8, 138u8, 52u8, 32u8, 120u8, 206u8, 141u8, 101u8, 215u8, 66u8, 147u8, 170u8, ], ) } #[doc = " The number of members in the collective who have at least the rank according to the index"] #[doc = " of the vec."] pub fn member_count_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedCollective", "MemberCount", Vec::new(), [ 122u8, 103u8, 33u8, 235u8, 19u8, 181u8, 16u8, 140u8, 233u8, 252u8, 27u8, 219u8, 12u8, 127u8, 16u8, 137u8, 240u8, 120u8, 208u8, 247u8, 81u8, 138u8, 52u8, 32u8, 120u8, 206u8, 141u8, 101u8, 215u8, 66u8, 147u8, 170u8, ], ) } #[doc = " The current members of the collective."] pub fn members( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_ranked_collective::MemberRecord, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedCollective", "Members", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 98u8, 137u8, 208u8, 103u8, 187u8, 115u8, 182u8, 10u8, 226u8, 35u8, 218u8, 247u8, 229u8, 205u8, 104u8, 89u8, 150u8, 229u8, 247u8, 45u8, 241u8, 51u8, 134u8, 210u8, 232u8, 159u8, 179u8, 232u8, 249u8, 153u8, 186u8, 245u8, ], ) } #[doc = " The current members of the collective."] pub fn members_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_ranked_collective::MemberRecord, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedCollective", "Members", Vec::new(), [ 98u8, 137u8, 208u8, 103u8, 187u8, 115u8, 182u8, 10u8, 226u8, 35u8, 218u8, 247u8, 229u8, 205u8, 104u8, 89u8, 150u8, 229u8, 247u8, 45u8, 241u8, 51u8, 134u8, 210u8, 232u8, 159u8, 179u8, 232u8, 249u8, 153u8, 186u8, 245u8, ], ) } #[doc = " The index of each ranks's member into the group of members who have at least that rank."] pub fn id_to_index( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u16>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedCollective", "IdToIndex", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 186u8, 92u8, 44u8, 141u8, 26u8, 112u8, 63u8, 128u8, 66u8, 62u8, 160u8, 33u8, 121u8, 155u8, 190u8, 153u8, 38u8, 255u8, 197u8, 21u8, 141u8, 192u8, 157u8, 229u8, 149u8, 104u8, 11u8, 119u8, 161u8, 182u8, 248u8, 105u8, ], ) } #[doc = " The index of each ranks's member into the group of members who have at least that rank."] pub fn id_to_index_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedCollective", "IdToIndex", Vec::new(), [ 186u8, 92u8, 44u8, 141u8, 26u8, 112u8, 63u8, 128u8, 66u8, 62u8, 160u8, 33u8, 121u8, 155u8, 190u8, 153u8, 38u8, 255u8, 197u8, 21u8, 141u8, 192u8, 157u8, 229u8, 149u8, 104u8, 11u8, 119u8, 161u8, 182u8, 248u8, 105u8, ], ) } #[doc = " The members in the collective by index. All indices in the range `0..MemberCount` will"] #[doc = " return `Some`, however a member's index is not guaranteed to remain unchanged over time."] pub fn index_to_id( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u16>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedCollective", "IndexToId", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 216u8, 113u8, 138u8, 39u8, 227u8, 44u8, 222u8, 36u8, 175u8, 134u8, 181u8, 1u8, 242u8, 50u8, 75u8, 177u8, 213u8, 252u8, 224u8, 241u8, 195u8, 74u8, 163u8, 223u8, 100u8, 61u8, 96u8, 1u8, 205u8, 147u8, 63u8, 64u8, ], ) } #[doc = " The members in the collective by index. All indices in the range `0..MemberCount` will"] #[doc = " return `Some`, however a member's index is not guaranteed to remain unchanged over time."] pub fn index_to_id_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::subxt::utils::AccountId32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedCollective", "IndexToId", Vec::new(), [ 216u8, 113u8, 138u8, 39u8, 227u8, 44u8, 222u8, 36u8, 175u8, 134u8, 181u8, 1u8, 242u8, 50u8, 75u8, 177u8, 213u8, 252u8, 224u8, 241u8, 195u8, 74u8, 163u8, 223u8, 100u8, 61u8, 96u8, 1u8, 205u8, 147u8, 63u8, 64u8, ], ) } #[doc = " Votes on a given proposal, if it is ongoing."] pub fn voting( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_ranked_collective::VoteRecord, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { :: subxt :: storage :: address :: StaticStorageAddress :: new ("RankedCollective" , "Voting" , vec ! [:: subxt :: storage :: address :: StorageMapKey :: new (_0 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Blake2_128Concat) , :: subxt :: storage :: address :: StorageMapKey :: new (_1 . borrow () , :: subxt :: storage :: address :: StorageHasher :: Twox64Concat)] , [113u8 , 198u8 , 3u8 , 155u8 , 220u8 , 110u8 , 5u8 , 50u8 , 91u8 , 232u8 , 18u8 , 224u8 , 39u8 , 238u8 , 17u8 , 28u8 , 21u8 , 44u8 , 36u8 , 12u8 , 109u8 , 10u8 , 191u8 , 81u8 , 78u8 , 76u8 , 155u8 , 66u8 , 99u8 , 180u8 , 63u8 , 99u8 ,]) } #[doc = " Votes on a given proposal, if it is ongoing."] pub fn voting_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_ranked_collective::VoteRecord, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedCollective", "Voting", Vec::new(), [ 113u8, 198u8, 3u8, 155u8, 220u8, 110u8, 5u8, 50u8, 91u8, 232u8, 18u8, 224u8, 39u8, 238u8, 17u8, 28u8, 21u8, 44u8, 36u8, 12u8, 109u8, 10u8, 191u8, 81u8, 78u8, 76u8, 155u8, 66u8, 99u8, 180u8, 63u8, 99u8, ], ) } pub fn voting_cleanup( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedCollective", "VotingCleanup", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_128Concat, )], [ 49u8, 202u8, 198u8, 106u8, 238u8, 117u8, 209u8, 225u8, 166u8, 130u8, 38u8, 236u8, 172u8, 59u8, 21u8, 168u8, 189u8, 41u8, 190u8, 54u8, 74u8, 255u8, 230u8, 255u8, 160u8, 237u8, 70u8, 208u8, 44u8, 182u8, 96u8, 157u8, ], ) } pub fn voting_cleanup_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "RankedCollective", "VotingCleanup", Vec::new(), [ 49u8, 202u8, 198u8, 106u8, 238u8, 117u8, 209u8, 225u8, 166u8, 130u8, 38u8, 236u8, 172u8, 59u8, 21u8, 168u8, 189u8, 41u8, 190u8, 54u8, 74u8, 255u8, 230u8, 255u8, 160u8, 237u8, 70u8, 208u8, 44u8, 182u8, 96u8, 157u8, ], ) } } } } pub mod fast_unstake { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RegisterFastUnstake; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Deregister; #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Control { pub eras_to_check: ::core::primitive::u32, } pub struct TransactionApi; impl TransactionApi { #[doc = "Register oneself for fast-unstake."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed by the controller account, similar to"] #[doc = "`staking::unbond`."] #[doc = ""] #[doc = "The stash associated with the origin must have no ongoing unlocking chunks. If"] #[doc = "successful, this will fully unbond and chill the stash. Then, it will enqueue the stash"] #[doc = "to be checked in further blocks."] #[doc = ""] #[doc = "If by the time this is called, the stash is actually eligible for fast-unstake, then"] #[doc = "they are guaranteed to remain eligible, because the call will chill them as well."] #[doc = ""] #[doc = "If the check works, the entire staking data is removed, i.e. the stash is fully"] #[doc = "unstaked."] #[doc = ""] #[doc = "If the check fails, the stash remains chilled and waiting for being unbonded as in with"] #[doc = "the normal staking system, but they lose part of their unbonding chunks due to consuming"] #[doc = "the chain's resources."] pub fn register_fast_unstake( &self, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "FastUnstake", "register_fast_unstake", RegisterFastUnstake {}, [ 254u8, 85u8, 128u8, 135u8, 172u8, 170u8, 34u8, 145u8, 79u8, 117u8, 234u8, 90u8, 16u8, 174u8, 159u8, 197u8, 27u8, 239u8, 180u8, 85u8, 116u8, 23u8, 254u8, 30u8, 197u8, 110u8, 48u8, 184u8, 177u8, 129u8, 42u8, 122u8, ], ) } #[doc = "Deregister oneself from the fast-unstake."] #[doc = ""] #[doc = "This is useful if one is registered, they are still waiting, and they change their mind."] #[doc = ""] #[doc = "Note that the associated stash is still fully unbonded and chilled as a consequence of"] #[doc = "calling `register_fast_unstake`. This should probably be followed by a call to"] #[doc = "`Staking::rebond`."] pub fn deregister(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "FastUnstake", "deregister", Deregister {}, [ 198u8, 180u8, 253u8, 148u8, 124u8, 145u8, 175u8, 121u8, 42u8, 181u8, 41u8, 155u8, 229u8, 181u8, 66u8, 140u8, 103u8, 86u8, 242u8, 155u8, 192u8, 34u8, 157u8, 107u8, 211u8, 162u8, 1u8, 144u8, 35u8, 252u8, 88u8, 21u8, ], ) } #[doc = "Control the operation of this pallet."] #[doc = ""] #[doc = "Dispatch origin must be signed by the [`Config::ControlOrigin`]."] pub fn control( &self, eras_to_check: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "FastUnstake", "control", Control { eras_to_check }, [ 92u8, 241u8, 123u8, 251u8, 82u8, 36u8, 209u8, 87u8, 238u8, 56u8, 32u8, 54u8, 190u8, 89u8, 167u8, 2u8, 36u8, 249u8, 131u8, 54u8, 217u8, 217u8, 231u8, 167u8, 232u8, 35u8, 108u8, 193u8, 70u8, 224u8, 47u8, 142u8, ], ) } } } #[doc = "The events of this pallet."] pub type Event = runtime_types::pallet_fast_unstake::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A staker was unstaked."] pub struct Unstaked { pub stash: ::subxt::utils::AccountId32, pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, } impl ::subxt::events::StaticEvent for Unstaked { const PALLET: &'static str = "FastUnstake"; const EVENT: &'static str = "Unstaked"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A staker was slashed for requesting fast-unstake whilst being exposed."] pub struct Slashed { pub stash: ::subxt::utils::AccountId32, pub amount: ::core::primitive::u128, } impl ::subxt::events::StaticEvent for Slashed { const PALLET: &'static str = "FastUnstake"; const EVENT: &'static str = "Slashed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "An internal error happened. Operations will be paused now."] pub struct InternalError; impl ::subxt::events::StaticEvent for InternalError { const PALLET: &'static str = "FastUnstake"; const EVENT: &'static str = "InternalError"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A batch was partially checked for the given eras, but the process did not finish."] pub struct BatchChecked { pub eras: ::std::vec::Vec<::core::primitive::u32>, } impl ::subxt::events::StaticEvent for BatchChecked { const PALLET: &'static str = "FastUnstake"; const EVENT: &'static str = "BatchChecked"; } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "A batch of a given size was terminated."] #[doc = ""] #[doc = "This is always follows by a number of `Unstaked` or `Slashed` events, marking the end"] #[doc = "of the batch. A new batch will be created upon next block."] pub struct BatchFinished { pub size: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for BatchFinished { const PALLET: &'static str = "FastUnstake"; const EVENT: &'static str = "BatchFinished"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The current \"head of the queue\" being unstaked."] pub fn head( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_fast_unstake::types::UnstakeRequest, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "FastUnstake", "Head", vec![], [ 206u8, 19u8, 169u8, 239u8, 214u8, 136u8, 16u8, 102u8, 82u8, 110u8, 128u8, 205u8, 102u8, 96u8, 148u8, 190u8, 67u8, 75u8, 2u8, 213u8, 134u8, 143u8, 40u8, 57u8, 54u8, 66u8, 170u8, 42u8, 135u8, 212u8, 108u8, 177u8, ], ) } #[doc = " The map of all accounts wishing to be unstaked."] #[doc = ""] #[doc = " Keeps track of `AccountId` wishing to unstake and it's corresponding deposit."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn queue( &self, _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "FastUnstake", "Queue", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 250u8, 208u8, 88u8, 68u8, 8u8, 87u8, 27u8, 59u8, 120u8, 242u8, 79u8, 54u8, 108u8, 15u8, 62u8, 143u8, 126u8, 66u8, 159u8, 159u8, 55u8, 212u8, 190u8, 26u8, 171u8, 90u8, 156u8, 205u8, 173u8, 189u8, 230u8, 71u8, ], ) } #[doc = " The map of all accounts wishing to be unstaked."] #[doc = ""] #[doc = " Keeps track of `AccountId` wishing to unstake and it's corresponding deposit."] #[doc = ""] #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] pub fn queue_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "FastUnstake", "Queue", Vec::new(), [ 250u8, 208u8, 88u8, 68u8, 8u8, 87u8, 27u8, 59u8, 120u8, 242u8, 79u8, 54u8, 108u8, 15u8, 62u8, 143u8, 126u8, 66u8, 159u8, 159u8, 55u8, 212u8, 190u8, 26u8, 171u8, 90u8, 156u8, 205u8, 173u8, 189u8, 230u8, 71u8, ], ) } #[doc = "Counter for the related counted storage map"] pub fn counter_for_queue( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "FastUnstake", "CounterForQueue", vec![], [ 241u8, 174u8, 224u8, 214u8, 204u8, 37u8, 117u8, 62u8, 114u8, 63u8, 123u8, 121u8, 201u8, 128u8, 26u8, 60u8, 170u8, 24u8, 112u8, 5u8, 248u8, 7u8, 143u8, 17u8, 150u8, 91u8, 23u8, 90u8, 237u8, 4u8, 138u8, 210u8, ], ) } #[doc = " Number of eras to check per block."] #[doc = ""] #[doc = " If set to 0, this pallet does absolutely nothing."] #[doc = ""] #[doc = " Based on the amount of weight available at `on_idle`, up to this many eras of a single"] #[doc = " nominator might be checked."] pub fn eras_to_check_per_block( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, ::subxt::storage::address::Yes, (), > { ::subxt::storage::address::StaticStorageAddress::new( "FastUnstake", "ErasToCheckPerBlock", vec![], [ 85u8, 55u8, 18u8, 11u8, 75u8, 176u8, 36u8, 253u8, 183u8, 250u8, 203u8, 178u8, 201u8, 79u8, 101u8, 89u8, 51u8, 142u8, 254u8, 23u8, 49u8, 140u8, 195u8, 116u8, 66u8, 124u8, 165u8, 161u8, 151u8, 174u8, 37u8, 51u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " Deposit to take for unstaking, to make sure we're able to slash the it in order to cover"] #[doc = " the costs of resources on unsuccessful unstake."] pub fn deposit( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u128>, > { ::subxt::constants::StaticConstantAddress::new( "FastUnstake", "Deposit", [ 84u8, 157u8, 140u8, 4u8, 93u8, 57u8, 29u8, 133u8, 105u8, 200u8, 214u8, 27u8, 144u8, 208u8, 218u8, 160u8, 130u8, 109u8, 101u8, 54u8, 210u8, 136u8, 71u8, 63u8, 49u8, 237u8, 234u8, 15u8, 178u8, 98u8, 148u8, 156u8, ], ) } } } } pub mod message_queue { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReapPage { pub message_origin: runtime_types::pallet_message_queue::mock_helpers::MessageOrigin, pub page_index: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ExecuteOverweight { pub message_origin: runtime_types::pallet_message_queue::mock_helpers::MessageOrigin, pub page: ::core::primitive::u32, pub index: ::core::primitive::u32, pub weight_limit: runtime_types::sp_weights::weight_v2::Weight, } pub struct TransactionApi; impl TransactionApi { #[doc = "Remove a page which has no more messages remaining to be processed or is stale."] pub fn reap_page( &self, message_origin : runtime_types :: pallet_message_queue :: mock_helpers :: MessageOrigin, page_index: ::core::primitive::u32, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "MessageQueue", "reap_page", ReapPage { message_origin, page_index, }, [ 5u8, 51u8, 124u8, 179u8, 60u8, 176u8, 165u8, 46u8, 182u8, 66u8, 119u8, 34u8, 69u8, 23u8, 129u8, 78u8, 44u8, 218u8, 241u8, 83u8, 48u8, 97u8, 172u8, 46u8, 68u8, 182u8, 37u8, 162u8, 98u8, 95u8, 10u8, 254u8, ], ) } #[doc = "Execute an overweight message."] #[doc = ""] #[doc = "- `origin`: Must be `Signed`."] #[doc = "- `message_origin`: The origin from which the message to be executed arrived."] #[doc = "- `page`: The page in the queue in which the message to be executed is sitting."] #[doc = "- `index`: The index into the queue of the message to be executed."] #[doc = "- `weight_limit`: The maximum amount of weight allowed to be consumed in the execution"] #[doc = " of the message."] #[doc = ""] #[doc = "Benchmark complexity considerations: O(index + weight_limit)."] pub fn execute_overweight( &self, message_origin : runtime_types :: pallet_message_queue :: mock_helpers :: MessageOrigin, page: ::core::primitive::u32, index: ::core::primitive::u32, weight_limit: runtime_types::sp_weights::weight_v2::Weight, ) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "MessageQueue", "execute_overweight", ExecuteOverweight { message_origin, page, index, weight_limit, }, [ 190u8, 229u8, 183u8, 199u8, 95u8, 209u8, 59u8, 104u8, 156u8, 242u8, 142u8, 147u8, 184u8, 253u8, 150u8, 19u8, 156u8, 175u8, 198u8, 72u8, 136u8, 149u8, 53u8, 75u8, 106u8, 182u8, 116u8, 234u8, 63u8, 10u8, 153u8, 212u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::pallet_message_queue::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Message discarded due to an inability to decode the item. Usually caused by state"] #[doc = "corruption."] pub struct Discarded { pub hash: ::subxt::utils::H256, } impl ::subxt::events::StaticEvent for Discarded { const PALLET: &'static str = "MessageQueue"; const EVENT: &'static str = "Discarded"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Message discarded due to an error in the `MessageProcessor` (usually a format error)."] pub struct ProcessingFailed { pub hash: ::subxt::utils::H256, pub origin: runtime_types::pallet_message_queue::mock_helpers::MessageOrigin, pub error: runtime_types::frame_support::traits::messages::ProcessMessageError, } impl ::subxt::events::StaticEvent for ProcessingFailed { const PALLET: &'static str = "MessageQueue"; const EVENT: &'static str = "ProcessingFailed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Message is processed."] pub struct Processed { pub hash: ::subxt::utils::H256, pub origin: runtime_types::pallet_message_queue::mock_helpers::MessageOrigin, pub weight_used: runtime_types::sp_weights::weight_v2::Weight, pub success: ::core::primitive::bool, } impl ::subxt::events::StaticEvent for Processed { const PALLET: &'static str = "MessageQueue"; const EVENT: &'static str = "Processed"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Message placed in overweight queue."] pub struct OverweightEnqueued { pub hash: ::subxt::utils::H256, pub origin: runtime_types::pallet_message_queue::mock_helpers::MessageOrigin, pub page_index: ::core::primitive::u32, pub message_index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for OverweightEnqueued { const PALLET: &'static str = "MessageQueue"; const EVENT: &'static str = "OverweightEnqueued"; } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "This page was reaped."] pub struct PageReaped { pub origin: runtime_types::pallet_message_queue::mock_helpers::MessageOrigin, pub index: ::core::primitive::u32, } impl ::subxt::events::StaticEvent for PageReaped { const PALLET: &'static str = "MessageQueue"; const EVENT: &'static str = "PageReaped"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { #[doc = " The index of the first and last (non-empty) pages."] pub fn book_state_for (& self , _0 : impl :: std :: borrow :: Borrow < runtime_types :: pallet_message_queue :: mock_helpers :: MessageOrigin > ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: pallet_message_queue :: BookState < runtime_types :: pallet_message_queue :: mock_helpers :: MessageOrigin > > , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes >{ ::subxt::storage::address::StaticStorageAddress::new( "MessageQueue", "BookStateFor", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, )], [ 115u8, 200u8, 55u8, 195u8, 65u8, 240u8, 86u8, 187u8, 229u8, 140u8, 7u8, 98u8, 151u8, 231u8, 75u8, 154u8, 131u8, 223u8, 74u8, 111u8, 160u8, 48u8, 235u8, 223u8, 215u8, 193u8, 153u8, 73u8, 135u8, 197u8, 223u8, 10u8, ], ) } #[doc = " The index of the first and last (non-empty) pages."] pub fn book_state_for_root (& self ,) -> :: subxt :: storage :: address :: StaticStorageAddress :: < :: subxt :: metadata :: DecodeStaticType < runtime_types :: pallet_message_queue :: BookState < runtime_types :: pallet_message_queue :: mock_helpers :: MessageOrigin > > , () , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes >{ ::subxt::storage::address::StaticStorageAddress::new( "MessageQueue", "BookStateFor", Vec::new(), [ 115u8, 200u8, 55u8, 195u8, 65u8, 240u8, 86u8, 187u8, 229u8, 140u8, 7u8, 98u8, 151u8, 231u8, 75u8, 154u8, 131u8, 223u8, 74u8, 111u8, 160u8, 48u8, 235u8, 223u8, 215u8, 193u8, 153u8, 73u8, 135u8, 197u8, 223u8, 10u8, ], ) } #[doc = " The origin at which we should begin servicing."] pub fn service_head( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_message_queue::mock_helpers::MessageOrigin, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "MessageQueue", "ServiceHead", vec![], [ 20u8, 45u8, 85u8, 181u8, 153u8, 58u8, 1u8, 235u8, 167u8, 192u8, 66u8, 81u8, 199u8, 37u8, 194u8, 250u8, 27u8, 28u8, 18u8, 100u8, 244u8, 181u8, 45u8, 11u8, 35u8, 89u8, 208u8, 63u8, 245u8, 72u8, 29u8, 137u8, ], ) } #[doc = " The map of page indices to pages."] pub fn pages( &self, _0: impl ::std::borrow::Borrow< runtime_types::pallet_message_queue::mock_helpers::MessageOrigin, >, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_message_queue::Page<::core::primitive::u32>, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "MessageQueue", "Pages", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Twox64Concat, ), ], [ 25u8, 173u8, 204u8, 57u8, 137u8, 77u8, 88u8, 162u8, 83u8, 32u8, 67u8, 15u8, 74u8, 153u8, 151u8, 94u8, 135u8, 219u8, 9u8, 46u8, 156u8, 13u8, 143u8, 177u8, 216u8, 96u8, 83u8, 116u8, 237u8, 79u8, 76u8, 92u8, ], ) } #[doc = " The map of page indices to pages."] pub fn pages_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::pallet_message_queue::Page<::core::primitive::u32>, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "MessageQueue", "Pages", Vec::new(), [ 25u8, 173u8, 204u8, 57u8, 137u8, 77u8, 88u8, 162u8, 83u8, 32u8, 67u8, 15u8, 74u8, 153u8, 151u8, 94u8, 135u8, 219u8, 9u8, 46u8, 156u8, 13u8, 143u8, 177u8, 216u8, 96u8, 83u8, 116u8, 237u8, 79u8, 76u8, 92u8, ], ) } } } pub mod constants { use super::runtime_types; pub struct ConstantsApi; impl ConstantsApi { #[doc = " The size of the page; this implies the maximum message size which can be sent."] #[doc = ""] #[doc = " A good value depends on the expected message sizes, their weights, the weight that is"] #[doc = " available for processing them and the maximal needed message size. The maximal message"] #[doc = " size is slightly lower than this as defined by [`MaxMessageLenOf`]."] pub fn heap_size( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "MessageQueue", "HeapSize", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The maximum number of stale pages (i.e. of overweight messages) allowed before culling"] #[doc = " can happen. Once there are more stale pages than this, then historical pages may be"] #[doc = " dropped, even if they contain unprocessed overweight messages."] pub fn max_stale( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, > { ::subxt::constants::StaticConstantAddress::new( "MessageQueue", "MaxStale", [ 98u8, 252u8, 116u8, 72u8, 26u8, 180u8, 225u8, 83u8, 200u8, 157u8, 125u8, 151u8, 53u8, 76u8, 168u8, 26u8, 10u8, 9u8, 98u8, 68u8, 9u8, 178u8, 197u8, 113u8, 31u8, 79u8, 200u8, 90u8, 203u8, 100u8, 41u8, 145u8, ], ) } #[doc = " The amount of weight (if any) which should be provided to the message queue for"] #[doc = " servicing enqueued items."] #[doc = ""] #[doc = " This may be legitimately `None` in the case that you will call"] #[doc = " `ServiceQueues::service_queues` manually."] pub fn service_weight( &self, ) -> ::subxt::constants::StaticConstantAddress< ::subxt::metadata::DecodeStaticType< ::core::option::Option< runtime_types::sp_weights::weight_v2::Weight, >, >, > { ::subxt::constants::StaticConstantAddress::new( "MessageQueue", "ServiceWeight", [ 199u8, 205u8, 164u8, 188u8, 101u8, 240u8, 98u8, 54u8, 0u8, 78u8, 218u8, 77u8, 164u8, 196u8, 0u8, 194u8, 181u8, 251u8, 195u8, 24u8, 98u8, 147u8, 169u8, 53u8, 22u8, 202u8, 66u8, 236u8, 163u8, 36u8, 162u8, 46u8, ], ) } } } } pub mod pov { use super::root_mod; use super::runtime_types; #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub mod calls { use super::root_mod; use super::runtime_types; type DispatchError = runtime_types::sp_runtime::DispatchError; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct EmitEvent; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Noop; pub struct TransactionApi; impl TransactionApi { pub fn emit_event(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Pov", "emit_event", EmitEvent {}, [ 14u8, 138u8, 169u8, 158u8, 130u8, 71u8, 252u8, 8u8, 217u8, 46u8, 10u8, 251u8, 35u8, 65u8, 52u8, 108u8, 75u8, 165u8, 250u8, 44u8, 23u8, 29u8, 78u8, 254u8, 233u8, 69u8, 14u8, 230u8, 245u8, 51u8, 56u8, 170u8, ], ) } pub fn noop(&self) -> ::subxt::tx::StaticTxPayload { ::subxt::tx::StaticTxPayload::new( "Pov", "noop", Noop {}, [ 43u8, 170u8, 96u8, 3u8, 54u8, 244u8, 186u8, 139u8, 31u8, 132u8, 17u8, 29u8, 229u8, 218u8, 193u8, 49u8, 37u8, 105u8, 29u8, 202u8, 71u8, 117u8, 24u8, 33u8, 216u8, 76u8, 131u8, 252u8, 93u8, 231u8, 222u8, 137u8, ], ) } } } #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub type Event = runtime_types::frame_benchmarking_pallet_pov::pallet::Event; pub mod events { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TestEvent; impl ::subxt::events::StaticEvent for TestEvent { const PALLET: &'static str = "Pov"; const EVENT: &'static str = "TestEvent"; } } pub mod storage { use super::runtime_types; pub struct StorageApi; impl StorageApi { pub fn value( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "Value", vec![], [ 9u8, 211u8, 85u8, 208u8, 134u8, 247u8, 45u8, 29u8, 206u8, 49u8, 103u8, 68u8, 215u8, 78u8, 216u8, 26u8, 203u8, 154u8, 216u8, 106u8, 42u8, 195u8, 219u8, 145u8, 192u8, 28u8, 211u8, 109u8, 129u8, 241u8, 229u8, 43u8, ], ) } pub fn value2( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "Value2", vec![], [ 48u8, 80u8, 236u8, 198u8, 2u8, 183u8, 200u8, 162u8, 54u8, 196u8, 217u8, 190u8, 27u8, 68u8, 19u8, 38u8, 28u8, 209u8, 152u8, 100u8, 177u8, 59u8, 18u8, 223u8, 80u8, 245u8, 195u8, 170u8, 231u8, 66u8, 101u8, 186u8, ], ) } #[doc = " A value without a MEL bound."] pub fn unbounded_value( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u8>, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "UnboundedValue", vec![], [ 0u8, 89u8, 151u8, 63u8, 80u8, 181u8, 206u8, 202u8, 117u8, 3u8, 126u8, 199u8, 132u8, 43u8, 116u8, 156u8, 20u8, 180u8, 223u8, 87u8, 125u8, 162u8, 90u8, 8u8, 39u8, 157u8, 124u8, 211u8, 38u8, 230u8, 32u8, 207u8, ], ) } #[doc = " A value with a MEL bound of 32 byte."] pub fn bounded_value( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "BoundedValue", vec![], [ 247u8, 231u8, 116u8, 175u8, 89u8, 223u8, 189u8, 248u8, 218u8, 51u8, 112u8, 213u8, 72u8, 161u8, 114u8, 69u8, 32u8, 245u8, 200u8, 245u8, 130u8, 121u8, 246u8, 182u8, 1u8, 173u8, 59u8, 168u8, 206u8, 69u8, 252u8, 139u8, ], ) } #[doc = " 4MiB value."] pub fn large_value( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "LargeValue", vec![], [ 155u8, 64u8, 255u8, 30u8, 93u8, 13u8, 120u8, 254u8, 23u8, 144u8, 235u8, 57u8, 196u8, 166u8, 236u8, 191u8, 158u8, 11u8, 37u8, 104u8, 228u8, 15u8, 174u8, 246u8, 23u8, 138u8, 116u8, 0u8, 155u8, 17u8, 211u8, 206u8, ], ) } pub fn large_value2( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, ::subxt::storage::address::Yes, (), (), > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "LargeValue2", vec![], [ 5u8, 177u8, 104u8, 108u8, 190u8, 191u8, 230u8, 107u8, 95u8, 181u8, 245u8, 248u8, 7u8, 59u8, 136u8, 34u8, 185u8, 39u8, 76u8, 84u8, 115u8, 60u8, 168u8, 247u8, 53u8, 81u8, 70u8, 141u8, 136u8, 7u8, 222u8, 217u8, ], ) } #[doc = " A map with a maximum of 1M entries."] pub fn map1_m( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "Map1M", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_256, )], [ 127u8, 84u8, 81u8, 165u8, 88u8, 21u8, 81u8, 221u8, 121u8, 208u8, 147u8, 137u8, 74u8, 205u8, 16u8, 95u8, 233u8, 238u8, 73u8, 89u8, 112u8, 94u8, 110u8, 7u8, 161u8, 4u8, 128u8, 82u8, 139u8, 124u8, 114u8, 99u8, ], ) } #[doc = " A map with a maximum of 1M entries."] pub fn map1_m_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "Map1M", Vec::new(), [ 127u8, 84u8, 81u8, 165u8, 88u8, 21u8, 81u8, 221u8, 121u8, 208u8, 147u8, 137u8, 74u8, 205u8, 16u8, 95u8, 233u8, 238u8, 73u8, 89u8, 112u8, 94u8, 110u8, 7u8, 161u8, 4u8, 128u8, 82u8, 139u8, 124u8, 114u8, 99u8, ], ) } #[doc = " A map with a maximum of 16M entries."] pub fn map16_m( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "Map16M", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_256, )], [ 44u8, 183u8, 133u8, 18u8, 15u8, 127u8, 115u8, 20u8, 120u8, 138u8, 93u8, 23u8, 102u8, 48u8, 228u8, 8u8, 129u8, 111u8, 44u8, 128u8, 50u8, 21u8, 242u8, 206u8, 191u8, 150u8, 41u8, 31u8, 37u8, 214u8, 45u8, 178u8, ], ) } #[doc = " A map with a maximum of 16M entries."] pub fn map16_m_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "Map16M", Vec::new(), [ 44u8, 183u8, 133u8, 18u8, 15u8, 127u8, 115u8, 20u8, 120u8, 138u8, 93u8, 23u8, 102u8, 48u8, 228u8, 8u8, 129u8, 111u8, 44u8, 128u8, 50u8, 21u8, 242u8, 206u8, 191u8, 150u8, 41u8, 31u8, 37u8, 214u8, 45u8, 178u8, ], ) } pub fn double_map1_m( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, _1: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "DoubleMap1M", vec![ ::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_256, ), ::subxt::storage::address::StorageMapKey::new( _1.borrow(), ::subxt::storage::address::StorageHasher::Blake2_256, ), ], [ 41u8, 211u8, 39u8, 148u8, 201u8, 100u8, 60u8, 156u8, 199u8, 19u8, 157u8, 134u8, 100u8, 159u8, 224u8, 4u8, 55u8, 195u8, 83u8, 151u8, 225u8, 89u8, 94u8, 227u8, 160u8, 84u8, 137u8, 126u8, 173u8, 187u8, 9u8, 191u8, ], ) } pub fn double_map1_m_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType<::core::primitive::u32>, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "DoubleMap1M", Vec::new(), [ 41u8, 211u8, 39u8, 148u8, 201u8, 100u8, 60u8, 156u8, 199u8, 19u8, 157u8, 134u8, 100u8, 159u8, 224u8, 4u8, 55u8, 195u8, 83u8, 151u8, 225u8, 89u8, 94u8, 227u8, 160u8, 84u8, 137u8, 126u8, 173u8, 187u8, 9u8, 191u8, ], ) } pub fn unbounded_map( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u32>, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "UnboundedMap", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_256, )], [ 151u8, 19u8, 220u8, 245u8, 243u8, 150u8, 100u8, 20u8, 160u8, 176u8, 238u8, 89u8, 105u8, 140u8, 247u8, 81u8, 165u8, 123u8, 190u8, 251u8, 128u8, 29u8, 36u8, 196u8, 17u8, 181u8, 66u8, 185u8, 68u8, 2u8, 52u8, 108u8, ], ) } pub fn unbounded_map_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u32>, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "UnboundedMap", Vec::new(), [ 151u8, 19u8, 220u8, 245u8, 243u8, 150u8, 100u8, 20u8, 160u8, 176u8, 238u8, 89u8, 105u8, 140u8, 247u8, 81u8, 165u8, 123u8, 190u8, 251u8, 128u8, 29u8, 36u8, 196u8, 17u8, 181u8, 66u8, 185u8, 68u8, 2u8, 52u8, 108u8, ], ) } pub fn unbounded_map2( &self, _0: impl ::std::borrow::Borrow<::core::primitive::u32>, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u32>, >, ::subxt::storage::address::Yes, (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "UnboundedMap2", vec![::subxt::storage::address::StorageMapKey::new( _0.borrow(), ::subxt::storage::address::StorageHasher::Blake2_256, )], [ 103u8, 138u8, 223u8, 26u8, 234u8, 2u8, 180u8, 212u8, 107u8, 220u8, 245u8, 154u8, 204u8, 229u8, 235u8, 174u8, 194u8, 223u8, 245u8, 45u8, 223u8, 3u8, 212u8, 169u8, 56u8, 162u8, 202u8, 135u8, 219u8, 7u8, 151u8, 132u8, ], ) } pub fn unbounded_map2_root( &self, ) -> ::subxt::storage::address::StaticStorageAddress< ::subxt::metadata::DecodeStaticType< ::std::vec::Vec<::core::primitive::u32>, >, (), (), ::subxt::storage::address::Yes, > { ::subxt::storage::address::StaticStorageAddress::new( "Pov", "UnboundedMap2", Vec::new(), [ 103u8, 138u8, 223u8, 26u8, 234u8, 2u8, 180u8, 212u8, 107u8, 220u8, 245u8, 154u8, 204u8, 229u8, 235u8, 174u8, 194u8, 223u8, 245u8, 45u8, 223u8, 3u8, 212u8, 169u8, 56u8, 162u8, 202u8, 135u8, 219u8, 7u8, 151u8, 132u8, ], ) } } } } pub mod runtime_types { use super::runtime_types; pub mod finality_grandpa { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Equivocation<_0, _1, _2> { pub round_number: ::core::primitive::u64, pub identity: _0, pub first: (_1, _2), pub second: (_1, _2), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Precommit<_0, _1> { pub target_hash: _0, pub target_number: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Prevote<_0, _1> { pub target_hash: _0, pub target_number: _1, } } pub mod frame_benchmarking_pallet_pov { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] emit_event, #[codec(index = 1)] noop, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] TestEvent, } } } pub mod frame_support { use super::runtime_types; pub mod dispatch { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum DispatchClass { #[codec(index = 0)] Normal, #[codec(index = 1)] Operational, #[codec(index = 2)] Mandatory, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DispatchInfo { pub weight: runtime_types::sp_weights::weight_v2::Weight, pub class: runtime_types::frame_support::dispatch::DispatchClass, pub pays_fee: runtime_types::frame_support::dispatch::Pays, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Pays { #[codec(index = 0)] Yes, #[codec(index = 1)] No, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PerDispatchClass<_0> { pub normal: _0, pub operational: _0, pub mandatory: _0, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PostDispatchInfo { pub actual_weight: ::core::option::Option< runtime_types::sp_weights::weight_v2::Weight, >, pub pays_fee: runtime_types::frame_support::dispatch::Pays, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum RawOrigin<_0> { #[codec(index = 0)] Root, #[codec(index = 1)] Signed(_0), #[codec(index = 2)] None, } } pub mod traits { use super::runtime_types; pub mod messages { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ProcessMessageError { #[codec(index = 0)] BadFormat, #[codec(index = 1)] Corrupt, #[codec(index = 2)] Unsupported, #[codec(index = 3)] Overweight(runtime_types::sp_weights::weight_v2::Weight), } } pub mod misc { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct WrapperOpaque<_0>( #[codec(compact)] pub ::core::primitive::u32, pub _0, ); } pub mod preimages { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Bounded<_0> { #[codec(index = 0)] Legacy { hash: ::subxt::utils::H256, }, #[codec(index = 1)] Inline( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, ), #[codec(index = 2)] Lookup { hash: ::subxt::utils::H256, len: ::core::primitive::u32, }, __Ignore(::core::marker::PhantomData<_0>), } } pub mod schedule { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum DispatchTime<_0> { #[codec(index = 0)] At(_0), #[codec(index = 1)] After(_0), } } pub mod tokens { use super::runtime_types; pub mod misc { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum AttributeNamespace<_0> { #[codec(index = 0)] Pallet, #[codec(index = 1)] CollectionOwner, #[codec(index = 2)] ItemOwner, #[codec(index = 3)] Account(_0), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum BalanceStatus { #[codec(index = 0)] Free, #[codec(index = 1)] Reserved, } } } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PalletId(pub [::core::primitive::u8; 8usize]); } pub mod frame_system { use super::runtime_types; pub mod extensions { use super::runtime_types; pub mod check_genesis { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CheckGenesis; } pub mod check_mortality { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CheckMortality( pub runtime_types::sp_runtime::generic::era::Era, ); } pub mod check_non_zero_sender { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CheckNonZeroSender; } pub mod check_nonce { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CheckNonce(#[codec(compact)] pub ::core::primitive::u32); } pub mod check_spec_version { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CheckSpecVersion; } pub mod check_tx_version { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CheckTxVersion; } pub mod check_weight { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CheckWeight; } } pub mod limits { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BlockLength { pub max: runtime_types::frame_support::dispatch::PerDispatchClass< ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BlockWeights { pub base_block: runtime_types::sp_weights::weight_v2::Weight, pub max_block: runtime_types::sp_weights::weight_v2::Weight, pub per_class: runtime_types::frame_support::dispatch::PerDispatchClass< runtime_types::frame_system::limits::WeightsPerClass, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct WeightsPerClass { pub base_extrinsic: runtime_types::sp_weights::weight_v2::Weight, pub max_extrinsic: ::core::option::Option< runtime_types::sp_weights::weight_v2::Weight, >, pub max_total: ::core::option::Option< runtime_types::sp_weights::weight_v2::Weight, >, pub reserved: ::core::option::Option< runtime_types::sp_weights::weight_v2::Weight, >, } } pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Make some on-chain remark."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`"] #[doc = "# "] remark { remark: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 1)] #[doc = "Set the number of pages in the WebAssembly environment's heap."] set_heap_pages { pages: ::core::primitive::u64 }, #[codec(index = 2)] #[doc = "Set the new runtime code."] #[doc = ""] #[doc = "# "] #[doc = "- `O(C + S)` where `C` length of `code` and `S` complexity of `can_set_code`"] #[doc = "- 1 call to `can_set_code`: `O(S)` (calls `sp_io::misc::runtime_version` which is"] #[doc = " expensive)."] #[doc = "- 1 storage write (codec `O(C)`)."] #[doc = "- 1 digest item."] #[doc = "- 1 event."] #[doc = "The weight of this function is dependent on the runtime, but generally this is very"] #[doc = "expensive. We will treat this as a full block."] #[doc = "# "] set_code { code: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 3)] #[doc = "Set the new runtime code without doing any checks of the given `code`."] #[doc = ""] #[doc = "# "] #[doc = "- `O(C)` where `C` length of `code`"] #[doc = "- 1 storage write (codec `O(C)`)."] #[doc = "- 1 digest item."] #[doc = "- 1 event."] #[doc = "The weight of this function is dependent on the runtime. We will treat this as a full"] #[doc = "block. # "] set_code_without_checks { code: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 4)] #[doc = "Set some items of storage."] set_storage { items: ::std::vec::Vec<( ::std::vec::Vec<::core::primitive::u8>, ::std::vec::Vec<::core::primitive::u8>, )>, }, #[codec(index = 5)] #[doc = "Kill some items from storage."] kill_storage { keys: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, }, #[codec(index = 6)] #[doc = "Kill all storage items with a key that starts with the given prefix."] #[doc = ""] #[doc = "**NOTE:** We rely on the Root origin to provide us the number of subkeys under"] #[doc = "the prefix we are removing to accurately calculate the weight of this function."] kill_prefix { prefix: ::std::vec::Vec<::core::primitive::u8>, subkeys: ::core::primitive::u32, }, #[codec(index = 7)] #[doc = "Make some on-chain remark and emit event."] remark_with_event { remark: ::std::vec::Vec<::core::primitive::u8>, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Error for the System pallet"] pub enum Error { #[codec(index = 0)] #[doc = "The name of specification does not match between the current runtime"] #[doc = "and the new runtime."] InvalidSpecName, #[codec(index = 1)] #[doc = "The specification version is not allowed to decrease between the current runtime"] #[doc = "and the new runtime."] SpecVersionNeedsToIncrease, #[codec(index = 2)] #[doc = "Failed to extract the runtime version from the new runtime."] #[doc = ""] #[doc = "Either calling `Core_version` or decoding `RuntimeVersion` failed."] FailedToExtractRuntimeVersion, #[codec(index = 3)] #[doc = "Suicide called when the account has non-default composite data."] NonDefaultComposite, #[codec(index = 4)] #[doc = "There is a non-zero reference count preventing the account from being purged."] NonZeroRefCount, #[codec(index = 5)] #[doc = "The origin filter prevent the call to be dispatched."] CallFiltered, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Event for the System pallet."] pub enum Event { #[codec(index = 0)] #[doc = "An extrinsic completed successfully."] ExtrinsicSuccess { dispatch_info: runtime_types::frame_support::dispatch::DispatchInfo, }, #[codec(index = 1)] #[doc = "An extrinsic failed."] ExtrinsicFailed { dispatch_error: runtime_types::sp_runtime::DispatchError, dispatch_info: runtime_types::frame_support::dispatch::DispatchInfo, }, #[codec(index = 2)] #[doc = "`:code` was updated."] CodeUpdated, #[codec(index = 3)] #[doc = "A new account was created."] NewAccount { account: ::subxt::utils::AccountId32, }, #[codec(index = 4)] #[doc = "An account was reaped."] KilledAccount { account: ::subxt::utils::AccountId32, }, #[codec(index = 5)] #[doc = "On on-chain remark happened."] Remarked { sender: ::subxt::utils::AccountId32, hash: ::subxt::utils::H256, }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AccountInfo<_0, _1> { pub nonce: _0, pub consumers: _0, pub providers: _0, pub sufficients: _0, pub data: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct EventRecord<_0, _1> { pub phase: runtime_types::frame_system::Phase, pub event: _0, pub topics: ::std::vec::Vec<_1>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct LastRuntimeUpgradeInfo { #[codec(compact)] pub spec_version: ::core::primitive::u32, pub spec_name: ::std::string::String, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Phase { #[codec(index = 0)] ApplyExtrinsic(::core::primitive::u32), #[codec(index = 1)] Finalization, #[codec(index = 2)] Initialization, } } pub mod kitchensink_runtime { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct NposSolution16 { pub votes1: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes2: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, ( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ), ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes3: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 2usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes4: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 3usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes5: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 4usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes6: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 5usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes7: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 6usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes8: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 7usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes9: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 8usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes10: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 9usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes11: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 10usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes12: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 11usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes13: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 12usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes14: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 13usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes15: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 14usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, pub votes16: ::std::vec::Vec<( ::subxt::ext::codec::Compact<::core::primitive::u32>, [( ::subxt::ext::codec::Compact<::core::primitive::u16>, ::subxt::ext::codec::Compact< runtime_types::sp_arithmetic::per_things::PerU16, >, ); 15usize], ::subxt::ext::codec::Compact<::core::primitive::u16>, )>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum OriginCaller { #[codec(index = 0)] system( runtime_types::frame_support::dispatch::RawOrigin< ::subxt::utils::AccountId32, >, ), #[codec(index = 13)] Council( runtime_types::pallet_collective::RawOrigin< ::subxt::utils::AccountId32, >, ), #[codec(index = 14)] TechnicalCommittee( runtime_types::pallet_collective::RawOrigin< ::subxt::utils::AccountId32, >, ), #[codec(index = 51)] AllianceMotion( runtime_types::pallet_collective::RawOrigin< ::subxt::utils::AccountId32, >, ), #[codec(index = 4)] Void(runtime_types::sp_core::Void), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ProxyType { #[codec(index = 0)] Any, #[codec(index = 1)] NonTransfer, #[codec(index = 2)] Governance, #[codec(index = 3)] Staking, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Runtime; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum RuntimeCall { #[codec(index = 0)] System(runtime_types::frame_system::pallet::Call), #[codec(index = 1)] Utility(runtime_types::pallet_utility::pallet::Call), #[codec(index = 2)] Babe(runtime_types::pallet_babe::pallet::Call), #[codec(index = 3)] Timestamp(runtime_types::pallet_timestamp::pallet::Call), #[codec(index = 5)] Indices(runtime_types::pallet_indices::pallet::Call), #[codec(index = 6)] Balances(runtime_types::pallet_balances::pallet::Call), #[codec(index = 9)] ElectionProviderMultiPhase( runtime_types::pallet_election_provider_multi_phase::pallet::Call, ), #[codec(index = 10)] Staking(runtime_types::pallet_staking::pallet::pallet::Call), #[codec(index = 11)] Session(runtime_types::pallet_session::pallet::Call), #[codec(index = 12)] Democracy(runtime_types::pallet_democracy::pallet::Call), #[codec(index = 13)] Council(runtime_types::pallet_collective::pallet::Call), #[codec(index = 14)] TechnicalCommittee(runtime_types::pallet_collective::pallet::Call), #[codec(index = 15)] Elections(runtime_types::pallet_elections_phragmen::pallet::Call), #[codec(index = 16)] TechnicalMembership(runtime_types::pallet_membership::pallet::Call), #[codec(index = 17)] Grandpa(runtime_types::pallet_grandpa::pallet::Call), #[codec(index = 18)] Treasury(runtime_types::pallet_treasury::pallet::Call), #[codec(index = 19)] Contracts(runtime_types::pallet_contracts::pallet::Call), #[codec(index = 20)] Sudo(runtime_types::pallet_sudo::pallet::Call), #[codec(index = 21)] ImOnline(runtime_types::pallet_im_online::pallet::Call), #[codec(index = 26)] Identity(runtime_types::pallet_identity::pallet::Call), #[codec(index = 27)] Society(runtime_types::pallet_society::pallet::Call), #[codec(index = 28)] Recovery(runtime_types::pallet_recovery::pallet::Call), #[codec(index = 29)] Vesting(runtime_types::pallet_vesting::pallet::Call), #[codec(index = 30)] Scheduler(runtime_types::pallet_scheduler::pallet::Call), #[codec(index = 31)] Preimage(runtime_types::pallet_preimage::pallet::Call), #[codec(index = 32)] Proxy(runtime_types::pallet_proxy::pallet::Call), #[codec(index = 33)] Multisig(runtime_types::pallet_multisig::pallet::Call), #[codec(index = 34)] Bounties(runtime_types::pallet_bounties::pallet::Call), #[codec(index = 35)] Tips(runtime_types::pallet_tips::pallet::Call), #[codec(index = 36)] Assets(runtime_types::pallet_assets::pallet::Call), #[codec(index = 38)] Lottery(runtime_types::pallet_lottery::pallet::Call), #[codec(index = 39)] Nis(runtime_types::pallet_nis::pallet::Call), #[codec(index = 40)] Uniques(runtime_types::pallet_uniques::pallet::Call), #[codec(index = 41)] Nfts(runtime_types::pallet_nfts::pallet::Call), #[codec(index = 42)] TransactionStorage( runtime_types::pallet_transaction_storage::pallet::Call, ), #[codec(index = 43)] VoterList(runtime_types::pallet_bags_list::pallet::Call), #[codec(index = 44)] StateTrieMigration( runtime_types::pallet_state_trie_migration::pallet::Call, ), #[codec(index = 45)] ChildBounties(runtime_types::pallet_child_bounties::pallet::Call), #[codec(index = 46)] Referenda(runtime_types::pallet_referenda::pallet::Call), #[codec(index = 47)] Remark(runtime_types::pallet_remark::pallet::Call), #[codec(index = 48)] RootTesting(runtime_types::pallet_root_testing::pallet::Call), #[codec(index = 49)] ConvictionVoting(runtime_types::pallet_conviction_voting::pallet::Call), #[codec(index = 50)] Whitelist(runtime_types::pallet_whitelist::pallet::Call), #[codec(index = 51)] AllianceMotion(runtime_types::pallet_collective::pallet::Call), #[codec(index = 52)] Alliance(runtime_types::pallet_alliance::pallet::Call), #[codec(index = 53)] NominationPools(runtime_types::pallet_nomination_pools::pallet::Call), #[codec(index = 54)] RankedPolls(runtime_types::pallet_referenda::pallet::Call), #[codec(index = 55)] RankedCollective(runtime_types::pallet_ranked_collective::pallet::Call), #[codec(index = 56)] FastUnstake(runtime_types::pallet_fast_unstake::pallet::Call), #[codec(index = 57)] MessageQueue(runtime_types::pallet_message_queue::pallet::Call), #[codec(index = 58)] Pov(runtime_types::frame_benchmarking_pallet_pov::pallet::Call), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum RuntimeEvent { #[codec(index = 0)] System(runtime_types::frame_system::pallet::Event), #[codec(index = 1)] Utility(runtime_types::pallet_utility::pallet::Event), #[codec(index = 5)] Indices(runtime_types::pallet_indices::pallet::Event), #[codec(index = 6)] Balances(runtime_types::pallet_balances::pallet::Event), #[codec(index = 7)] TransactionPayment( runtime_types::pallet_transaction_payment::pallet::Event, ), #[codec(index = 8)] AssetTxPayment(runtime_types::pallet_asset_tx_payment::pallet::Event), #[codec(index = 9)] ElectionProviderMultiPhase( runtime_types::pallet_election_provider_multi_phase::pallet::Event, ), #[codec(index = 10)] Staking(runtime_types::pallet_staking::pallet::pallet::Event), #[codec(index = 11)] Session(runtime_types::pallet_session::pallet::Event), #[codec(index = 12)] Democracy(runtime_types::pallet_democracy::pallet::Event), #[codec(index = 13)] Council(runtime_types::pallet_collective::pallet::Event), #[codec(index = 14)] TechnicalCommittee(runtime_types::pallet_collective::pallet::Event), #[codec(index = 15)] Elections(runtime_types::pallet_elections_phragmen::pallet::Event), #[codec(index = 16)] TechnicalMembership(runtime_types::pallet_membership::pallet::Event), #[codec(index = 17)] Grandpa(runtime_types::pallet_grandpa::pallet::Event), #[codec(index = 18)] Treasury(runtime_types::pallet_treasury::pallet::Event), #[codec(index = 19)] Contracts(runtime_types::pallet_contracts::pallet::Event), #[codec(index = 20)] Sudo(runtime_types::pallet_sudo::pallet::Event), #[codec(index = 21)] ImOnline(runtime_types::pallet_im_online::pallet::Event), #[codec(index = 23)] Offences(runtime_types::pallet_offences::pallet::Event), #[codec(index = 26)] Identity(runtime_types::pallet_identity::pallet::Event), #[codec(index = 27)] Society(runtime_types::pallet_society::pallet::Event), #[codec(index = 28)] Recovery(runtime_types::pallet_recovery::pallet::Event), #[codec(index = 29)] Vesting(runtime_types::pallet_vesting::pallet::Event), #[codec(index = 30)] Scheduler(runtime_types::pallet_scheduler::pallet::Event), #[codec(index = 31)] Preimage(runtime_types::pallet_preimage::pallet::Event), #[codec(index = 32)] Proxy(runtime_types::pallet_proxy::pallet::Event), #[codec(index = 33)] Multisig(runtime_types::pallet_multisig::pallet::Event), #[codec(index = 34)] Bounties(runtime_types::pallet_bounties::pallet::Event), #[codec(index = 35)] Tips(runtime_types::pallet_tips::pallet::Event), #[codec(index = 36)] Assets(runtime_types::pallet_assets::pallet::Event), #[codec(index = 38)] Lottery(runtime_types::pallet_lottery::pallet::Event), #[codec(index = 39)] Nis(runtime_types::pallet_nis::pallet::Event), #[codec(index = 40)] Uniques(runtime_types::pallet_uniques::pallet::Event), #[codec(index = 41)] Nfts(runtime_types::pallet_nfts::pallet::Event), #[codec(index = 42)] TransactionStorage( runtime_types::pallet_transaction_storage::pallet::Event, ), #[codec(index = 43)] VoterList(runtime_types::pallet_bags_list::pallet::Event), #[codec(index = 44)] StateTrieMigration( runtime_types::pallet_state_trie_migration::pallet::Event, ), #[codec(index = 45)] ChildBounties(runtime_types::pallet_child_bounties::pallet::Event), #[codec(index = 46)] Referenda(runtime_types::pallet_referenda::pallet::Event), #[codec(index = 47)] Remark(runtime_types::pallet_remark::pallet::Event), #[codec(index = 49)] ConvictionVoting(runtime_types::pallet_conviction_voting::pallet::Event), #[codec(index = 50)] Whitelist(runtime_types::pallet_whitelist::pallet::Event), #[codec(index = 51)] AllianceMotion(runtime_types::pallet_collective::pallet::Event), #[codec(index = 52)] Alliance(runtime_types::pallet_alliance::pallet::Event), #[codec(index = 53)] NominationPools(runtime_types::pallet_nomination_pools::pallet::Event), #[codec(index = 54)] RankedPolls(runtime_types::pallet_referenda::pallet::Event), #[codec(index = 55)] RankedCollective(runtime_types::pallet_ranked_collective::pallet::Event), #[codec(index = 56)] FastUnstake(runtime_types::pallet_fast_unstake::pallet::Event), #[codec(index = 57)] MessageQueue(runtime_types::pallet_message_queue::pallet::Event), #[codec(index = 58)] Pov(runtime_types::frame_benchmarking_pallet_pov::pallet::Event), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SessionKeys { pub grandpa: runtime_types::sp_finality_grandpa::app::Public, pub babe: runtime_types::sp_consensus_babe::app::Public, pub im_online: runtime_types::pallet_im_online::sr25519::app_sr25519::Public, pub authority_discovery: runtime_types::sp_authority_discovery::app::Public, } } pub mod pallet_alliance { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Add a new proposal to be voted on."] #[doc = ""] #[doc = "Must be called by a Fellow."] propose { #[codec(compact)] threshold: ::core::primitive::u32, proposal: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, #[codec(compact)] length_bound: ::core::primitive::u32, }, #[codec(index = 1)] #[doc = "Add an aye or nay vote for the sender to the given proposal."] #[doc = ""] #[doc = "Must be called by a Fellow."] vote { proposal: ::subxt::utils::H256, #[codec(compact)] index: ::core::primitive::u32, approve: ::core::primitive::bool, }, #[codec(index = 2)] #[doc = "Close a vote that is either approved, disapproved, or whose voting period has ended."] #[doc = ""] #[doc = "Must be called by a Fellow."] close_old_weight { proposal_hash: ::subxt::utils::H256, #[codec(compact)] index: ::core::primitive::u32, #[codec(compact)] proposal_weight_bound: runtime_types::sp_weights::OldWeight, #[codec(compact)] length_bound: ::core::primitive::u32, }, #[codec(index = 3)] #[doc = "Initialize the Alliance, onboard fellows and allies."] #[doc = ""] #[doc = "The Alliance must be empty, and the call must provide some founding members."] #[doc = ""] #[doc = "Must be called by the Root origin."] init_members { fellows: ::std::vec::Vec<::subxt::utils::AccountId32>, allies: ::std::vec::Vec<::subxt::utils::AccountId32>, }, #[codec(index = 4)] #[doc = "Disband the Alliance, remove all active members and unreserve deposits."] #[doc = ""] #[doc = "Witness data must be set."] disband { witness: runtime_types::pallet_alliance::types::DisbandWitness, }, #[codec(index = 5)] #[doc = "Set a new IPFS CID to the alliance rule."] set_rule { rule: runtime_types::pallet_alliance::types::Cid, }, #[codec(index = 6)] #[doc = "Make an announcement of a new IPFS CID about alliance issues."] announce { announcement: runtime_types::pallet_alliance::types::Cid, }, #[codec(index = 7)] #[doc = "Remove an announcement."] remove_announcement { announcement: runtime_types::pallet_alliance::types::Cid, }, #[codec(index = 8)] #[doc = "Submit oneself for candidacy. A fixed deposit is reserved."] join_alliance, #[codec(index = 9)] #[doc = "A Fellow can nominate someone to join the alliance as an Ally. There is no deposit"] #[doc = "required from the nominator or nominee."] nominate_ally { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 10)] #[doc = "Elevate an Ally to Fellow."] elevate_ally { ally: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 11)] #[doc = "As a member, give a retirement notice and start a retirement period required to pass in"] #[doc = "order to retire."] give_retirement_notice, #[codec(index = 12)] #[doc = "As a member, retire from the Alliance and unreserve the deposit."] #[doc = ""] #[doc = "This can only be done once you have called `give_retirement_notice` and the"] #[doc = "`RetirementPeriod` has passed."] retire, #[codec(index = 13)] #[doc = "Kick a member from the Alliance and slash its deposit."] kick_member { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 14)] #[doc = "Add accounts or websites to the list of unscrupulous items."] add_unscrupulous_items { items: ::std::vec::Vec< runtime_types::pallet_alliance::UnscrupulousItem< ::subxt::utils::AccountId32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, }, #[codec(index = 15)] #[doc = "Deem some items no longer unscrupulous."] remove_unscrupulous_items { items: ::std::vec::Vec< runtime_types::pallet_alliance::UnscrupulousItem< ::subxt::utils::AccountId32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, }, #[codec(index = 16)] #[doc = "Close a vote that is either approved, disapproved, or whose voting period has ended."] #[doc = ""] #[doc = "Must be called by a Fellow."] close { proposal_hash: ::subxt::utils::H256, #[codec(compact)] index: ::core::primitive::u32, proposal_weight_bound: runtime_types::sp_weights::weight_v2::Weight, #[codec(compact)] length_bound: ::core::primitive::u32, }, #[codec(index = 17)] #[doc = "Abdicate one's position as a voting member and just be an Ally. May be used by Fellows"] #[doc = "who do not want to leave the Alliance but do not have the capacity to participate"] #[doc = "operationally for some time."] abdicate_fellow_status, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "The Alliance has not been initialized yet, therefore accounts cannot join it."] AllianceNotYetInitialized, #[codec(index = 1)] #[doc = "The Alliance has been initialized, therefore cannot be initialized again."] AllianceAlreadyInitialized, #[codec(index = 2)] #[doc = "Account is already a member."] AlreadyMember, #[codec(index = 3)] #[doc = "Account is not a member."] NotMember, #[codec(index = 4)] #[doc = "Account is not an ally."] NotAlly, #[codec(index = 5)] #[doc = "Account does not have voting rights."] NoVotingRights, #[codec(index = 6)] #[doc = "Account is already an elevated (fellow) member."] AlreadyElevated, #[codec(index = 7)] #[doc = "Item is already listed as unscrupulous."] AlreadyUnscrupulous, #[codec(index = 8)] #[doc = "Account has been deemed unscrupulous by the Alliance and is not welcome to join or be"] #[doc = "nominated."] AccountNonGrata, #[codec(index = 9)] #[doc = "Item has not been deemed unscrupulous."] NotListedAsUnscrupulous, #[codec(index = 10)] #[doc = "The number of unscrupulous items exceeds `MaxUnscrupulousItems`."] TooManyUnscrupulousItems, #[codec(index = 11)] #[doc = "Length of website URL exceeds `MaxWebsiteUrlLength`."] TooLongWebsiteUrl, #[codec(index = 12)] #[doc = "Balance is insufficient for the required deposit."] InsufficientFunds, #[codec(index = 13)] #[doc = "The account's identity does not have display field and website field."] WithoutIdentityDisplayAndWebsite, #[codec(index = 14)] #[doc = "The account's identity has no good judgement."] WithoutGoodIdentityJudgement, #[codec(index = 15)] #[doc = "The proposal hash is not found."] MissingProposalHash, #[codec(index = 16)] #[doc = "The announcement is not found."] MissingAnnouncement, #[codec(index = 17)] #[doc = "Number of members exceeds `MaxMembersCount`."] TooManyMembers, #[codec(index = 18)] #[doc = "Number of announcements exceeds `MaxAnnouncementsCount`."] TooManyAnnouncements, #[codec(index = 19)] #[doc = "Invalid witness data given."] BadWitness, #[codec(index = 20)] #[doc = "Account already gave retirement notice"] AlreadyRetiring, #[codec(index = 21)] #[doc = "Account did not give a retirement notice required to retire."] RetirementNoticeNotGiven, #[codec(index = 22)] #[doc = "Retirement period has not passed."] RetirementPeriodNotPassed, #[codec(index = 23)] #[doc = "Fellows must be provided to initialize the Alliance."] FellowsMissing, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A new rule has been set."] NewRuleSet { rule: runtime_types::pallet_alliance::types::Cid, }, #[codec(index = 1)] #[doc = "A new announcement has been proposed."] Announced { announcement: runtime_types::pallet_alliance::types::Cid, }, #[codec(index = 2)] #[doc = "An on-chain announcement has been removed."] AnnouncementRemoved { announcement: runtime_types::pallet_alliance::types::Cid, }, #[codec(index = 3)] #[doc = "Some accounts have been initialized as members (fellows/allies)."] MembersInitialized { fellows: ::std::vec::Vec<::subxt::utils::AccountId32>, allies: ::std::vec::Vec<::subxt::utils::AccountId32>, }, #[codec(index = 4)] #[doc = "An account has been added as an Ally and reserved its deposit."] NewAllyJoined { ally: ::subxt::utils::AccountId32, nominator: ::core::option::Option<::subxt::utils::AccountId32>, reserved: ::core::option::Option<::core::primitive::u128>, }, #[codec(index = 5)] #[doc = "An ally has been elevated to Fellow."] AllyElevated { ally: ::subxt::utils::AccountId32 }, #[codec(index = 6)] #[doc = "A member gave retirement notice and their retirement period started."] MemberRetirementPeriodStarted { member: ::subxt::utils::AccountId32 }, #[codec(index = 7)] #[doc = "A member has retired with its deposit unreserved."] MemberRetired { member: ::subxt::utils::AccountId32, unreserved: ::core::option::Option<::core::primitive::u128>, }, #[codec(index = 8)] #[doc = "A member has been kicked out with its deposit slashed."] MemberKicked { member: ::subxt::utils::AccountId32, slashed: ::core::option::Option<::core::primitive::u128>, }, #[codec(index = 9)] #[doc = "Accounts or websites have been added into the list of unscrupulous items."] UnscrupulousItemAdded { items: ::std::vec::Vec< runtime_types::pallet_alliance::UnscrupulousItem< ::subxt::utils::AccountId32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, }, #[codec(index = 10)] #[doc = "Accounts or websites have been removed from the list of unscrupulous items."] UnscrupulousItemRemoved { items: ::std::vec::Vec< runtime_types::pallet_alliance::UnscrupulousItem< ::subxt::utils::AccountId32, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, >, >, }, #[codec(index = 11)] #[doc = "Alliance disbanded. Includes number deleted members and unreserved deposits."] AllianceDisbanded { fellow_members: ::core::primitive::u32, ally_members: ::core::primitive::u32, unreserved: ::core::primitive::u32, }, #[codec(index = 12)] #[doc = "A Fellow abdicated their voting rights. They are now an Ally."] FellowAbdicated { fellow: ::subxt::utils::AccountId32 }, } } pub mod types { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Cid { pub version: runtime_types::pallet_alliance::types::Version, pub codec: ::core::primitive::u64, pub hash: runtime_types::pallet_alliance::types::Multihash, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DisbandWitness { #[codec(compact)] pub fellow_members: ::core::primitive::u32, #[codec(compact)] pub ally_members: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Multihash { pub code: ::core::primitive::u64, pub digest: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Version { #[codec(index = 0)] V0, #[codec(index = 1)] V1, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum MemberRole { #[codec(index = 0)] Fellow, #[codec(index = 1)] Ally, #[codec(index = 2)] Retiring, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum UnscrupulousItem<_0, _1> { #[codec(index = 0)] AccountId(_0), #[codec(index = 1)] Website(_1), } } pub mod pallet_asset_tx_payment { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A transaction fee `actual_fee`, of which `tip` was added to the minimum inclusion fee,"] #[doc = "has been paid by `who` in an asset `asset_id`."] AssetTxFeePaid { who: ::subxt::utils::AccountId32, actual_fee: ::core::primitive::u128, tip: ::core::primitive::u128, asset_id: ::core::option::Option<::core::primitive::u32>, }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ChargeAssetTxPayment { #[codec(compact)] pub tip: ::core::primitive::u128, pub asset_id: ::core::option::Option<::core::primitive::u32>, } } pub mod pallet_assets { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Issue a new class of fungible assets from a public origin."] #[doc = ""] #[doc = "This new asset class has no assets initially and its owner is the origin."] #[doc = ""] #[doc = "The origin must conform to the configured `CreateOrigin` and have sufficient funds free."] #[doc = ""] #[doc = "Funds of sender are reserved by `AssetDeposit`."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `id`: The identifier of the new asset. This must not be currently in use to identify"] #[doc = "an existing asset."] #[doc = "- `admin`: The admin of this class of assets. The admin is the initial address of each"] #[doc = "member of the asset class's admin team."] #[doc = "- `min_balance`: The minimum balance of this new asset that any single account must"] #[doc = "have. If an account's balance is reduced below this, then it collapses to zero."] #[doc = ""] #[doc = "Emits `Created` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] create { #[codec(compact)] id: ::core::primitive::u32, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, min_balance: ::core::primitive::u128, }, #[codec(index = 1)] #[doc = "Issue a new class of fungible assets from a privileged origin."] #[doc = ""] #[doc = "This new asset class has no assets initially."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin`."] #[doc = ""] #[doc = "Unlike `create`, no funds are reserved."] #[doc = ""] #[doc = "- `id`: The identifier of the new asset. This must not be currently in use to identify"] #[doc = "an existing asset."] #[doc = "- `owner`: The owner of this class of assets. The owner has full superuser permissions"] #[doc = "over this asset, but may later change and configure the permissions using"] #[doc = "`transfer_ownership` and `set_team`."] #[doc = "- `min_balance`: The minimum balance of this new asset that any single account must"] #[doc = "have. If an account's balance is reduced below this, then it collapses to zero."] #[doc = ""] #[doc = "Emits `ForceCreated` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] force_create { #[codec(compact)] id: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, is_sufficient: ::core::primitive::bool, #[codec(compact)] min_balance: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "Start the process of destroying a fungible asset class."] #[doc = ""] #[doc = "`start_destroy` is the first in a series of extrinsics that should be called, to allow"] #[doc = "destruction of an asset class."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin` or must be `Signed` by the asset's `owner`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be destroyed. This must identify an existing"] #[doc = " asset."] #[doc = ""] #[doc = "The asset class must be frozen before calling `start_destroy`."] start_destroy { #[codec(compact)] id: ::core::primitive::u32, }, #[codec(index = 3)] #[doc = "Destroy all accounts associated with a given asset."] #[doc = ""] #[doc = "`destroy_accounts` should only be called after `start_destroy` has been called, and the"] #[doc = "asset is in a `Destroying` state."] #[doc = ""] #[doc = "Due to weight restrictions, this function may need to be called multiple times to fully"] #[doc = "destroy all accounts. It will destroy `RemoveItemsLimit` accounts at a time."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be destroyed. This must identify an existing"] #[doc = " asset."] #[doc = ""] #[doc = "Each call emits the `Event::DestroyedAccounts` event."] destroy_accounts { #[codec(compact)] id: ::core::primitive::u32, }, #[codec(index = 4)] #[doc = "Destroy all approvals associated with a given asset up to the max (T::RemoveItemsLimit)."] #[doc = ""] #[doc = "`destroy_approvals` should only be called after `start_destroy` has been called, and the"] #[doc = "asset is in a `Destroying` state."] #[doc = ""] #[doc = "Due to weight restrictions, this function may need to be called multiple times to fully"] #[doc = "destroy all approvals. It will destroy `RemoveItemsLimit` approvals at a time."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be destroyed. This must identify an existing"] #[doc = " asset."] #[doc = ""] #[doc = "Each call emits the `Event::DestroyedApprovals` event."] destroy_approvals { #[codec(compact)] id: ::core::primitive::u32, }, #[codec(index = 5)] #[doc = "Complete destroying asset and unreserve currency."] #[doc = ""] #[doc = "`finish_destroy` should only be called after `start_destroy` has been called, and the"] #[doc = "asset is in a `Destroying` state. All accounts or approvals should be destroyed before"] #[doc = "hand."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be destroyed. This must identify an existing"] #[doc = " asset."] #[doc = ""] #[doc = "Each successful call emits the `Event::Destroyed` event."] finish_destroy { #[codec(compact)] id: ::core::primitive::u32, }, #[codec(index = 6)] #[doc = "Mint assets of a particular class."] #[doc = ""] #[doc = "The origin must be Signed and the sender must be the Issuer of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to have some amount minted."] #[doc = "- `beneficiary`: The account to be credited with the minted assets."] #[doc = "- `amount`: The amount of the asset to be minted."] #[doc = ""] #[doc = "Emits `Issued` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: Pre-existing balance of `beneficiary`; Account pre-existence of `beneficiary`."] mint { #[codec(compact)] id: ::core::primitive::u32, beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] amount: ::core::primitive::u128, }, #[codec(index = 7)] #[doc = "Reduce the balance of `who` by as much as possible up to `amount` assets of `id`."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Manager of the asset `id`."] #[doc = ""] #[doc = "Bails with `NoAccount` if the `who` is already dead."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to have some amount burned."] #[doc = "- `who`: The account to be debited from."] #[doc = "- `amount`: The maximum amount by which `who`'s balance should be reduced."] #[doc = ""] #[doc = "Emits `Burned` with the actual amount burned. If this takes the balance to below the"] #[doc = "minimum for the asset, then the amount burned is increased to take it to zero."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: Post-existence of `who`; Pre & post Zombie-status of `who`."] burn { #[codec(compact)] id: ::core::primitive::u32, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] amount: ::core::primitive::u128, }, #[codec(index = 8)] #[doc = "Move some assets from the sender account to another."] #[doc = ""] #[doc = "Origin must be Signed."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to have some amount transferred."] #[doc = "- `target`: The account to be credited."] #[doc = "- `amount`: The amount by which the sender's balance of assets should be reduced and"] #[doc = "`target`'s balance increased. The amount actually transferred may be slightly greater in"] #[doc = "the case that the transfer would otherwise take the sender balance above zero but below"] #[doc = "the minimum balance. Must be greater than zero."] #[doc = ""] #[doc = "Emits `Transferred` with the actual amount transferred. If this takes the source balance"] #[doc = "to below the minimum for the asset, then the amount transferred is increased to take it"] #[doc = "to zero."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: Pre-existence of `target`; Post-existence of sender; Account pre-existence of"] #[doc = "`target`."] transfer { #[codec(compact)] id: ::core::primitive::u32, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] amount: ::core::primitive::u128, }, #[codec(index = 9)] #[doc = "Move some assets from the sender account to another, keeping the sender account alive."] #[doc = ""] #[doc = "Origin must be Signed."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to have some amount transferred."] #[doc = "- `target`: The account to be credited."] #[doc = "- `amount`: The amount by which the sender's balance of assets should be reduced and"] #[doc = "`target`'s balance increased. The amount actually transferred may be slightly greater in"] #[doc = "the case that the transfer would otherwise take the sender balance above zero but below"] #[doc = "the minimum balance. Must be greater than zero."] #[doc = ""] #[doc = "Emits `Transferred` with the actual amount transferred. If this takes the source balance"] #[doc = "to below the minimum for the asset, then the amount transferred is increased to take it"] #[doc = "to zero."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: Pre-existence of `target`; Post-existence of sender; Account pre-existence of"] #[doc = "`target`."] transfer_keep_alive { #[codec(compact)] id: ::core::primitive::u32, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] amount: ::core::primitive::u128, }, #[codec(index = 10)] #[doc = "Move some assets from one account to another."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Admin of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to have some amount transferred."] #[doc = "- `source`: The account to be debited."] #[doc = "- `dest`: The account to be credited."] #[doc = "- `amount`: The amount by which the `source`'s balance of assets should be reduced and"] #[doc = "`dest`'s balance increased. The amount actually transferred may be slightly greater in"] #[doc = "the case that the transfer would otherwise take the `source` balance above zero but"] #[doc = "below the minimum balance. Must be greater than zero."] #[doc = ""] #[doc = "Emits `Transferred` with the actual amount transferred. If this takes the source balance"] #[doc = "to below the minimum for the asset, then the amount transferred is increased to take it"] #[doc = "to zero."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: Pre-existence of `dest`; Post-existence of `source`; Account pre-existence of"] #[doc = "`dest`."] force_transfer { #[codec(compact)] id: ::core::primitive::u32, source: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] amount: ::core::primitive::u128, }, #[codec(index = 11)] #[doc = "Disallow further unprivileged transfers from an account."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be frozen."] #[doc = "- `who`: The account to be frozen."] #[doc = ""] #[doc = "Emits `Frozen`."] #[doc = ""] #[doc = "Weight: `O(1)`"] freeze { #[codec(compact)] id: ::core::primitive::u32, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 12)] #[doc = "Allow unprivileged transfers from an account again."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Admin of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be frozen."] #[doc = "- `who`: The account to be unfrozen."] #[doc = ""] #[doc = "Emits `Thawed`."] #[doc = ""] #[doc = "Weight: `O(1)`"] thaw { #[codec(compact)] id: ::core::primitive::u32, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 13)] #[doc = "Disallow further unprivileged transfers for the asset class."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be frozen."] #[doc = ""] #[doc = "Emits `Frozen`."] #[doc = ""] #[doc = "Weight: `O(1)`"] freeze_asset { #[codec(compact)] id: ::core::primitive::u32, }, #[codec(index = 14)] #[doc = "Allow unprivileged transfers for the asset again."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Admin of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be thawed."] #[doc = ""] #[doc = "Emits `Thawed`."] #[doc = ""] #[doc = "Weight: `O(1)`"] thaw_asset { #[codec(compact)] id: ::core::primitive::u32, }, #[codec(index = 15)] #[doc = "Change the Owner of an asset."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `owner`: The new Owner of this asset."] #[doc = ""] #[doc = "Emits `OwnerChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] transfer_ownership { #[codec(compact)] id: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 16)] #[doc = "Change the Issuer, Admin and Freezer of an asset."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the asset `id`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to be frozen."] #[doc = "- `issuer`: The new Issuer of this asset."] #[doc = "- `admin`: The new Admin of this asset."] #[doc = "- `freezer`: The new Freezer of this asset."] #[doc = ""] #[doc = "Emits `TeamChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] set_team { #[codec(compact)] id: ::core::primitive::u32, issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 17)] #[doc = "Set the metadata for an asset."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the asset `id`."] #[doc = ""] #[doc = "Funds of sender are reserved according to the formula:"] #[doc = "`MetadataDepositBase + MetadataDepositPerByte * (name.len + symbol.len)` taking into"] #[doc = "account any already reserved funds."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to update."] #[doc = "- `name`: The user friendly name of this asset. Limited in length by `StringLimit`."] #[doc = "- `symbol`: The exchange symbol for this asset. Limited in length by `StringLimit`."] #[doc = "- `decimals`: The number of decimals this asset uses to represent one unit."] #[doc = ""] #[doc = "Emits `MetadataSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] set_metadata { #[codec(compact)] id: ::core::primitive::u32, name: ::std::vec::Vec<::core::primitive::u8>, symbol: ::std::vec::Vec<::core::primitive::u8>, decimals: ::core::primitive::u8, }, #[codec(index = 18)] #[doc = "Clear the metadata for an asset."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the asset `id`."] #[doc = ""] #[doc = "Any deposit is freed for the asset owner."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to clear."] #[doc = ""] #[doc = "Emits `MetadataCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] clear_metadata { #[codec(compact)] id: ::core::primitive::u32, }, #[codec(index = 19)] #[doc = "Force the metadata for an asset to some value."] #[doc = ""] #[doc = "Origin must be ForceOrigin."] #[doc = ""] #[doc = "Any deposit is left alone."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to update."] #[doc = "- `name`: The user friendly name of this asset. Limited in length by `StringLimit`."] #[doc = "- `symbol`: The exchange symbol for this asset. Limited in length by `StringLimit`."] #[doc = "- `decimals`: The number of decimals this asset uses to represent one unit."] #[doc = ""] #[doc = "Emits `MetadataSet`."] #[doc = ""] #[doc = "Weight: `O(N + S)` where N and S are the length of the name and symbol respectively."] force_set_metadata { #[codec(compact)] id: ::core::primitive::u32, name: ::std::vec::Vec<::core::primitive::u8>, symbol: ::std::vec::Vec<::core::primitive::u8>, decimals: ::core::primitive::u8, is_frozen: ::core::primitive::bool, }, #[codec(index = 20)] #[doc = "Clear the metadata for an asset."] #[doc = ""] #[doc = "Origin must be ForceOrigin."] #[doc = ""] #[doc = "Any deposit is returned."] #[doc = ""] #[doc = "- `id`: The identifier of the asset to clear."] #[doc = ""] #[doc = "Emits `MetadataCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] force_clear_metadata { #[codec(compact)] id: ::core::primitive::u32, }, #[codec(index = 21)] #[doc = "Alter the attributes of a given asset."] #[doc = ""] #[doc = "Origin must be `ForceOrigin`."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `owner`: The new Owner of this asset."] #[doc = "- `issuer`: The new Issuer of this asset."] #[doc = "- `admin`: The new Admin of this asset."] #[doc = "- `freezer`: The new Freezer of this asset."] #[doc = "- `min_balance`: The minimum balance of this new asset that any single account must"] #[doc = "have. If an account's balance is reduced below this, then it collapses to zero."] #[doc = "- `is_sufficient`: Whether a non-zero balance of this asset is deposit of sufficient"] #[doc = "value to account for the state bloat associated with its balance storage. If set to"] #[doc = "`true`, then non-zero balances may be stored without a `consumer` reference (and thus"] #[doc = "an ED in the Balances pallet or whatever else is used to control user-account state"] #[doc = "growth)."] #[doc = "- `is_frozen`: Whether this asset class is frozen except for permissioned/admin"] #[doc = "instructions."] #[doc = ""] #[doc = "Emits `AssetStatusChanged` with the identity of the asset."] #[doc = ""] #[doc = "Weight: `O(1)`"] force_asset_status { #[codec(compact)] id: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] min_balance: ::core::primitive::u128, is_sufficient: ::core::primitive::bool, is_frozen: ::core::primitive::bool, }, #[codec(index = 22)] #[doc = "Approve an amount of asset for transfer by a delegated third-party account."] #[doc = ""] #[doc = "Origin must be Signed."] #[doc = ""] #[doc = "Ensures that `ApprovalDeposit` worth of `Currency` is reserved from signing account"] #[doc = "for the purpose of holding the approval. If some non-zero amount of assets is already"] #[doc = "approved from signing account to `delegate`, then it is topped up or unreserved to"] #[doc = "meet the right value."] #[doc = ""] #[doc = "NOTE: The signing account does not need to own `amount` of assets at the point of"] #[doc = "making this call."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `delegate`: The account to delegate permission to transfer asset."] #[doc = "- `amount`: The amount of asset that may be transferred by `delegate`. If there is"] #[doc = "already an approval in place, then this acts additively."] #[doc = ""] #[doc = "Emits `ApprovedTransfer` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] approve_transfer { #[codec(compact)] id: ::core::primitive::u32, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] amount: ::core::primitive::u128, }, #[codec(index = 23)] #[doc = "Cancel all of some asset approved for delegated transfer by a third-party account."] #[doc = ""] #[doc = "Origin must be Signed and there must be an approval in place between signer and"] #[doc = "`delegate`."] #[doc = ""] #[doc = "Unreserves any deposit previously reserved by `approve_transfer` for the approval."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `delegate`: The account delegated permission to transfer asset."] #[doc = ""] #[doc = "Emits `ApprovalCancelled` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] cancel_approval { #[codec(compact)] id: ::core::primitive::u32, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 24)] #[doc = "Cancel all of some asset approved for delegated transfer by a third-party account."] #[doc = ""] #[doc = "Origin must be either ForceOrigin or Signed origin with the signer being the Admin"] #[doc = "account of the asset `id`."] #[doc = ""] #[doc = "Unreserves any deposit previously reserved by `approve_transfer` for the approval."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `delegate`: The account delegated permission to transfer asset."] #[doc = ""] #[doc = "Emits `ApprovalCancelled` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] force_cancel_approval { #[codec(compact)] id: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 25)] #[doc = "Transfer some asset balance from a previously delegated account to some third-party"] #[doc = "account."] #[doc = ""] #[doc = "Origin must be Signed and there must be an approval in place by the `owner` to the"] #[doc = "signer."] #[doc = ""] #[doc = "If the entire amount approved for transfer is transferred, then any deposit previously"] #[doc = "reserved by `approve_transfer` is unreserved."] #[doc = ""] #[doc = "- `id`: The identifier of the asset."] #[doc = "- `owner`: The account which previously approved for a transfer of at least `amount` and"] #[doc = "from which the asset balance will be withdrawn."] #[doc = "- `destination`: The account to which the asset balance of `amount` will be transferred."] #[doc = "- `amount`: The amount of assets to transfer."] #[doc = ""] #[doc = "Emits `TransferredApproved` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] transfer_approved { #[codec(compact)] id: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, destination: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] amount: ::core::primitive::u128, }, #[codec(index = 26)] #[doc = "Create an asset account for non-provider assets."] #[doc = ""] #[doc = "A deposit will be taken from the signer account."] #[doc = ""] #[doc = "- `origin`: Must be Signed; the signer account must have sufficient funds for a deposit"] #[doc = " to be taken."] #[doc = "- `id`: The identifier of the asset for the account to be created."] #[doc = ""] #[doc = "Emits `Touched` event when successful."] touch { #[codec(compact)] id: ::core::primitive::u32, }, #[codec(index = 27)] #[doc = "Return the deposit (if any) of an asset account."] #[doc = ""] #[doc = "The origin must be Signed."] #[doc = ""] #[doc = "- `id`: The identifier of the asset for the account to be created."] #[doc = "- `allow_burn`: If `true` then assets may be destroyed in order to complete the refund."] #[doc = ""] #[doc = "Emits `Refunded` event when successful."] refund { #[codec(compact)] id: ::core::primitive::u32, allow_burn: ::core::primitive::bool, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Account balance must be greater than or equal to the transfer amount."] BalanceLow, #[codec(index = 1)] #[doc = "The account to alter does not exist."] NoAccount, #[codec(index = 2)] #[doc = "The signing account has no permission to do the operation."] NoPermission, #[codec(index = 3)] #[doc = "The given asset ID is unknown."] Unknown, #[codec(index = 4)] #[doc = "The origin account is frozen."] Frozen, #[codec(index = 5)] #[doc = "The asset ID is already taken."] InUse, #[codec(index = 6)] #[doc = "Invalid witness data given."] BadWitness, #[codec(index = 7)] #[doc = "Minimum balance should be non-zero."] MinBalanceZero, #[codec(index = 8)] #[doc = "Unable to increment the consumer reference counters on the account. Either no provider"] #[doc = "reference exists to allow a non-zero balance of a non-self-sufficient asset, or the"] #[doc = "maximum number of consumers has been reached."] NoProvider, #[codec(index = 9)] #[doc = "Invalid metadata given."] BadMetadata, #[codec(index = 10)] #[doc = "No approval exists that would allow the transfer."] Unapproved, #[codec(index = 11)] #[doc = "The source account would not survive the transfer and it needs to stay alive."] WouldDie, #[codec(index = 12)] #[doc = "The asset-account already exists."] AlreadyExists, #[codec(index = 13)] #[doc = "The asset-account doesn't have an associated deposit."] NoDeposit, #[codec(index = 14)] #[doc = "The operation would result in funds being burned."] WouldBurn, #[codec(index = 15)] #[doc = "The asset is a live asset and is actively being used. Usually emit for operations such"] #[doc = "as `start_destroy` which require the asset to be in a destroying state."] LiveAsset, #[codec(index = 16)] #[doc = "The asset is not live, and likely being destroyed."] AssetNotLive, #[codec(index = 17)] #[doc = "The asset status is not the expected status."] IncorrectStatus, #[codec(index = 18)] #[doc = "The asset should be frozen before the given operation."] NotFrozen, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "Some asset class was created."] Created { asset_id: ::core::primitive::u32, creator: ::subxt::utils::AccountId32, owner: ::subxt::utils::AccountId32, }, #[codec(index = 1)] #[doc = "Some assets were issued."] Issued { asset_id: ::core::primitive::u32, owner: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "Some assets were transferred."] Transferred { asset_id: ::core::primitive::u32, from: ::subxt::utils::AccountId32, to: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "Some assets were destroyed."] Burned { asset_id: ::core::primitive::u32, owner: ::subxt::utils::AccountId32, balance: ::core::primitive::u128, }, #[codec(index = 4)] #[doc = "The management team changed."] TeamChanged { asset_id: ::core::primitive::u32, issuer: ::subxt::utils::AccountId32, admin: ::subxt::utils::AccountId32, freezer: ::subxt::utils::AccountId32, }, #[codec(index = 5)] #[doc = "The owner changed."] OwnerChanged { asset_id: ::core::primitive::u32, owner: ::subxt::utils::AccountId32, }, #[codec(index = 6)] #[doc = "Some account `who` was frozen."] Frozen { asset_id: ::core::primitive::u32, who: ::subxt::utils::AccountId32, }, #[codec(index = 7)] #[doc = "Some account `who` was thawed."] Thawed { asset_id: ::core::primitive::u32, who: ::subxt::utils::AccountId32, }, #[codec(index = 8)] #[doc = "Some asset `asset_id` was frozen."] AssetFrozen { asset_id: ::core::primitive::u32 }, #[codec(index = 9)] #[doc = "Some asset `asset_id` was thawed."] AssetThawed { asset_id: ::core::primitive::u32 }, #[codec(index = 10)] #[doc = "Accounts were destroyed for given asset."] AccountsDestroyed { asset_id: ::core::primitive::u32, accounts_destroyed: ::core::primitive::u32, accounts_remaining: ::core::primitive::u32, }, #[codec(index = 11)] #[doc = "Approvals were destroyed for given asset."] ApprovalsDestroyed { asset_id: ::core::primitive::u32, approvals_destroyed: ::core::primitive::u32, approvals_remaining: ::core::primitive::u32, }, #[codec(index = 12)] #[doc = "An asset class is in the process of being destroyed."] DestructionStarted { asset_id: ::core::primitive::u32 }, #[codec(index = 13)] #[doc = "An asset class was destroyed."] Destroyed { asset_id: ::core::primitive::u32 }, #[codec(index = 14)] #[doc = "Some asset class was force-created."] ForceCreated { asset_id: ::core::primitive::u32, owner: ::subxt::utils::AccountId32, }, #[codec(index = 15)] #[doc = "New metadata has been set for an asset."] MetadataSet { asset_id: ::core::primitive::u32, name: ::std::vec::Vec<::core::primitive::u8>, symbol: ::std::vec::Vec<::core::primitive::u8>, decimals: ::core::primitive::u8, is_frozen: ::core::primitive::bool, }, #[codec(index = 16)] #[doc = "Metadata has been cleared for an asset."] MetadataCleared { asset_id: ::core::primitive::u32 }, #[codec(index = 17)] #[doc = "(Additional) funds have been approved for transfer to a destination account."] ApprovedTransfer { asset_id: ::core::primitive::u32, source: ::subxt::utils::AccountId32, delegate: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 18)] #[doc = "An approval for account `delegate` was cancelled by `owner`."] ApprovalCancelled { asset_id: ::core::primitive::u32, owner: ::subxt::utils::AccountId32, delegate: ::subxt::utils::AccountId32, }, #[codec(index = 19)] #[doc = "An `amount` was transferred in its entirety from `owner` to `destination` by"] #[doc = "the approved `delegate`."] TransferredApproved { asset_id: ::core::primitive::u32, owner: ::subxt::utils::AccountId32, delegate: ::subxt::utils::AccountId32, destination: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 20)] #[doc = "An asset has had its attributes changed by the `Force` origin."] AssetStatusChanged { asset_id: ::core::primitive::u32 }, } } pub mod types { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Approval<_0, _1> { pub amount: _0, pub deposit: _0, #[codec(skip)] pub __subxt_unused_type_params: ::core::marker::PhantomData<_1>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AssetAccount<_0, _1, _2> { pub balance: _0, pub is_frozen: ::core::primitive::bool, pub reason: runtime_types::pallet_assets::types::ExistenceReason<_0>, pub extra: _2, #[codec(skip)] pub __subxt_unused_type_params: ::core::marker::PhantomData<_1>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AssetDetails<_0, _1, _2> { pub owner: _1, pub issuer: _1, pub admin: _1, pub freezer: _1, pub supply: _0, pub deposit: _0, pub min_balance: _0, pub is_sufficient: ::core::primitive::bool, pub accounts: ::core::primitive::u32, pub sufficients: ::core::primitive::u32, pub approvals: ::core::primitive::u32, pub status: runtime_types::pallet_assets::types::AssetStatus, #[codec(skip)] pub __subxt_unused_type_params: ::core::marker::PhantomData<_2>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AssetMetadata<_0, _1> { pub deposit: _0, pub name: _1, pub symbol: _1, pub decimals: ::core::primitive::u8, pub is_frozen: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum AssetStatus { #[codec(index = 0)] Live, #[codec(index = 1)] Frozen, #[codec(index = 2)] Destroying, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ExistenceReason<_0> { #[codec(index = 0)] Consumer, #[codec(index = 1)] Sufficient, #[codec(index = 2)] DepositHeld(_0), #[codec(index = 3)] DepositRefunded, } } } pub mod pallet_babe { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { # [codec (index = 0)] # [doc = "Report authority equivocation/misbehavior. This method will verify"] # [doc = "the equivocation proof and validate the given key ownership proof"] # [doc = "against the extracted offender. If both are valid, the offence will"] # [doc = "be reported."] report_equivocation { equivocation_proof : :: std :: boxed :: Box < runtime_types :: sp_consensus_slots :: EquivocationProof < runtime_types :: sp_runtime :: generic :: header :: Header < :: core :: primitive :: u32 , runtime_types :: sp_runtime :: traits :: BlakeTwo256 > , runtime_types :: sp_consensus_babe :: app :: Public > > , key_owner_proof : runtime_types :: sp_session :: MembershipProof , } , # [codec (index = 1)] # [doc = "Report authority equivocation/misbehavior. This method will verify"] # [doc = "the equivocation proof and validate the given key ownership proof"] # [doc = "against the extracted offender. If both are valid, the offence will"] # [doc = "be reported."] # [doc = "This extrinsic must be called unsigned and it is expected that only"] # [doc = "block authors will call it (validated in `ValidateUnsigned`), as such"] # [doc = "if the block author is defined it will be defined as the equivocation"] # [doc = "reporter."] report_equivocation_unsigned { equivocation_proof : :: std :: boxed :: Box < runtime_types :: sp_consensus_slots :: EquivocationProof < runtime_types :: sp_runtime :: generic :: header :: Header < :: core :: primitive :: u32 , runtime_types :: sp_runtime :: traits :: BlakeTwo256 > , runtime_types :: sp_consensus_babe :: app :: Public > > , key_owner_proof : runtime_types :: sp_session :: MembershipProof , } , # [codec (index = 2)] # [doc = "Plan an epoch config change. The epoch config change is recorded and will be enacted on"] # [doc = "the next call to `enact_epoch_change`. The config will be activated one epoch after."] # [doc = "Multiple calls to this method will replace any existing planned config change that had"] # [doc = "not been enacted yet."] plan_config_change { config : runtime_types :: sp_consensus_babe :: digests :: NextConfigDescriptor , } , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "An equivocation proof provided as part of an equivocation report is invalid."] InvalidEquivocationProof, #[codec(index = 1)] #[doc = "A key ownership proof provided as part of an equivocation report is invalid."] InvalidKeyOwnershipProof, #[codec(index = 2)] #[doc = "A given equivocation report is valid but already previously reported."] DuplicateOffenceReport, #[codec(index = 3)] #[doc = "Submitted configuration is invalid."] InvalidConfiguration, } } } pub mod pallet_bags_list { use super::runtime_types; pub mod list { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Bag { pub head: ::core::option::Option<::subxt::utils::AccountId32>, pub tail: ::core::option::Option<::subxt::utils::AccountId32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ListError { #[codec(index = 0)] Duplicate, #[codec(index = 1)] NotHeavier, #[codec(index = 2)] NotInSameBag, #[codec(index = 3)] NodeNotFound, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Node { pub id: ::subxt::utils::AccountId32, pub prev: ::core::option::Option<::subxt::utils::AccountId32>, pub next: ::core::option::Option<::subxt::utils::AccountId32>, pub bag_upper: ::core::primitive::u64, pub score: ::core::primitive::u64, } } pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Declare that some `dislocated` account has, through rewards or penalties, sufficiently"] #[doc = "changed its score that it should properly fall into a different bag than its current"] #[doc = "one."] #[doc = ""] #[doc = "Anyone can call this function about any potentially dislocated account."] #[doc = ""] #[doc = "Will always update the stored score of `dislocated` to the correct score, based on"] #[doc = "`ScoreProvider`."] #[doc = ""] #[doc = "If `dislocated` does not exists, it returns an error."] rebag { dislocated: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 1)] #[doc = "Move the caller's Id directly in front of `lighter`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and can only be called by the Id of"] #[doc = "the account going in front of `lighter`."] #[doc = ""] #[doc = "Only works if"] #[doc = "- both nodes are within the same bag,"] #[doc = "- and `origin` has a greater `Score` than `lighter`."] put_in_front_of { lighter: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "A error in the list interface implementation."] List(runtime_types::pallet_bags_list::list::ListError), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "Moved an account from one bag to another."] Rebagged { who: ::subxt::utils::AccountId32, from: ::core::primitive::u64, to: ::core::primitive::u64, }, #[codec(index = 1)] #[doc = "Updated the score of some account to the given amount."] ScoreUpdated { who: ::subxt::utils::AccountId32, new_score: ::core::primitive::u64, }, } } } pub mod pallet_balances { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Transfer some liquid free balance to another account."] #[doc = ""] #[doc = "`transfer` will set the `FreeBalance` of the sender and receiver."] #[doc = "If the sender's account is below the existential deposit as a result"] #[doc = "of the transfer, the account will be reaped."] #[doc = ""] #[doc = "The dispatch origin for this call must be `Signed` by the transactor."] #[doc = ""] #[doc = "# "] #[doc = "- Dependent on arguments but not critical, given proper implementations for input config"] #[doc = " types. See related functions below."] #[doc = "- It contains a limited number of reads and writes internally and no complex"] #[doc = " computation."] #[doc = ""] #[doc = "Related functions:"] #[doc = ""] #[doc = " - `ensure_can_withdraw` is always called internally but has a bounded complexity."] #[doc = " - Transferring balances to accounts that did not exist before will cause"] #[doc = " `T::OnNewAccount::on_new_account` to be called."] #[doc = " - Removing enough funds from an account will trigger `T::DustRemoval::on_unbalanced`."] #[doc = " - `transfer_keep_alive` works the same way as `transfer`, but has an additional check"] #[doc = " that the transfer will not kill the origin account."] #[doc = "---------------------------------"] #[doc = "- Origin account is already in memory, so no DB operations for them."] #[doc = "# "] transfer { dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] value: ::core::primitive::u128, }, #[codec(index = 1)] #[doc = "Set the balances of a given account."] #[doc = ""] #[doc = "This will alter `FreeBalance` and `ReservedBalance` in storage. it will"] #[doc = "also alter the total issuance of the system (`TotalIssuance`) appropriately."] #[doc = "If the new free or reserved balance is below the existential deposit,"] #[doc = "it will reset the account nonce (`frame_system::AccountNonce`)."] #[doc = ""] #[doc = "The dispatch origin for this call is `root`."] set_balance { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] new_free: ::core::primitive::u128, #[codec(compact)] new_reserved: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "Exactly as `transfer`, except the origin must be root and the source account may be"] #[doc = "specified."] #[doc = "# "] #[doc = "- Same as transfer, but additional read and write because the source account is not"] #[doc = " assumed to be in the overlay."] #[doc = "# "] force_transfer { source: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] value: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "Same as the [`transfer`] call, but with a check that the transfer will not kill the"] #[doc = "origin account."] #[doc = ""] #[doc = "99% of the time you want [`transfer`] instead."] #[doc = ""] #[doc = "[`transfer`]: struct.Pallet.html#method.transfer"] transfer_keep_alive { dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] value: ::core::primitive::u128, }, #[codec(index = 4)] #[doc = "Transfer the entire transferable balance from the caller account."] #[doc = ""] #[doc = "NOTE: This function only attempts to transfer _transferable_ balances. This means that"] #[doc = "any locked, reserved, or existential deposits (when `keep_alive` is `true`), will not be"] #[doc = "transferred by this function. To ensure that this function results in a killed account,"] #[doc = "you might need to prepare the account by removing any reference counters, storage"] #[doc = "deposits, etc..."] #[doc = ""] #[doc = "The dispatch origin of this call must be Signed."] #[doc = ""] #[doc = "- `dest`: The recipient of the transfer."] #[doc = "- `keep_alive`: A boolean to determine if the `transfer_all` operation should send all"] #[doc = " of the funds the account has, causing the sender account to be killed (false), or"] #[doc = " transfer everything except at least the existential deposit, which will guarantee to"] #[doc = " keep the sender account alive (true). # "] #[doc = "- O(1). Just like transfer, but reading the user's transferable balance first."] #[doc = " #"] transfer_all { dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, keep_alive: ::core::primitive::bool, }, #[codec(index = 5)] #[doc = "Unreserve some balance from a user by force."] #[doc = ""] #[doc = "Can only be called by ROOT."] force_unreserve { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, amount: ::core::primitive::u128, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Vesting balance too high to send value"] VestingBalance, #[codec(index = 1)] #[doc = "Account liquidity restrictions prevent withdrawal"] LiquidityRestrictions, #[codec(index = 2)] #[doc = "Balance too low to send value."] InsufficientBalance, #[codec(index = 3)] #[doc = "Value too low to create account due to existential deposit"] ExistentialDeposit, #[codec(index = 4)] #[doc = "Transfer/payment would kill account"] KeepAlive, #[codec(index = 5)] #[doc = "A vesting schedule already exists for this account"] ExistingVestingSchedule, #[codec(index = 6)] #[doc = "Beneficiary account must pre-exist"] DeadAccount, #[codec(index = 7)] #[doc = "Number of named reserves exceed MaxReserves"] TooManyReserves, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { # [codec (index = 0)] # [doc = "An account was created with some free balance."] Endowed { account : :: subxt :: utils :: AccountId32 , free_balance : :: core :: primitive :: u128 , } , # [codec (index = 1)] # [doc = "An account was removed whose balance was non-zero but below ExistentialDeposit,"] # [doc = "resulting in an outright loss."] DustLost { account : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 2)] # [doc = "Transfer succeeded."] Transfer { from : :: subxt :: utils :: AccountId32 , to : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 3)] # [doc = "A balance was set by root."] BalanceSet { who : :: subxt :: utils :: AccountId32 , free : :: core :: primitive :: u128 , reserved : :: core :: primitive :: u128 , } , # [codec (index = 4)] # [doc = "Some balance was reserved (moved from free to reserved)."] Reserved { who : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 5)] # [doc = "Some balance was unreserved (moved from reserved to free)."] Unreserved { who : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 6)] # [doc = "Some balance was moved from the reserve of the first account to the second account."] # [doc = "Final argument indicates the destination balance type."] ReserveRepatriated { from : :: subxt :: utils :: AccountId32 , to : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , destination_status : runtime_types :: frame_support :: traits :: tokens :: misc :: BalanceStatus , } , # [codec (index = 7)] # [doc = "Some amount was deposited (e.g. for transaction fees)."] Deposit { who : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 8)] # [doc = "Some amount was withdrawn from the account (e.g. for transaction fees)."] Withdraw { who : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 9)] # [doc = "Some amount was removed from the account (e.g. for misbehavior)."] Slashed { who : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AccountData<_0> { pub free: _0, pub reserved: _0, pub misc_frozen: _0, pub fee_frozen: _0, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BalanceLock<_0> { pub id: [::core::primitive::u8; 8usize], pub amount: _0, pub reasons: runtime_types::pallet_balances::Reasons, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Reasons { #[codec(index = 0)] Fee, #[codec(index = 1)] Misc, #[codec(index = 2)] All, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReserveData<_0, _1> { pub id: _0, pub amount: _1, } } pub mod pallet_bounties { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Propose a new bounty."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Payment: `TipReportDepositBase` will be reserved from the origin account, as well as"] #[doc = "`DataDepositPerByte` for each byte in `reason`. It will be unreserved upon approval,"] #[doc = "or slashed when rejected."] #[doc = ""] #[doc = "- `curator`: The curator account whom will manage this bounty."] #[doc = "- `fee`: The curator fee."] #[doc = "- `value`: The total payment amount of this bounty, curator fee included."] #[doc = "- `description`: The description of this bounty."] propose_bounty { #[codec(compact)] value: ::core::primitive::u128, description: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 1)] #[doc = "Approve a bounty proposal. At a later time, the bounty will be funded and become active"] #[doc = "and the original deposit will be returned."] #[doc = ""] #[doc = "May only be called from `T::SpendOrigin`."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] approve_bounty { #[codec(compact)] bounty_id: ::core::primitive::u32, }, #[codec(index = 2)] #[doc = "Assign a curator to a funded bounty."] #[doc = ""] #[doc = "May only be called from `T::SpendOrigin`."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] propose_curator { #[codec(compact)] bounty_id: ::core::primitive::u32, curator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] fee: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "Unassign curator from a bounty."] #[doc = ""] #[doc = "This function can only be called by the `RejectOrigin` a signed origin."] #[doc = ""] #[doc = "If this function is called by the `RejectOrigin`, we assume that the curator is"] #[doc = "malicious or inactive. As a result, we will slash the curator when possible."] #[doc = ""] #[doc = "If the origin is the curator, we take this as a sign they are unable to do their job and"] #[doc = "they willingly give up. We could slash them, but for now we allow them to recover their"] #[doc = "deposit and exit without issue. (We may want to change this if it is abused.)"] #[doc = ""] #[doc = "Finally, the origin can be anyone if and only if the curator is \"inactive\". This allows"] #[doc = "anyone in the community to call out that a curator is not doing their due diligence, and"] #[doc = "we should pick a new curator. In this case the curator should also be slashed."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] unassign_curator { #[codec(compact)] bounty_id: ::core::primitive::u32, }, #[codec(index = 4)] #[doc = "Accept the curator role for a bounty."] #[doc = "A deposit will be reserved from curator and refund upon successful payout."] #[doc = ""] #[doc = "May only be called from the curator."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] accept_curator { #[codec(compact)] bounty_id: ::core::primitive::u32, }, #[codec(index = 5)] #[doc = "Award bounty to a beneficiary account. The beneficiary will be able to claim the funds"] #[doc = "after a delay."] #[doc = ""] #[doc = "The dispatch origin for this call must be the curator of this bounty."] #[doc = ""] #[doc = "- `bounty_id`: Bounty ID to award."] #[doc = "- `beneficiary`: The beneficiary account whom will receive the payout."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] award_bounty { #[codec(compact)] bounty_id: ::core::primitive::u32, beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 6)] #[doc = "Claim the payout from an awarded bounty after payout delay."] #[doc = ""] #[doc = "The dispatch origin for this call must be the beneficiary of this bounty."] #[doc = ""] #[doc = "- `bounty_id`: Bounty ID to claim."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] claim_bounty { #[codec(compact)] bounty_id: ::core::primitive::u32, }, #[codec(index = 7)] #[doc = "Cancel a proposed or active bounty. All the funds will be sent to treasury and"] #[doc = "the curator deposit will be unreserved if possible."] #[doc = ""] #[doc = "Only `T::RejectOrigin` is able to cancel a bounty."] #[doc = ""] #[doc = "- `bounty_id`: Bounty ID to cancel."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] close_bounty { #[codec(compact)] bounty_id: ::core::primitive::u32, }, #[codec(index = 8)] #[doc = "Extend the expiry time of an active bounty."] #[doc = ""] #[doc = "The dispatch origin for this call must be the curator of this bounty."] #[doc = ""] #[doc = "- `bounty_id`: Bounty ID to extend."] #[doc = "- `remark`: additional information."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "# "] extend_bounty_expiry { #[codec(compact)] bounty_id: ::core::primitive::u32, remark: ::std::vec::Vec<::core::primitive::u8>, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Proposer's balance is too low."] InsufficientProposersBalance, #[codec(index = 1)] #[doc = "No proposal or bounty at that index."] InvalidIndex, #[codec(index = 2)] #[doc = "The reason given is just too big."] ReasonTooBig, #[codec(index = 3)] #[doc = "The bounty status is unexpected."] UnexpectedStatus, #[codec(index = 4)] #[doc = "Require bounty curator."] RequireCurator, #[codec(index = 5)] #[doc = "Invalid bounty value."] InvalidValue, #[codec(index = 6)] #[doc = "Invalid bounty fee."] InvalidFee, #[codec(index = 7)] #[doc = "A bounty payout is pending."] #[doc = "To cancel the bounty, you must unassign and slash the curator."] PendingPayout, #[codec(index = 8)] #[doc = "The bounties cannot be claimed/closed because it's still in the countdown period."] Premature, #[codec(index = 9)] #[doc = "The bounty cannot be closed because it has active child bounties."] HasActiveChildBounty, #[codec(index = 10)] #[doc = "Too many approvals are already queued."] TooManyQueued, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "New bounty proposal."] BountyProposed { index: ::core::primitive::u32 }, #[codec(index = 1)] #[doc = "A bounty proposal was rejected; funds were slashed."] BountyRejected { index: ::core::primitive::u32, bond: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "A bounty proposal is funded and became active."] BountyBecameActive { index: ::core::primitive::u32 }, #[codec(index = 3)] #[doc = "A bounty is awarded to a beneficiary."] BountyAwarded { index: ::core::primitive::u32, beneficiary: ::subxt::utils::AccountId32, }, #[codec(index = 4)] #[doc = "A bounty is claimed by beneficiary."] BountyClaimed { index: ::core::primitive::u32, payout: ::core::primitive::u128, beneficiary: ::subxt::utils::AccountId32, }, #[codec(index = 5)] #[doc = "A bounty is cancelled."] BountyCanceled { index: ::core::primitive::u32 }, #[codec(index = 6)] #[doc = "A bounty expiry is extended."] BountyExtended { index: ::core::primitive::u32 }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Bounty<_0, _1, _2> { pub proposer: _0, pub value: _1, pub fee: _1, pub curator_deposit: _1, pub bond: _1, pub status: runtime_types::pallet_bounties::BountyStatus<_0, _2>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum BountyStatus<_0, _1> { #[codec(index = 0)] Proposed, #[codec(index = 1)] Approved, #[codec(index = 2)] Funded, #[codec(index = 3)] CuratorProposed { curator: _0 }, #[codec(index = 4)] Active { curator: _0, update_due: _1 }, #[codec(index = 5)] PendingPayout { curator: _0, beneficiary: _0, unlock_at: _1, }, } } pub mod pallet_child_bounties { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Add a new child-bounty."] #[doc = ""] #[doc = "The dispatch origin for this call must be the curator of parent"] #[doc = "bounty and the parent bounty must be in \"active\" state."] #[doc = ""] #[doc = "Child-bounty gets added successfully & fund gets transferred from"] #[doc = "parent bounty to child-bounty account, if parent bounty has enough"] #[doc = "funds, else the call fails."] #[doc = ""] #[doc = "Upper bound to maximum number of active child bounties that can be"] #[doc = "added are managed via runtime trait config"] #[doc = "[`Config::MaxActiveChildBountyCount`]."] #[doc = ""] #[doc = "If the call is success, the status of child-bounty is updated to"] #[doc = "\"Added\"."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty for which child-bounty is being added."] #[doc = "- `value`: Value for executing the proposal."] #[doc = "- `description`: Text description for the child-bounty."] add_child_bounty { #[codec(compact)] parent_bounty_id: ::core::primitive::u32, #[codec(compact)] value: ::core::primitive::u128, description: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 1)] #[doc = "Propose curator for funded child-bounty."] #[doc = ""] #[doc = "The dispatch origin for this call must be curator of parent bounty."] #[doc = ""] #[doc = "Parent bounty must be in active state, for this child-bounty call to"] #[doc = "work."] #[doc = ""] #[doc = "Child-bounty must be in \"Added\" state, for processing the call. And"] #[doc = "state of child-bounty is moved to \"CuratorProposed\" on successful"] #[doc = "call completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] #[doc = "- `curator`: Address of child-bounty curator."] #[doc = "- `fee`: payment fee to child-bounty curator for execution."] propose_curator { #[codec(compact)] parent_bounty_id: ::core::primitive::u32, #[codec(compact)] child_bounty_id: ::core::primitive::u32, curator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] fee: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "Accept the curator role for the child-bounty."] #[doc = ""] #[doc = "The dispatch origin for this call must be the curator of this"] #[doc = "child-bounty."] #[doc = ""] #[doc = "A deposit will be reserved from the curator and refund upon"] #[doc = "successful payout or cancellation."] #[doc = ""] #[doc = "Fee for curator is deducted from curator fee of parent bounty."] #[doc = ""] #[doc = "Parent bounty must be in active state, for this child-bounty call to"] #[doc = "work."] #[doc = ""] #[doc = "Child-bounty must be in \"CuratorProposed\" state, for processing the"] #[doc = "call. And state of child-bounty is moved to \"Active\" on successful"] #[doc = "call completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] accept_curator { #[codec(compact)] parent_bounty_id: ::core::primitive::u32, #[codec(compact)] child_bounty_id: ::core::primitive::u32, }, #[codec(index = 3)] #[doc = "Unassign curator from a child-bounty."] #[doc = ""] #[doc = "The dispatch origin for this call can be either `RejectOrigin`, or"] #[doc = "the curator of the parent bounty, or any signed origin."] #[doc = ""] #[doc = "For the origin other than T::RejectOrigin and the child-bounty"] #[doc = "curator, parent bounty must be in active state, for this call to"] #[doc = "work. We allow child-bounty curator and T::RejectOrigin to execute"] #[doc = "this call irrespective of the parent bounty state."] #[doc = ""] #[doc = "If this function is called by the `RejectOrigin` or the"] #[doc = "parent bounty curator, we assume that the child-bounty curator is"] #[doc = "malicious or inactive. As a result, child-bounty curator deposit is"] #[doc = "slashed."] #[doc = ""] #[doc = "If the origin is the child-bounty curator, we take this as a sign"] #[doc = "that they are unable to do their job, and are willingly giving up."] #[doc = "We could slash the deposit, but for now we allow them to unreserve"] #[doc = "their deposit and exit without issue. (We may want to change this if"] #[doc = "it is abused.)"] #[doc = ""] #[doc = "Finally, the origin can be anyone iff the child-bounty curator is"] #[doc = "\"inactive\". Expiry update due of parent bounty is used to estimate"] #[doc = "inactive state of child-bounty curator."] #[doc = ""] #[doc = "This allows anyone in the community to call out that a child-bounty"] #[doc = "curator is not doing their due diligence, and we should pick a new"] #[doc = "one. In this case the child-bounty curator deposit is slashed."] #[doc = ""] #[doc = "State of child-bounty is moved to Added state on successful call"] #[doc = "completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] unassign_curator { #[codec(compact)] parent_bounty_id: ::core::primitive::u32, #[codec(compact)] child_bounty_id: ::core::primitive::u32, }, #[codec(index = 4)] #[doc = "Award child-bounty to a beneficiary."] #[doc = ""] #[doc = "The beneficiary will be able to claim the funds after a delay."] #[doc = ""] #[doc = "The dispatch origin for this call must be the parent curator or"] #[doc = "curator of this child-bounty."] #[doc = ""] #[doc = "Parent bounty must be in active state, for this child-bounty call to"] #[doc = "work."] #[doc = ""] #[doc = "Child-bounty must be in active state, for processing the call. And"] #[doc = "state of child-bounty is moved to \"PendingPayout\" on successful call"] #[doc = "completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] #[doc = "- `beneficiary`: Beneficiary account."] award_child_bounty { #[codec(compact)] parent_bounty_id: ::core::primitive::u32, #[codec(compact)] child_bounty_id: ::core::primitive::u32, beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 5)] #[doc = "Claim the payout from an awarded child-bounty after payout delay."] #[doc = ""] #[doc = "The dispatch origin for this call may be any signed origin."] #[doc = ""] #[doc = "Call works independent of parent bounty state, No need for parent"] #[doc = "bounty to be in active state."] #[doc = ""] #[doc = "The Beneficiary is paid out with agreed bounty value. Curator fee is"] #[doc = "paid & curator deposit is unreserved."] #[doc = ""] #[doc = "Child-bounty must be in \"PendingPayout\" state, for processing the"] #[doc = "call. And instance of child-bounty is removed from the state on"] #[doc = "successful call completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] claim_child_bounty { #[codec(compact)] parent_bounty_id: ::core::primitive::u32, #[codec(compact)] child_bounty_id: ::core::primitive::u32, }, #[codec(index = 6)] #[doc = "Cancel a proposed or active child-bounty. Child-bounty account funds"] #[doc = "are transferred to parent bounty account. The child-bounty curator"] #[doc = "deposit may be unreserved if possible."] #[doc = ""] #[doc = "The dispatch origin for this call must be either parent curator or"] #[doc = "`T::RejectOrigin`."] #[doc = ""] #[doc = "If the state of child-bounty is `Active`, curator deposit is"] #[doc = "unreserved."] #[doc = ""] #[doc = "If the state of child-bounty is `PendingPayout`, call fails &"] #[doc = "returns `PendingPayout` error."] #[doc = ""] #[doc = "For the origin other than T::RejectOrigin, parent bounty must be in"] #[doc = "active state, for this child-bounty call to work. For origin"] #[doc = "T::RejectOrigin execution is forced."] #[doc = ""] #[doc = "Instance of child-bounty is removed from the state on successful"] #[doc = "call completion."] #[doc = ""] #[doc = "- `parent_bounty_id`: Index of parent bounty."] #[doc = "- `child_bounty_id`: Index of child bounty."] close_child_bounty { #[codec(compact)] parent_bounty_id: ::core::primitive::u32, #[codec(compact)] child_bounty_id: ::core::primitive::u32, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "The parent bounty is not in active state."] ParentBountyNotActive, #[codec(index = 1)] #[doc = "The bounty balance is not enough to add new child-bounty."] InsufficientBountyBalance, #[codec(index = 2)] #[doc = "Number of child bounties exceeds limit `MaxActiveChildBountyCount`."] TooManyChildBounties, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A child-bounty is added."] Added { index: ::core::primitive::u32, child_index: ::core::primitive::u32, }, #[codec(index = 1)] #[doc = "A child-bounty is awarded to a beneficiary."] Awarded { index: ::core::primitive::u32, child_index: ::core::primitive::u32, beneficiary: ::subxt::utils::AccountId32, }, #[codec(index = 2)] #[doc = "A child-bounty is claimed by beneficiary."] Claimed { index: ::core::primitive::u32, child_index: ::core::primitive::u32, payout: ::core::primitive::u128, beneficiary: ::subxt::utils::AccountId32, }, #[codec(index = 3)] #[doc = "A child-bounty is cancelled."] Canceled { index: ::core::primitive::u32, child_index: ::core::primitive::u32, }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ChildBounty<_0, _1, _2> { pub parent_bounty: _2, pub value: _1, pub fee: _1, pub curator_deposit: _1, pub status: runtime_types::pallet_child_bounties::ChildBountyStatus<_0, _2>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ChildBountyStatus<_0, _1> { #[codec(index = 0)] Added, #[codec(index = 1)] CuratorProposed { curator: _0 }, #[codec(index = 2)] Active { curator: _0 }, #[codec(index = 3)] PendingPayout { curator: _0, beneficiary: _0, unlock_at: _1, }, } } pub mod pallet_collective { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Set the collective's membership."] #[doc = ""] #[doc = "- `new_members`: The new member list. Be nice to the chain and provide it sorted."] #[doc = "- `prime`: The prime member whose vote sets the default."] #[doc = "- `old_count`: The upper bound for the previous number of members in storage. Used for"] #[doc = " weight estimation."] #[doc = ""] #[doc = "Requires root origin."] #[doc = ""] #[doc = "NOTE: Does not enforce the expected `MaxMembers` limit on the amount of members, but"] #[doc = " the weight estimations rely on it to estimate dispatchable weight."] #[doc = ""] #[doc = "# WARNING:"] #[doc = ""] #[doc = "The `pallet-collective` can also be managed by logic outside of the pallet through the"] #[doc = "implementation of the trait [`ChangeMembers`]."] #[doc = "Any call to `set_members` must be careful that the member set doesn't get out of sync"] #[doc = "with other logic managing the member set."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(MP + N)` where:"] #[doc = " - `M` old-members-count (code- and governance-bounded)"] #[doc = " - `N` new-members-count (code- and governance-bounded)"] #[doc = " - `P` proposals-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 1 storage mutation (codec `O(M)` read, `O(N)` write) for reading and writing the"] #[doc = " members"] #[doc = " - 1 storage read (codec `O(P)`) for reading the proposals"] #[doc = " - `P` storage mutations (codec `O(M)`) for updating the votes for each proposal"] #[doc = " - 1 storage write (codec `O(1)`) for deleting the old `prime` and setting the new one"] #[doc = "# "] set_members { new_members: ::std::vec::Vec<::subxt::utils::AccountId32>, prime: ::core::option::Option<::subxt::utils::AccountId32>, old_count: ::core::primitive::u32, }, #[codec(index = 1)] #[doc = "Dispatch a proposal from a member using the `Member` origin."] #[doc = ""] #[doc = "Origin must be a member of the collective."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(M + P)` where `M` members-count (code-bounded) and `P` complexity of dispatching"] #[doc = " `proposal`"] #[doc = "- DB: 1 read (codec `O(M)`) + DB access of `proposal`"] #[doc = "- 1 event"] #[doc = "# "] execute { proposal: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, #[codec(compact)] length_bound: ::core::primitive::u32, }, #[codec(index = 2)] #[doc = "Add a new proposal to either be voted on or executed directly."] #[doc = ""] #[doc = "Requires the sender to be member."] #[doc = ""] #[doc = "`threshold` determines whether `proposal` is executed directly (`threshold < 2`)"] #[doc = "or put up for voting."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1)` or `O(B + M + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - branching is influenced by `threshold` where:"] #[doc = " - `P1` is proposal execution complexity (`threshold < 2`)"] #[doc = " - `P2` is proposals-count (code-bounded) (`threshold >= 2`)"] #[doc = "- DB:"] #[doc = " - 1 storage read `is_member` (codec `O(M)`)"] #[doc = " - 1 storage read `ProposalOf::contains_key` (codec `O(1)`)"] #[doc = " - DB accesses influenced by `threshold`:"] #[doc = " - EITHER storage accesses done by `proposal` (`threshold < 2`)"] #[doc = " - OR proposal insertion (`threshold <= 2`)"] #[doc = " - 1 storage mutation `Proposals` (codec `O(P2)`)"] #[doc = " - 1 storage mutation `ProposalCount` (codec `O(1)`)"] #[doc = " - 1 storage write `ProposalOf` (codec `O(B)`)"] #[doc = " - 1 storage write `Voting` (codec `O(M)`)"] #[doc = " - 1 event"] #[doc = "# "] propose { #[codec(compact)] threshold: ::core::primitive::u32, proposal: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, #[codec(compact)] length_bound: ::core::primitive::u32, }, #[codec(index = 3)] #[doc = "Add an aye or nay vote for the sender to the given proposal."] #[doc = ""] #[doc = "Requires the sender to be a member."] #[doc = ""] #[doc = "Transaction fees will be waived if the member is voting on any particular proposal"] #[doc = "for the first time and the call is successful. Subsequent vote changes will charge a"] #[doc = "fee."] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(M)` where `M` is members-count (code- and governance-bounded)"] #[doc = "- DB:"] #[doc = " - 1 storage read `Members` (codec `O(M)`)"] #[doc = " - 1 storage mutation `Voting` (codec `O(M)`)"] #[doc = "- 1 event"] #[doc = "# "] vote { proposal: ::subxt::utils::H256, #[codec(compact)] index: ::core::primitive::u32, approve: ::core::primitive::bool, }, #[codec(index = 4)] #[doc = "Close a vote that is either approved, disapproved or whose voting period has ended."] #[doc = ""] #[doc = "May be called by any signed account in order to finish voting and close the proposal."] #[doc = ""] #[doc = "If called before the end of the voting period it will only close the vote if it is"] #[doc = "has enough votes to be approved or disapproved."] #[doc = ""] #[doc = "If called after the end of the voting period abstentions are counted as rejections"] #[doc = "unless there is a prime member set and the prime member cast an approval."] #[doc = ""] #[doc = "If the close operation completes successfully with disapproval, the transaction fee will"] #[doc = "be waived. Otherwise execution of the approved operation will be charged to the caller."] #[doc = ""] #[doc = "+ `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed"] #[doc = "proposal."] #[doc = "+ `length_bound`: The upper bound for the length of the proposal in storage. Checked via"] #[doc = "`storage::read` so it is `size_of::() == 4` larger than the pure length."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1 + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - `P1` is the complexity of `proposal` preimage."] #[doc = " - `P2` is proposal-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`)"] #[doc = " - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec"] #[doc = " `O(P2)`)"] #[doc = " - any mutations done while executing `proposal` (`P1`)"] #[doc = "- up to 3 events"] #[doc = "# "] close_old_weight { proposal_hash: ::subxt::utils::H256, #[codec(compact)] index: ::core::primitive::u32, #[codec(compact)] proposal_weight_bound: runtime_types::sp_weights::OldWeight, #[codec(compact)] length_bound: ::core::primitive::u32, }, #[codec(index = 5)] #[doc = "Disapprove a proposal, close, and remove it from the system, regardless of its current"] #[doc = "state."] #[doc = ""] #[doc = "Must be called by the Root origin."] #[doc = ""] #[doc = "Parameters:"] #[doc = "* `proposal_hash`: The hash of the proposal that should be disapproved."] #[doc = ""] #[doc = "# "] #[doc = "Complexity: O(P) where P is the number of max proposals"] #[doc = "DB Weight:"] #[doc = "* Reads: Proposals"] #[doc = "* Writes: Voting, Proposals, ProposalOf"] #[doc = "# "] disapprove_proposal { proposal_hash: ::subxt::utils::H256 }, #[codec(index = 6)] #[doc = "Close a vote that is either approved, disapproved or whose voting period has ended."] #[doc = ""] #[doc = "May be called by any signed account in order to finish voting and close the proposal."] #[doc = ""] #[doc = "If called before the end of the voting period it will only close the vote if it is"] #[doc = "has enough votes to be approved or disapproved."] #[doc = ""] #[doc = "If called after the end of the voting period abstentions are counted as rejections"] #[doc = "unless there is a prime member set and the prime member cast an approval."] #[doc = ""] #[doc = "If the close operation completes successfully with disapproval, the transaction fee will"] #[doc = "be waived. Otherwise execution of the approved operation will be charged to the caller."] #[doc = ""] #[doc = "+ `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed"] #[doc = "proposal."] #[doc = "+ `length_bound`: The upper bound for the length of the proposal in storage. Checked via"] #[doc = "`storage::read` so it is `size_of::() == 4` larger than the pure length."] #[doc = ""] #[doc = "# "] #[doc = "## Weight"] #[doc = "- `O(B + M + P1 + P2)` where:"] #[doc = " - `B` is `proposal` size in bytes (length-fee-bounded)"] #[doc = " - `M` is members-count (code- and governance-bounded)"] #[doc = " - `P1` is the complexity of `proposal` preimage."] #[doc = " - `P2` is proposal-count (code-bounded)"] #[doc = "- DB:"] #[doc = " - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`)"] #[doc = " - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec"] #[doc = " `O(P2)`)"] #[doc = " - any mutations done while executing `proposal` (`P1`)"] #[doc = "- up to 3 events"] #[doc = "# "] close { proposal_hash: ::subxt::utils::H256, #[codec(compact)] index: ::core::primitive::u32, proposal_weight_bound: runtime_types::sp_weights::weight_v2::Weight, #[codec(compact)] length_bound: ::core::primitive::u32, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Account is not a member"] NotMember, #[codec(index = 1)] #[doc = "Duplicate proposals not allowed"] DuplicateProposal, #[codec(index = 2)] #[doc = "Proposal must exist"] ProposalMissing, #[codec(index = 3)] #[doc = "Mismatched index"] WrongIndex, #[codec(index = 4)] #[doc = "Duplicate vote ignored"] DuplicateVote, #[codec(index = 5)] #[doc = "Members are already initialized!"] AlreadyInitialized, #[codec(index = 6)] #[doc = "The close call was made too early, before the end of the voting."] TooEarly, #[codec(index = 7)] #[doc = "There can only be a maximum of `MaxProposals` active proposals."] TooManyProposals, #[codec(index = 8)] #[doc = "The given weight bound for the proposal was too low."] WrongProposalWeight, #[codec(index = 9)] #[doc = "The given length bound for the proposal was too low."] WrongProposalLength, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A motion (given hash) has been proposed (by given account) with a threshold (given"] #[doc = "`MemberCount`)."] Proposed { account: ::subxt::utils::AccountId32, proposal_index: ::core::primitive::u32, proposal_hash: ::subxt::utils::H256, threshold: ::core::primitive::u32, }, #[codec(index = 1)] #[doc = "A motion (given hash) has been voted on by given account, leaving"] #[doc = "a tally (yes votes and no votes given respectively as `MemberCount`)."] Voted { account: ::subxt::utils::AccountId32, proposal_hash: ::subxt::utils::H256, voted: ::core::primitive::bool, yes: ::core::primitive::u32, no: ::core::primitive::u32, }, #[codec(index = 2)] #[doc = "A motion was approved by the required threshold."] Approved { proposal_hash: ::subxt::utils::H256 }, #[codec(index = 3)] #[doc = "A motion was not approved by the required threshold."] Disapproved { proposal_hash: ::subxt::utils::H256 }, #[codec(index = 4)] #[doc = "A motion was executed; result will be `Ok` if it returned without error."] Executed { proposal_hash: ::subxt::utils::H256, result: ::core::result::Result< (), runtime_types::sp_runtime::DispatchError, >, }, #[codec(index = 5)] #[doc = "A single member did some action; result will be `Ok` if it returned without error."] MemberExecuted { proposal_hash: ::subxt::utils::H256, result: ::core::result::Result< (), runtime_types::sp_runtime::DispatchError, >, }, #[codec(index = 6)] #[doc = "A proposal was closed because its threshold was reached or after its duration was up."] Closed { proposal_hash: ::subxt::utils::H256, yes: ::core::primitive::u32, no: ::core::primitive::u32, }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum RawOrigin<_0> { #[codec(index = 0)] Members(::core::primitive::u32, ::core::primitive::u32), #[codec(index = 1)] Member(_0), #[codec(index = 2)] _Phantom, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Votes<_0, _1> { pub index: _1, pub threshold: _1, pub ayes: ::std::vec::Vec<_0>, pub nays: ::std::vec::Vec<_0>, pub end: _1, } } pub mod pallet_contracts { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Deprecated version if [`Self::call`] for use in an in-storage `Call`."] call_old_weight { dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] value: ::core::primitive::u128, #[codec(compact)] gas_limit: runtime_types::sp_weights::OldWeight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, data: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 1)] #[doc = "Deprecated version if [`Self::instantiate_with_code`] for use in an in-storage `Call`."] instantiate_with_code_old_weight { #[codec(compact)] value: ::core::primitive::u128, #[codec(compact)] gas_limit: runtime_types::sp_weights::OldWeight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, code: ::std::vec::Vec<::core::primitive::u8>, data: ::std::vec::Vec<::core::primitive::u8>, salt: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 2)] #[doc = "Deprecated version if [`Self::instantiate`] for use in an in-storage `Call`."] instantiate_old_weight { #[codec(compact)] value: ::core::primitive::u128, #[codec(compact)] gas_limit: runtime_types::sp_weights::OldWeight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, code_hash: ::subxt::utils::H256, data: ::std::vec::Vec<::core::primitive::u8>, salt: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 3)] #[doc = "Upload new `code` without instantiating a contract from it."] #[doc = ""] #[doc = "If the code does not already exist a deposit is reserved from the caller"] #[doc = "and unreserved only when [`Self::remove_code`] is called. The size of the reserve"] #[doc = "depends on the instrumented size of the the supplied `code`."] #[doc = ""] #[doc = "If the code already exists in storage it will still return `Ok` and upgrades"] #[doc = "the in storage version to the current"] #[doc = "[`InstructionWeights::version`](InstructionWeights)."] #[doc = ""] #[doc = "- `determinism`: If this is set to any other value but [`Determinism::Deterministic`]"] #[doc = " then the only way to use this code is to delegate call into it from an offchain"] #[doc = " execution. Set to [`Determinism::Deterministic`] if in doubt."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "Anyone can instantiate a contract from any uploaded code and thus prevent its removal."] #[doc = "To avoid this situation a constructor could employ access control so that it can"] #[doc = "only be instantiated by permissioned entities. The same is true when uploading"] #[doc = "through [`Self::instantiate_with_code`]."] upload_code { code: ::std::vec::Vec<::core::primitive::u8>, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, determinism: runtime_types::pallet_contracts::wasm::Determinism, }, #[codec(index = 4)] #[doc = "Remove the code stored under `code_hash` and refund the deposit to its owner."] #[doc = ""] #[doc = "A code can only be removed by its original uploader (its owner) and only if it is"] #[doc = "not used by any contract."] remove_code { code_hash: ::subxt::utils::H256 }, #[codec(index = 5)] #[doc = "Privileged function that changes the code of an existing contract."] #[doc = ""] #[doc = "This takes care of updating refcounts and all other necessary operations. Returns"] #[doc = "an error if either the `code_hash` or `dest` do not exist."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "This does **not** change the address of the contract in question. This means"] #[doc = "that the contract address is no longer derived from its code hash after calling"] #[doc = "this dispatchable."] set_code { dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, code_hash: ::subxt::utils::H256, }, #[codec(index = 6)] #[doc = "Makes a call to an account, optionally transferring some balance."] #[doc = ""] #[doc = "# Parameters"] #[doc = ""] #[doc = "* `dest`: Address of the contract to call."] #[doc = "* `value`: The balance to transfer from the `origin` to `dest`."] #[doc = "* `gas_limit`: The gas limit enforced when executing the constructor."] #[doc = "* `storage_deposit_limit`: The maximum amount of balance that can be charged from the"] #[doc = " caller to pay for the storage consumed."] #[doc = "* `data`: The input data to pass to the contract."] #[doc = ""] #[doc = "* If the account is a smart-contract account, the associated code will be"] #[doc = "executed and any value will be transferred."] #[doc = "* If the account is a regular account, any value will be transferred."] #[doc = "* If no account exists and the call value is not less than `existential_deposit`,"] #[doc = "a regular account will be created and any value will be transferred."] call { dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] value: ::core::primitive::u128, gas_limit: runtime_types::sp_weights::weight_v2::Weight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, data: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 7)] #[doc = "Instantiates a new contract from the supplied `code` optionally transferring"] #[doc = "some balance."] #[doc = ""] #[doc = "This dispatchable has the same effect as calling [`Self::upload_code`] +"] #[doc = "[`Self::instantiate`]. Bundling them together provides efficiency gains. Please"] #[doc = "also check the documentation of [`Self::upload_code`]."] #[doc = ""] #[doc = "# Parameters"] #[doc = ""] #[doc = "* `value`: The balance to transfer from the `origin` to the newly created contract."] #[doc = "* `gas_limit`: The gas limit enforced when executing the constructor."] #[doc = "* `storage_deposit_limit`: The maximum amount of balance that can be charged/reserved"] #[doc = " from the caller to pay for the storage consumed."] #[doc = "* `code`: The contract code to deploy in raw bytes."] #[doc = "* `data`: The input data to pass to the contract constructor."] #[doc = "* `salt`: Used for the address derivation. See [`Pallet::contract_address`]."] #[doc = ""] #[doc = "Instantiation is executed as follows:"] #[doc = ""] #[doc = "- The supplied `code` is instrumented, deployed, and a `code_hash` is created for that"] #[doc = " code."] #[doc = "- If the `code_hash` already exists on the chain the underlying `code` will be shared."] #[doc = "- The destination address is computed based on the sender, code_hash and the salt."] #[doc = "- The smart-contract account is created at the computed address."] #[doc = "- The `value` is transferred to the new account."] #[doc = "- The `deploy` function is executed in the context of the newly-created account."] instantiate_with_code { #[codec(compact)] value: ::core::primitive::u128, gas_limit: runtime_types::sp_weights::weight_v2::Weight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, code: ::std::vec::Vec<::core::primitive::u8>, data: ::std::vec::Vec<::core::primitive::u8>, salt: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 8)] #[doc = "Instantiates a contract from a previously deployed wasm binary."] #[doc = ""] #[doc = "This function is identical to [`Self::instantiate_with_code`] but without the"] #[doc = "code deployment step. Instead, the `code_hash` of an on-chain deployed wasm binary"] #[doc = "must be supplied."] instantiate { #[codec(compact)] value: ::core::primitive::u128, gas_limit: runtime_types::sp_weights::weight_v2::Weight, storage_deposit_limit: ::core::option::Option< ::subxt::ext::codec::Compact<::core::primitive::u128>, >, code_hash: ::subxt::utils::H256, data: ::std::vec::Vec<::core::primitive::u8>, salt: ::std::vec::Vec<::core::primitive::u8>, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "A new schedule must have a greater version than the current one."] InvalidScheduleVersion, #[codec(index = 1)] #[doc = "Invalid combination of flags supplied to `seal_call` or `seal_delegate_call`."] InvalidCallFlags, #[codec(index = 2)] #[doc = "The executed contract exhausted its gas limit."] OutOfGas, #[codec(index = 3)] #[doc = "The output buffer supplied to a contract API call was too small."] OutputBufferTooSmall, #[codec(index = 4)] #[doc = "Performing the requested transfer failed. Probably because there isn't enough"] #[doc = "free balance in the sender's account."] TransferFailed, #[codec(index = 5)] #[doc = "Performing a call was denied because the calling depth reached the limit"] #[doc = "of what is specified in the schedule."] MaxCallDepthReached, #[codec(index = 6)] #[doc = "No contract was found at the specified address."] ContractNotFound, #[codec(index = 7)] #[doc = "The code supplied to `instantiate_with_code` exceeds the limit specified in the"] #[doc = "current schedule."] CodeTooLarge, #[codec(index = 8)] #[doc = "No code could be found at the supplied code hash."] CodeNotFound, #[codec(index = 9)] #[doc = "A buffer outside of sandbox memory was passed to a contract API function."] OutOfBounds, #[codec(index = 10)] #[doc = "Input passed to a contract API function failed to decode as expected type."] DecodingFailed, #[codec(index = 11)] #[doc = "Contract trapped during execution."] ContractTrapped, #[codec(index = 12)] #[doc = "The size defined in `T::MaxValueSize` was exceeded."] ValueTooLarge, #[codec(index = 13)] #[doc = "Termination of a contract is not allowed while the contract is already"] #[doc = "on the call stack. Can be triggered by `seal_terminate`."] TerminatedWhileReentrant, #[codec(index = 14)] #[doc = "`seal_call` forwarded this contracts input. It therefore is no longer available."] InputForwarded, #[codec(index = 15)] #[doc = "The subject passed to `seal_random` exceeds the limit."] RandomSubjectTooLong, #[codec(index = 16)] #[doc = "The amount of topics passed to `seal_deposit_events` exceeds the limit."] TooManyTopics, #[codec(index = 17)] #[doc = "The chain does not provide a chain extension. Calling the chain extension results"] #[doc = "in this error. Note that this usually shouldn't happen as deploying such contracts"] #[doc = "is rejected."] NoChainExtension, #[codec(index = 18)] #[doc = "Removal of a contract failed because the deletion queue is full."] #[doc = ""] #[doc = "This can happen when calling `seal_terminate`."] #[doc = "The queue is filled by deleting contracts and emptied by a fixed amount each block."] #[doc = "Trying again during another block is the only way to resolve this issue."] DeletionQueueFull, #[codec(index = 19)] #[doc = "A contract with the same AccountId already exists."] DuplicateContract, #[codec(index = 20)] #[doc = "A contract self destructed in its constructor."] #[doc = ""] #[doc = "This can be triggered by a call to `seal_terminate`."] TerminatedInConstructor, #[codec(index = 21)] #[doc = "The debug message specified to `seal_debug_message` does contain invalid UTF-8."] DebugMessageInvalidUTF8, #[codec(index = 22)] #[doc = "A call tried to invoke a contract that is flagged as non-reentrant."] ReentranceDenied, #[codec(index = 23)] #[doc = "Origin doesn't have enough balance to pay the required storage deposits."] StorageDepositNotEnoughFunds, #[codec(index = 24)] #[doc = "More storage was created than allowed by the storage deposit limit."] StorageDepositLimitExhausted, #[codec(index = 25)] #[doc = "Code removal was denied because the code is still in use by at least one contract."] CodeInUse, #[codec(index = 26)] #[doc = "The contract ran to completion but decided to revert its storage changes."] #[doc = "Please note that this error is only returned from extrinsics. When called directly"] #[doc = "or via RPC an `Ok` will be returned. In this case the caller needs to inspect the flags"] #[doc = "to determine whether a reversion has taken place."] ContractReverted, #[codec(index = 27)] #[doc = "The contract's code was found to be invalid during validation or instrumentation."] #[doc = ""] #[doc = "The most likely cause of this is that an API was used which is not supported by the"] #[doc = "node. This hapens if an older node is used with a new version of ink!. Try updating"] #[doc = "your node to the newest available version."] #[doc = ""] #[doc = "A more detailed error can be found on the node console if debug messages are enabled"] #[doc = "by supplying `-lruntime::contracts=debug`."] CodeRejected, #[codec(index = 28)] #[doc = "An indetermistic code was used in a context where this is not permitted."] Indeterministic, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "Contract deployed by address at the specified address."] Instantiated { deployer: ::subxt::utils::AccountId32, contract: ::subxt::utils::AccountId32, }, #[codec(index = 1)] #[doc = "Contract has been removed."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "The only way for a contract to be removed and emitting this event is by calling"] #[doc = "`seal_terminate`."] Terminated { contract: ::subxt::utils::AccountId32, beneficiary: ::subxt::utils::AccountId32, }, #[codec(index = 2)] #[doc = "Code with the specified hash has been stored."] CodeStored { code_hash: ::subxt::utils::H256 }, #[codec(index = 3)] #[doc = "A custom event emitted by the contract."] ContractEmitted { contract: ::subxt::utils::AccountId32, data: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 4)] #[doc = "A code with the specified hash was removed."] CodeRemoved { code_hash: ::subxt::utils::H256 }, #[codec(index = 5)] #[doc = "A contract's code was updated."] ContractCodeUpdated { contract: ::subxt::utils::AccountId32, new_code_hash: ::subxt::utils::H256, old_code_hash: ::subxt::utils::H256, }, #[codec(index = 6)] #[doc = "A contract was called either by a plain account or another contract."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "Please keep in mind that like all events this is only emitted for successful"] #[doc = "calls. This is because on failure all storage changes including events are"] #[doc = "rolled back."] Called { caller: ::subxt::utils::AccountId32, contract: ::subxt::utils::AccountId32, }, #[codec(index = 7)] #[doc = "A contract delegate called a code hash."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "Please keep in mind that like all events this is only emitted for successful"] #[doc = "calls. This is because on failure all storage changes including events are"] #[doc = "rolled back."] DelegateCalled { contract: ::subxt::utils::AccountId32, code_hash: ::subxt::utils::H256, }, } } pub mod schedule { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct HostFnWeights { pub caller: runtime_types::sp_weights::weight_v2::Weight, pub is_contract: runtime_types::sp_weights::weight_v2::Weight, pub code_hash: runtime_types::sp_weights::weight_v2::Weight, pub own_code_hash: runtime_types::sp_weights::weight_v2::Weight, pub caller_is_origin: runtime_types::sp_weights::weight_v2::Weight, pub address: runtime_types::sp_weights::weight_v2::Weight, pub gas_left: runtime_types::sp_weights::weight_v2::Weight, pub balance: runtime_types::sp_weights::weight_v2::Weight, pub value_transferred: runtime_types::sp_weights::weight_v2::Weight, pub minimum_balance: runtime_types::sp_weights::weight_v2::Weight, pub block_number: runtime_types::sp_weights::weight_v2::Weight, pub now: runtime_types::sp_weights::weight_v2::Weight, pub weight_to_fee: runtime_types::sp_weights::weight_v2::Weight, pub gas: runtime_types::sp_weights::weight_v2::Weight, pub input: runtime_types::sp_weights::weight_v2::Weight, pub input_per_byte: runtime_types::sp_weights::weight_v2::Weight, pub r#return: runtime_types::sp_weights::weight_v2::Weight, pub return_per_byte: runtime_types::sp_weights::weight_v2::Weight, pub terminate: runtime_types::sp_weights::weight_v2::Weight, pub random: runtime_types::sp_weights::weight_v2::Weight, pub deposit_event: runtime_types::sp_weights::weight_v2::Weight, pub deposit_event_per_topic: runtime_types::sp_weights::weight_v2::Weight, pub deposit_event_per_byte: runtime_types::sp_weights::weight_v2::Weight, pub debug_message: runtime_types::sp_weights::weight_v2::Weight, pub set_storage: runtime_types::sp_weights::weight_v2::Weight, pub set_storage_per_new_byte: runtime_types::sp_weights::weight_v2::Weight, pub set_storage_per_old_byte: runtime_types::sp_weights::weight_v2::Weight, pub set_code_hash: runtime_types::sp_weights::weight_v2::Weight, pub clear_storage: runtime_types::sp_weights::weight_v2::Weight, pub clear_storage_per_byte: runtime_types::sp_weights::weight_v2::Weight, pub contains_storage: runtime_types::sp_weights::weight_v2::Weight, pub contains_storage_per_byte: runtime_types::sp_weights::weight_v2::Weight, pub get_storage: runtime_types::sp_weights::weight_v2::Weight, pub get_storage_per_byte: runtime_types::sp_weights::weight_v2::Weight, pub take_storage: runtime_types::sp_weights::weight_v2::Weight, pub take_storage_per_byte: runtime_types::sp_weights::weight_v2::Weight, pub transfer: runtime_types::sp_weights::weight_v2::Weight, pub call: runtime_types::sp_weights::weight_v2::Weight, pub delegate_call: runtime_types::sp_weights::weight_v2::Weight, pub call_transfer_surcharge: runtime_types::sp_weights::weight_v2::Weight, pub call_per_cloned_byte: runtime_types::sp_weights::weight_v2::Weight, pub instantiate: runtime_types::sp_weights::weight_v2::Weight, pub instantiate_transfer_surcharge: runtime_types::sp_weights::weight_v2::Weight, pub instantiate_per_input_byte: runtime_types::sp_weights::weight_v2::Weight, pub instantiate_per_salt_byte: runtime_types::sp_weights::weight_v2::Weight, pub hash_sha2_256: runtime_types::sp_weights::weight_v2::Weight, pub hash_sha2_256_per_byte: runtime_types::sp_weights::weight_v2::Weight, pub hash_keccak_256: runtime_types::sp_weights::weight_v2::Weight, pub hash_keccak_256_per_byte: runtime_types::sp_weights::weight_v2::Weight, pub hash_blake2_256: runtime_types::sp_weights::weight_v2::Weight, pub hash_blake2_256_per_byte: runtime_types::sp_weights::weight_v2::Weight, pub hash_blake2_128: runtime_types::sp_weights::weight_v2::Weight, pub hash_blake2_128_per_byte: runtime_types::sp_weights::weight_v2::Weight, pub ecdsa_recover: runtime_types::sp_weights::weight_v2::Weight, pub ecdsa_to_eth_address: runtime_types::sp_weights::weight_v2::Weight, pub reentrance_count: runtime_types::sp_weights::weight_v2::Weight, pub account_reentrance_count: runtime_types::sp_weights::weight_v2::Weight, pub instantiation_nonce: runtime_types::sp_weights::weight_v2::Weight, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct InstructionWeights { pub version: ::core::primitive::u32, pub fallback: ::core::primitive::u32, pub i64const: ::core::primitive::u32, pub i64load: ::core::primitive::u32, pub i64store: ::core::primitive::u32, pub select: ::core::primitive::u32, pub r#if: ::core::primitive::u32, pub br: ::core::primitive::u32, pub br_if: ::core::primitive::u32, pub br_table: ::core::primitive::u32, pub br_table_per_entry: ::core::primitive::u32, pub call: ::core::primitive::u32, pub call_indirect: ::core::primitive::u32, pub call_indirect_per_param: ::core::primitive::u32, pub call_per_local: ::core::primitive::u32, pub local_get: ::core::primitive::u32, pub local_set: ::core::primitive::u32, pub local_tee: ::core::primitive::u32, pub global_get: ::core::primitive::u32, pub global_set: ::core::primitive::u32, pub memory_current: ::core::primitive::u32, pub memory_grow: ::core::primitive::u32, pub i64clz: ::core::primitive::u32, pub i64ctz: ::core::primitive::u32, pub i64popcnt: ::core::primitive::u32, pub i64eqz: ::core::primitive::u32, pub i64extendsi32: ::core::primitive::u32, pub i64extendui32: ::core::primitive::u32, pub i32wrapi64: ::core::primitive::u32, pub i64eq: ::core::primitive::u32, pub i64ne: ::core::primitive::u32, pub i64lts: ::core::primitive::u32, pub i64ltu: ::core::primitive::u32, pub i64gts: ::core::primitive::u32, pub i64gtu: ::core::primitive::u32, pub i64les: ::core::primitive::u32, pub i64leu: ::core::primitive::u32, pub i64ges: ::core::primitive::u32, pub i64geu: ::core::primitive::u32, pub i64add: ::core::primitive::u32, pub i64sub: ::core::primitive::u32, pub i64mul: ::core::primitive::u32, pub i64divs: ::core::primitive::u32, pub i64divu: ::core::primitive::u32, pub i64rems: ::core::primitive::u32, pub i64remu: ::core::primitive::u32, pub i64and: ::core::primitive::u32, pub i64or: ::core::primitive::u32, pub i64xor: ::core::primitive::u32, pub i64shl: ::core::primitive::u32, pub i64shrs: ::core::primitive::u32, pub i64shru: ::core::primitive::u32, pub i64rotl: ::core::primitive::u32, pub i64rotr: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Limits { pub event_topics: ::core::primitive::u32, pub globals: ::core::primitive::u32, pub locals: ::core::primitive::u32, pub parameters: ::core::primitive::u32, pub memory_pages: ::core::primitive::u32, pub table_size: ::core::primitive::u32, pub br_table_size: ::core::primitive::u32, pub subject_len: ::core::primitive::u32, pub payload_len: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Schedule { pub limits: runtime_types::pallet_contracts::schedule::Limits, pub instruction_weights: runtime_types::pallet_contracts::schedule::InstructionWeights, pub host_fn_weights: runtime_types::pallet_contracts::schedule::HostFnWeights, } } pub mod storage { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ContractInfo { pub trie_id: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, pub code_hash: ::subxt::utils::H256, pub storage_bytes: ::core::primitive::u32, pub storage_items: ::core::primitive::u32, pub storage_byte_deposit: ::core::primitive::u128, pub storage_item_deposit: ::core::primitive::u128, pub storage_base_deposit: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DeletedContract { pub trie_id: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } } pub mod wasm { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Determinism { #[codec(index = 0)] Deterministic, #[codec(index = 1)] AllowIndeterminism, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OwnerInfo { pub owner: ::subxt::utils::AccountId32, #[codec(compact)] pub deposit: ::core::primitive::u128, #[codec(compact)] pub refcount: ::core::primitive::u64, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PrefabWasmModule { #[codec(compact)] pub instruction_weights_version: ::core::primitive::u32, #[codec(compact)] pub initial: ::core::primitive::u32, #[codec(compact)] pub maximum: ::core::primitive::u32, pub code: runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec< ::core::primitive::u8, >, pub determinism: runtime_types::pallet_contracts::wasm::Determinism, } } } pub mod pallet_contracts_primitives { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Code<_0> { #[codec(index = 0)] Upload(::std::vec::Vec<::core::primitive::u8>), #[codec(index = 1)] Existing(_0), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CodeUploadReturnValue<_0, _1> { pub code_hash: _0, pub deposit: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ContractAccessError { #[codec(index = 0)] DoesntExist, #[codec(index = 1)] KeyDecodingFailed, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ContractResult<_0, _1> { pub gas_consumed: runtime_types::sp_weights::weight_v2::Weight, pub gas_required: runtime_types::sp_weights::weight_v2::Weight, pub storage_deposit: runtime_types::pallet_contracts_primitives::StorageDeposit<_1>, pub debug_message: ::std::vec::Vec<::core::primitive::u8>, pub result: _0, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ExecReturnValue { pub flags: runtime_types::pallet_contracts_primitives::ReturnFlags, pub data: ::std::vec::Vec<::core::primitive::u8>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct InstantiateReturnValue<_0> { pub result: runtime_types::pallet_contracts_primitives::ExecReturnValue, pub account_id: _0, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReturnFlags { pub bits: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum StorageDeposit<_0> { #[codec(index = 0)] Refund(_0), #[codec(index = 1)] Charge(_0), } } pub mod pallet_conviction_voting { use super::runtime_types; pub mod conviction { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Conviction { #[codec(index = 0)] None, #[codec(index = 1)] Locked1x, #[codec(index = 2)] Locked2x, #[codec(index = 3)] Locked3x, #[codec(index = 4)] Locked4x, #[codec(index = 5)] Locked5x, #[codec(index = 6)] Locked6x, } } pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { # [codec (index = 0)] # [doc = "Vote in a poll. If `vote.is_aye()`, the vote is to enact the proposal;"] # [doc = "otherwise it is a vote to keep the status quo."] # [doc = ""] # [doc = "The dispatch origin of this call must be _Signed_."] # [doc = ""] # [doc = "- `poll_index`: The index of the poll to vote for."] # [doc = "- `vote`: The vote configuration."] # [doc = ""] # [doc = "Weight: `O(R)` where R is the number of polls the voter has voted on."] vote { # [codec (compact)] poll_index : :: core :: primitive :: u32 , vote : runtime_types :: pallet_conviction_voting :: vote :: AccountVote < :: core :: primitive :: u128 > , } , # [codec (index = 1)] # [doc = "Delegate the voting power (with some given conviction) of the sending account for a"] # [doc = "particular class of polls."] # [doc = ""] # [doc = "The balance delegated is locked for as long as it's delegated, and thereafter for the"] # [doc = "time appropriate for the conviction's lock period."] # [doc = ""] # [doc = "The dispatch origin of this call must be _Signed_, and the signing account must either:"] # [doc = " - be delegating already; or"] # [doc = " - have no voting activity (if there is, then it will need to be removed/consolidated"] # [doc = " through `reap_vote` or `unvote`)."] # [doc = ""] # [doc = "- `to`: The account whose voting the `target` account's voting power will follow."] # [doc = "- `class`: The class of polls to delegate. To delegate multiple classes, multiple calls"] # [doc = " to this function are required."] # [doc = "- `conviction`: The conviction that will be attached to the delegated votes. When the"] # [doc = " account is undelegated, the funds will be locked for the corresponding period."] # [doc = "- `balance`: The amount of the account's balance to be used in delegating. This must not"] # [doc = " be more than the account's current balance."] # [doc = ""] # [doc = "Emits `Delegated`."] # [doc = ""] # [doc = "Weight: `O(R)` where R is the number of polls the voter delegating to has"] # [doc = " voted on. Weight is initially charged as if maximum votes, but is refunded later."] delegate { class : :: core :: primitive :: u16 , to : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , conviction : runtime_types :: pallet_conviction_voting :: conviction :: Conviction , balance : :: core :: primitive :: u128 , } , # [codec (index = 2)] # [doc = "Undelegate the voting power of the sending account for a particular class of polls."] # [doc = ""] # [doc = "Tokens may be unlocked following once an amount of time consistent with the lock period"] # [doc = "of the conviction with which the delegation was issued has passed."] # [doc = ""] # [doc = "The dispatch origin of this call must be _Signed_ and the signing account must be"] # [doc = "currently delegating."] # [doc = ""] # [doc = "- `class`: The class of polls to remove the delegation from."] # [doc = ""] # [doc = "Emits `Undelegated`."] # [doc = ""] # [doc = "Weight: `O(R)` where R is the number of polls the voter delegating to has"] # [doc = " voted on. Weight is initially charged as if maximum votes, but is refunded later."] undelegate { class : :: core :: primitive :: u16 , } , # [codec (index = 3)] # [doc = "Remove the lock caused by prior voting/delegating which has expired within a particular"] # [doc = "class."] # [doc = ""] # [doc = "The dispatch origin of this call must be _Signed_."] # [doc = ""] # [doc = "- `class`: The class of polls to unlock."] # [doc = "- `target`: The account to remove the lock on."] # [doc = ""] # [doc = "Weight: `O(R)` with R number of vote of target."] unlock { class : :: core :: primitive :: u16 , target : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , } , # [codec (index = 4)] # [doc = "Remove a vote for a poll."] # [doc = ""] # [doc = "If:"] # [doc = "- the poll was cancelled, or"] # [doc = "- the poll is ongoing, or"] # [doc = "- the poll has ended such that"] # [doc = " - the vote of the account was in opposition to the result; or"] # [doc = " - there was no conviction to the account's vote; or"] # [doc = " - the account made a split vote"] # [doc = "...then the vote is removed cleanly and a following call to `unlock` may result in more"] # [doc = "funds being available."] # [doc = ""] # [doc = "If, however, the poll has ended and:"] # [doc = "- it finished corresponding to the vote of the account, and"] # [doc = "- the account made a standard vote with conviction, and"] # [doc = "- the lock period of the conviction is not over"] # [doc = "...then the lock will be aggregated into the overall account's lock, which may involve"] # [doc = "*overlocking* (where the two locks are combined into a single lock that is the maximum"] # [doc = "of both the amount locked and the time is it locked for)."] # [doc = ""] # [doc = "The dispatch origin of this call must be _Signed_, and the signer must have a vote"] # [doc = "registered for poll `index`."] # [doc = ""] # [doc = "- `index`: The index of poll of the vote to be removed."] # [doc = "- `class`: Optional parameter, if given it indicates the class of the poll. For polls"] # [doc = " which have finished or are cancelled, this must be `Some`."] # [doc = ""] # [doc = "Weight: `O(R + log R)` where R is the number of polls that `target` has voted on."] # [doc = " Weight is calculated for the maximum number of vote."] remove_vote { class : :: core :: option :: Option < :: core :: primitive :: u16 > , index : :: core :: primitive :: u32 , } , # [codec (index = 5)] # [doc = "Remove a vote for a poll."] # [doc = ""] # [doc = "If the `target` is equal to the signer, then this function is exactly equivalent to"] # [doc = "`remove_vote`. If not equal to the signer, then the vote must have expired,"] # [doc = "either because the poll was cancelled, because the voter lost the poll or"] # [doc = "because the conviction period is over."] # [doc = ""] # [doc = "The dispatch origin of this call must be _Signed_."] # [doc = ""] # [doc = "- `target`: The account of the vote to be removed; this account must have voted for poll"] # [doc = " `index`."] # [doc = "- `index`: The index of poll of the vote to be removed."] # [doc = "- `class`: The class of the poll."] # [doc = ""] # [doc = "Weight: `O(R + log R)` where R is the number of polls that `target` has voted on."] # [doc = " Weight is calculated for the maximum number of vote."] remove_other_vote { target : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , class : :: core :: primitive :: u16 , index : :: core :: primitive :: u32 , } , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Poll is not ongoing."] NotOngoing, #[codec(index = 1)] #[doc = "The given account did not vote on the poll."] NotVoter, #[codec(index = 2)] #[doc = "The actor has no permission to conduct the action."] NoPermission, #[codec(index = 3)] #[doc = "The actor has no permission to conduct the action right now but will do in the future."] NoPermissionYet, #[codec(index = 4)] #[doc = "The account is already delegating."] AlreadyDelegating, #[codec(index = 5)] #[doc = "The account currently has votes attached to it and the operation cannot succeed until"] #[doc = "these are removed, either through `unvote` or `reap_vote`."] AlreadyVoting, #[codec(index = 6)] #[doc = "Too high a balance was provided that the account cannot afford."] InsufficientFunds, #[codec(index = 7)] #[doc = "The account is not currently delegating."] NotDelegating, #[codec(index = 8)] #[doc = "Delegation to oneself makes no sense."] Nonsense, #[codec(index = 9)] #[doc = "Maximum number of votes reached."] MaxVotesReached, #[codec(index = 10)] #[doc = "The class must be supplied since it is not easily determinable from the state."] ClassNeeded, #[codec(index = 11)] #[doc = "The class ID supplied is invalid."] BadClass, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "An account has delegated their vote to another account. \\[who, target\\]"] Delegated(::subxt::utils::AccountId32, ::subxt::utils::AccountId32), #[codec(index = 1)] #[doc = "An \\[account\\] has cancelled a previous delegation operation."] Undelegated(::subxt::utils::AccountId32), } } pub mod types { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Delegations<_0> { pub votes: _0, pub capital: _0, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Tally<_0> { pub ayes: _0, pub nays: _0, pub support: _0, } } pub mod vote { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum AccountVote<_0> { #[codec(index = 0)] Standard { vote: runtime_types::pallet_conviction_voting::vote::Vote, balance: _0, }, #[codec(index = 1)] Split { aye: _0, nay: _0 }, #[codec(index = 2)] SplitAbstain { aye: _0, nay: _0, abstain: _0 }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Casting<_0, _1, _2> { pub votes: runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( _1, runtime_types::pallet_conviction_voting::vote::AccountVote< _0, >, )>, pub delegations: runtime_types::pallet_conviction_voting::types::Delegations<_0>, pub prior: runtime_types::pallet_conviction_voting::vote::PriorLock<_1, _0>, #[codec(skip)] pub __subxt_unused_type_params: ::core::marker::PhantomData<_2>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Delegating<_0, _1, _2> { pub balance: _0, pub target: _1, pub conviction: runtime_types::pallet_conviction_voting::conviction::Conviction, pub delegations: runtime_types::pallet_conviction_voting::types::Delegations<_0>, pub prior: runtime_types::pallet_conviction_voting::vote::PriorLock<_2, _0>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PriorLock<_0, _1>(pub _0, pub _1); #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vote(pub ::core::primitive::u8); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Voting<_0, _1, _2, _3> { #[codec(index = 0)] Casting( runtime_types::pallet_conviction_voting::vote::Casting< _0, _2, _2, >, ), #[codec(index = 1)] Delegating( runtime_types::pallet_conviction_voting::vote::Delegating< _0, _1, _2, >, ), __Ignore(::core::marker::PhantomData<_3>), } } } pub mod pallet_democracy { use super::runtime_types; pub mod conviction { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Conviction { #[codec(index = 0)] None, #[codec(index = 1)] Locked1x, #[codec(index = 2)] Locked2x, #[codec(index = 3)] Locked3x, #[codec(index = 4)] Locked4x, #[codec(index = 5)] Locked5x, #[codec(index = 6)] Locked6x, } } pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Propose a sensitive action to be taken."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_ and the sender must"] #[doc = "have funds to cover the deposit."] #[doc = ""] #[doc = "- `proposal_hash`: The hash of the proposal preimage."] #[doc = "- `value`: The amount of deposit (must be at least `MinimumDeposit`)."] #[doc = ""] #[doc = "Emits `Proposed`."] propose { proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, #[codec(compact)] value: ::core::primitive::u128, }, #[codec(index = 1)] #[doc = "Signals agreement with a particular proposal."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_ and the sender"] #[doc = "must have funds to cover the deposit, equal to the original deposit."] #[doc = ""] #[doc = "- `proposal`: The index of the proposal to second."] second { #[codec(compact)] proposal: ::core::primitive::u32, }, #[codec(index = 2)] #[doc = "Vote in a referendum. If `vote.is_aye()`, the vote is to enact the proposal;"] #[doc = "otherwise it is a vote to keep the status quo."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_."] #[doc = ""] #[doc = "- `ref_index`: The index of the referendum to vote for."] #[doc = "- `vote`: The vote configuration."] vote { #[codec(compact)] ref_index: ::core::primitive::u32, vote: runtime_types::pallet_democracy::vote::AccountVote< ::core::primitive::u128, >, }, #[codec(index = 3)] #[doc = "Schedule an emergency cancellation of a referendum. Cannot happen twice to the same"] #[doc = "referendum."] #[doc = ""] #[doc = "The dispatch origin of this call must be `CancellationOrigin`."] #[doc = ""] #[doc = "-`ref_index`: The index of the referendum to cancel."] #[doc = ""] #[doc = "Weight: `O(1)`."] emergency_cancel { ref_index: ::core::primitive::u32 }, #[codec(index = 4)] #[doc = "Schedule a referendum to be tabled once it is legal to schedule an external"] #[doc = "referendum."] #[doc = ""] #[doc = "The dispatch origin of this call must be `ExternalOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The preimage hash of the proposal."] external_propose { proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 5)] #[doc = "Schedule a majority-carries referendum to be tabled next once it is legal to schedule"] #[doc = "an external referendum."] #[doc = ""] #[doc = "The dispatch of this call must be `ExternalMajorityOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The preimage hash of the proposal."] #[doc = ""] #[doc = "Unlike `external_propose`, blacklisting has no effect on this and it may replace a"] #[doc = "pre-scheduled `external_propose` call."] #[doc = ""] #[doc = "Weight: `O(1)`"] external_propose_majority { proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 6)] #[doc = "Schedule a negative-turnout-bias referendum to be tabled next once it is legal to"] #[doc = "schedule an external referendum."] #[doc = ""] #[doc = "The dispatch of this call must be `ExternalDefaultOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The preimage hash of the proposal."] #[doc = ""] #[doc = "Unlike `external_propose`, blacklisting has no effect on this and it may replace a"] #[doc = "pre-scheduled `external_propose` call."] #[doc = ""] #[doc = "Weight: `O(1)`"] external_propose_default { proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 7)] #[doc = "Schedule the currently externally-proposed majority-carries referendum to be tabled"] #[doc = "immediately. If there is no externally-proposed referendum currently, or if there is one"] #[doc = "but it is not a majority-carries referendum then it fails."] #[doc = ""] #[doc = "The dispatch of this call must be `FastTrackOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The hash of the current external proposal."] #[doc = "- `voting_period`: The period that is allowed for voting on this proposal. Increased to"] #[doc = "\tMust be always greater than zero."] #[doc = "\tFor `FastTrackOrigin` must be equal or greater than `FastTrackVotingPeriod`."] #[doc = "- `delay`: The number of block after voting has ended in approval and this should be"] #[doc = " enacted. This doesn't have a minimum amount."] #[doc = ""] #[doc = "Emits `Started`."] #[doc = ""] #[doc = "Weight: `O(1)`"] fast_track { proposal_hash: ::subxt::utils::H256, voting_period: ::core::primitive::u32, delay: ::core::primitive::u32, }, #[codec(index = 8)] #[doc = "Veto and blacklist the external proposal hash."] #[doc = ""] #[doc = "The dispatch origin of this call must be `VetoOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The preimage hash of the proposal to veto and blacklist."] #[doc = ""] #[doc = "Emits `Vetoed`."] #[doc = ""] #[doc = "Weight: `O(V + log(V))` where V is number of `existing vetoers`"] veto_external { proposal_hash: ::subxt::utils::H256 }, #[codec(index = 9)] #[doc = "Remove a referendum."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Root_."] #[doc = ""] #[doc = "- `ref_index`: The index of the referendum to cancel."] #[doc = ""] #[doc = "# Weight: `O(1)`."] cancel_referendum { #[codec(compact)] ref_index: ::core::primitive::u32, }, #[codec(index = 10)] #[doc = "Delegate the voting power (with some given conviction) of the sending account."] #[doc = ""] #[doc = "The balance delegated is locked for as long as it's delegated, and thereafter for the"] #[doc = "time appropriate for the conviction's lock period."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_, and the signing account must either:"] #[doc = " - be delegating already; or"] #[doc = " - have no voting activity (if there is, then it will need to be removed/consolidated"] #[doc = " through `reap_vote` or `unvote`)."] #[doc = ""] #[doc = "- `to`: The account whose voting the `target` account's voting power will follow."] #[doc = "- `conviction`: The conviction that will be attached to the delegated votes. When the"] #[doc = " account is undelegated, the funds will be locked for the corresponding period."] #[doc = "- `balance`: The amount of the account's balance to be used in delegating. This must not"] #[doc = " be more than the account's current balance."] #[doc = ""] #[doc = "Emits `Delegated`."] #[doc = ""] #[doc = "Weight: `O(R)` where R is the number of referendums the voter delegating to has"] #[doc = " voted on. Weight is charged as if maximum votes."] delegate { to: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, conviction: runtime_types::pallet_democracy::conviction::Conviction, balance: ::core::primitive::u128, }, #[codec(index = 11)] #[doc = "Undelegate the voting power of the sending account."] #[doc = ""] #[doc = "Tokens may be unlocked following once an amount of time consistent with the lock period"] #[doc = "of the conviction with which the delegation was issued."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_ and the signing account must be"] #[doc = "currently delegating."] #[doc = ""] #[doc = "Emits `Undelegated`."] #[doc = ""] #[doc = "Weight: `O(R)` where R is the number of referendums the voter delegating to has"] #[doc = " voted on. Weight is charged as if maximum votes."] undelegate, #[codec(index = 12)] #[doc = "Clears all public proposals."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Root_."] #[doc = ""] #[doc = "Weight: `O(1)`."] clear_public_proposals, #[codec(index = 13)] #[doc = "Unlock tokens that have an expired lock."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_."] #[doc = ""] #[doc = "- `target`: The account to remove the lock on."] #[doc = ""] #[doc = "Weight: `O(R)` with R number of vote of target."] unlock { target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 14)] #[doc = "Remove a vote for a referendum."] #[doc = ""] #[doc = "If:"] #[doc = "- the referendum was cancelled, or"] #[doc = "- the referendum is ongoing, or"] #[doc = "- the referendum has ended such that"] #[doc = " - the vote of the account was in opposition to the result; or"] #[doc = " - there was no conviction to the account's vote; or"] #[doc = " - the account made a split vote"] #[doc = "...then the vote is removed cleanly and a following call to `unlock` may result in more"] #[doc = "funds being available."] #[doc = ""] #[doc = "If, however, the referendum has ended and:"] #[doc = "- it finished corresponding to the vote of the account, and"] #[doc = "- the account made a standard vote with conviction, and"] #[doc = "- the lock period of the conviction is not over"] #[doc = "...then the lock will be aggregated into the overall account's lock, which may involve"] #[doc = "*overlocking* (where the two locks are combined into a single lock that is the maximum"] #[doc = "of both the amount locked and the time is it locked for)."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_, and the signer must have a vote"] #[doc = "registered for referendum `index`."] #[doc = ""] #[doc = "- `index`: The index of referendum of the vote to be removed."] #[doc = ""] #[doc = "Weight: `O(R + log R)` where R is the number of referenda that `target` has voted on."] #[doc = " Weight is calculated for the maximum number of vote."] remove_vote { index: ::core::primitive::u32 }, #[codec(index = 15)] #[doc = "Remove a vote for a referendum."] #[doc = ""] #[doc = "If the `target` is equal to the signer, then this function is exactly equivalent to"] #[doc = "`remove_vote`. If not equal to the signer, then the vote must have expired,"] #[doc = "either because the referendum was cancelled, because the voter lost the referendum or"] #[doc = "because the conviction period is over."] #[doc = ""] #[doc = "The dispatch origin of this call must be _Signed_."] #[doc = ""] #[doc = "- `target`: The account of the vote to be removed; this account must have voted for"] #[doc = " referendum `index`."] #[doc = "- `index`: The index of referendum of the vote to be removed."] #[doc = ""] #[doc = "Weight: `O(R + log R)` where R is the number of referenda that `target` has voted on."] #[doc = " Weight is calculated for the maximum number of vote."] remove_other_vote { target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, index: ::core::primitive::u32, }, #[codec(index = 16)] #[doc = "Permanently place a proposal into the blacklist. This prevents it from ever being"] #[doc = "proposed again."] #[doc = ""] #[doc = "If called on a queued public or external proposal, then this will result in it being"] #[doc = "removed. If the `ref_index` supplied is an active referendum with the proposal hash,"] #[doc = "then it will be cancelled."] #[doc = ""] #[doc = "The dispatch origin of this call must be `BlacklistOrigin`."] #[doc = ""] #[doc = "- `proposal_hash`: The proposal hash to blacklist permanently."] #[doc = "- `ref_index`: An ongoing referendum whose hash is `proposal_hash`, which will be"] #[doc = "cancelled."] #[doc = ""] #[doc = "Weight: `O(p)` (though as this is an high-privilege dispatch, we assume it has a"] #[doc = " reasonable value)."] blacklist { proposal_hash: ::subxt::utils::H256, maybe_ref_index: ::core::option::Option<::core::primitive::u32>, }, #[codec(index = 17)] #[doc = "Remove a proposal."] #[doc = ""] #[doc = "The dispatch origin of this call must be `CancelProposalOrigin`."] #[doc = ""] #[doc = "- `prop_index`: The index of the proposal to cancel."] #[doc = ""] #[doc = "Weight: `O(p)` where `p = PublicProps::::decode_len()`"] cancel_proposal { #[codec(compact)] prop_index: ::core::primitive::u32, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Value too low"] ValueLow, #[codec(index = 1)] #[doc = "Proposal does not exist"] ProposalMissing, #[codec(index = 2)] #[doc = "Cannot cancel the same proposal twice"] AlreadyCanceled, #[codec(index = 3)] #[doc = "Proposal already made"] DuplicateProposal, #[codec(index = 4)] #[doc = "Proposal still blacklisted"] ProposalBlacklisted, #[codec(index = 5)] #[doc = "Next external proposal not simple majority"] NotSimpleMajority, #[codec(index = 6)] #[doc = "Invalid hash"] InvalidHash, #[codec(index = 7)] #[doc = "No external proposal"] NoProposal, #[codec(index = 8)] #[doc = "Identity may not veto a proposal twice"] AlreadyVetoed, #[codec(index = 9)] #[doc = "Vote given for invalid referendum"] ReferendumInvalid, #[codec(index = 10)] #[doc = "No proposals waiting"] NoneWaiting, #[codec(index = 11)] #[doc = "The given account did not vote on the referendum."] NotVoter, #[codec(index = 12)] #[doc = "The actor has no permission to conduct the action."] NoPermission, #[codec(index = 13)] #[doc = "The account is already delegating."] AlreadyDelegating, #[codec(index = 14)] #[doc = "Too high a balance was provided that the account cannot afford."] InsufficientFunds, #[codec(index = 15)] #[doc = "The account is not currently delegating."] NotDelegating, #[codec(index = 16)] #[doc = "The account currently has votes attached to it and the operation cannot succeed until"] #[doc = "these are removed, either through `unvote` or `reap_vote`."] VotesExist, #[codec(index = 17)] #[doc = "The instant referendum origin is currently disallowed."] InstantNotAllowed, #[codec(index = 18)] #[doc = "Delegation to oneself makes no sense."] Nonsense, #[codec(index = 19)] #[doc = "Invalid upper bound."] WrongUpperBound, #[codec(index = 20)] #[doc = "Maximum number of votes reached."] MaxVotesReached, #[codec(index = 21)] #[doc = "Maximum number of items reached."] TooMany, #[codec(index = 22)] #[doc = "Voting period too low"] VotingPeriodLow, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { # [codec (index = 0)] # [doc = "A motion has been proposed by a public account."] Proposed { proposal_index : :: core :: primitive :: u32 , deposit : :: core :: primitive :: u128 , } , # [codec (index = 1)] # [doc = "A public proposal has been tabled for referendum vote."] Tabled { proposal_index : :: core :: primitive :: u32 , deposit : :: core :: primitive :: u128 , } , # [codec (index = 2)] # [doc = "An external proposal has been tabled."] ExternalTabled , # [codec (index = 3)] # [doc = "A referendum has begun."] Started { ref_index : :: core :: primitive :: u32 , threshold : runtime_types :: pallet_democracy :: vote_threshold :: VoteThreshold , } , # [codec (index = 4)] # [doc = "A proposal has been approved by referendum."] Passed { ref_index : :: core :: primitive :: u32 , } , # [codec (index = 5)] # [doc = "A proposal has been rejected by referendum."] NotPassed { ref_index : :: core :: primitive :: u32 , } , # [codec (index = 6)] # [doc = "A referendum has been cancelled."] Cancelled { ref_index : :: core :: primitive :: u32 , } , # [codec (index = 7)] # [doc = "An account has delegated their vote to another account."] Delegated { who : :: subxt :: utils :: AccountId32 , target : :: subxt :: utils :: AccountId32 , } , # [codec (index = 8)] # [doc = "An account has cancelled a previous delegation operation."] Undelegated { account : :: subxt :: utils :: AccountId32 , } , # [codec (index = 9)] # [doc = "An external proposal has been vetoed."] Vetoed { who : :: subxt :: utils :: AccountId32 , proposal_hash : :: subxt :: utils :: H256 , until : :: core :: primitive :: u32 , } , # [codec (index = 10)] # [doc = "A proposal_hash has been blacklisted permanently."] Blacklisted { proposal_hash : :: subxt :: utils :: H256 , } , # [codec (index = 11)] # [doc = "An account has voted in a referendum"] Voted { voter : :: subxt :: utils :: AccountId32 , ref_index : :: core :: primitive :: u32 , vote : runtime_types :: pallet_democracy :: vote :: AccountVote < :: core :: primitive :: u128 > , } , # [codec (index = 12)] # [doc = "An account has secconded a proposal"] Seconded { seconder : :: subxt :: utils :: AccountId32 , prop_index : :: core :: primitive :: u32 , } , # [codec (index = 13)] # [doc = "A proposal got canceled."] ProposalCanceled { prop_index : :: core :: primitive :: u32 , } , } } pub mod types { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Delegations<_0> { pub votes: _0, pub capital: _0, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ReferendumInfo<_0, _1, _2> { #[codec(index = 0)] Ongoing( runtime_types::pallet_democracy::types::ReferendumStatus< _0, _1, _2, >, ), #[codec(index = 1)] Finished { approved: ::core::primitive::bool, end: _0, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReferendumStatus<_0, _1, _2> { pub end: _0, pub proposal: _1, pub threshold: runtime_types::pallet_democracy::vote_threshold::VoteThreshold, pub delay: _0, pub tally: runtime_types::pallet_democracy::types::Tally<_2>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Tally<_0> { pub ayes: _0, pub nays: _0, pub turnout: _0, } } pub mod vote { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum AccountVote<_0> { #[codec(index = 0)] Standard { vote: runtime_types::pallet_democracy::vote::Vote, balance: _0, }, #[codec(index = 1)] Split { aye: _0, nay: _0 }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PriorLock<_0, _1>(pub _0, pub _1); #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Vote(pub ::core::primitive::u8); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Voting<_0, _1, _2> { #[codec(index = 0)] Direct { votes: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< (_2, runtime_types::pallet_democracy::vote::AccountVote<_0>), >, delegations: runtime_types::pallet_democracy::types::Delegations<_0>, prior: runtime_types::pallet_democracy::vote::PriorLock<_2, _0>, }, #[codec(index = 1)] Delegating { balance: _0, target: _1, conviction: runtime_types::pallet_democracy::conviction::Conviction, delegations: runtime_types::pallet_democracy::types::Delegations<_0>, prior: runtime_types::pallet_democracy::vote::PriorLock<_2, _0>, }, } } pub mod vote_threshold { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum VoteThreshold { #[codec(index = 0)] SuperMajorityApprove, #[codec(index = 1)] SuperMajorityAgainst, #[codec(index = 2)] SimpleMajority, } } } pub mod pallet_election_provider_multi_phase { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { # [codec (index = 0)] # [doc = "Submit a solution for the unsigned phase."] # [doc = ""] # [doc = "The dispatch origin fo this call must be __none__."] # [doc = ""] # [doc = "This submission is checked on the fly. Moreover, this unsigned solution is only"] # [doc = "validated when submitted to the pool from the **local** node. Effectively, this means"] # [doc = "that only active validators can submit this transaction when authoring a block (similar"] # [doc = "to an inherent)."] # [doc = ""] # [doc = "To prevent any incorrect solution (and thus wasted time/weight), this transaction will"] # [doc = "panic if the solution submitted by the validator is invalid in any way, effectively"] # [doc = "putting their authoring reward at risk."] # [doc = ""] # [doc = "No deposit or reward is associated with this submission."] submit_unsigned { raw_solution : :: std :: boxed :: Box < runtime_types :: pallet_election_provider_multi_phase :: RawSolution < runtime_types :: kitchensink_runtime :: NposSolution16 > > , witness : runtime_types :: pallet_election_provider_multi_phase :: SolutionOrSnapshotSize , } , # [codec (index = 1)] # [doc = "Set a new value for `MinimumUntrustedScore`."] # [doc = ""] # [doc = "Dispatch origin must be aligned with `T::ForceOrigin`."] # [doc = ""] # [doc = "This check can be turned off by setting the value to `None`."] set_minimum_untrusted_score { maybe_next_score : :: core :: option :: Option < runtime_types :: sp_npos_elections :: ElectionScore > , } , # [codec (index = 2)] # [doc = "Set a solution in the queue, to be handed out to the client of this pallet in the next"] # [doc = "call to `ElectionProvider::elect`."] # [doc = ""] # [doc = "This can only be set by `T::ForceOrigin`, and only when the phase is `Emergency`."] # [doc = ""] # [doc = "The solution is not checked for any feasibility and is assumed to be trustworthy, as any"] # [doc = "feasibility check itself can in principle cause the election process to fail (due to"] # [doc = "memory/weight constrains)."] set_emergency_election_result { supports : :: std :: vec :: Vec < (:: subxt :: utils :: AccountId32 , runtime_types :: sp_npos_elections :: Support < :: subxt :: utils :: AccountId32 > ,) > , } , # [codec (index = 3)] # [doc = "Submit a solution for the signed phase."] # [doc = ""] # [doc = "The dispatch origin fo this call must be __signed__."] # [doc = ""] # [doc = "The solution is potentially queued, based on the claimed score and processed at the end"] # [doc = "of the signed phase."] # [doc = ""] # [doc = "A deposit is reserved and recorded for the solution. Based on the outcome, the solution"] # [doc = "might be rewarded, slashed, or get all or a part of the deposit back."] submit { raw_solution : :: std :: boxed :: Box < runtime_types :: pallet_election_provider_multi_phase :: RawSolution < runtime_types :: kitchensink_runtime :: NposSolution16 > > , } , # [codec (index = 4)] # [doc = "Trigger the governance fallback."] # [doc = ""] # [doc = "This can only be called when [`Phase::Emergency`] is enabled, as an alternative to"] # [doc = "calling [`Call::set_emergency_election_result`]."] governance_fallback { maybe_max_voters : :: core :: option :: Option < :: core :: primitive :: u32 > , maybe_max_targets : :: core :: option :: Option < :: core :: primitive :: u32 > , } , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Error of the pallet that can be returned in response to dispatches."] pub enum Error { #[codec(index = 0)] #[doc = "Submission was too early."] PreDispatchEarlySubmission, #[codec(index = 1)] #[doc = "Wrong number of winners presented."] PreDispatchWrongWinnerCount, #[codec(index = 2)] #[doc = "Submission was too weak, score-wise."] PreDispatchWeakSubmission, #[codec(index = 3)] #[doc = "The queue was full, and the solution was not better than any of the existing ones."] SignedQueueFull, #[codec(index = 4)] #[doc = "The origin failed to pay the deposit."] SignedCannotPayDeposit, #[codec(index = 5)] #[doc = "Witness data to dispatchable is invalid."] SignedInvalidWitness, #[codec(index = 6)] #[doc = "The signed submission consumes too much weight"] SignedTooMuchWeight, #[codec(index = 7)] #[doc = "OCW submitted solution for wrong round"] OcwCallWrongEra, #[codec(index = 8)] #[doc = "Snapshot metadata should exist but didn't."] MissingSnapshotMetadata, #[codec(index = 9)] #[doc = "`Self::insert_submission` returned an invalid index."] InvalidSubmissionIndex, #[codec(index = 10)] #[doc = "The call is not allowed at this point."] CallNotAllowed, #[codec(index = 11)] #[doc = "The fallback failed"] FallbackFailed, #[codec(index = 12)] #[doc = "Some bound not met"] BoundNotMet, #[codec(index = 13)] #[doc = "Submitted solution has too many winners"] TooManyWinners, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { # [codec (index = 0)] # [doc = "A solution was stored with the given compute."] # [doc = ""] # [doc = "The `origin` indicates the origin of the solution. If `origin` is `Some(AccountId)`,"] # [doc = "the stored solution was submited in the signed phase by a miner with the `AccountId`."] # [doc = "Otherwise, the solution was stored either during the unsigned phase or by"] # [doc = "`T::ForceOrigin`. The `bool` is `true` when a previous solution was ejected to make"] # [doc = "room for this one."] SolutionStored { compute : runtime_types :: pallet_election_provider_multi_phase :: ElectionCompute , origin : :: core :: option :: Option < :: subxt :: utils :: AccountId32 > , prev_ejected : :: core :: primitive :: bool , } , # [codec (index = 1)] # [doc = "The election has been finalized, with the given computation and score."] ElectionFinalized { compute : runtime_types :: pallet_election_provider_multi_phase :: ElectionCompute , score : runtime_types :: sp_npos_elections :: ElectionScore , } , # [codec (index = 2)] # [doc = "An election failed."] # [doc = ""] # [doc = "Not much can be said about which computes failed in the process."] ElectionFailed , # [codec (index = 3)] # [doc = "An account has been rewarded for their signed submission being finalized."] Rewarded { account : :: subxt :: utils :: AccountId32 , value : :: core :: primitive :: u128 , } , # [codec (index = 4)] # [doc = "An account has been slashed for submitting an invalid signed submission."] Slashed { account : :: subxt :: utils :: AccountId32 , value : :: core :: primitive :: u128 , } , # [codec (index = 5)] # [doc = "There was a phase transition in a given round."] PhaseTransitioned { from : runtime_types :: pallet_election_provider_multi_phase :: Phase < :: core :: primitive :: u32 > , to : runtime_types :: pallet_election_provider_multi_phase :: Phase < :: core :: primitive :: u32 > , round : :: core :: primitive :: u32 , } , } } pub mod signed { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SignedSubmission<_0, _1, _2> { pub who: _0, pub deposit: _1, pub raw_solution: runtime_types::pallet_election_provider_multi_phase::RawSolution< _2, >, pub call_fee: _1, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ElectionCompute { #[codec(index = 0)] OnChain, #[codec(index = 1)] Signed, #[codec(index = 2)] Unsigned, #[codec(index = 3)] Fallback, #[codec(index = 4)] Emergency, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Phase<_0> { #[codec(index = 0)] Off, #[codec(index = 1)] Signed, #[codec(index = 2)] Unsigned((::core::primitive::bool, _0)), #[codec(index = 3)] Emergency, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RawSolution<_0> { pub solution: _0, pub score: runtime_types::sp_npos_elections::ElectionScore, pub round: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReadySolution { pub supports: runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::subxt::utils::AccountId32, runtime_types::sp_npos_elections::Support< ::subxt::utils::AccountId32, >, )>, pub score: runtime_types::sp_npos_elections::ElectionScore, pub compute: runtime_types::pallet_election_provider_multi_phase::ElectionCompute, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RoundSnapshot { pub voters: ::std::vec::Vec<( ::subxt::utils::AccountId32, ::core::primitive::u64, runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, )>, pub targets: ::std::vec::Vec<::subxt::utils::AccountId32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SolutionOrSnapshotSize { #[codec(compact)] pub voters: ::core::primitive::u32, #[codec(compact)] pub targets: ::core::primitive::u32, } } pub mod pallet_elections_phragmen { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Vote for a set of candidates for the upcoming round of election. This can be called to"] #[doc = "set the initial votes, or update already existing votes."] #[doc = ""] #[doc = "Upon initial voting, `value` units of `who`'s balance is locked and a deposit amount is"] #[doc = "reserved. The deposit is based on the number of votes and can be updated over time."] #[doc = ""] #[doc = "The `votes` should:"] #[doc = " - not be empty."] #[doc = " - be less than the number of possible candidates. Note that all current members and"] #[doc = " runners-up are also automatically candidates for the next round."] #[doc = ""] #[doc = "If `value` is more than `who`'s free balance, then the maximum of the two is used."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed."] #[doc = ""] #[doc = "### Warning"] #[doc = ""] #[doc = "It is the responsibility of the caller to **NOT** place all of their balance into the"] #[doc = "lock and keep some for further operations."] #[doc = ""] #[doc = "# "] #[doc = "We assume the maximum weight among all 3 cases: vote_equal, vote_more and vote_less."] #[doc = "# "] vote { votes: ::std::vec::Vec<::subxt::utils::AccountId32>, #[codec(compact)] value: ::core::primitive::u128, }, #[codec(index = 1)] #[doc = "Remove `origin` as a voter."] #[doc = ""] #[doc = "This removes the lock and returns the deposit."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed and be a voter."] remove_voter, #[codec(index = 2)] #[doc = "Submit oneself for candidacy. A fixed amount of deposit is recorded."] #[doc = ""] #[doc = "All candidates are wiped at the end of the term. They either become a member/runner-up,"] #[doc = "or leave the system while their deposit is slashed."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed."] #[doc = ""] #[doc = "### Warning"] #[doc = ""] #[doc = "Even if a candidate ends up being a member, they must call [`Call::renounce_candidacy`]"] #[doc = "to get their deposit back. Losing the spot in an election will always lead to a slash."] #[doc = ""] #[doc = "# "] #[doc = "The number of current candidates must be provided as witness data."] #[doc = "# "] submit_candidacy { #[codec(compact)] candidate_count: ::core::primitive::u32, }, #[codec(index = 3)] #[doc = "Renounce one's intention to be a candidate for the next election round. 3 potential"] #[doc = "outcomes exist:"] #[doc = ""] #[doc = "- `origin` is a candidate and not elected in any set. In this case, the deposit is"] #[doc = " unreserved, returned and origin is removed as a candidate."] #[doc = "- `origin` is a current runner-up. In this case, the deposit is unreserved, returned and"] #[doc = " origin is removed as a runner-up."] #[doc = "- `origin` is a current member. In this case, the deposit is unreserved and origin is"] #[doc = " removed as a member, consequently not being a candidate for the next round anymore."] #[doc = " Similar to [`remove_member`](Self::remove_member), if replacement runners exists, they"] #[doc = " are immediately used. If the prime is renouncing, then no prime will exist until the"] #[doc = " next round."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed, and have one of the above roles."] #[doc = ""] #[doc = "# "] #[doc = "The type of renouncing must be provided as witness data."] #[doc = "# "] renounce_candidacy { renouncing: runtime_types::pallet_elections_phragmen::Renouncing, }, #[codec(index = 4)] #[doc = "Remove a particular member from the set. This is effective immediately and the bond of"] #[doc = "the outgoing member is slashed."] #[doc = ""] #[doc = "If a runner-up is available, then the best runner-up will be removed and replaces the"] #[doc = "outgoing member. Otherwise, if `rerun_election` is `true`, a new phragmen election is"] #[doc = "started, else, nothing happens."] #[doc = ""] #[doc = "If `slash_bond` is set to true, the bond of the member being removed is slashed. Else,"] #[doc = "it is returned."] #[doc = ""] #[doc = "The dispatch origin of this call must be root."] #[doc = ""] #[doc = "Note that this does not affect the designated block number of the next election."] #[doc = ""] #[doc = "# "] #[doc = "If we have a replacement, we use a small weight. Else, since this is a root call and"] #[doc = "will go into phragmen, we assume full block for now."] #[doc = "# "] remove_member { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, slash_bond: ::core::primitive::bool, rerun_election: ::core::primitive::bool, }, #[codec(index = 5)] #[doc = "Clean all voters who are defunct (i.e. they do not serve any purpose at all). The"] #[doc = "deposit of the removed voters are returned."] #[doc = ""] #[doc = "This is an root function to be used only for cleaning the state."] #[doc = ""] #[doc = "The dispatch origin of this call must be root."] #[doc = ""] #[doc = "# "] #[doc = "The total number of voters and those that are defunct must be provided as witness data."] #[doc = "# "] clean_defunct_voters { num_voters: ::core::primitive::u32, num_defunct: ::core::primitive::u32, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Cannot vote when no candidates or members exist."] UnableToVote, #[codec(index = 1)] #[doc = "Must vote for at least one candidate."] NoVotes, #[codec(index = 2)] #[doc = "Cannot vote more than candidates."] TooManyVotes, #[codec(index = 3)] #[doc = "Cannot vote more than maximum allowed."] MaximumVotesExceeded, #[codec(index = 4)] #[doc = "Cannot vote with stake less than minimum balance."] LowBalance, #[codec(index = 5)] #[doc = "Voter can not pay voting bond."] UnableToPayBond, #[codec(index = 6)] #[doc = "Must be a voter."] MustBeVoter, #[codec(index = 7)] #[doc = "Duplicated candidate submission."] DuplicatedCandidate, #[codec(index = 8)] #[doc = "Too many candidates have been created."] TooManyCandidates, #[codec(index = 9)] #[doc = "Member cannot re-submit candidacy."] MemberSubmit, #[codec(index = 10)] #[doc = "Runner cannot re-submit candidacy."] RunnerUpSubmit, #[codec(index = 11)] #[doc = "Candidate does not have enough funds."] InsufficientCandidateFunds, #[codec(index = 12)] #[doc = "Not a member."] NotMember, #[codec(index = 13)] #[doc = "The provided count of number of candidates is incorrect."] InvalidWitnessData, #[codec(index = 14)] #[doc = "The provided count of number of votes is incorrect."] InvalidVoteCount, #[codec(index = 15)] #[doc = "The renouncing origin presented a wrong `Renouncing` parameter."] InvalidRenouncing, #[codec(index = 16)] #[doc = "Prediction regarding replacement after member removal is wrong."] InvalidReplacement, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A new term with new_members. This indicates that enough candidates existed to run"] #[doc = "the election, not that enough have has been elected. The inner value must be examined"] #[doc = "for this purpose. A `NewTerm(\\[\\])` indicates that some candidates got their bond"] #[doc = "slashed and none were elected, whilst `EmptyTerm` means that no candidates existed to"] #[doc = "begin with."] NewTerm { new_members: ::std::vec::Vec<( ::subxt::utils::AccountId32, ::core::primitive::u128, )>, }, #[codec(index = 1)] #[doc = "No (or not enough) candidates existed for this round. This is different from"] #[doc = "`NewTerm(\\[\\])`. See the description of `NewTerm`."] EmptyTerm, #[codec(index = 2)] #[doc = "Internal error happened while trying to perform election."] ElectionError, #[codec(index = 3)] #[doc = "A member has been removed. This should always be followed by either `NewTerm` or"] #[doc = "`EmptyTerm`."] MemberKicked { member: ::subxt::utils::AccountId32 }, #[codec(index = 4)] #[doc = "Someone has renounced their candidacy."] Renounced { candidate: ::subxt::utils::AccountId32, }, #[codec(index = 5)] #[doc = "A candidate was slashed by amount due to failing to obtain a seat as member or"] #[doc = "runner-up."] #[doc = ""] #[doc = "Note that old members and runners-up are also candidates."] CandidateSlashed { candidate: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 6)] #[doc = "A seat holder was slashed by amount by being forcefully removed from the set."] SeatHolderSlashed { seat_holder: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Renouncing { #[codec(index = 0)] Member, #[codec(index = 1)] RunnerUp, #[codec(index = 2)] Candidate(#[codec(compact)] ::core::primitive::u32), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SeatHolder<_0, _1> { pub who: _0, pub stake: _1, pub deposit: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Voter<_0, _1> { pub votes: ::std::vec::Vec<_0>, pub stake: _1, pub deposit: _1, } } pub mod pallet_fast_unstake { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Register oneself for fast-unstake."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed by the controller account, similar to"] #[doc = "`staking::unbond`."] #[doc = ""] #[doc = "The stash associated with the origin must have no ongoing unlocking chunks. If"] #[doc = "successful, this will fully unbond and chill the stash. Then, it will enqueue the stash"] #[doc = "to be checked in further blocks."] #[doc = ""] #[doc = "If by the time this is called, the stash is actually eligible for fast-unstake, then"] #[doc = "they are guaranteed to remain eligible, because the call will chill them as well."] #[doc = ""] #[doc = "If the check works, the entire staking data is removed, i.e. the stash is fully"] #[doc = "unstaked."] #[doc = ""] #[doc = "If the check fails, the stash remains chilled and waiting for being unbonded as in with"] #[doc = "the normal staking system, but they lose part of their unbonding chunks due to consuming"] #[doc = "the chain's resources."] register_fast_unstake, #[codec(index = 1)] #[doc = "Deregister oneself from the fast-unstake."] #[doc = ""] #[doc = "This is useful if one is registered, they are still waiting, and they change their mind."] #[doc = ""] #[doc = "Note that the associated stash is still fully unbonded and chilled as a consequence of"] #[doc = "calling `register_fast_unstake`. This should probably be followed by a call to"] #[doc = "`Staking::rebond`."] deregister, #[codec(index = 2)] #[doc = "Control the operation of this pallet."] #[doc = ""] #[doc = "Dispatch origin must be signed by the [`Config::ControlOrigin`]."] control { eras_to_check: ::core::primitive::u32, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "The provided Controller account was not found."] #[doc = ""] #[doc = "This means that the given account is not bonded."] NotController, #[codec(index = 1)] #[doc = "The bonded account has already been queued."] AlreadyQueued, #[codec(index = 2)] #[doc = "The bonded account has active unlocking chunks."] NotFullyBonded, #[codec(index = 3)] #[doc = "The provided un-staker is not in the `Queue`."] NotQueued, #[codec(index = 4)] #[doc = "The provided un-staker is already in Head, and cannot deregister."] AlreadyHead, #[codec(index = 5)] #[doc = "The call is not allowed at this point because the pallet is not active."] CallNotAllowed, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "The events of this pallet."] pub enum Event { #[codec(index = 0)] #[doc = "A staker was unstaked."] Unstaked { stash: ::subxt::utils::AccountId32, result: ::core::result::Result< (), runtime_types::sp_runtime::DispatchError, >, }, #[codec(index = 1)] #[doc = "A staker was slashed for requesting fast-unstake whilst being exposed."] Slashed { stash: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "An internal error happened. Operations will be paused now."] InternalError, #[codec(index = 3)] #[doc = "A batch was partially checked for the given eras, but the process did not finish."] BatchChecked { eras: ::std::vec::Vec<::core::primitive::u32>, }, #[codec(index = 4)] #[doc = "A batch of a given size was terminated."] #[doc = ""] #[doc = "This is always follows by a number of `Unstaked` or `Slashed` events, marking the end"] #[doc = "of the batch. A new batch will be created upon next block."] BatchFinished { size: ::core::primitive::u32 }, } } pub mod types { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UnstakeRequest { pub stashes: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< (::subxt::utils::AccountId32, ::core::primitive::u128), >, pub checked: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u32, >, } } } pub mod pallet_grandpa { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Report voter equivocation/misbehavior. This method will verify the"] #[doc = "equivocation proof and validate the given key ownership proof"] #[doc = "against the extracted offender. If both are valid, the offence"] #[doc = "will be reported."] report_equivocation { equivocation_proof: ::std::boxed::Box< runtime_types::sp_finality_grandpa::EquivocationProof< ::subxt::utils::H256, ::core::primitive::u32, >, >, key_owner_proof: runtime_types::sp_session::MembershipProof, }, #[codec(index = 1)] #[doc = "Report voter equivocation/misbehavior. This method will verify the"] #[doc = "equivocation proof and validate the given key ownership proof"] #[doc = "against the extracted offender. If both are valid, the offence"] #[doc = "will be reported."] #[doc = ""] #[doc = "This extrinsic must be called unsigned and it is expected that only"] #[doc = "block authors will call it (validated in `ValidateUnsigned`), as such"] #[doc = "if the block author is defined it will be defined as the equivocation"] #[doc = "reporter."] report_equivocation_unsigned { equivocation_proof: ::std::boxed::Box< runtime_types::sp_finality_grandpa::EquivocationProof< ::subxt::utils::H256, ::core::primitive::u32, >, >, key_owner_proof: runtime_types::sp_session::MembershipProof, }, #[codec(index = 2)] #[doc = "Note that the current authority set of the GRANDPA finality gadget has stalled."] #[doc = ""] #[doc = "This will trigger a forced authority set change at the beginning of the next session, to"] #[doc = "be enacted `delay` blocks after that. The `delay` should be high enough to safely assume"] #[doc = "that the block signalling the forced change will not be re-orged e.g. 1000 blocks."] #[doc = "The block production rate (which may be slowed down because of finality lagging) should"] #[doc = "be taken into account when choosing the `delay`. The GRANDPA voters based on the new"] #[doc = "authority will start voting on top of `best_finalized_block_number` for new finalized"] #[doc = "blocks. `best_finalized_block_number` should be the highest of the latest finalized"] #[doc = "block of all validators of the new authority set."] #[doc = ""] #[doc = "Only callable by root."] note_stalled { delay: ::core::primitive::u32, best_finalized_block_number: ::core::primitive::u32, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Attempt to signal GRANDPA pause when the authority set isn't live"] #[doc = "(either paused or already pending pause)."] PauseFailed, #[codec(index = 1)] #[doc = "Attempt to signal GRANDPA resume when the authority set isn't paused"] #[doc = "(either live or already pending resume)."] ResumeFailed, #[codec(index = 2)] #[doc = "Attempt to signal GRANDPA change with one already pending."] ChangePending, #[codec(index = 3)] #[doc = "Cannot signal forced change so soon after last."] TooSoon, #[codec(index = 4)] #[doc = "A key ownership proof provided as part of an equivocation report is invalid."] InvalidKeyOwnershipProof, #[codec(index = 5)] #[doc = "An equivocation proof provided as part of an equivocation report is invalid."] InvalidEquivocationProof, #[codec(index = 6)] #[doc = "A given equivocation report is valid but already previously reported."] DuplicateOffenceReport, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "New authority set has been applied."] NewAuthorities { authority_set: ::std::vec::Vec<( runtime_types::sp_finality_grandpa::app::Public, ::core::primitive::u64, )>, }, #[codec(index = 1)] #[doc = "Current authority set has been paused."] Paused, #[codec(index = 2)] #[doc = "Current authority set has been resumed."] Resumed, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct StoredPendingChange<_0> { pub scheduled_at: _0, pub delay: _0, pub next_authorities: runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec<( runtime_types::sp_finality_grandpa::app::Public, ::core::primitive::u64, )>, pub forced: ::core::option::Option<_0>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum StoredState<_0> { #[codec(index = 0)] Live, #[codec(index = 1)] PendingPause { scheduled_at: _0, delay: _0 }, #[codec(index = 2)] Paused, #[codec(index = 3)] PendingResume { scheduled_at: _0, delay: _0 }, } } pub mod pallet_identity { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Identity pallet declaration."] pub enum Call { #[codec(index = 0)] #[doc = "Add a registrar to the system."] #[doc = ""] #[doc = "The dispatch origin for this call must be `T::RegistrarOrigin`."] #[doc = ""] #[doc = "- `account`: the account of the registrar."] #[doc = ""] #[doc = "Emits `RegistrarAdded` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R)` where `R` registrar-count (governance-bounded and code-bounded)."] #[doc = "- One storage mutation (codec `O(R)`)."] #[doc = "- One event."] #[doc = "# "] add_registrar { account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 1)] #[doc = "Set an account's identity information and reserve the appropriate deposit."] #[doc = ""] #[doc = "If the account already has identity information, the deposit is taken as part payment"] #[doc = "for the new deposit."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `info`: The identity information."] #[doc = ""] #[doc = "Emits `IdentitySet` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(X + X' + R)`"] #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)"] #[doc = " - where `R` judgements-count (registrar-count-bounded)"] #[doc = "- One balance reserve operation."] #[doc = "- One storage mutation (codec-read `O(X' + R)`, codec-write `O(X + R)`)."] #[doc = "- One event."] #[doc = "# "] set_identity { info: ::std::boxed::Box< runtime_types::pallet_identity::types::IdentityInfo, >, }, #[codec(index = 2)] #[doc = "Set the sub-accounts of the sender."] #[doc = ""] #[doc = "Payment: Any aggregate balance reserved by previous `set_subs` calls will be returned"] #[doc = "and an amount `SubAccountDeposit` will be reserved for each item in `subs`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "identity."] #[doc = ""] #[doc = "- `subs`: The identity's (new) sub-accounts."] #[doc = ""] #[doc = "# "] #[doc = "- `O(P + S)`"] #[doc = " - where `P` old-subs-count (hard- and deposit-bounded)."] #[doc = " - where `S` subs-count (hard- and deposit-bounded)."] #[doc = "- At most one balance operations."] #[doc = "- DB:"] #[doc = " - `P + S` storage mutations (codec complexity `O(1)`)"] #[doc = " - One storage read (codec complexity `O(P)`)."] #[doc = " - One storage write (codec complexity `O(S)`)."] #[doc = " - One storage-exists (`IdentityOf::contains_key`)."] #[doc = "# "] set_subs { subs: ::std::vec::Vec<( ::subxt::utils::AccountId32, runtime_types::pallet_identity::types::Data, )>, }, #[codec(index = 3)] #[doc = "Clear an account's identity info and all sub-accounts and return all deposits."] #[doc = ""] #[doc = "Payment: All reserved balances on the account are returned."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "identity."] #[doc = ""] #[doc = "Emits `IdentityCleared` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R + S + X)`"] #[doc = " - where `R` registrar-count (governance-bounded)."] #[doc = " - where `S` subs-count (hard- and deposit-bounded)."] #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)."] #[doc = "- One balance-unreserve operation."] #[doc = "- `2` storage reads and `S + 2` storage deletions."] #[doc = "- One event."] #[doc = "# "] clear_identity, #[codec(index = 4)] #[doc = "Request a judgement from a registrar."] #[doc = ""] #[doc = "Payment: At most `max_fee` will be reserved for payment to the registrar if judgement"] #[doc = "given."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a"] #[doc = "registered identity."] #[doc = ""] #[doc = "- `reg_index`: The index of the registrar whose judgement is requested."] #[doc = "- `max_fee`: The maximum fee that may be paid. This should just be auto-populated as:"] #[doc = ""] #[doc = "```nocompile"] #[doc = "Self::registrars().get(reg_index).unwrap().fee"] #[doc = "```"] #[doc = ""] #[doc = "Emits `JudgementRequested` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R + X)`."] #[doc = "- One balance-reserve operation."] #[doc = "- Storage: 1 read `O(R)`, 1 mutate `O(X + R)`."] #[doc = "- One event."] #[doc = "# "] request_judgement { #[codec(compact)] reg_index: ::core::primitive::u32, #[codec(compact)] max_fee: ::core::primitive::u128, }, #[codec(index = 5)] #[doc = "Cancel a previous request."] #[doc = ""] #[doc = "Payment: A previously reserved deposit is returned on success."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a"] #[doc = "registered identity."] #[doc = ""] #[doc = "- `reg_index`: The index of the registrar whose judgement is no longer requested."] #[doc = ""] #[doc = "Emits `JudgementUnrequested` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R + X)`."] #[doc = "- One balance-reserve operation."] #[doc = "- One storage mutation `O(R + X)`."] #[doc = "- One event"] #[doc = "# "] cancel_request { reg_index: ::core::primitive::u32 }, #[codec(index = 6)] #[doc = "Set the fee required for a judgement to be requested from a registrar."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must be the account"] #[doc = "of the registrar whose index is `index`."] #[doc = ""] #[doc = "- `index`: the index of the registrar whose fee is to be set."] #[doc = "- `fee`: the new fee."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R)`."] #[doc = "- One storage mutation `O(R)`."] #[doc = "- Benchmark: 7.315 + R * 0.329 µs (min squares analysis)"] #[doc = "# "] set_fee { #[codec(compact)] index: ::core::primitive::u32, #[codec(compact)] fee: ::core::primitive::u128, }, #[codec(index = 7)] #[doc = "Change the account associated with a registrar."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must be the account"] #[doc = "of the registrar whose index is `index`."] #[doc = ""] #[doc = "- `index`: the index of the registrar whose fee is to be set."] #[doc = "- `new`: the new account ID."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R)`."] #[doc = "- One storage mutation `O(R)`."] #[doc = "- Benchmark: 8.823 + R * 0.32 µs (min squares analysis)"] #[doc = "# "] set_account_id { #[codec(compact)] index: ::core::primitive::u32, new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 8)] #[doc = "Set the field information for a registrar."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must be the account"] #[doc = "of the registrar whose index is `index`."] #[doc = ""] #[doc = "- `index`: the index of the registrar whose fee is to be set."] #[doc = "- `fields`: the fields that the registrar concerns themselves with."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R)`."] #[doc = "- One storage mutation `O(R)`."] #[doc = "- Benchmark: 7.464 + R * 0.325 µs (min squares analysis)"] #[doc = "# "] set_fields { #[codec(compact)] index: ::core::primitive::u32, fields: runtime_types::pallet_identity::types::BitFlags< runtime_types::pallet_identity::types::IdentityField, >, }, #[codec(index = 9)] #[doc = "Provide a judgement for an account's identity."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must be the account"] #[doc = "of the registrar whose index is `reg_index`."] #[doc = ""] #[doc = "- `reg_index`: the index of the registrar whose judgement is being made."] #[doc = "- `target`: the account whose identity the judgement is upon. This must be an account"] #[doc = " with a registered identity."] #[doc = "- `judgement`: the judgement of the registrar of index `reg_index` about `target`."] #[doc = "- `identity`: The hash of the [`IdentityInfo`] for that the judgement is provided."] #[doc = ""] #[doc = "Emits `JudgementGiven` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R + X)`."] #[doc = "- One balance-transfer operation."] #[doc = "- Up to one account-lookup operation."] #[doc = "- Storage: 1 read `O(R)`, 1 mutate `O(R + X)`."] #[doc = "- One event."] #[doc = "# "] provide_judgement { #[codec(compact)] reg_index: ::core::primitive::u32, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, judgement: runtime_types::pallet_identity::types::Judgement< ::core::primitive::u128, >, identity: ::subxt::utils::H256, }, #[codec(index = 10)] #[doc = "Remove an account's identity and sub-account information and slash the deposits."] #[doc = ""] #[doc = "Payment: Reserved balances from `set_subs` and `set_identity` are slashed and handled by"] #[doc = "`Slash`. Verification request deposits are not returned; they should be cancelled"] #[doc = "manually using `cancel_request`."] #[doc = ""] #[doc = "The dispatch origin for this call must match `T::ForceOrigin`."] #[doc = ""] #[doc = "- `target`: the account whose identity the judgement is upon. This must be an account"] #[doc = " with a registered identity."] #[doc = ""] #[doc = "Emits `IdentityKilled` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(R + S + X)`."] #[doc = "- One balance-reserve operation."] #[doc = "- `S + 2` storage mutations."] #[doc = "- One event."] #[doc = "# "] kill_identity { target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 11)] #[doc = "Add the given account to the sender's subs."] #[doc = ""] #[doc = "Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated"] #[doc = "to the sender."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "sub identity of `sub`."] add_sub { sub: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, data: runtime_types::pallet_identity::types::Data, }, #[codec(index = 12)] #[doc = "Alter the associated name of the given sub-account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "sub identity of `sub`."] rename_sub { sub: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, data: runtime_types::pallet_identity::types::Data, }, #[codec(index = 13)] #[doc = "Remove the given account from the sender's subs."] #[doc = ""] #[doc = "Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated"] #[doc = "to the sender."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "sub identity of `sub`."] remove_sub { sub: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 14)] #[doc = "Remove the sender as a sub-account."] #[doc = ""] #[doc = "Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated"] #[doc = "to the sender (*not* the original depositor)."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have a registered"] #[doc = "super-identity."] #[doc = ""] #[doc = "NOTE: This should not normally be used, but is provided in the case that the non-"] #[doc = "controller of an account is maliciously registered as a sub-account."] quit_sub, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Too many subs-accounts."] TooManySubAccounts, #[codec(index = 1)] #[doc = "Account isn't found."] NotFound, #[codec(index = 2)] #[doc = "Account isn't named."] NotNamed, #[codec(index = 3)] #[doc = "Empty index."] EmptyIndex, #[codec(index = 4)] #[doc = "Fee is changed."] FeeChanged, #[codec(index = 5)] #[doc = "No identity found."] NoIdentity, #[codec(index = 6)] #[doc = "Sticky judgement."] StickyJudgement, #[codec(index = 7)] #[doc = "Judgement given."] JudgementGiven, #[codec(index = 8)] #[doc = "Invalid judgement."] InvalidJudgement, #[codec(index = 9)] #[doc = "The index is invalid."] InvalidIndex, #[codec(index = 10)] #[doc = "The target is invalid."] InvalidTarget, #[codec(index = 11)] #[doc = "Too many additional fields."] TooManyFields, #[codec(index = 12)] #[doc = "Maximum amount of registrars reached. Cannot add any more."] TooManyRegistrars, #[codec(index = 13)] #[doc = "Account ID is already named."] AlreadyClaimed, #[codec(index = 14)] #[doc = "Sender is not a sub-account."] NotSub, #[codec(index = 15)] #[doc = "Sub-account isn't owned by sender."] NotOwned, #[codec(index = 16)] #[doc = "The provided judgement was for a different identity."] JudgementForDifferentIdentity, #[codec(index = 17)] #[doc = "Error that occurs when there is an issue paying for judgement."] JudgementPaymentFailed, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A name was set or reset (which will remove all judgements)."] IdentitySet { who: ::subxt::utils::AccountId32 }, #[codec(index = 1)] #[doc = "A name was cleared, and the given balance returned."] IdentityCleared { who: ::subxt::utils::AccountId32, deposit: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "A name was removed and the given balance slashed."] IdentityKilled { who: ::subxt::utils::AccountId32, deposit: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "A judgement was asked from a registrar."] JudgementRequested { who: ::subxt::utils::AccountId32, registrar_index: ::core::primitive::u32, }, #[codec(index = 4)] #[doc = "A judgement request was retracted."] JudgementUnrequested { who: ::subxt::utils::AccountId32, registrar_index: ::core::primitive::u32, }, #[codec(index = 5)] #[doc = "A judgement was given by a registrar."] JudgementGiven { target: ::subxt::utils::AccountId32, registrar_index: ::core::primitive::u32, }, #[codec(index = 6)] #[doc = "A registrar was added."] RegistrarAdded { registrar_index: ::core::primitive::u32, }, #[codec(index = 7)] #[doc = "A sub-identity was added to an identity and the deposit paid."] SubIdentityAdded { sub: ::subxt::utils::AccountId32, main: ::subxt::utils::AccountId32, deposit: ::core::primitive::u128, }, #[codec(index = 8)] #[doc = "A sub-identity was removed from an identity and the deposit freed."] SubIdentityRemoved { sub: ::subxt::utils::AccountId32, main: ::subxt::utils::AccountId32, deposit: ::core::primitive::u128, }, #[codec(index = 9)] #[doc = "A sub-identity was cleared, and the given deposit repatriated from the"] #[doc = "main identity account to the sub-identity account."] SubIdentityRevoked { sub: ::subxt::utils::AccountId32, main: ::subxt::utils::AccountId32, deposit: ::core::primitive::u128, }, } } pub mod types { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BitFlags<_0>( pub ::core::primitive::u64, #[codec(skip)] pub ::core::marker::PhantomData<_0>, ); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Data { #[codec(index = 0)] None, #[codec(index = 1)] Raw0([::core::primitive::u8; 0usize]), #[codec(index = 2)] Raw1([::core::primitive::u8; 1usize]), #[codec(index = 3)] Raw2([::core::primitive::u8; 2usize]), #[codec(index = 4)] Raw3([::core::primitive::u8; 3usize]), #[codec(index = 5)] Raw4([::core::primitive::u8; 4usize]), #[codec(index = 6)] Raw5([::core::primitive::u8; 5usize]), #[codec(index = 7)] Raw6([::core::primitive::u8; 6usize]), #[codec(index = 8)] Raw7([::core::primitive::u8; 7usize]), #[codec(index = 9)] Raw8([::core::primitive::u8; 8usize]), #[codec(index = 10)] Raw9([::core::primitive::u8; 9usize]), #[codec(index = 11)] Raw10([::core::primitive::u8; 10usize]), #[codec(index = 12)] Raw11([::core::primitive::u8; 11usize]), #[codec(index = 13)] Raw12([::core::primitive::u8; 12usize]), #[codec(index = 14)] Raw13([::core::primitive::u8; 13usize]), #[codec(index = 15)] Raw14([::core::primitive::u8; 14usize]), #[codec(index = 16)] Raw15([::core::primitive::u8; 15usize]), #[codec(index = 17)] Raw16([::core::primitive::u8; 16usize]), #[codec(index = 18)] Raw17([::core::primitive::u8; 17usize]), #[codec(index = 19)] Raw18([::core::primitive::u8; 18usize]), #[codec(index = 20)] Raw19([::core::primitive::u8; 19usize]), #[codec(index = 21)] Raw20([::core::primitive::u8; 20usize]), #[codec(index = 22)] Raw21([::core::primitive::u8; 21usize]), #[codec(index = 23)] Raw22([::core::primitive::u8; 22usize]), #[codec(index = 24)] Raw23([::core::primitive::u8; 23usize]), #[codec(index = 25)] Raw24([::core::primitive::u8; 24usize]), #[codec(index = 26)] Raw25([::core::primitive::u8; 25usize]), #[codec(index = 27)] Raw26([::core::primitive::u8; 26usize]), #[codec(index = 28)] Raw27([::core::primitive::u8; 27usize]), #[codec(index = 29)] Raw28([::core::primitive::u8; 28usize]), #[codec(index = 30)] Raw29([::core::primitive::u8; 29usize]), #[codec(index = 31)] Raw30([::core::primitive::u8; 30usize]), #[codec(index = 32)] Raw31([::core::primitive::u8; 31usize]), #[codec(index = 33)] Raw32([::core::primitive::u8; 32usize]), #[codec(index = 34)] BlakeTwo256([::core::primitive::u8; 32usize]), #[codec(index = 35)] Sha256([::core::primitive::u8; 32usize]), #[codec(index = 36)] Keccak256([::core::primitive::u8; 32usize]), #[codec(index = 37)] ShaThree256([::core::primitive::u8; 32usize]), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum IdentityField { #[codec(index = 1)] Display, #[codec(index = 2)] Legal, #[codec(index = 4)] Web, #[codec(index = 8)] Riot, #[codec(index = 16)] Email, #[codec(index = 32)] PgpFingerprint, #[codec(index = 64)] Image, #[codec(index = 128)] Twitter, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct IdentityInfo { pub additional: runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( runtime_types::pallet_identity::types::Data, runtime_types::pallet_identity::types::Data, )>, pub display: runtime_types::pallet_identity::types::Data, pub legal: runtime_types::pallet_identity::types::Data, pub web: runtime_types::pallet_identity::types::Data, pub riot: runtime_types::pallet_identity::types::Data, pub email: runtime_types::pallet_identity::types::Data, pub pgp_fingerprint: ::core::option::Option<[::core::primitive::u8; 20usize]>, pub image: runtime_types::pallet_identity::types::Data, pub twitter: runtime_types::pallet_identity::types::Data, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Judgement<_0> { #[codec(index = 0)] Unknown, #[codec(index = 1)] FeePaid(_0), #[codec(index = 2)] Reasonable, #[codec(index = 3)] KnownGood, #[codec(index = 4)] OutOfDate, #[codec(index = 5)] LowQuality, #[codec(index = 6)] Erroneous, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RegistrarInfo<_0, _1> { pub account: _1, pub fee: _0, pub fields: runtime_types::pallet_identity::types::BitFlags< runtime_types::pallet_identity::types::IdentityField, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Registration<_0> { pub judgements: runtime_types::sp_core::bounded::bounded_vec::BoundedVec<( ::core::primitive::u32, runtime_types::pallet_identity::types::Judgement<_0>, )>, pub deposit: _0, pub info: runtime_types::pallet_identity::types::IdentityInfo, } } } pub mod pallet_im_online { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { # [codec (index = 0)] # [doc = "# "] # [doc = "- Complexity: `O(K + E)` where K is length of `Keys` (heartbeat.validators_len) and E is"] # [doc = " length of `heartbeat.network_state.external_address`"] # [doc = " - `O(K)`: decoding of length `K`"] # [doc = " - `O(E)`: decoding/encoding of length `E`"] # [doc = "- DbReads: pallet_session `Validators`, pallet_session `CurrentIndex`, `Keys`,"] # [doc = " `ReceivedHeartbeats`"] # [doc = "- DbWrites: `ReceivedHeartbeats`"] # [doc = "# "] heartbeat { heartbeat : runtime_types :: pallet_im_online :: Heartbeat < :: core :: primitive :: u32 > , signature : runtime_types :: pallet_im_online :: sr25519 :: app_sr25519 :: Signature , } , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Non existent public key."] InvalidKey, #[codec(index = 1)] #[doc = "Duplicated heartbeat."] DuplicatedHeartbeat, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A new heartbeat was received from `AuthorityId`."] HeartbeatReceived { authority_id: runtime_types::pallet_im_online::sr25519::app_sr25519::Public, }, #[codec(index = 1)] #[doc = "At the end of the session, no offence was committed."] AllGood, #[codec(index = 2)] #[doc = "At the end of the session, at least one validator was found to be offline."] SomeOffline { offline: ::std::vec::Vec<( ::subxt::utils::AccountId32, runtime_types::pallet_staking::Exposure< ::subxt::utils::AccountId32, ::core::primitive::u128, >, )>, }, } } pub mod sr25519 { use super::runtime_types; pub mod app_sr25519 { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Public(pub runtime_types::sp_core::sr25519::Public); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Signature(pub runtime_types::sp_core::sr25519::Signature); } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BoundedOpaqueNetworkState { pub peer_id: runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec< ::core::primitive::u8, >, pub external_addresses: runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec< runtime_types::sp_core::bounded::weak_bounded_vec::WeakBoundedVec< ::core::primitive::u8, >, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Heartbeat<_0> { pub block_number: _0, pub network_state: runtime_types::sp_core::offchain::OpaqueNetworkState, pub session_index: _0, pub authority_index: _0, pub validators_len: _0, } } pub mod pallet_indices { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Assign an previously unassigned index."] #[doc = ""] #[doc = "Payment: `Deposit` is reserved from the sender account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `index`: the index to be claimed. This must not be in use."] #[doc = ""] #[doc = "Emits `IndexAssigned` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- One storage mutation (codec `O(1)`)."] #[doc = "- One reserve operation."] #[doc = "- One event."] #[doc = "-------------------"] #[doc = "- DB Weight: 1 Read/Write (Accounts)"] #[doc = "# "] claim { index: ::core::primitive::u32 }, #[codec(index = 1)] #[doc = "Assign an index already owned by the sender to another account. The balance reservation"] #[doc = "is effectively transferred to the new account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `index`: the index to be re-assigned. This must be owned by the sender."] #[doc = "- `new`: the new owner of the index. This function is a no-op if it is equal to sender."] #[doc = ""] #[doc = "Emits `IndexAssigned` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- One storage mutation (codec `O(1)`)."] #[doc = "- One transfer operation."] #[doc = "- One event."] #[doc = "-------------------"] #[doc = "- DB Weight:"] #[doc = " - Reads: Indices Accounts, System Account (recipient)"] #[doc = " - Writes: Indices Accounts, System Account (recipient)"] #[doc = "# "] transfer { new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, index: ::core::primitive::u32, }, #[codec(index = 2)] #[doc = "Free up an index owned by the sender."] #[doc = ""] #[doc = "Payment: Any previous deposit placed for the index is unreserved in the sender account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must own the index."] #[doc = ""] #[doc = "- `index`: the index to be freed. This must be owned by the sender."] #[doc = ""] #[doc = "Emits `IndexFreed` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- One storage mutation (codec `O(1)`)."] #[doc = "- One reserve operation."] #[doc = "- One event."] #[doc = "-------------------"] #[doc = "- DB Weight: 1 Read/Write (Accounts)"] #[doc = "# "] free { index: ::core::primitive::u32 }, #[codec(index = 3)] #[doc = "Force an index to an account. This doesn't require a deposit. If the index is already"] #[doc = "held, then any deposit is reimbursed to its current owner."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Root_."] #[doc = ""] #[doc = "- `index`: the index to be (re-)assigned."] #[doc = "- `new`: the new owner of the index. This function is a no-op if it is equal to sender."] #[doc = "- `freeze`: if set to `true`, will freeze the index so it cannot be transferred."] #[doc = ""] #[doc = "Emits `IndexAssigned` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- One storage mutation (codec `O(1)`)."] #[doc = "- Up to one reserve operation."] #[doc = "- One event."] #[doc = "-------------------"] #[doc = "- DB Weight:"] #[doc = " - Reads: Indices Accounts, System Account (original owner)"] #[doc = " - Writes: Indices Accounts, System Account (original owner)"] #[doc = "# "] force_transfer { new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, index: ::core::primitive::u32, freeze: ::core::primitive::bool, }, #[codec(index = 4)] #[doc = "Freeze an index so it will always point to the sender account. This consumes the"] #[doc = "deposit."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the signing account must have a"] #[doc = "non-frozen account `index`."] #[doc = ""] #[doc = "- `index`: the index to be frozen in place."] #[doc = ""] #[doc = "Emits `IndexFrozen` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- One storage mutation (codec `O(1)`)."] #[doc = "- Up to one slash operation."] #[doc = "- One event."] #[doc = "-------------------"] #[doc = "- DB Weight: 1 Read/Write (Accounts)"] #[doc = "# "] freeze { index: ::core::primitive::u32 }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "The index was not already assigned."] NotAssigned, #[codec(index = 1)] #[doc = "The index is assigned to another account."] NotOwner, #[codec(index = 2)] #[doc = "The index was not available."] InUse, #[codec(index = 3)] #[doc = "The source and destination accounts are identical."] NotTransfer, #[codec(index = 4)] #[doc = "The index is permanent and may not be freed/changed."] Permanent, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A account index was assigned."] IndexAssigned { who: ::subxt::utils::AccountId32, index: ::core::primitive::u32, }, #[codec(index = 1)] #[doc = "A account index has been freed up (unassigned)."] IndexFreed { index: ::core::primitive::u32 }, #[codec(index = 2)] #[doc = "A account index has been frozen to its current account ID."] IndexFrozen { index: ::core::primitive::u32, who: ::subxt::utils::AccountId32, }, } } } pub mod pallet_lottery { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Buy a ticket to enter the lottery."] #[doc = ""] #[doc = "This extrinsic acts as a passthrough function for `call`. In all"] #[doc = "situations where `call` alone would succeed, this extrinsic should"] #[doc = "succeed."] #[doc = ""] #[doc = "If `call` is successful, then we will attempt to purchase a ticket,"] #[doc = "which may fail silently. To detect success of a ticket purchase, you"] #[doc = "should listen for the `TicketBought` event."] #[doc = ""] #[doc = "This extrinsic must be called by a signed origin."] buy_ticket { call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 1)] #[doc = "Set calls in storage which can be used to purchase a lottery ticket."] #[doc = ""] #[doc = "This function only matters if you use the `ValidateCall` implementation"] #[doc = "provided by this pallet, which uses storage to determine the valid calls."] #[doc = ""] #[doc = "This extrinsic must be called by the Manager origin."] set_calls { calls: ::std::vec::Vec< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 2)] #[doc = "Start a lottery using the provided configuration."] #[doc = ""] #[doc = "This extrinsic must be called by the `ManagerOrigin`."] #[doc = ""] #[doc = "Parameters:"] #[doc = ""] #[doc = "* `price`: The cost of a single ticket."] #[doc = "* `length`: How long the lottery should run for starting at the current block."] #[doc = "* `delay`: How long after the lottery end we should wait before picking a winner."] #[doc = "* `repeat`: If the lottery should repeat when completed."] start_lottery { price: ::core::primitive::u128, length: ::core::primitive::u32, delay: ::core::primitive::u32, repeat: ::core::primitive::bool, }, #[codec(index = 3)] #[doc = "If a lottery is repeating, you can use this to stop the repeat."] #[doc = "The lottery will continue to run to completion."] #[doc = ""] #[doc = "This extrinsic must be called by the `ManagerOrigin`."] stop_repeat, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "A lottery has not been configured."] NotConfigured, #[codec(index = 1)] #[doc = "A lottery is already in progress."] InProgress, #[codec(index = 2)] #[doc = "A lottery has already ended."] AlreadyEnded, #[codec(index = 3)] #[doc = "The call is not valid for an open lottery."] InvalidCall, #[codec(index = 4)] #[doc = "You are already participating in the lottery with this call."] AlreadyParticipating, #[codec(index = 5)] #[doc = "Too many calls for a single lottery."] TooManyCalls, #[codec(index = 6)] #[doc = "Failed to encode calls"] EncodingFailed, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A lottery has been started!"] LotteryStarted, #[codec(index = 1)] #[doc = "A new set of calls have been set!"] CallsUpdated, #[codec(index = 2)] #[doc = "A winner has been chosen!"] Winner { winner: ::subxt::utils::AccountId32, lottery_balance: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "A ticket has been bought!"] TicketBought { who: ::subxt::utils::AccountId32, call_index: (::core::primitive::u8, ::core::primitive::u8), }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct LotteryConfig<_0, _1> { pub price: _1, pub start: _0, pub length: _0, pub delay: _0, pub repeat: ::core::primitive::bool, } } pub mod pallet_membership { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Add a member `who` to the set."] #[doc = ""] #[doc = "May only be called from `T::AddOrigin`."] add_member { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 1)] #[doc = "Remove a member `who` from the set."] #[doc = ""] #[doc = "May only be called from `T::RemoveOrigin`."] remove_member { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 2)] #[doc = "Swap out one member `remove` for another `add`."] #[doc = ""] #[doc = "May only be called from `T::SwapOrigin`."] #[doc = ""] #[doc = "Prime membership is *not* passed from `remove` to `add`, if extant."] swap_member { remove: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, add: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 3)] #[doc = "Change the membership to a new set, disregarding the existing membership. Be nice and"] #[doc = "pass `members` pre-sorted."] #[doc = ""] #[doc = "May only be called from `T::ResetOrigin`."] reset_members { members: ::std::vec::Vec<::subxt::utils::AccountId32>, }, #[codec(index = 4)] #[doc = "Swap out the sending member for some other key `new`."] #[doc = ""] #[doc = "May only be called from `Signed` origin of a current member."] #[doc = ""] #[doc = "Prime membership is passed from the origin account to `new`, if extant."] change_key { new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 5)] #[doc = "Set the prime member. Must be a current member."] #[doc = ""] #[doc = "May only be called from `T::PrimeOrigin`."] set_prime { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 6)] #[doc = "Remove the prime member if it exists."] #[doc = ""] #[doc = "May only be called from `T::PrimeOrigin`."] clear_prime, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Already a member."] AlreadyMember, #[codec(index = 1)] #[doc = "Not a member."] NotMember, #[codec(index = 2)] #[doc = "Too many members."] TooManyMembers, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "The given member was added; see the transaction for who."] MemberAdded, #[codec(index = 1)] #[doc = "The given member was removed; see the transaction for who."] MemberRemoved, #[codec(index = 2)] #[doc = "Two members were swapped; see the transaction for who."] MembersSwapped, #[codec(index = 3)] #[doc = "The membership was reset; see the transaction for who the new set is."] MembersReset, #[codec(index = 4)] #[doc = "One of the members' keys changed."] KeyChanged, #[codec(index = 5)] #[doc = "Phantom member, never used."] Dummy, } } } pub mod pallet_message_queue { use super::runtime_types; pub mod mock_helpers { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum MessageOrigin { #[codec(index = 0)] Here, #[codec(index = 1)] There, #[codec(index = 2)] Everywhere(::core::primitive::u32), } } pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { # [codec (index = 0)] # [doc = "Remove a page which has no more messages remaining to be processed or is stale."] reap_page { message_origin : runtime_types :: pallet_message_queue :: mock_helpers :: MessageOrigin , page_index : :: core :: primitive :: u32 , } , # [codec (index = 1)] # [doc = "Execute an overweight message."] # [doc = ""] # [doc = "- `origin`: Must be `Signed`."] # [doc = "- `message_origin`: The origin from which the message to be executed arrived."] # [doc = "- `page`: The page in the queue in which the message to be executed is sitting."] # [doc = "- `index`: The index into the queue of the message to be executed."] # [doc = "- `weight_limit`: The maximum amount of weight allowed to be consumed in the execution"] # [doc = " of the message."] # [doc = ""] # [doc = "Benchmark complexity considerations: O(index + weight_limit)."] execute_overweight { message_origin : runtime_types :: pallet_message_queue :: mock_helpers :: MessageOrigin , page : :: core :: primitive :: u32 , index : :: core :: primitive :: u32 , weight_limit : runtime_types :: sp_weights :: weight_v2 :: Weight , } , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Page is not reapable because it has items remaining to be processed and is not old"] #[doc = "enough."] NotReapable, #[codec(index = 1)] #[doc = "Page to be reaped does not exist."] NoPage, #[codec(index = 2)] #[doc = "The referenced message could not be found."] NoMessage, #[codec(index = 3)] #[doc = "The message was already processed and cannot be processed again."] AlreadyProcessed, #[codec(index = 4)] #[doc = "The message is queued for future execution."] Queued, #[codec(index = 5)] #[doc = "There is temporarily not enough weight to continue servicing messages."] InsufficientWeight, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { # [codec (index = 0)] # [doc = "Message discarded due to an inability to decode the item. Usually caused by state"] # [doc = "corruption."] Discarded { hash : :: subxt :: utils :: H256 , } , # [codec (index = 1)] # [doc = "Message discarded due to an error in the `MessageProcessor` (usually a format error)."] ProcessingFailed { hash : :: subxt :: utils :: H256 , origin : runtime_types :: pallet_message_queue :: mock_helpers :: MessageOrigin , error : runtime_types :: frame_support :: traits :: messages :: ProcessMessageError , } , # [codec (index = 2)] # [doc = "Message is processed."] Processed { hash : :: subxt :: utils :: H256 , origin : runtime_types :: pallet_message_queue :: mock_helpers :: MessageOrigin , weight_used : runtime_types :: sp_weights :: weight_v2 :: Weight , success : :: core :: primitive :: bool , } , # [codec (index = 3)] # [doc = "Message placed in overweight queue."] OverweightEnqueued { hash : :: subxt :: utils :: H256 , origin : runtime_types :: pallet_message_queue :: mock_helpers :: MessageOrigin , page_index : :: core :: primitive :: u32 , message_index : :: core :: primitive :: u32 , } , # [codec (index = 4)] # [doc = "This page was reaped."] PageReaped { origin : runtime_types :: pallet_message_queue :: mock_helpers :: MessageOrigin , index : :: core :: primitive :: u32 , } , } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BookState<_0> { pub begin: ::core::primitive::u32, pub end: ::core::primitive::u32, pub count: ::core::primitive::u32, pub ready_neighbours: ::core::option::Option< runtime_types::pallet_message_queue::Neighbours<_0>, >, pub message_count: ::core::primitive::u64, pub size: ::core::primitive::u64, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Neighbours<_0> { pub prev: _0, pub next: _0, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Page<_0> { pub remaining: _0, pub remaining_size: _0, pub first_index: _0, pub first: _0, pub last: _0, pub heap: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } } pub mod pallet_multisig { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Immediately dispatch a multi-signature call using a single approval from the caller."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `other_signatories`: The accounts (other than the sender) who are part of the"] #[doc = "multi-signature, but do not participate in the approval process."] #[doc = "- `call`: The call to be executed."] #[doc = ""] #[doc = "Result is equivalent to the dispatched result."] #[doc = ""] #[doc = "# "] #[doc = "O(Z + C) where Z is the length of the call and C its execution weight."] #[doc = "-------------------------------"] #[doc = "- DB Weight: None"] #[doc = "- Plus Call Weight"] #[doc = "# "] as_multi_threshold_1 { other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 1)] #[doc = "Register approval for a dispatch to be made from a deterministic composite account if"] #[doc = "approved by a total of `threshold - 1` of `other_signatories`."] #[doc = ""] #[doc = "If there are enough, then dispatch the call."] #[doc = ""] #[doc = "Payment: `DepositBase` will be reserved if this is the first approval, plus"] #[doc = "`threshold` times `DepositFactor`. It is returned once this dispatch happens or"] #[doc = "is cancelled."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `threshold`: The total number of approvals for this dispatch before it is executed."] #[doc = "- `other_signatories`: The accounts (other than the sender) who can approve this"] #[doc = "dispatch. May not be empty."] #[doc = "- `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is"] #[doc = "not the first approval, then it must be `Some`, with the timepoint (block number and"] #[doc = "transaction index) of the first approval transaction."] #[doc = "- `call`: The call to be executed."] #[doc = ""] #[doc = "NOTE: Unless this is the final approval, you will generally want to use"] #[doc = "`approve_as_multi` instead, since it only requires a hash of the call."] #[doc = ""] #[doc = "Result is equivalent to the dispatched result if `threshold` is exactly `1`. Otherwise"] #[doc = "on success, result is `Ok` and the result from the interior call, if it was executed,"] #[doc = "may be found in the deposited `MultisigExecuted` event."] #[doc = ""] #[doc = "# "] #[doc = "- `O(S + Z + Call)`."] #[doc = "- Up to one balance-reserve or unreserve operation."] #[doc = "- One passthrough operation, one insert, both `O(S)` where `S` is the number of"] #[doc = " signatories. `S` is capped by `MaxSignatories`, with weight being proportional."] #[doc = "- One call encode & hash, both of complexity `O(Z)` where `Z` is tx-len."] #[doc = "- One encode & hash, both of complexity `O(S)`."] #[doc = "- Up to one binary search and insert (`O(logS + S)`)."] #[doc = "- I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove."] #[doc = "- One event."] #[doc = "- The weight of the `call`."] #[doc = "- Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit"] #[doc = " taken for its lifetime of `DepositBase + threshold * DepositFactor`."] #[doc = "-------------------------------"] #[doc = "- DB Weight:"] #[doc = " - Reads: Multisig Storage, [Caller Account]"] #[doc = " - Writes: Multisig Storage, [Caller Account]"] #[doc = "- Plus Call Weight"] #[doc = "# "] as_multi { threshold: ::core::primitive::u16, other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, maybe_timepoint: ::core::option::Option< runtime_types::pallet_multisig::Timepoint< ::core::primitive::u32, >, >, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, max_weight: runtime_types::sp_weights::weight_v2::Weight, }, #[codec(index = 2)] #[doc = "Register approval for a dispatch to be made from a deterministic composite account if"] #[doc = "approved by a total of `threshold - 1` of `other_signatories`."] #[doc = ""] #[doc = "Payment: `DepositBase` will be reserved if this is the first approval, plus"] #[doc = "`threshold` times `DepositFactor`. It is returned once this dispatch happens or"] #[doc = "is cancelled."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `threshold`: The total number of approvals for this dispatch before it is executed."] #[doc = "- `other_signatories`: The accounts (other than the sender) who can approve this"] #[doc = "dispatch. May not be empty."] #[doc = "- `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is"] #[doc = "not the first approval, then it must be `Some`, with the timepoint (block number and"] #[doc = "transaction index) of the first approval transaction."] #[doc = "- `call_hash`: The hash of the call to be executed."] #[doc = ""] #[doc = "NOTE: If this is the final approval, you will want to use `as_multi` instead."] #[doc = ""] #[doc = "# "] #[doc = "- `O(S)`."] #[doc = "- Up to one balance-reserve or unreserve operation."] #[doc = "- One passthrough operation, one insert, both `O(S)` where `S` is the number of"] #[doc = " signatories. `S` is capped by `MaxSignatories`, with weight being proportional."] #[doc = "- One encode & hash, both of complexity `O(S)`."] #[doc = "- Up to one binary search and insert (`O(logS + S)`)."] #[doc = "- I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove."] #[doc = "- One event."] #[doc = "- Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit"] #[doc = " taken for its lifetime of `DepositBase + threshold * DepositFactor`."] #[doc = "----------------------------------"] #[doc = "- DB Weight:"] #[doc = " - Read: Multisig Storage, [Caller Account]"] #[doc = " - Write: Multisig Storage, [Caller Account]"] #[doc = "# "] approve_as_multi { threshold: ::core::primitive::u16, other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, maybe_timepoint: ::core::option::Option< runtime_types::pallet_multisig::Timepoint< ::core::primitive::u32, >, >, call_hash: [::core::primitive::u8; 32usize], max_weight: runtime_types::sp_weights::weight_v2::Weight, }, #[codec(index = 3)] #[doc = "Cancel a pre-existing, on-going multisig transaction. Any deposit reserved previously"] #[doc = "for this operation will be unreserved on success."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `threshold`: The total number of approvals for this dispatch before it is executed."] #[doc = "- `other_signatories`: The accounts (other than the sender) who can approve this"] #[doc = "dispatch. May not be empty."] #[doc = "- `timepoint`: The timepoint (block number and transaction index) of the first approval"] #[doc = "transaction for this dispatch."] #[doc = "- `call_hash`: The hash of the call to be executed."] #[doc = ""] #[doc = "# "] #[doc = "- `O(S)`."] #[doc = "- Up to one balance-reserve or unreserve operation."] #[doc = "- One passthrough operation, one insert, both `O(S)` where `S` is the number of"] #[doc = " signatories. `S` is capped by `MaxSignatories`, with weight being proportional."] #[doc = "- One encode & hash, both of complexity `O(S)`."] #[doc = "- One event."] #[doc = "- I/O: 1 read `O(S)`, one remove."] #[doc = "- Storage: removes one item."] #[doc = "----------------------------------"] #[doc = "- DB Weight:"] #[doc = " - Read: Multisig Storage, [Caller Account], Refund Account"] #[doc = " - Write: Multisig Storage, [Caller Account], Refund Account"] #[doc = "# "] cancel_as_multi { threshold: ::core::primitive::u16, other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, timepoint: runtime_types::pallet_multisig::Timepoint< ::core::primitive::u32, >, call_hash: [::core::primitive::u8; 32usize], }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Threshold must be 2 or greater."] MinimumThreshold, #[codec(index = 1)] #[doc = "Call is already approved by this signatory."] AlreadyApproved, #[codec(index = 2)] #[doc = "Call doesn't need any (more) approvals."] NoApprovalsNeeded, #[codec(index = 3)] #[doc = "There are too few signatories in the list."] TooFewSignatories, #[codec(index = 4)] #[doc = "There are too many signatories in the list."] TooManySignatories, #[codec(index = 5)] #[doc = "The signatories were provided out of order; they should be ordered."] SignatoriesOutOfOrder, #[codec(index = 6)] #[doc = "The sender was contained in the other signatories; it shouldn't be."] SenderInSignatories, #[codec(index = 7)] #[doc = "Multisig operation not found when attempting to cancel."] NotFound, #[codec(index = 8)] #[doc = "Only the account that originally created the multisig is able to cancel it."] NotOwner, #[codec(index = 9)] #[doc = "No timepoint was given, yet the multisig operation is already underway."] NoTimepoint, #[codec(index = 10)] #[doc = "A different timepoint was given to the multisig operation that is underway."] WrongTimepoint, #[codec(index = 11)] #[doc = "A timepoint was given, yet no multisig operation is underway."] UnexpectedTimepoint, #[codec(index = 12)] #[doc = "The maximum weight information provided was too low."] MaxWeightTooLow, #[codec(index = 13)] #[doc = "The data to be stored is already stored."] AlreadyStored, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A new multisig operation has begun."] NewMultisig { approving: ::subxt::utils::AccountId32, multisig: ::subxt::utils::AccountId32, call_hash: [::core::primitive::u8; 32usize], }, #[codec(index = 1)] #[doc = "A multisig operation has been approved by someone."] MultisigApproval { approving: ::subxt::utils::AccountId32, timepoint: runtime_types::pallet_multisig::Timepoint< ::core::primitive::u32, >, multisig: ::subxt::utils::AccountId32, call_hash: [::core::primitive::u8; 32usize], }, #[codec(index = 2)] #[doc = "A multisig operation has been executed."] MultisigExecuted { approving: ::subxt::utils::AccountId32, timepoint: runtime_types::pallet_multisig::Timepoint< ::core::primitive::u32, >, multisig: ::subxt::utils::AccountId32, call_hash: [::core::primitive::u8; 32usize], result: ::core::result::Result< (), runtime_types::sp_runtime::DispatchError, >, }, #[codec(index = 3)] #[doc = "A multisig operation has been cancelled."] MultisigCancelled { cancelling: ::subxt::utils::AccountId32, timepoint: runtime_types::pallet_multisig::Timepoint< ::core::primitive::u32, >, multisig: ::subxt::utils::AccountId32, call_hash: [::core::primitive::u8; 32usize], }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Multisig<_0, _1, _2> { pub when: runtime_types::pallet_multisig::Timepoint<_0>, pub deposit: _1, pub depositor: _2, pub approvals: runtime_types::sp_core::bounded::bounded_vec::BoundedVec<_2>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Timepoint<_0> { pub height: _0, pub index: _0, } } pub mod pallet_nfts { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { # [codec (index = 0)] # [doc = "Issue a new collection of non-fungible items from a public origin."] # [doc = ""] # [doc = "This new collection has no items initially and its owner is the origin."] # [doc = ""] # [doc = "The origin must be Signed and the sender must have sufficient funds free."] # [doc = ""] # [doc = "`ItemDeposit` funds of sender are reserved."] # [doc = ""] # [doc = "Parameters:"] # [doc = "- `admin`: The admin of this collection. The admin is the initial address of each"] # [doc = "member of the collection's admin team."] # [doc = ""] # [doc = "Emits `Created` event when successful."] # [doc = ""] # [doc = "Weight: `O(1)`"] create { admin : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , config : runtime_types :: pallet_nfts :: types :: CollectionConfig < :: core :: primitive :: u128 , :: core :: primitive :: u32 , :: core :: primitive :: u32 > , } , # [codec (index = 1)] # [doc = "Issue a new collection of non-fungible items from a privileged origin."] # [doc = ""] # [doc = "This new collection has no items initially."] # [doc = ""] # [doc = "The origin must conform to `ForceOrigin`."] # [doc = ""] # [doc = "Unlike `create`, no funds are reserved."] # [doc = ""] # [doc = "- `owner`: The owner of this collection of items. The owner has full superuser"] # [doc = " permissions over this item, but may later change and configure the permissions using"] # [doc = " `transfer_ownership` and `set_team`."] # [doc = ""] # [doc = "Emits `ForceCreated` event when successful."] # [doc = ""] # [doc = "Weight: `O(1)`"] force_create { owner : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , config : runtime_types :: pallet_nfts :: types :: CollectionConfig < :: core :: primitive :: u128 , :: core :: primitive :: u32 , :: core :: primitive :: u32 > , } , # [codec (index = 2)] # [doc = "Destroy a collection of fungible items."] # [doc = ""] # [doc = "The origin must conform to `ForceOrigin` or must be `Signed` and the sender must be the"] # [doc = "owner of the `collection`."] # [doc = ""] # [doc = "- `collection`: The identifier of the collection to be destroyed."] # [doc = "- `witness`: Information on the items minted in the collection. This must be"] # [doc = "correct."] # [doc = ""] # [doc = "Emits `Destroyed` event when successful."] # [doc = ""] # [doc = "Weight: `O(n + m)` where:"] # [doc = "- `n = witness.items`"] # [doc = "- `m = witness.item_metadatas`"] # [doc = "- `a = witness.attributes`"] destroy { collection : :: core :: primitive :: u32 , witness : runtime_types :: pallet_nfts :: types :: DestroyWitness , } , # [codec (index = 3)] # [doc = "Mint an item of a particular collection."] # [doc = ""] # [doc = "The origin must be Signed and the sender must be the Issuer of the `collection`."] # [doc = ""] # [doc = "- `collection`: The collection of the item to be minted."] # [doc = "- `item`: An identifier of the new item."] # [doc = "- `mint_to`: Account into which the item will be minted."] # [doc = "- `witness_data`: When the mint type is `HolderOf(collection_id)`, then the owned"] # [doc = " item_id from that collection needs to be provided within the witness data object."] # [doc = ""] # [doc = "Note: the deposit will be taken from the `origin` and not the `owner` of the `item`."] # [doc = ""] # [doc = "Emits `Issued` event when successful."] # [doc = ""] # [doc = "Weight: `O(1)`"] mint { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , mint_to : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , witness_data : :: core :: option :: Option < runtime_types :: pallet_nfts :: types :: MintWitness < :: core :: primitive :: u32 > > , } , # [codec (index = 4)] # [doc = "Mint an item of a particular collection from a privileged origin."] # [doc = ""] # [doc = "The origin must conform to `ForceOrigin` or must be `Signed` and the sender must be the"] # [doc = "Issuer of the `collection`."] # [doc = ""] # [doc = "- `collection`: The collection of the item to be minted."] # [doc = "- `item`: An identifier of the new item."] # [doc = "- `mint_to`: Account into which the item will be minted."] # [doc = "- `item_config`: A config of the new item."] # [doc = ""] # [doc = "Emits `Issued` event when successful."] # [doc = ""] # [doc = "Weight: `O(1)`"] force_mint { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , mint_to : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , item_config : runtime_types :: pallet_nfts :: types :: ItemConfig , } , # [codec (index = 5)] # [doc = "Destroy a single item."] # [doc = ""] # [doc = "Origin must be Signed and the signing account must be either:"] # [doc = "- the Admin of the `collection`;"] # [doc = "- the Owner of the `item`;"] # [doc = ""] # [doc = "- `collection`: The collection of the item to be burned."] # [doc = "- `item`: The item to be burned."] # [doc = "- `check_owner`: If `Some` then the operation will fail with `WrongOwner` unless the"] # [doc = " item is owned by this value."] # [doc = ""] # [doc = "Emits `Burned` with the actual amount burned."] # [doc = ""] # [doc = "Weight: `O(1)`"] # [doc = "Modes: `check_owner.is_some()`."] burn { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , check_owner : :: core :: option :: Option < :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > > , } , # [codec (index = 6)] # [doc = "Move an item from the sender account to another."] # [doc = ""] # [doc = "Origin must be Signed and the signing account must be either:"] # [doc = "- the Admin of the `collection`;"] # [doc = "- the Owner of the `item`;"] # [doc = "- the approved delegate for the `item` (in this case, the approval is reset)."] # [doc = ""] # [doc = "Arguments:"] # [doc = "- `collection`: The collection of the item to be transferred."] # [doc = "- `item`: The item to be transferred."] # [doc = "- `dest`: The account to receive ownership of the item."] # [doc = ""] # [doc = "Emits `Transferred`."] # [doc = ""] # [doc = "Weight: `O(1)`"] transfer { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , dest : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , } , # [codec (index = 7)] # [doc = "Re-evaluate the deposits on some items."] # [doc = ""] # [doc = "Origin must be Signed and the sender should be the Owner of the `collection`."] # [doc = ""] # [doc = "- `collection`: The collection of the items to be reevaluated."] # [doc = "- `items`: The items of the collection whose deposits will be reevaluated."] # [doc = ""] # [doc = "NOTE: This exists as a best-effort function. Any items which are unknown or"] # [doc = "in the case that the owner account does not have reservable funds to pay for a"] # [doc = "deposit increase are ignored. Generally the owner isn't going to call this on items"] # [doc = "whose existing deposit is less than the refreshed deposit as it would only cost them,"] # [doc = "so it's of little consequence."] # [doc = ""] # [doc = "It will still return an error in the case that the collection is unknown or the signer"] # [doc = "is not permitted to call it."] # [doc = ""] # [doc = "Weight: `O(items.len())`"] redeposit { collection : :: core :: primitive :: u32 , items : :: std :: vec :: Vec < :: core :: primitive :: u32 > , } , # [codec (index = 8)] # [doc = "Disallow further unprivileged transfer of an item."] # [doc = ""] # [doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] # [doc = ""] # [doc = "- `collection`: The collection of the item to be changed."] # [doc = "- `item`: The item to become non-transferable."] # [doc = ""] # [doc = "Emits `ItemTransferLocked`."] # [doc = ""] # [doc = "Weight: `O(1)`"] lock_item_transfer { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , } , # [codec (index = 9)] # [doc = "Re-allow unprivileged transfer of an item."] # [doc = ""] # [doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] # [doc = ""] # [doc = "- `collection`: The collection of the item to be changed."] # [doc = "- `item`: The item to become transferable."] # [doc = ""] # [doc = "Emits `ItemTransferUnlocked`."] # [doc = ""] # [doc = "Weight: `O(1)`"] unlock_item_transfer { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , } , # [codec (index = 10)] # [doc = "Disallows specified settings for the whole collection."] # [doc = ""] # [doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] # [doc = ""] # [doc = "- `collection`: The collection to be locked."] # [doc = "- `lock_settings`: The settings to be locked."] # [doc = ""] # [doc = "Note: it's possible to only lock(set) the setting, but not to unset it."] # [doc = "Emits `CollectionLocked`."] # [doc = ""] # [doc = "Weight: `O(1)`"] lock_collection { collection : :: core :: primitive :: u32 , lock_settings : runtime_types :: pallet_nfts :: types :: BitFlags < runtime_types :: pallet_nfts :: types :: CollectionSetting > , } , # [codec (index = 11)] # [doc = "Change the Owner of a collection."] # [doc = ""] # [doc = "Origin must be Signed and the sender should be the Owner of the `collection`."] # [doc = ""] # [doc = "- `collection`: The collection whose owner should be changed."] # [doc = "- `owner`: The new Owner of this collection. They must have called"] # [doc = " `set_accept_ownership` with `collection` in order for this operation to succeed."] # [doc = ""] # [doc = "Emits `OwnerChanged`."] # [doc = ""] # [doc = "Weight: `O(1)`"] transfer_ownership { collection : :: core :: primitive :: u32 , owner : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , } , # [codec (index = 12)] # [doc = "Change the Issuer, Admin and Freezer of a collection."] # [doc = ""] # [doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] # [doc = "`collection`."] # [doc = ""] # [doc = "- `collection`: The collection whose team should be changed."] # [doc = "- `issuer`: The new Issuer of this collection."] # [doc = "- `admin`: The new Admin of this collection."] # [doc = "- `freezer`: The new Freezer of this collection."] # [doc = ""] # [doc = "Emits `TeamChanged`."] # [doc = ""] # [doc = "Weight: `O(1)`"] set_team { collection : :: core :: primitive :: u32 , issuer : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , admin : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , freezer : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , } , # [codec (index = 13)] # [doc = "Change the Owner of a collection."] # [doc = ""] # [doc = "Origin must be `ForceOrigin`."] # [doc = ""] # [doc = "- `collection`: The identifier of the collection."] # [doc = "- `owner`: The new Owner of this collection."] # [doc = ""] # [doc = "Emits `OwnerChanged`."] # [doc = ""] # [doc = "Weight: `O(1)`"] force_collection_owner { collection : :: core :: primitive :: u32 , owner : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , } , # [codec (index = 14)] # [doc = "Change the config of a collection."] # [doc = ""] # [doc = "Origin must be `ForceOrigin`."] # [doc = ""] # [doc = "- `collection`: The identifier of the collection."] # [doc = "- `config`: The new config of this collection."] # [doc = ""] # [doc = "Emits `CollectionConfigChanged`."] # [doc = ""] # [doc = "Weight: `O(1)`"] force_collection_config { collection : :: core :: primitive :: u32 , config : runtime_types :: pallet_nfts :: types :: CollectionConfig < :: core :: primitive :: u128 , :: core :: primitive :: u32 , :: core :: primitive :: u32 > , } , # [codec (index = 15)] # [doc = "Approve an item to be transferred by a delegated third-party account."] # [doc = ""] # [doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] # [doc = "`item`."] # [doc = ""] # [doc = "- `collection`: The collection of the item to be approved for delegated transfer."] # [doc = "- `item`: The item to be approved for delegated transfer."] # [doc = "- `delegate`: The account to delegate permission to transfer the item."] # [doc = "- `maybe_deadline`: Optional deadline for the approval. Specified by providing the"] # [doc = "\tnumber of blocks after which the approval will expire"] # [doc = ""] # [doc = "Emits `TransferApproved` on success."] # [doc = ""] # [doc = "Weight: `O(1)`"] approve_transfer { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , delegate : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , maybe_deadline : :: core :: option :: Option < :: core :: primitive :: u32 > , } , # [codec (index = 16)] # [doc = "Cancel one of the transfer approvals for a specific item."] # [doc = ""] # [doc = "Origin must be either:"] # [doc = "- the `Force` origin;"] # [doc = "- `Signed` with the signer being the Admin of the `collection`;"] # [doc = "- `Signed` with the signer being the Owner of the `item`;"] # [doc = ""] # [doc = "Arguments:"] # [doc = "- `collection`: The collection of the item of whose approval will be cancelled."] # [doc = "- `item`: The item of the collection of whose approval will be cancelled."] # [doc = "- `delegate`: The account that is going to loose their approval."] # [doc = ""] # [doc = "Emits `ApprovalCancelled` on success."] # [doc = ""] # [doc = "Weight: `O(1)`"] cancel_approval { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , delegate : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , } , # [codec (index = 17)] # [doc = "Cancel all the approvals of a specific item."] # [doc = ""] # [doc = "Origin must be either:"] # [doc = "- the `Force` origin;"] # [doc = "- `Signed` with the signer being the Admin of the `collection`;"] # [doc = "- `Signed` with the signer being the Owner of the `item`;"] # [doc = ""] # [doc = "Arguments:"] # [doc = "- `collection`: The collection of the item of whose approvals will be cleared."] # [doc = "- `item`: The item of the collection of whose approvals will be cleared."] # [doc = ""] # [doc = "Emits `AllApprovalsCancelled` on success."] # [doc = ""] # [doc = "Weight: `O(1)`"] clear_all_transfer_approvals { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , } , # [codec (index = 18)] # [doc = "Disallows changing the metadata or attributes of the item."] # [doc = ""] # [doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] # [doc = "`collection`."] # [doc = ""] # [doc = "- `collection`: The collection if the `item`."] # [doc = "- `item`: An item to be locked."] # [doc = "- `lock_metadata`: Specifies whether the metadata should be locked."] # [doc = "- `lock_attributes`: Specifies whether the attributes in the `CollectionOwner` namespace"] # [doc = " should be locked."] # [doc = ""] # [doc = "Note: `lock_attributes` affects the attributes in the `CollectionOwner` namespace"] # [doc = "only. When the metadata or attributes are locked, it won't be possible the unlock them."] # [doc = ""] # [doc = "Emits `ItemPropertiesLocked`."] # [doc = ""] # [doc = "Weight: `O(1)`"] lock_item_properties { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , lock_metadata : :: core :: primitive :: bool , lock_attributes : :: core :: primitive :: bool , } , # [codec (index = 19)] # [doc = "Set an attribute for a collection or item."] # [doc = ""] # [doc = "Origin must be Signed and must conform to the namespace ruleset:"] # [doc = "- `CollectionOwner` namespace could be modified by the `collection` owner only;"] # [doc = "- `ItemOwner` namespace could be modified by the `maybe_item` owner only. `maybe_item`"] # [doc = " should be set in that case;"] # [doc = "- `Account(AccountId)` namespace could be modified only when the `origin` was given a"] # [doc = " permission to do so;"] # [doc = ""] # [doc = "The funds of `origin` are reserved according to the formula:"] # [doc = "`AttributeDepositBase + DepositPerByte * (key.len + value.len)` taking into"] # [doc = "account any already reserved funds."] # [doc = ""] # [doc = "- `collection`: The identifier of the collection whose item's metadata to set."] # [doc = "- `maybe_item`: The identifier of the item whose metadata to set."] # [doc = "- `namespace`: Attribute's namespace."] # [doc = "- `key`: The key of the attribute."] # [doc = "- `value`: The value to which to set the attribute."] # [doc = ""] # [doc = "Emits `AttributeSet`."] # [doc = ""] # [doc = "Weight: `O(1)`"] set_attribute { collection : :: core :: primitive :: u32 , maybe_item : :: core :: option :: Option < :: core :: primitive :: u32 > , namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 > , key : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , value : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } , # [codec (index = 20)] # [doc = "Force-set an attribute for a collection or item."] # [doc = ""] # [doc = "Origin must be `ForceOrigin`."] # [doc = ""] # [doc = "If the attribute already exists and it was set by another account, the deposit"] # [doc = "will be returned to the previous owner."] # [doc = ""] # [doc = "- `set_as`: An optional owner of the attribute."] # [doc = "- `collection`: The identifier of the collection whose item's metadata to set."] # [doc = "- `maybe_item`: The identifier of the item whose metadata to set."] # [doc = "- `namespace`: Attribute's namespace."] # [doc = "- `key`: The key of the attribute."] # [doc = "- `value`: The value to which to set the attribute."] # [doc = ""] # [doc = "Emits `AttributeSet`."] # [doc = ""] # [doc = "Weight: `O(1)`"] force_set_attribute { set_as : :: core :: option :: Option < :: subxt :: utils :: AccountId32 > , collection : :: core :: primitive :: u32 , maybe_item : :: core :: option :: Option < :: core :: primitive :: u32 > , namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 > , key : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , value : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } , # [codec (index = 21)] # [doc = "Clear an attribute for a collection or item."] # [doc = ""] # [doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] # [doc = "attribute."] # [doc = ""] # [doc = "Any deposit is freed for the collection's owner."] # [doc = ""] # [doc = "- `collection`: The identifier of the collection whose item's metadata to clear."] # [doc = "- `maybe_item`: The identifier of the item whose metadata to clear."] # [doc = "- `namespace`: Attribute's namespace."] # [doc = "- `key`: The key of the attribute."] # [doc = ""] # [doc = "Emits `AttributeCleared`."] # [doc = ""] # [doc = "Weight: `O(1)`"] clear_attribute { collection : :: core :: primitive :: u32 , maybe_item : :: core :: option :: Option < :: core :: primitive :: u32 > , namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 > , key : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } , # [codec (index = 22)] # [doc = "Approve item's attributes to be changed by a delegated third-party account."] # [doc = ""] # [doc = "Origin must be Signed and must be an owner of the `item`."] # [doc = ""] # [doc = "- `collection`: A collection of the item."] # [doc = "- `item`: The item that holds attributes."] # [doc = "- `delegate`: The account to delegate permission to change attributes of the item."] # [doc = ""] # [doc = "Emits `ItemAttributesApprovalAdded` on success."] approve_item_attributes { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , delegate : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , } , # [codec (index = 23)] # [doc = "Cancel the previously provided approval to change item's attributes."] # [doc = "All the previously set attributes by the `delegate` will be removed."] # [doc = ""] # [doc = "Origin must be Signed and must be an owner of the `item`."] # [doc = ""] # [doc = "- `collection`: Collection that the item is contained within."] # [doc = "- `item`: The item that holds attributes."] # [doc = "- `delegate`: The previously approved account to remove."] # [doc = ""] # [doc = "Emits `ItemAttributesApprovalRemoved` on success."] cancel_item_attributes_approval { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , delegate : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , witness : runtime_types :: pallet_nfts :: types :: CancelAttributesApprovalWitness , } , # [codec (index = 24)] # [doc = "Set the metadata for an item."] # [doc = ""] # [doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] # [doc = "`collection`."] # [doc = ""] # [doc = "If the origin is Signed, then funds of signer are reserved according to the formula:"] # [doc = "`MetadataDepositBase + DepositPerByte * data.len` taking into"] # [doc = "account any already reserved funds."] # [doc = ""] # [doc = "- `collection`: The identifier of the collection whose item's metadata to set."] # [doc = "- `item`: The identifier of the item whose metadata to set."] # [doc = "- `data`: The general information of this item. Limited in length by `StringLimit`."] # [doc = ""] # [doc = "Emits `ItemMetadataSet`."] # [doc = ""] # [doc = "Weight: `O(1)`"] set_metadata { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , data : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } , # [codec (index = 25)] # [doc = "Clear the metadata for an item."] # [doc = ""] # [doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] # [doc = "`collection`."] # [doc = ""] # [doc = "Any deposit is freed for the collection's owner."] # [doc = ""] # [doc = "- `collection`: The identifier of the collection whose item's metadata to clear."] # [doc = "- `item`: The identifier of the item whose metadata to clear."] # [doc = ""] # [doc = "Emits `ItemMetadataCleared`."] # [doc = ""] # [doc = "Weight: `O(1)`"] clear_metadata { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , } , # [codec (index = 26)] # [doc = "Set the metadata for a collection."] # [doc = ""] # [doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] # [doc = "the `collection`."] # [doc = ""] # [doc = "If the origin is `Signed`, then funds of signer are reserved according to the formula:"] # [doc = "`MetadataDepositBase + DepositPerByte * data.len` taking into"] # [doc = "account any already reserved funds."] # [doc = ""] # [doc = "- `collection`: The identifier of the item whose metadata to update."] # [doc = "- `data`: The general information of this item. Limited in length by `StringLimit`."] # [doc = ""] # [doc = "Emits `CollectionMetadataSet`."] # [doc = ""] # [doc = "Weight: `O(1)`"] set_collection_metadata { collection : :: core :: primitive :: u32 , data : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } , # [codec (index = 27)] # [doc = "Clear the metadata for a collection."] # [doc = ""] # [doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] # [doc = "the `collection`."] # [doc = ""] # [doc = "Any deposit is freed for the collection's owner."] # [doc = ""] # [doc = "- `collection`: The identifier of the collection whose metadata to clear."] # [doc = ""] # [doc = "Emits `CollectionMetadataCleared`."] # [doc = ""] # [doc = "Weight: `O(1)`"] clear_collection_metadata { collection : :: core :: primitive :: u32 , } , # [codec (index = 28)] # [doc = "Set (or reset) the acceptance of ownership for a particular account."] # [doc = ""] # [doc = "Origin must be `Signed` and if `maybe_collection` is `Some`, then the signer must have a"] # [doc = "provider reference."] # [doc = ""] # [doc = "- `maybe_collection`: The identifier of the collection whose ownership the signer is"] # [doc = " willing to accept, or if `None`, an indication that the signer is willing to accept no"] # [doc = " ownership transferal."] # [doc = ""] # [doc = "Emits `OwnershipAcceptanceChanged`."] set_accept_ownership { maybe_collection : :: core :: option :: Option < :: core :: primitive :: u32 > , } , # [codec (index = 29)] # [doc = "Set the maximum number of items a collection could have."] # [doc = ""] # [doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] # [doc = "the `collection`."] # [doc = ""] # [doc = "- `collection`: The identifier of the collection to change."] # [doc = "- `max_supply`: The maximum number of items a collection could have."] # [doc = ""] # [doc = "Emits `CollectionMaxSupplySet` event when successful."] set_collection_max_supply { collection : :: core :: primitive :: u32 , max_supply : :: core :: primitive :: u32 , } , # [codec (index = 30)] # [doc = "Update mint settings."] # [doc = ""] # [doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] # [doc = "the `collection`."] # [doc = ""] # [doc = "- `collection`: The identifier of the collection to change."] # [doc = "- `mint_settings`: The new mint settings."] # [doc = ""] # [doc = "Emits `CollectionMintSettingsUpdated` event when successful."] update_mint_settings { collection : :: core :: primitive :: u32 , mint_settings : runtime_types :: pallet_nfts :: types :: MintSettings < :: core :: primitive :: u128 , :: core :: primitive :: u32 , :: core :: primitive :: u32 > , } , # [codec (index = 31)] # [doc = "Set (or reset) the price for an item."] # [doc = ""] # [doc = "Origin must be Signed and must be the owner of the asset `item`."] # [doc = ""] # [doc = "- `collection`: The collection of the item."] # [doc = "- `item`: The item to set the price for."] # [doc = "- `price`: The price for the item. Pass `None`, to reset the price."] # [doc = "- `buyer`: Restricts the buy operation to a specific account."] # [doc = ""] # [doc = "Emits `ItemPriceSet` on success if the price is not `None`."] # [doc = "Emits `ItemPriceRemoved` on success if the price is `None`."] set_price { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , price : :: core :: option :: Option < :: core :: primitive :: u128 > , whitelisted_buyer : :: core :: option :: Option < :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > > , } , # [codec (index = 32)] # [doc = "Allows to buy an item if it's up for sale."] # [doc = ""] # [doc = "Origin must be Signed and must not be the owner of the `item`."] # [doc = ""] # [doc = "- `collection`: The collection of the item."] # [doc = "- `item`: The item the sender wants to buy."] # [doc = "- `bid_price`: The price the sender is willing to pay."] # [doc = ""] # [doc = "Emits `ItemBought` on success."] buy_item { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , bid_price : :: core :: primitive :: u128 , } , # [codec (index = 33)] # [doc = "Allows to pay the tips."] # [doc = ""] # [doc = "Origin must be Signed."] # [doc = ""] # [doc = "- `tips`: Tips array."] # [doc = ""] # [doc = "Emits `TipSent` on every tip transfer."] pay_tips { tips : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < runtime_types :: pallet_nfts :: types :: ItemTip < :: core :: primitive :: u32 , :: core :: primitive :: u32 , :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 > > , } , # [codec (index = 34)] # [doc = "Register a new atomic swap, declaring an intention to send an `item` in exchange for"] # [doc = "`desired_item` from origin to target on the current blockchain."] # [doc = "The target can execute the swap during the specified `duration` of blocks (if set)."] # [doc = "Additionally, the price could be set for the desired `item`."] # [doc = ""] # [doc = "Origin must be Signed and must be an owner of the `item`."] # [doc = ""] # [doc = "- `collection`: The collection of the item."] # [doc = "- `item`: The item an owner wants to give."] # [doc = "- `desired_collection`: The collection of the desired item."] # [doc = "- `desired_item`: The desired item an owner wants to receive."] # [doc = "- `maybe_price`: The price an owner is willing to pay or receive for the desired `item`."] # [doc = "- `duration`: A deadline for the swap. Specified by providing the number of blocks"] # [doc = "\tafter which the swap will expire."] # [doc = ""] # [doc = "Emits `SwapCreated` on success."] create_swap { offered_collection : :: core :: primitive :: u32 , offered_item : :: core :: primitive :: u32 , desired_collection : :: core :: primitive :: u32 , maybe_desired_item : :: core :: option :: Option < :: core :: primitive :: u32 > , maybe_price : :: core :: option :: Option < runtime_types :: pallet_nfts :: types :: PriceWithDirection < :: core :: primitive :: u128 > > , duration : :: core :: primitive :: u32 , } , # [codec (index = 35)] # [doc = "Cancel an atomic swap."] # [doc = ""] # [doc = "Origin must be Signed."] # [doc = "Origin must be an owner of the `item` if the deadline hasn't expired."] # [doc = ""] # [doc = "- `collection`: The collection of the item."] # [doc = "- `item`: The item an owner wants to give."] # [doc = ""] # [doc = "Emits `SwapCancelled` on success."] cancel_swap { offered_collection : :: core :: primitive :: u32 , offered_item : :: core :: primitive :: u32 , } , # [codec (index = 36)] # [doc = "Claim an atomic swap."] # [doc = "This method executes a pending swap, that was created by a counterpart before."] # [doc = ""] # [doc = "Origin must be Signed and must be an owner of the `item`."] # [doc = ""] # [doc = "- `send_collection`: The collection of the item to be sent."] # [doc = "- `send_item`: The item to be sent."] # [doc = "- `receive_collection`: The collection of the item to be received."] # [doc = "- `receive_item`: The item to be received."] # [doc = "- `witness_price`: A price that was previously agreed on."] # [doc = ""] # [doc = "Emits `SwapClaimed` on success."] claim_swap { send_collection : :: core :: primitive :: u32 , send_item : :: core :: primitive :: u32 , receive_collection : :: core :: primitive :: u32 , receive_item : :: core :: primitive :: u32 , witness_price : :: core :: option :: Option < runtime_types :: pallet_nfts :: types :: PriceWithDirection < :: core :: primitive :: u128 > > , } , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "The signing account has no permission to do the operation."] NoPermission, #[codec(index = 1)] #[doc = "The given item ID is unknown."] UnknownCollection, #[codec(index = 2)] #[doc = "The item ID has already been used for an item."] AlreadyExists, #[codec(index = 3)] #[doc = "The approval had a deadline that expired, so the approval isn't valid anymore."] ApprovalExpired, #[codec(index = 4)] #[doc = "The owner turned out to be different to what was expected."] WrongOwner, #[codec(index = 5)] #[doc = "The witness data given does not match the current state of the chain."] BadWitness, #[codec(index = 6)] #[doc = "Collection ID is already taken."] CollectionIdInUse, #[codec(index = 7)] #[doc = "Items within that collection are non-transferable."] ItemsNonTransferable, #[codec(index = 8)] #[doc = "The provided account is not a delegate."] NotDelegate, #[codec(index = 9)] #[doc = "The delegate turned out to be different to what was expected."] WrongDelegate, #[codec(index = 10)] #[doc = "No approval exists that would allow the transfer."] Unapproved, #[codec(index = 11)] #[doc = "The named owner has not signed ownership acceptance of the collection."] Unaccepted, #[codec(index = 12)] #[doc = "The item is locked (non-transferable)."] ItemLocked, #[codec(index = 13)] #[doc = "Item's attributes are locked."] LockedItemAttributes, #[codec(index = 14)] #[doc = "Collection's attributes are locked."] LockedCollectionAttributes, #[codec(index = 15)] #[doc = "Item's metadata is locked."] LockedItemMetadata, #[codec(index = 16)] #[doc = "Collection's metadata is locked."] LockedCollectionMetadata, #[codec(index = 17)] #[doc = "All items have been minted."] MaxSupplyReached, #[codec(index = 18)] #[doc = "The max supply is locked and can't be changed."] MaxSupplyLocked, #[codec(index = 19)] #[doc = "The provided max supply is less than the number of items a collection already has."] MaxSupplyTooSmall, #[codec(index = 20)] #[doc = "The given item ID is unknown."] UnknownItem, #[codec(index = 21)] #[doc = "Swap doesn't exist."] UnknownSwap, #[codec(index = 22)] #[doc = "The given item has no metadata set."] MetadataNotFound, #[codec(index = 23)] #[doc = "The provided attribute can't be found."] AttributeNotFound, #[codec(index = 24)] #[doc = "Item is not for sale."] NotForSale, #[codec(index = 25)] #[doc = "The provided bid is too low."] BidTooLow, #[codec(index = 26)] #[doc = "The item has reached its approval limit."] ReachedApprovalLimit, #[codec(index = 27)] #[doc = "The deadline has already expired."] DeadlineExpired, #[codec(index = 28)] #[doc = "The duration provided should be less than or equal to `MaxDeadlineDuration`."] WrongDuration, #[codec(index = 29)] #[doc = "The method is disabled by system settings."] MethodDisabled, #[codec(index = 30)] #[doc = "The provided setting can't be set."] WrongSetting, #[codec(index = 31)] #[doc = "Item's config already exists and should be equal to the provided one."] InconsistentItemConfig, #[codec(index = 32)] #[doc = "Config for a collection or an item can't be found."] NoConfig, #[codec(index = 33)] #[doc = "Some roles were not cleared."] RolesNotCleared, #[codec(index = 34)] #[doc = "Mint has not started yet."] MintNotStarted, #[codec(index = 35)] #[doc = "Mint has already ended."] MintEnded, #[codec(index = 36)] #[doc = "The provided Item was already used for claiming."] AlreadyClaimed, #[codec(index = 37)] #[doc = "The provided data is incorrect."] IncorrectData, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { # [codec (index = 0)] # [doc = "A `collection` was created."] Created { collection : :: core :: primitive :: u32 , creator : :: subxt :: utils :: AccountId32 , owner : :: subxt :: utils :: AccountId32 , } , # [codec (index = 1)] # [doc = "A `collection` was force-created."] ForceCreated { collection : :: core :: primitive :: u32 , owner : :: subxt :: utils :: AccountId32 , } , # [codec (index = 2)] # [doc = "A `collection` was destroyed."] Destroyed { collection : :: core :: primitive :: u32 , } , # [codec (index = 3)] # [doc = "An `item` was issued."] Issued { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , owner : :: subxt :: utils :: AccountId32 , } , # [codec (index = 4)] # [doc = "An `item` was transferred."] Transferred { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , from : :: subxt :: utils :: AccountId32 , to : :: subxt :: utils :: AccountId32 , } , # [codec (index = 5)] # [doc = "An `item` was destroyed."] Burned { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , owner : :: subxt :: utils :: AccountId32 , } , # [codec (index = 6)] # [doc = "An `item` became non-transferable."] ItemTransferLocked { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , } , # [codec (index = 7)] # [doc = "An `item` became transferable."] ItemTransferUnlocked { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , } , # [codec (index = 8)] # [doc = "`item` metadata or attributes were locked."] ItemPropertiesLocked { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , lock_metadata : :: core :: primitive :: bool , lock_attributes : :: core :: primitive :: bool , } , # [codec (index = 9)] # [doc = "Some `collection` was locked."] CollectionLocked { collection : :: core :: primitive :: u32 , } , # [codec (index = 10)] # [doc = "The owner changed."] OwnerChanged { collection : :: core :: primitive :: u32 , new_owner : :: subxt :: utils :: AccountId32 , } , # [codec (index = 11)] # [doc = "The management team changed."] TeamChanged { collection : :: core :: primitive :: u32 , issuer : :: subxt :: utils :: AccountId32 , admin : :: subxt :: utils :: AccountId32 , freezer : :: subxt :: utils :: AccountId32 , } , # [codec (index = 12)] # [doc = "An `item` of a `collection` has been approved by the `owner` for transfer by"] # [doc = "a `delegate`."] TransferApproved { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , owner : :: subxt :: utils :: AccountId32 , delegate : :: subxt :: utils :: AccountId32 , deadline : :: core :: option :: Option < :: core :: primitive :: u32 > , } , # [codec (index = 13)] # [doc = "An approval for a `delegate` account to transfer the `item` of an item"] # [doc = "`collection` was cancelled by its `owner`."] ApprovalCancelled { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , owner : :: subxt :: utils :: AccountId32 , delegate : :: subxt :: utils :: AccountId32 , } , # [codec (index = 14)] # [doc = "All approvals of an item got cancelled."] AllApprovalsCancelled { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , owner : :: subxt :: utils :: AccountId32 , } , # [codec (index = 15)] # [doc = "A `collection` has had its config changed by the `Force` origin."] CollectionConfigChanged { collection : :: core :: primitive :: u32 , } , # [codec (index = 16)] # [doc = "New metadata has been set for a `collection`."] CollectionMetadataSet { collection : :: core :: primitive :: u32 , data : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } , # [codec (index = 17)] # [doc = "Metadata has been cleared for a `collection`."] CollectionMetadataCleared { collection : :: core :: primitive :: u32 , } , # [codec (index = 18)] # [doc = "New metadata has been set for an item."] ItemMetadataSet { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , data : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } , # [codec (index = 19)] # [doc = "Metadata has been cleared for an item."] ItemMetadataCleared { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , } , # [codec (index = 20)] # [doc = "The deposit for a set of `item`s within a `collection` has been updated."] Redeposited { collection : :: core :: primitive :: u32 , successful_items : :: std :: vec :: Vec < :: core :: primitive :: u32 > , } , # [codec (index = 21)] # [doc = "New attribute metadata has been set for a `collection` or `item`."] AttributeSet { collection : :: core :: primitive :: u32 , maybe_item : :: core :: option :: Option < :: core :: primitive :: u32 > , key : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , value : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 > , } , # [codec (index = 22)] # [doc = "Attribute metadata has been cleared for a `collection` or `item`."] AttributeCleared { collection : :: core :: primitive :: u32 , maybe_item : :: core :: option :: Option < :: core :: primitive :: u32 > , key : runtime_types :: sp_core :: bounded :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , namespace : runtime_types :: frame_support :: traits :: tokens :: misc :: AttributeNamespace < :: subxt :: utils :: AccountId32 > , } , # [codec (index = 23)] # [doc = "A new approval to modify item attributes was added."] ItemAttributesApprovalAdded { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , delegate : :: subxt :: utils :: AccountId32 , } , # [codec (index = 24)] # [doc = "A new approval to modify item attributes was removed."] ItemAttributesApprovalRemoved { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , delegate : :: subxt :: utils :: AccountId32 , } , # [codec (index = 25)] # [doc = "Ownership acceptance has changed for an account."] OwnershipAcceptanceChanged { who : :: subxt :: utils :: AccountId32 , maybe_collection : :: core :: option :: Option < :: core :: primitive :: u32 > , } , # [codec (index = 26)] # [doc = "Max supply has been set for a collection."] CollectionMaxSupplySet { collection : :: core :: primitive :: u32 , max_supply : :: core :: primitive :: u32 , } , # [codec (index = 27)] # [doc = "Mint settings for a collection had changed."] CollectionMintSettingsUpdated { collection : :: core :: primitive :: u32 , } , # [codec (index = 28)] # [doc = "Event gets emitted when the `NextCollectionId` gets incremented."] NextCollectionIdIncremented { next_id : :: core :: primitive :: u32 , } , # [codec (index = 29)] # [doc = "The price was set for the item."] ItemPriceSet { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , price : :: core :: primitive :: u128 , whitelisted_buyer : :: core :: option :: Option < :: subxt :: utils :: AccountId32 > , } , # [codec (index = 30)] # [doc = "The price for the item was removed."] ItemPriceRemoved { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , } , # [codec (index = 31)] # [doc = "An item was bought."] ItemBought { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , price : :: core :: primitive :: u128 , seller : :: subxt :: utils :: AccountId32 , buyer : :: subxt :: utils :: AccountId32 , } , # [codec (index = 32)] # [doc = "A tip was sent."] TipSent { collection : :: core :: primitive :: u32 , item : :: core :: primitive :: u32 , sender : :: subxt :: utils :: AccountId32 , receiver : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 33)] # [doc = "An `item` swap intent was created."] SwapCreated { offered_collection : :: core :: primitive :: u32 , offered_item : :: core :: primitive :: u32 , desired_collection : :: core :: primitive :: u32 , desired_item : :: core :: option :: Option < :: core :: primitive :: u32 > , price : :: core :: option :: Option < runtime_types :: pallet_nfts :: types :: PriceWithDirection < :: core :: primitive :: u128 > > , deadline : :: core :: primitive :: u32 , } , # [codec (index = 34)] # [doc = "The swap was cancelled."] SwapCancelled { offered_collection : :: core :: primitive :: u32 , offered_item : :: core :: primitive :: u32 , desired_collection : :: core :: primitive :: u32 , desired_item : :: core :: option :: Option < :: core :: primitive :: u32 > , price : :: core :: option :: Option < runtime_types :: pallet_nfts :: types :: PriceWithDirection < :: core :: primitive :: u128 > > , deadline : :: core :: primitive :: u32 , } , # [codec (index = 35)] # [doc = "The swap has been claimed."] SwapClaimed { sent_collection : :: core :: primitive :: u32 , sent_item : :: core :: primitive :: u32 , sent_item_owner : :: subxt :: utils :: AccountId32 , received_collection : :: core :: primitive :: u32 , received_item : :: core :: primitive :: u32 , received_item_owner : :: subxt :: utils :: AccountId32 , price : :: core :: option :: Option < runtime_types :: pallet_nfts :: types :: PriceWithDirection < :: core :: primitive :: u128 > > , deadline : :: core :: primitive :: u32 , } , } } pub mod types { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct AttributeDeposit<_0, _1> { pub account: ::core::option::Option<_1>, pub amount: _0, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BitFlags<_0>( pub ::core::primitive::u64, #[codec(skip)] pub ::core::marker::PhantomData<_0>, ); #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CancelAttributesApprovalWitness { pub account_attributes: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CollectionConfig<_0, _1, _2> { pub settings: runtime_types::pallet_nfts::types::BitFlags< runtime_types::pallet_nfts::types::CollectionSetting, >, pub max_supply: ::core::option::Option<_1>, pub mint_settings: runtime_types::pallet_nfts::types::MintSettings<_0, _1, _1>, #[codec(skip)] pub __subxt_unused_type_params: ::core::marker::PhantomData<_2>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CollectionDetails<_0, _1> { pub owner: _0, pub owner_deposit: _1, pub items: ::core::primitive::u32, pub item_metadatas: ::core::primitive::u32, pub attributes: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CollectionMetadata<_0> { pub deposit: _0, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum CollectionRole { #[codec(index = 1)] Issuer, #[codec(index = 2)] Freezer, #[codec(index = 4)] Admin, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum CollectionSetting { #[codec(index = 1)] TransferableItems, #[codec(index = 2)] UnlockedMetadata, #[codec(index = 4)] UnlockedAttributes, #[codec(index = 8)] UnlockedMaxSupply, #[codec(index = 16)] DepositRequired, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DestroyWitness { #[codec(compact)] pub items: ::core::primitive::u32, #[codec(compact)] pub item_metadatas: ::core::primitive::u32, #[codec(compact)] pub attributes: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ItemConfig { pub settings: runtime_types::pallet_nfts::types::BitFlags< runtime_types::pallet_nfts::types::ItemSetting, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ItemDeposit<_0, _1> { pub account: _1, pub amount: _0, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ItemDetails<_0, _1, _2> { pub owner: _0, pub approvals: _2, pub deposit: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ItemMetadata<_0> { pub deposit: _0, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ItemMetadataDeposit<_0, _1> { pub account: ::core::option::Option<_1>, pub amount: _0, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ItemSetting { #[codec(index = 1)] Transferable, #[codec(index = 2)] UnlockedMetadata, #[codec(index = 4)] UnlockedAttributes, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ItemTip<_0, _1, _2, _3> { pub collection: _0, pub item: _0, pub receiver: _2, pub amount: _3, #[codec(skip)] pub __subxt_unused_type_params: ::core::marker::PhantomData<_1>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct MintSettings<_0, _1, _2> { pub mint_type: runtime_types::pallet_nfts::types::MintType<_1>, pub price: ::core::option::Option<_0>, pub start_block: ::core::option::Option<_1>, pub end_block: ::core::option::Option<_1>, pub default_item_settings: runtime_types::pallet_nfts::types::BitFlags< runtime_types::pallet_nfts::types::ItemSetting, >, #[codec(skip)] pub __subxt_unused_type_params: ::core::marker::PhantomData<_2>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum MintType<_0> { #[codec(index = 0)] Issuer, #[codec(index = 1)] Public, #[codec(index = 2)] HolderOf(_0), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct MintWitness<_0> { pub owner_of_item: _0, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum PalletFeature { #[codec(index = 1)] Trading, #[codec(index = 2)] Attributes, #[codec(index = 4)] Approvals, #[codec(index = 8)] Swaps, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PendingSwap<_0, _1, _2, _3> { pub desired_collection: _0, pub desired_item: ::core::option::Option<_0>, pub price: ::core::option::Option<_2>, pub deadline: _0, #[codec(skip)] pub __subxt_unused_type_params: ::core::marker::PhantomData<(_3, _1)>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum PriceDirection { #[codec(index = 0)] Send, #[codec(index = 1)] Receive, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PriceWithDirection<_0> { pub amount: _0, pub direction: runtime_types::pallet_nfts::types::PriceDirection, } } } pub mod pallet_nis { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Bid<_0, _1> { pub amount: _0, pub who: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Place a bid."] #[doc = ""] #[doc = "Origin must be Signed, and account must have at least `amount` in free balance."] #[doc = ""] #[doc = "- `amount`: The amount of the bid; these funds will be reserved, and if/when"] #[doc = " consolidated, removed. Must be at least `MinBid`."] #[doc = "- `duration`: The number of periods before which the newly consolidated bid may be"] #[doc = " thawed. Must be greater than 1 and no more than `QueueCount`."] #[doc = ""] #[doc = "Complexities:"] #[doc = "- `Queues[duration].len()` (just take max)."] place_bid { #[codec(compact)] amount: ::core::primitive::u128, duration: ::core::primitive::u32, }, #[codec(index = 1)] #[doc = "Retract a previously placed bid."] #[doc = ""] #[doc = "Origin must be Signed, and the account should have previously issued a still-active bid"] #[doc = "of `amount` for `duration`."] #[doc = ""] #[doc = "- `amount`: The amount of the previous bid."] #[doc = "- `duration`: The duration of the previous bid."] retract_bid { #[codec(compact)] amount: ::core::primitive::u128, duration: ::core::primitive::u32, }, #[codec(index = 2)] #[doc = "Ensure we have sufficient funding for all potential payouts."] #[doc = ""] #[doc = "- `origin`: Must be accepted by `FundOrigin`."] fund_deficit, #[codec(index = 3)] #[doc = "Reduce or remove an outstanding receipt, placing the according proportion of funds into"] #[doc = "the account of the owner."] #[doc = ""] #[doc = "- `origin`: Must be Signed and the account must be the owner of the receipt `index` as"] #[doc = " well as any fungible counterpart."] #[doc = "- `index`: The index of the receipt."] #[doc = "- `portion`: If `Some`, then only the given portion of the receipt should be thawed. If"] #[doc = " `None`, then all of it should be."] thaw_private { #[codec(compact)] index: ::core::primitive::u32, maybe_proportion: ::core::option::Option< runtime_types::sp_arithmetic::per_things::Perquintill, >, }, #[codec(index = 4)] #[doc = "Reduce or remove an outstanding receipt, placing the according proportion of funds into"] #[doc = "the account of the owner."] #[doc = ""] #[doc = "- `origin`: Must be Signed and the account must be the owner of the fungible counterpart"] #[doc = " for receipt `index`."] #[doc = "- `index`: The index of the receipt."] thaw_communal { #[codec(compact)] index: ::core::primitive::u32, }, #[codec(index = 5)] #[doc = "Make a private receipt communal and create fungible counterparts for its owner."] communify { #[codec(compact)] index: ::core::primitive::u32, }, #[codec(index = 6)] #[doc = "Make a communal receipt private and burn fungible counterparts from its owner."] privatize { #[codec(compact)] index: ::core::primitive::u32, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "The duration of the bid is less than one."] DurationTooSmall, #[codec(index = 1)] #[doc = "The duration is the bid is greater than the number of queues."] DurationTooBig, #[codec(index = 2)] #[doc = "The amount of the bid is less than the minimum allowed."] AmountTooSmall, #[codec(index = 3)] #[doc = "The queue for the bid's duration is full and the amount bid is too low to get in"] #[doc = "through replacing an existing bid."] BidTooLow, #[codec(index = 4)] #[doc = "Receipt index is unknown."] UnknownReceipt, #[codec(index = 5)] #[doc = "Not the owner of the receipt."] NotOwner, #[codec(index = 6)] #[doc = "Bond not yet at expiry date."] NotExpired, #[codec(index = 7)] #[doc = "The given bid for retraction is not found."] UnknownBid, #[codec(index = 8)] #[doc = "The portion supplied is beyond the value of the receipt."] PortionTooBig, #[codec(index = 9)] #[doc = "Not enough funds are held to pay out."] Unfunded, #[codec(index = 10)] #[doc = "There are enough funds for what is required."] AlreadyFunded, #[codec(index = 11)] #[doc = "The thaw throttle has been reached for this period."] Throttled, #[codec(index = 12)] #[doc = "The operation would result in a receipt worth an insignficant value."] MakesDust, #[codec(index = 13)] #[doc = "The receipt is already communal."] AlreadyCommunal, #[codec(index = 14)] #[doc = "The receipt is already private."] AlreadyPrivate, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A bid was successfully placed."] BidPlaced { who: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, duration: ::core::primitive::u32, }, #[codec(index = 1)] #[doc = "A bid was successfully removed (before being accepted)."] BidRetracted { who: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, duration: ::core::primitive::u32, }, #[codec(index = 2)] #[doc = "A bid was dropped from a queue because of another, more substantial, bid was present."] BidDropped { who: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, duration: ::core::primitive::u32, }, #[codec(index = 3)] #[doc = "A bid was accepted. The balance may not be released until expiry."] Issued { index: ::core::primitive::u32, expiry: ::core::primitive::u32, who: ::subxt::utils::AccountId32, proportion: runtime_types::sp_arithmetic::per_things::Perquintill, amount: ::core::primitive::u128, }, #[codec(index = 4)] #[doc = "An receipt has been (at least partially) thawed."] Thawed { index: ::core::primitive::u32, who: ::subxt::utils::AccountId32, proportion: runtime_types::sp_arithmetic::per_things::Perquintill, amount: ::core::primitive::u128, dropped: ::core::primitive::bool, }, #[codec(index = 5)] #[doc = "An automatic funding of the deficit was made."] Funded { deficit: ::core::primitive::u128 }, #[codec(index = 6)] #[doc = "A receipt was transfered."] Transferred { from: ::subxt::utils::AccountId32, to: ::subxt::utils::AccountId32, index: ::core::primitive::u32, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReceiptRecord<_0, _1, _2> { pub proportion: runtime_types::sp_arithmetic::per_things::Perquintill, pub owner: ::core::option::Option<(_0, _2)>, pub expiry: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SummaryRecord<_0, _1> { pub proportion_owed: runtime_types::sp_arithmetic::per_things::Perquintill, pub index: _0, pub thawed: runtime_types::sp_arithmetic::per_things::Perquintill, pub last_period: _0, pub receipts_on_hold: _1, } } } pub mod pallet_nomination_pools { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Stake funds with a pool. The amount to bond is transferred from the member to the"] #[doc = "pools account and immediately increases the pools bond."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "* An account can only be a member of a single pool."] #[doc = "* An account cannot join the same pool multiple times."] #[doc = "* This call will *not* dust the member account, so the member must have at least"] #[doc = " `existential deposit + amount` in their account."] #[doc = "* Only a pool with [`PoolState::Open`] can be joined"] join { #[codec(compact)] amount: ::core::primitive::u128, pool_id: ::core::primitive::u32, }, #[codec(index = 1)] #[doc = "Bond `extra` more funds from `origin` into the pool to which they already belong."] #[doc = ""] #[doc = "Additional funds can come from either the free balance of the account, of from the"] #[doc = "accumulated rewards, see [`BondExtra`]."] #[doc = ""] #[doc = "Bonding extra funds implies an automatic payout of all pending rewards as well."] bond_extra { extra: runtime_types::pallet_nomination_pools::BondExtra< ::core::primitive::u128, >, }, #[codec(index = 2)] #[doc = "A bonded member can use this to claim their payout based on the rewards that the pool"] #[doc = "has accumulated since their last claimed payout (OR since joining if this is there first"] #[doc = "time claiming rewards). The payout will be transferred to the member's account."] #[doc = ""] #[doc = "The member will earn rewards pro rata based on the members stake vs the sum of the"] #[doc = "members in the pools stake. Rewards do not \"expire\"."] claim_payout, #[codec(index = 3)] #[doc = "Unbond up to `unbonding_points` of the `member_account`'s funds from the pool. It"] #[doc = "implicitly collects the rewards one last time, since not doing so would mean some"] #[doc = "rewards would be forfeited."] #[doc = ""] #[doc = "Under certain conditions, this call can be dispatched permissionlessly (i.e. by any"] #[doc = "account)."] #[doc = ""] #[doc = "# Conditions for a permissionless dispatch."] #[doc = ""] #[doc = "* The pool is blocked and the caller is either the root or state-toggler. This is"] #[doc = " refereed to as a kick."] #[doc = "* The pool is destroying and the member is not the depositor."] #[doc = "* The pool is destroying, the member is the depositor and no other members are in the"] #[doc = " pool."] #[doc = ""] #[doc = "## Conditions for permissioned dispatch (i.e. the caller is also the"] #[doc = "`member_account`):"] #[doc = ""] #[doc = "* The caller is not the depositor."] #[doc = "* The caller is the depositor, the pool is destroying and no other members are in the"] #[doc = " pool."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "If there are too many unlocking chunks to unbond with the pool account,"] #[doc = "[`Call::pool_withdraw_unbonded`] can be called to try and minimize unlocking chunks."] #[doc = "The [`StakingInterface::unbond`] will implicitly call [`Call::pool_withdraw_unbonded`]"] #[doc = "to try to free chunks if necessary (ie. if unbound was called and no unlocking chunks"] #[doc = "are available). However, it may not be possible to release the current unlocking chunks,"] #[doc = "in which case, the result of this call will likely be the `NoMoreChunks` error from the"] #[doc = "staking system."] unbond { member_account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] unbonding_points: ::core::primitive::u128, }, #[codec(index = 4)] #[doc = "Call `withdraw_unbonded` for the pools account. This call can be made by any account."] #[doc = ""] #[doc = "This is useful if their are too many unlocking chunks to call `unbond`, and some"] #[doc = "can be cleared by withdrawing. In the case there are too many unlocking chunks, the user"] #[doc = "would probably see an error like `NoMoreChunks` emitted from the staking system when"] #[doc = "they attempt to unbond."] pool_withdraw_unbonded { pool_id: ::core::primitive::u32, num_slashing_spans: ::core::primitive::u32, }, #[codec(index = 5)] #[doc = "Withdraw unbonded funds from `member_account`. If no bonded funds can be unbonded, an"] #[doc = "error is returned."] #[doc = ""] #[doc = "Under certain conditions, this call can be dispatched permissionlessly (i.e. by any"] #[doc = "account)."] #[doc = ""] #[doc = "# Conditions for a permissionless dispatch"] #[doc = ""] #[doc = "* The pool is in destroy mode and the target is not the depositor."] #[doc = "* The target is the depositor and they are the only member in the sub pools."] #[doc = "* The pool is blocked and the caller is either the root or state-toggler."] #[doc = ""] #[doc = "# Conditions for permissioned dispatch"] #[doc = ""] #[doc = "* The caller is the target and they are not the depositor."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "If the target is the depositor, the pool will be destroyed."] withdraw_unbonded { member_account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, num_slashing_spans: ::core::primitive::u32, }, #[codec(index = 6)] #[doc = "Create a new delegation pool."] #[doc = ""] #[doc = "# Arguments"] #[doc = ""] #[doc = "* `amount` - The amount of funds to delegate to the pool. This also acts of a sort of"] #[doc = " deposit since the pools creator cannot fully unbond funds until the pool is being"] #[doc = " destroyed."] #[doc = "* `index` - A disambiguation index for creating the account. Likely only useful when"] #[doc = " creating multiple pools in the same extrinsic."] #[doc = "* `root` - The account to set as [`PoolRoles::root`]."] #[doc = "* `nominator` - The account to set as the [`PoolRoles::nominator`]."] #[doc = "* `state_toggler` - The account to set as the [`PoolRoles::state_toggler`]."] #[doc = ""] #[doc = "# Note"] #[doc = ""] #[doc = "In addition to `amount`, the caller will transfer the existential deposit; so the caller"] #[doc = "needs at have at least `amount + existential_deposit` transferrable."] create { #[codec(compact)] amount: ::core::primitive::u128, root: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, nominator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, state_toggler: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 7)] #[doc = "Create a new delegation pool with a previously used pool id"] #[doc = ""] #[doc = "# Arguments"] #[doc = ""] #[doc = "same as `create` with the inclusion of"] #[doc = "* `pool_id` - `A valid PoolId."] create_with_pool_id { #[codec(compact)] amount: ::core::primitive::u128, root: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, nominator: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, state_toggler: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, pool_id: ::core::primitive::u32, }, #[codec(index = 8)] #[doc = "Nominate on behalf of the pool."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed by the pool nominator or the pool"] #[doc = "root role."] #[doc = ""] #[doc = "This directly forward the call to the staking pallet, on behalf of the pool bonded"] #[doc = "account."] nominate { pool_id: ::core::primitive::u32, validators: ::std::vec::Vec<::subxt::utils::AccountId32>, }, #[codec(index = 9)] #[doc = "Set a new state for the pool."] #[doc = ""] #[doc = "If a pool is already in the `Destroying` state, then under no condition can its state"] #[doc = "change again."] #[doc = ""] #[doc = "The dispatch origin of this call must be either:"] #[doc = ""] #[doc = "1. signed by the state toggler, or the root role of the pool,"] #[doc = "2. if the pool conditions to be open are NOT met (as described by `ok_to_be_open`), and"] #[doc = " then the state of the pool can be permissionlessly changed to `Destroying`."] set_state { pool_id: ::core::primitive::u32, state: runtime_types::pallet_nomination_pools::PoolState, }, #[codec(index = 10)] #[doc = "Set a new metadata for the pool."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed by the state toggler, or the root role"] #[doc = "of the pool."] set_metadata { pool_id: ::core::primitive::u32, metadata: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 11)] #[doc = "Update configurations for the nomination pools. The origin for this call must be"] #[doc = "Root."] #[doc = ""] #[doc = "# Arguments"] #[doc = ""] #[doc = "* `min_join_bond` - Set [`MinJoinBond`]."] #[doc = "* `min_create_bond` - Set [`MinCreateBond`]."] #[doc = "* `max_pools` - Set [`MaxPools`]."] #[doc = "* `max_members` - Set [`MaxPoolMembers`]."] #[doc = "* `max_members_per_pool` - Set [`MaxPoolMembersPerPool`]."] set_configs { min_join_bond: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u128, >, min_create_bond: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u128, >, max_pools: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u32, >, max_members: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u32, >, max_members_per_pool: runtime_types::pallet_nomination_pools::ConfigOp< ::core::primitive::u32, >, }, #[codec(index = 12)] #[doc = "Update the roles of the pool."] #[doc = ""] #[doc = "The root is the only entity that can change any of the roles, including itself,"] #[doc = "excluding the depositor, who can never change."] #[doc = ""] #[doc = "It emits an event, notifying UIs of the role change. This event is quite relevant to"] #[doc = "most pool members and they should be informed of changes to pool roles."] update_roles { pool_id: ::core::primitive::u32, new_root: runtime_types::pallet_nomination_pools::ConfigOp< ::subxt::utils::AccountId32, >, new_nominator: runtime_types::pallet_nomination_pools::ConfigOp< ::subxt::utils::AccountId32, >, new_state_toggler: runtime_types::pallet_nomination_pools::ConfigOp< ::subxt::utils::AccountId32, >, }, #[codec(index = 13)] #[doc = "Chill on behalf of the pool."] #[doc = ""] #[doc = "The dispatch origin of this call must be signed by the pool nominator or the pool"] #[doc = "root role, same as [`Pallet::nominate`]."] #[doc = ""] #[doc = "This directly forward the call to the staking pallet, on behalf of the pool bonded"] #[doc = "account."] chill { pool_id: ::core::primitive::u32 }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum DefensiveError { #[codec(index = 0)] NotEnoughSpaceInUnbondPool, #[codec(index = 1)] PoolNotFound, #[codec(index = 2)] RewardPoolNotFound, #[codec(index = 3)] SubPoolsNotFound, #[codec(index = 4)] BondedStashKilledPrematurely, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "A (bonded) pool id does not exist."] PoolNotFound, #[codec(index = 1)] #[doc = "An account is not a member."] PoolMemberNotFound, #[codec(index = 2)] #[doc = "A reward pool does not exist. In all cases this is a system logic error."] RewardPoolNotFound, #[codec(index = 3)] #[doc = "A sub pool does not exist."] SubPoolsNotFound, #[codec(index = 4)] #[doc = "An account is already delegating in another pool. An account may only belong to one"] #[doc = "pool at a time."] AccountBelongsToOtherPool, #[codec(index = 5)] #[doc = "The member is fully unbonded (and thus cannot access the bonded and reward pool"] #[doc = "anymore to, for example, collect rewards)."] FullyUnbonding, #[codec(index = 6)] #[doc = "The member cannot unbond further chunks due to reaching the limit."] MaxUnbondingLimit, #[codec(index = 7)] #[doc = "None of the funds can be withdrawn yet because the bonding duration has not passed."] CannotWithdrawAny, #[codec(index = 8)] #[doc = "The amount does not meet the minimum bond to either join or create a pool."] #[doc = ""] #[doc = "The depositor can never unbond to a value less than"] #[doc = "`Pallet::depositor_min_bond`. The caller does not have nominating"] #[doc = "permissions for the pool. Members can never unbond to a value below `MinJoinBond`."] MinimumBondNotMet, #[codec(index = 9)] #[doc = "The transaction could not be executed due to overflow risk for the pool."] OverflowRisk, #[codec(index = 10)] #[doc = "A pool must be in [`PoolState::Destroying`] in order for the depositor to unbond or for"] #[doc = "other members to be permissionlessly unbonded."] NotDestroying, #[codec(index = 11)] #[doc = "The caller does not have nominating permissions for the pool."] NotNominator, #[codec(index = 12)] #[doc = "Either a) the caller cannot make a valid kick or b) the pool is not destroying."] NotKickerOrDestroying, #[codec(index = 13)] #[doc = "The pool is not open to join"] NotOpen, #[codec(index = 14)] #[doc = "The system is maxed out on pools."] MaxPools, #[codec(index = 15)] #[doc = "Too many members in the pool or system."] MaxPoolMembers, #[codec(index = 16)] #[doc = "The pools state cannot be changed."] CanNotChangeState, #[codec(index = 17)] #[doc = "The caller does not have adequate permissions."] DoesNotHavePermission, #[codec(index = 18)] #[doc = "Metadata exceeds [`Config::MaxMetadataLen`]"] MetadataExceedsMaxLen, #[codec(index = 19)] #[doc = "Some error occurred that should never happen. This should be reported to the"] #[doc = "maintainers."] Defensive( runtime_types::pallet_nomination_pools::pallet::DefensiveError, ), #[codec(index = 20)] #[doc = "Partial unbonding now allowed permissionlessly."] PartialUnbondNotAllowedPermissionlessly, #[codec(index = 21)] #[doc = "Pool id currently in use."] PoolIdInUse, #[codec(index = 22)] #[doc = "Pool id provided is not correct/usable."] InvalidPoolId, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Events of this pallet."] pub enum Event { #[codec(index = 0)] #[doc = "A pool has been created."] Created { depositor: ::subxt::utils::AccountId32, pool_id: ::core::primitive::u32, }, #[codec(index = 1)] #[doc = "A member has became bonded in a pool."] Bonded { member: ::subxt::utils::AccountId32, pool_id: ::core::primitive::u32, bonded: ::core::primitive::u128, joined: ::core::primitive::bool, }, #[codec(index = 2)] #[doc = "A payout has been made to a member."] PaidOut { member: ::subxt::utils::AccountId32, pool_id: ::core::primitive::u32, payout: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "A member has unbonded from their pool."] #[doc = ""] #[doc = "- `balance` is the corresponding balance of the number of points that has been"] #[doc = " requested to be unbonded (the argument of the `unbond` transaction) from the bonded"] #[doc = " pool."] #[doc = "- `points` is the number of points that are issued as a result of `balance` being"] #[doc = "dissolved into the corresponding unbonding pool."] #[doc = "- `era` is the era in which the balance will be unbonded."] #[doc = "In the absence of slashing, these values will match. In the presence of slashing, the"] #[doc = "number of points that are issued in the unbonding pool will be less than the amount"] #[doc = "requested to be unbonded."] Unbonded { member: ::subxt::utils::AccountId32, pool_id: ::core::primitive::u32, balance: ::core::primitive::u128, points: ::core::primitive::u128, era: ::core::primitive::u32, }, #[codec(index = 4)] #[doc = "A member has withdrawn from their pool."] #[doc = ""] #[doc = "The given number of `points` have been dissolved in return of `balance`."] #[doc = ""] #[doc = "Similar to `Unbonded` event, in the absence of slashing, the ratio of point to balance"] #[doc = "will be 1."] Withdrawn { member: ::subxt::utils::AccountId32, pool_id: ::core::primitive::u32, balance: ::core::primitive::u128, points: ::core::primitive::u128, }, #[codec(index = 5)] #[doc = "A pool has been destroyed."] Destroyed { pool_id: ::core::primitive::u32 }, #[codec(index = 6)] #[doc = "The state of a pool has changed"] StateChanged { pool_id: ::core::primitive::u32, new_state: runtime_types::pallet_nomination_pools::PoolState, }, #[codec(index = 7)] #[doc = "A member has been removed from a pool."] #[doc = ""] #[doc = "The removal can be voluntary (withdrawn all unbonded funds) or involuntary (kicked)."] MemberRemoved { pool_id: ::core::primitive::u32, member: ::subxt::utils::AccountId32, }, #[codec(index = 8)] #[doc = "The roles of a pool have been updated to the given new roles. Note that the depositor"] #[doc = "can never change."] RolesUpdated { root: ::core::option::Option<::subxt::utils::AccountId32>, state_toggler: ::core::option::Option<::subxt::utils::AccountId32>, nominator: ::core::option::Option<::subxt::utils::AccountId32>, }, #[codec(index = 9)] #[doc = "The active balance of pool `pool_id` has been slashed to `balance`."] PoolSlashed { pool_id: ::core::primitive::u32, balance: ::core::primitive::u128, }, #[codec(index = 10)] #[doc = "The unbond pool at `era` of pool `pool_id` has been slashed to `balance`."] UnbondingPoolSlashed { pool_id: ::core::primitive::u32, era: ::core::primitive::u32, balance: ::core::primitive::u128, }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum BondExtra<_0> { #[codec(index = 0)] FreeBalance(_0), #[codec(index = 1)] Rewards, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BondedPoolInner { pub points: ::core::primitive::u128, pub state: runtime_types::pallet_nomination_pools::PoolState, pub member_counter: ::core::primitive::u32, pub roles: runtime_types::pallet_nomination_pools::PoolRoles< ::subxt::utils::AccountId32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ConfigOp<_0> { #[codec(index = 0)] Noop, #[codec(index = 1)] Set(_0), #[codec(index = 2)] Remove, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PoolMember { pub pool_id: ::core::primitive::u32, pub points: ::core::primitive::u128, pub last_recorded_reward_counter: runtime_types::sp_arithmetic::fixed_point::FixedU128, pub unbonding_eras: runtime_types::sp_core::bounded::bounded_btree_map::BoundedBTreeMap< ::core::primitive::u32, ::core::primitive::u128, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PoolRoles<_0> { pub depositor: _0, pub root: ::core::option::Option<_0>, pub nominator: ::core::option::Option<_0>, pub state_toggler: ::core::option::Option<_0>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum PoolState { #[codec(index = 0)] Open, #[codec(index = 1)] Blocked, #[codec(index = 2)] Destroying, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RewardPool { pub last_recorded_reward_counter: runtime_types::sp_arithmetic::fixed_point::FixedU128, pub last_recorded_total_payouts: ::core::primitive::u128, pub total_rewards_claimed: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SubPools { pub no_era: runtime_types::pallet_nomination_pools::UnbondPool, pub with_era: runtime_types::sp_core::bounded::bounded_btree_map::BoundedBTreeMap< ::core::primitive::u32, runtime_types::pallet_nomination_pools::UnbondPool, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UnbondPool { pub points: ::core::primitive::u128, pub balance: ::core::primitive::u128, } } pub mod pallet_offences { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Events type."] pub enum Event { #[codec(index = 0)] #[doc = "There is an offence reported of the given `kind` happened at the `session_index` and"] #[doc = "(kind-specific) time slot. This event is not deposited for duplicate slashes."] #[doc = "\\[kind, timeslot\\]."] Offence { kind: [::core::primitive::u8; 16usize], timeslot: ::std::vec::Vec<::core::primitive::u8>, }, } } } pub mod pallet_preimage { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Register a preimage on-chain."] #[doc = ""] #[doc = "If the preimage was previously requested, no fees or deposits are taken for providing"] #[doc = "the preimage. Otherwise, a deposit is taken proportional to the size of the preimage."] note_preimage { bytes: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 1)] #[doc = "Clear an unrequested preimage from the runtime storage."] #[doc = ""] #[doc = "If `len` is provided, then it will be a much cheaper operation."] #[doc = ""] #[doc = "- `hash`: The hash of the preimage to be removed from the store."] #[doc = "- `len`: The length of the preimage of `hash`."] unnote_preimage { hash: ::subxt::utils::H256 }, #[codec(index = 2)] #[doc = "Request a preimage be uploaded to the chain without paying any fees or deposits."] #[doc = ""] #[doc = "If the preimage requests has already been provided on-chain, we unreserve any deposit"] #[doc = "a user may have paid, and take the control of the preimage out of their hands."] request_preimage { hash: ::subxt::utils::H256 }, #[codec(index = 3)] #[doc = "Clear a previously made request for a preimage."] #[doc = ""] #[doc = "NOTE: THIS MUST NOT BE CALLED ON `hash` MORE TIMES THAN `request_preimage`."] unrequest_preimage { hash: ::subxt::utils::H256 }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Preimage is too large to store on-chain."] TooBig, #[codec(index = 1)] #[doc = "Preimage has already been noted on-chain."] AlreadyNoted, #[codec(index = 2)] #[doc = "The user is not authorized to perform this action."] NotAuthorized, #[codec(index = 3)] #[doc = "The preimage cannot be removed since it has not yet been noted."] NotNoted, #[codec(index = 4)] #[doc = "A preimage may not be removed when there are outstanding requests."] Requested, #[codec(index = 5)] #[doc = "The preimage request cannot be removed since no outstanding requests exist."] NotRequested, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A preimage has been noted."] Noted { hash: ::subxt::utils::H256 }, #[codec(index = 1)] #[doc = "A preimage has been requested."] Requested { hash: ::subxt::utils::H256 }, #[codec(index = 2)] #[doc = "A preimage has ben cleared."] Cleared { hash: ::subxt::utils::H256 }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum RequestStatus<_0, _1> { #[codec(index = 0)] Unrequested { deposit: (_0, _1), len: ::core::primitive::u32, }, #[codec(index = 1)] Requested { deposit: ::core::option::Option<(_0, _1)>, count: ::core::primitive::u32, len: ::core::option::Option<::core::primitive::u32>, }, } } pub mod pallet_proxy { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Dispatch the given `call` from an account that the sender is authorised for through"] #[doc = "`add_proxy`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `real`: The account that the proxy will make a call on behalf of."] #[doc = "- `force_proxy_type`: Specify the exact proxy type to be used and checked for this call."] #[doc = "- `call`: The call to be made by the `real` account."] proxy { real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, force_proxy_type: ::core::option::Option< runtime_types::kitchensink_runtime::ProxyType, >, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 1)] #[doc = "Register a proxy account for the sender that is able to make calls on its behalf."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `proxy`: The account that the `caller` would like to make a proxy."] #[doc = "- `proxy_type`: The permissions allowed for this proxy account."] #[doc = "- `delay`: The announcement period required of the initial proxy. Will generally be"] #[doc = "zero."] add_proxy { delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, proxy_type: runtime_types::kitchensink_runtime::ProxyType, delay: ::core::primitive::u32, }, #[codec(index = 2)] #[doc = "Unregister a proxy account for the sender."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `proxy`: The account that the `caller` would like to remove as a proxy."] #[doc = "- `proxy_type`: The permissions currently enabled for the removed proxy account."] remove_proxy { delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, proxy_type: runtime_types::kitchensink_runtime::ProxyType, delay: ::core::primitive::u32, }, #[codec(index = 3)] #[doc = "Unregister all proxy accounts for the sender."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "WARNING: This may be called on accounts created by `pure`, however if done, then"] #[doc = "the unreserved fees will be inaccessible. **All access to this account will be lost.**"] remove_proxies, #[codec(index = 4)] #[doc = "Spawn a fresh new account that is guaranteed to be otherwise inaccessible, and"] #[doc = "initialize it with a proxy of `proxy_type` for `origin` sender."] #[doc = ""] #[doc = "Requires a `Signed` origin."] #[doc = ""] #[doc = "- `proxy_type`: The type of the proxy that the sender will be registered as over the"] #[doc = "new account. This will almost always be the most permissive `ProxyType` possible to"] #[doc = "allow for maximum flexibility."] #[doc = "- `index`: A disambiguation index, in case this is called multiple times in the same"] #[doc = "transaction (e.g. with `utility::batch`). Unless you're using `batch` you probably just"] #[doc = "want to use `0`."] #[doc = "- `delay`: The announcement period required of the initial proxy. Will generally be"] #[doc = "zero."] #[doc = ""] #[doc = "Fails with `Duplicate` if this has already been called in this transaction, from the"] #[doc = "same sender, with the same parameters."] #[doc = ""] #[doc = "Fails if there are insufficient funds to pay for deposit."] create_pure { proxy_type: runtime_types::kitchensink_runtime::ProxyType, delay: ::core::primitive::u32, index: ::core::primitive::u16, }, #[codec(index = 5)] #[doc = "Removes a previously spawned pure proxy."] #[doc = ""] #[doc = "WARNING: **All access to this account will be lost.** Any funds held in it will be"] #[doc = "inaccessible."] #[doc = ""] #[doc = "Requires a `Signed` origin, and the sender account must have been created by a call to"] #[doc = "`pure` with corresponding parameters."] #[doc = ""] #[doc = "- `spawner`: The account that originally called `pure` to create this account."] #[doc = "- `index`: The disambiguation index originally passed to `pure`. Probably `0`."] #[doc = "- `proxy_type`: The proxy type originally passed to `pure`."] #[doc = "- `height`: The height of the chain when the call to `pure` was processed."] #[doc = "- `ext_index`: The extrinsic index in which the call to `pure` was processed."] #[doc = ""] #[doc = "Fails with `NoPermission` in case the caller is not a previously created pure"] #[doc = "account whose `pure` call has corresponding parameters."] kill_pure { spawner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, proxy_type: runtime_types::kitchensink_runtime::ProxyType, index: ::core::primitive::u16, #[codec(compact)] height: ::core::primitive::u32, #[codec(compact)] ext_index: ::core::primitive::u32, }, #[codec(index = 6)] #[doc = "Publish the hash of a proxy-call that will be made in the future."] #[doc = ""] #[doc = "This must be called some number of blocks before the corresponding `proxy` is attempted"] #[doc = "if the delay associated with the proxy relationship is greater than zero."] #[doc = ""] #[doc = "No more than `MaxPending` announcements may be made at any one time."] #[doc = ""] #[doc = "This will take a deposit of `AnnouncementDepositFactor` as well as"] #[doc = "`AnnouncementDepositBase` if there are no other pending announcements."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a proxy of `real`."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `real`: The account that the proxy will make a call on behalf of."] #[doc = "- `call_hash`: The hash of the call to be made by the `real` account."] announce { real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, call_hash: ::subxt::utils::H256, }, #[codec(index = 7)] #[doc = "Remove a given announcement."] #[doc = ""] #[doc = "May be called by a proxy account to remove a call they previously announced and return"] #[doc = "the deposit."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `real`: The account that the proxy will make a call on behalf of."] #[doc = "- `call_hash`: The hash of the call to be made by the `real` account."] remove_announcement { real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, call_hash: ::subxt::utils::H256, }, #[codec(index = 8)] #[doc = "Remove the given announcement of a delegate."] #[doc = ""] #[doc = "May be called by a target (proxied) account to remove a call that one of their delegates"] #[doc = "(`delegate`) has announced they want to execute. The deposit is returned."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `delegate`: The account that previously announced the call."] #[doc = "- `call_hash`: The hash of the call to be made."] reject_announcement { delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, call_hash: ::subxt::utils::H256, }, #[codec(index = 9)] #[doc = "Dispatch the given `call` from an account that the sender is authorized for through"] #[doc = "`add_proxy`."] #[doc = ""] #[doc = "Removes any corresponding announcement(s)."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `real`: The account that the proxy will make a call on behalf of."] #[doc = "- `force_proxy_type`: Specify the exact proxy type to be used and checked for this call."] #[doc = "- `call`: The call to be made by the `real` account."] proxy_announced { delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, real: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, force_proxy_type: ::core::option::Option< runtime_types::kitchensink_runtime::ProxyType, >, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "There are too many proxies registered or too many announcements pending."] TooMany, #[codec(index = 1)] #[doc = "Proxy registration not found."] NotFound, #[codec(index = 2)] #[doc = "Sender is not a proxy of the account to be proxied."] NotProxy, #[codec(index = 3)] #[doc = "A call which is incompatible with the proxy type's filter was attempted."] Unproxyable, #[codec(index = 4)] #[doc = "Account is already a proxy."] Duplicate, #[codec(index = 5)] #[doc = "Call may not be made by proxy because it may escalate its privileges."] NoPermission, #[codec(index = 6)] #[doc = "Announcement, if made at all, was made too recently."] Unannounced, #[codec(index = 7)] #[doc = "Cannot add self as proxy."] NoSelfProxy, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A proxy was executed correctly, with the given."] ProxyExecuted { result: ::core::result::Result< (), runtime_types::sp_runtime::DispatchError, >, }, #[codec(index = 1)] #[doc = "A pure account has been created by new proxy with given"] #[doc = "disambiguation index and proxy type."] PureCreated { pure: ::subxt::utils::AccountId32, who: ::subxt::utils::AccountId32, proxy_type: runtime_types::kitchensink_runtime::ProxyType, disambiguation_index: ::core::primitive::u16, }, #[codec(index = 2)] #[doc = "An announcement was placed to make a call in the future."] Announced { real: ::subxt::utils::AccountId32, proxy: ::subxt::utils::AccountId32, call_hash: ::subxt::utils::H256, }, #[codec(index = 3)] #[doc = "A proxy was added."] ProxyAdded { delegator: ::subxt::utils::AccountId32, delegatee: ::subxt::utils::AccountId32, proxy_type: runtime_types::kitchensink_runtime::ProxyType, delay: ::core::primitive::u32, }, #[codec(index = 4)] #[doc = "A proxy was removed."] ProxyRemoved { delegator: ::subxt::utils::AccountId32, delegatee: ::subxt::utils::AccountId32, proxy_type: runtime_types::kitchensink_runtime::ProxyType, delay: ::core::primitive::u32, }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Announcement<_0, _1, _2> { pub real: _0, pub call_hash: _1, pub height: _2, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ProxyDefinition<_0, _1, _2> { pub delegate: _0, pub proxy_type: _1, pub delay: _2, } } pub mod pallet_ranked_collective { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Introduce a new member."] #[doc = ""] #[doc = "- `origin`: Must be the `AdminOrigin`."] #[doc = "- `who`: Account of non-member which will become a member."] #[doc = "- `rank`: The rank to give the new member."] #[doc = ""] #[doc = "Weight: `O(1)`"] add_member { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 1)] #[doc = "Increment the rank of an existing member by one."] #[doc = ""] #[doc = "- `origin`: Must be the `AdminOrigin`."] #[doc = "- `who`: Account of existing member."] #[doc = ""] #[doc = "Weight: `O(1)`"] promote_member { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 2)] #[doc = "Decrement the rank of an existing member by one. If the member is already at rank zero,"] #[doc = "then they are removed entirely."] #[doc = ""] #[doc = "- `origin`: Must be the `AdminOrigin`."] #[doc = "- `who`: Account of existing member of rank greater than zero."] #[doc = ""] #[doc = "Weight: `O(1)`, less if the member's index is highest in its rank."] demote_member { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 3)] #[doc = "Remove the member entirely."] #[doc = ""] #[doc = "- `origin`: Must be the `AdminOrigin`."] #[doc = "- `who`: Account of existing member of rank greater than zero."] #[doc = "- `min_rank`: The rank of the member or greater."] #[doc = ""] #[doc = "Weight: `O(min_rank)`."] remove_member { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, min_rank: ::core::primitive::u16, }, #[codec(index = 4)] #[doc = "Add an aye or nay vote for the sender to the given proposal."] #[doc = ""] #[doc = "- `origin`: Must be `Signed` by a member account."] #[doc = "- `poll`: Index of a poll which is ongoing."] #[doc = "- `aye`: `true` if the vote is to approve the proposal, `false` otherwise."] #[doc = ""] #[doc = "Transaction fees are be waived if the member is voting on any particular proposal"] #[doc = "for the first time and the call is successful. Subsequent vote changes will charge a"] #[doc = "fee."] #[doc = ""] #[doc = "Weight: `O(1)`, less if there was no previous vote on the poll by the member."] vote { poll: ::core::primitive::u32, aye: ::core::primitive::bool, }, #[codec(index = 5)] #[doc = "Remove votes from the given poll. It must have ended."] #[doc = ""] #[doc = "- `origin`: Must be `Signed` by any account."] #[doc = "- `poll_index`: Index of a poll which is completed and for which votes continue to"] #[doc = " exist."] #[doc = "- `max`: Maximum number of vote items from remove in this call."] #[doc = ""] #[doc = "Transaction fees are waived if the operation is successful."] #[doc = ""] #[doc = "Weight `O(max)` (less if there are fewer items to remove than `max`)."] cleanup_poll { poll_index: ::core::primitive::u32, max: ::core::primitive::u32, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Account is already a member."] AlreadyMember, #[codec(index = 1)] #[doc = "Account is not a member."] NotMember, #[codec(index = 2)] #[doc = "The given poll index is unknown or has closed."] NotPolling, #[codec(index = 3)] #[doc = "The given poll is still ongoing."] Ongoing, #[codec(index = 4)] #[doc = "There are no further records to be removed."] NoneRemaining, #[codec(index = 5)] #[doc = "Unexpected error in state."] Corruption, #[codec(index = 6)] #[doc = "The member's rank is too low to vote."] RankTooLow, #[codec(index = 7)] #[doc = "The information provided is incorrect."] InvalidWitness, #[codec(index = 8)] #[doc = "The origin is not sufficiently privileged to do the operation."] NoPermission, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A member `who` has been added."] MemberAdded { who: ::subxt::utils::AccountId32 }, #[codec(index = 1)] #[doc = "The member `who`se rank has been changed to the given `rank`."] RankChanged { who: ::subxt::utils::AccountId32, rank: ::core::primitive::u16, }, #[codec(index = 2)] #[doc = "The member `who` of given `rank` has been removed from the collective."] MemberRemoved { who: ::subxt::utils::AccountId32, rank: ::core::primitive::u16, }, #[codec(index = 3)] #[doc = "The member `who` has voted for the `poll` with the given `vote` leading to an updated"] #[doc = "`tally`."] Voted { who: ::subxt::utils::AccountId32, poll: ::core::primitive::u32, vote: runtime_types::pallet_ranked_collective::VoteRecord, tally: runtime_types::pallet_ranked_collective::Tally, }, } } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct MemberRecord { pub rank: ::core::primitive::u16, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Tally { pub bare_ayes: ::core::primitive::u32, pub ayes: ::core::primitive::u32, pub nays: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum VoteRecord { #[codec(index = 0)] Aye(::core::primitive::u32), #[codec(index = 1)] Nay(::core::primitive::u32), } } pub mod pallet_recovery { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Send a call through a recovered account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and registered to"] #[doc = "be able to make calls on behalf of the recovered account."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `account`: The recovered account you want to make a call on-behalf-of."] #[doc = "- `call`: The call you want to make with the recovered account."] as_recovered { account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 1)] #[doc = "Allow ROOT to bypass the recovery process and set an a rescuer account"] #[doc = "for a lost account directly."] #[doc = ""] #[doc = "The dispatch origin for this call must be _ROOT_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `lost`: The \"lost account\" to be recovered."] #[doc = "- `rescuer`: The \"rescuer account\" which can call as the lost account."] set_recovered { lost: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, rescuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 2)] #[doc = "Create a recovery configuration for your account. This makes your account recoverable."] #[doc = ""] #[doc = "Payment: `ConfigDepositBase` + `FriendDepositFactor` * #_of_friends balance"] #[doc = "will be reserved for storing the recovery configuration. This deposit is returned"] #[doc = "in full when the user calls `remove_recovery`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `friends`: A list of friends you trust to vouch for recovery attempts. Should be"] #[doc = " ordered and contain no duplicate values."] #[doc = "- `threshold`: The number of friends that must vouch for a recovery attempt before the"] #[doc = " account can be recovered. Should be less than or equal to the length of the list of"] #[doc = " friends."] #[doc = "- `delay_period`: The number of blocks after a recovery attempt is initialized that"] #[doc = " needs to pass before the account can be recovered."] create_recovery { friends: ::std::vec::Vec<::subxt::utils::AccountId32>, threshold: ::core::primitive::u16, delay_period: ::core::primitive::u32, }, #[codec(index = 3)] #[doc = "Initiate the process for recovering a recoverable account."] #[doc = ""] #[doc = "Payment: `RecoveryDeposit` balance will be reserved for initiating the"] #[doc = "recovery process. This deposit will always be repatriated to the account"] #[doc = "trying to be recovered. See `close_recovery`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `account`: The lost account that you want to recover. This account needs to be"] #[doc = " recoverable (i.e. have a recovery configuration)."] initiate_recovery { account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 4)] #[doc = "Allow a \"friend\" of a recoverable account to vouch for an active recovery"] #[doc = "process for that account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and must be a \"friend\""] #[doc = "for the recoverable account."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `lost`: The lost account that you want to recover."] #[doc = "- `rescuer`: The account trying to rescue the lost account that you want to vouch for."] #[doc = ""] #[doc = "The combination of these two parameters must point to an active recovery"] #[doc = "process."] vouch_recovery { lost: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, rescuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 5)] #[doc = "Allow a successful rescuer to claim their recovered account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and must be a \"rescuer\""] #[doc = "who has successfully completed the account recovery process: collected"] #[doc = "`threshold` or more vouches, waited `delay_period` blocks since initiation."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `account`: The lost account that you want to claim has been successfully recovered by"] #[doc = " you."] claim_recovery { account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 6)] #[doc = "As the controller of a recoverable account, close an active recovery"] #[doc = "process for your account."] #[doc = ""] #[doc = "Payment: By calling this function, the recoverable account will receive"] #[doc = "the recovery deposit `RecoveryDeposit` placed by the rescuer."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and must be a"] #[doc = "recoverable account with an active recovery process for it."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `rescuer`: The account trying to rescue this recoverable account."] close_recovery { rescuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 7)] #[doc = "Remove the recovery process for your account. Recovered accounts are still accessible."] #[doc = ""] #[doc = "NOTE: The user must make sure to call `close_recovery` on all active"] #[doc = "recovery attempts before calling this function else it will fail."] #[doc = ""] #[doc = "Payment: By calling this function the recoverable account will unreserve"] #[doc = "their recovery configuration deposit."] #[doc = "(`ConfigDepositBase` + `FriendDepositFactor` * #_of_friends)"] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and must be a"] #[doc = "recoverable account (i.e. has a recovery configuration)."] remove_recovery, #[codec(index = 8)] #[doc = "Cancel the ability to use `as_recovered` for `account`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and registered to"] #[doc = "be able to make calls on behalf of the recovered account."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `account`: The recovered account you are able to call on-behalf-of."] cancel_recovered { account: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "User is not allowed to make a call on behalf of this account"] NotAllowed, #[codec(index = 1)] #[doc = "Threshold must be greater than zero"] ZeroThreshold, #[codec(index = 2)] #[doc = "Friends list must be greater than zero and threshold"] NotEnoughFriends, #[codec(index = 3)] #[doc = "Friends list must be less than max friends"] MaxFriends, #[codec(index = 4)] #[doc = "Friends list must be sorted and free of duplicates"] NotSorted, #[codec(index = 5)] #[doc = "This account is not set up for recovery"] NotRecoverable, #[codec(index = 6)] #[doc = "This account is already set up for recovery"] AlreadyRecoverable, #[codec(index = 7)] #[doc = "A recovery process has already started for this account"] AlreadyStarted, #[codec(index = 8)] #[doc = "A recovery process has not started for this rescuer"] NotStarted, #[codec(index = 9)] #[doc = "This account is not a friend who can vouch"] NotFriend, #[codec(index = 10)] #[doc = "The friend must wait until the delay period to vouch for this recovery"] DelayPeriod, #[codec(index = 11)] #[doc = "This user has already vouched for this recovery"] AlreadyVouched, #[codec(index = 12)] #[doc = "The threshold for recovering this account has not been met"] Threshold, #[codec(index = 13)] #[doc = "There are still active recovery attempts that need to be closed"] StillActive, #[codec(index = 14)] #[doc = "This account is already set up for recovery"] AlreadyProxy, #[codec(index = 15)] #[doc = "Some internal state is broken."] BadState, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Events type."] pub enum Event { #[codec(index = 0)] #[doc = "A recovery process has been set up for an account."] RecoveryCreated { account: ::subxt::utils::AccountId32, }, #[codec(index = 1)] #[doc = "A recovery process has been initiated for lost account by rescuer account."] RecoveryInitiated { lost_account: ::subxt::utils::AccountId32, rescuer_account: ::subxt::utils::AccountId32, }, #[codec(index = 2)] #[doc = "A recovery process for lost account by rescuer account has been vouched for by sender."] RecoveryVouched { lost_account: ::subxt::utils::AccountId32, rescuer_account: ::subxt::utils::AccountId32, sender: ::subxt::utils::AccountId32, }, #[codec(index = 3)] #[doc = "A recovery process for lost account by rescuer account has been closed."] RecoveryClosed { lost_account: ::subxt::utils::AccountId32, rescuer_account: ::subxt::utils::AccountId32, }, #[codec(index = 4)] #[doc = "Lost account has been successfully recovered by rescuer account."] AccountRecovered { lost_account: ::subxt::utils::AccountId32, rescuer_account: ::subxt::utils::AccountId32, }, #[codec(index = 5)] #[doc = "A recovery process has been removed for an account."] RecoveryRemoved { lost_account: ::subxt::utils::AccountId32, }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ActiveRecovery<_0, _1, _2> { pub created: _0, pub deposit: _1, pub friends: _2, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RecoveryConfig<_0, _1, _2> { pub delay_period: _0, pub deposit: _1, pub friends: _2, pub threshold: ::core::primitive::u16, } } pub mod pallet_referenda { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Propose a referendum on a privileged action."] #[doc = ""] #[doc = "- `origin`: must be `SubmitOrigin` and the account must have `SubmissionDeposit` funds"] #[doc = " available."] #[doc = "- `proposal_origin`: The origin from which the proposal should be executed."] #[doc = "- `proposal`: The proposal."] #[doc = "- `enactment_moment`: The moment that the proposal should be enacted."] #[doc = ""] #[doc = "Emits `Submitted`."] submit { proposal_origin: ::std::boxed::Box< runtime_types::kitchensink_runtime::OriginCaller, >, proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, enactment_moment: runtime_types::frame_support::traits::schedule::DispatchTime< ::core::primitive::u32, >, }, #[codec(index = 1)] #[doc = "Post the Decision Deposit for a referendum."] #[doc = ""] #[doc = "- `origin`: must be `Signed` and the account must have funds available for the"] #[doc = " referendum's track's Decision Deposit."] #[doc = "- `index`: The index of the submitted referendum whose Decision Deposit is yet to be"] #[doc = " posted."] #[doc = ""] #[doc = "Emits `DecisionDepositPlaced`."] place_decision_deposit { index: ::core::primitive::u32 }, #[codec(index = 2)] #[doc = "Refund the Decision Deposit for a closed referendum back to the depositor."] #[doc = ""] #[doc = "- `origin`: must be `Signed` or `Root`."] #[doc = "- `index`: The index of a closed referendum whose Decision Deposit has not yet been"] #[doc = " refunded."] #[doc = ""] #[doc = "Emits `DecisionDepositRefunded`."] refund_decision_deposit { index: ::core::primitive::u32 }, #[codec(index = 3)] #[doc = "Cancel an ongoing referendum."] #[doc = ""] #[doc = "- `origin`: must be the `CancelOrigin`."] #[doc = "- `index`: The index of the referendum to be cancelled."] #[doc = ""] #[doc = "Emits `Cancelled`."] cancel { index: ::core::primitive::u32 }, #[codec(index = 4)] #[doc = "Cancel an ongoing referendum and slash the deposits."] #[doc = ""] #[doc = "- `origin`: must be the `KillOrigin`."] #[doc = "- `index`: The index of the referendum to be cancelled."] #[doc = ""] #[doc = "Emits `Killed` and `DepositSlashed`."] kill { index: ::core::primitive::u32 }, #[codec(index = 5)] #[doc = "Advance a referendum onto its next logical state. Only used internally."] #[doc = ""] #[doc = "- `origin`: must be `Root`."] #[doc = "- `index`: the referendum to be advanced."] nudge_referendum { index: ::core::primitive::u32 }, #[codec(index = 6)] #[doc = "Advance a track onto its next logical state. Only used internally."] #[doc = ""] #[doc = "- `origin`: must be `Root`."] #[doc = "- `track`: the track to be advanced."] #[doc = ""] #[doc = "Action item for when there is now one fewer referendum in the deciding phase and the"] #[doc = "`DecidingCount` is not yet updated. This means that we should either:"] #[doc = "- begin deciding another referendum (and leave `DecidingCount` alone); or"] #[doc = "- decrement `DecidingCount`."] one_fewer_deciding { track: ::core::primitive::u16 }, #[codec(index = 7)] #[doc = "Refund the Submission Deposit for a closed referendum back to the depositor."] #[doc = ""] #[doc = "- `origin`: must be `Signed` or `Root`."] #[doc = "- `index`: The index of a closed referendum whose Submission Deposit has not yet been"] #[doc = " refunded."] #[doc = ""] #[doc = "Emits `SubmissionDepositRefunded`."] refund_submission_deposit { index: ::core::primitive::u32 }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Referendum is not ongoing."] NotOngoing, #[codec(index = 1)] #[doc = "Referendum's decision deposit is already paid."] HasDeposit, #[codec(index = 2)] #[doc = "The track identifier given was invalid."] BadTrack, #[codec(index = 3)] #[doc = "There are already a full complement of referenda in progress for this track."] Full, #[codec(index = 4)] #[doc = "The queue of the track is empty."] QueueEmpty, #[codec(index = 5)] #[doc = "The referendum index provided is invalid in this context."] BadReferendum, #[codec(index = 6)] #[doc = "There was nothing to do in the advancement."] NothingToDo, #[codec(index = 7)] #[doc = "No track exists for the proposal origin."] NoTrack, #[codec(index = 8)] #[doc = "Any deposit cannot be refunded until after the decision is over."] Unfinished, #[codec(index = 9)] #[doc = "The deposit refunder is not the depositor."] NoPermission, #[codec(index = 10)] #[doc = "The deposit cannot be refunded since none was made."] NoDeposit, #[codec(index = 11)] #[doc = "The referendum status is invalid for this operation."] BadStatus, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A referendum has been submitted."] Submitted { index: ::core::primitive::u32, track: ::core::primitive::u16, proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 1)] #[doc = "The decision deposit has been placed."] DecisionDepositPlaced { index: ::core::primitive::u32, who: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "The decision deposit has been refunded."] DecisionDepositRefunded { index: ::core::primitive::u32, who: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "A deposit has been slashaed."] DepositSlashed { who: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 4)] #[doc = "A referendum has moved into the deciding phase."] DecisionStarted { index: ::core::primitive::u32, track: ::core::primitive::u16, proposal: runtime_types::frame_support::traits::preimages::Bounded< runtime_types::kitchensink_runtime::RuntimeCall, >, tally: runtime_types::pallet_ranked_collective::Tally, }, #[codec(index = 5)] ConfirmStarted { index: ::core::primitive::u32 }, #[codec(index = 6)] ConfirmAborted { index: ::core::primitive::u32 }, #[codec(index = 7)] #[doc = "A referendum has ended its confirmation phase and is ready for approval."] Confirmed { index: ::core::primitive::u32, tally: runtime_types::pallet_ranked_collective::Tally, }, #[codec(index = 8)] #[doc = "A referendum has been approved and its proposal has been scheduled."] Approved { index: ::core::primitive::u32 }, #[codec(index = 9)] #[doc = "A proposal has been rejected by referendum."] Rejected { index: ::core::primitive::u32, tally: runtime_types::pallet_ranked_collective::Tally, }, #[codec(index = 10)] #[doc = "A referendum has been timed out without being decided."] TimedOut { index: ::core::primitive::u32, tally: runtime_types::pallet_ranked_collective::Tally, }, #[codec(index = 11)] #[doc = "A referendum has been cancelled."] Cancelled { index: ::core::primitive::u32, tally: runtime_types::pallet_ranked_collective::Tally, }, #[codec(index = 12)] #[doc = "A referendum has been killed."] Killed { index: ::core::primitive::u32, tally: runtime_types::pallet_ranked_collective::Tally, }, #[codec(index = 13)] #[doc = "The submission deposit has been refunded."] SubmissionDepositRefunded { index: ::core::primitive::u32, who: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, } } pub mod types { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Curve { #[codec(index = 0)] LinearDecreasing { length: runtime_types::sp_arithmetic::per_things::Perbill, floor: runtime_types::sp_arithmetic::per_things::Perbill, ceil: runtime_types::sp_arithmetic::per_things::Perbill, }, #[codec(index = 1)] SteppedDecreasing { begin: runtime_types::sp_arithmetic::per_things::Perbill, end: runtime_types::sp_arithmetic::per_things::Perbill, step: runtime_types::sp_arithmetic::per_things::Perbill, period: runtime_types::sp_arithmetic::per_things::Perbill, }, #[codec(index = 2)] Reciprocal { factor: runtime_types::sp_arithmetic::fixed_point::FixedI64, x_offset: runtime_types::sp_arithmetic::fixed_point::FixedI64, y_offset: runtime_types::sp_arithmetic::fixed_point::FixedI64, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DecidingStatus<_0> { pub since: _0, pub confirming: ::core::option::Option<_0>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Deposit<_0, _1> { pub who: _0, pub amount: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ReferendumInfo<_0, _1, _2, _3, _4, _5, _6, _7> { #[codec(index = 0)] Ongoing( runtime_types::pallet_referenda::types::ReferendumStatus< _0, _1, _2, _3, _4, _5, _6, _7, >, ), #[codec(index = 1)] Approved( _2, ::core::option::Option< runtime_types::pallet_referenda::types::Deposit<_6, _4>, >, ::core::option::Option< runtime_types::pallet_referenda::types::Deposit<_6, _4>, >, ), #[codec(index = 2)] Rejected( _2, ::core::option::Option< runtime_types::pallet_referenda::types::Deposit<_6, _4>, >, ::core::option::Option< runtime_types::pallet_referenda::types::Deposit<_6, _4>, >, ), #[codec(index = 3)] Cancelled( _2, ::core::option::Option< runtime_types::pallet_referenda::types::Deposit<_6, _4>, >, ::core::option::Option< runtime_types::pallet_referenda::types::Deposit<_6, _4>, >, ), #[codec(index = 4)] TimedOut( _2, ::core::option::Option< runtime_types::pallet_referenda::types::Deposit<_6, _4>, >, ::core::option::Option< runtime_types::pallet_referenda::types::Deposit<_6, _4>, >, ), #[codec(index = 5)] Killed(_2), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ReferendumStatus<_0, _1, _2, _3, _4, _5, _6, _7> { pub track: _0, pub origin: _1, pub proposal: _3, pub enactment: runtime_types::frame_support::traits::schedule::DispatchTime<_2>, pub submitted: _2, pub submission_deposit: runtime_types::pallet_referenda::types::Deposit<_6, _4>, pub decision_deposit: ::core::option::Option< runtime_types::pallet_referenda::types::Deposit<_6, _4>, >, pub deciding: ::core::option::Option< runtime_types::pallet_referenda::types::DecidingStatus<_2>, >, pub tally: _5, pub in_queue: ::core::primitive::bool, pub alarm: ::core::option::Option<(_2, _7)>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TrackInfo<_0, _1> { pub name: ::std::string::String, pub max_deciding: _1, pub decision_deposit: _0, pub prepare_period: _1, pub decision_period: _1, pub confirm_period: _1, pub min_enactment_period: _1, pub min_approval: runtime_types::pallet_referenda::types::Curve, pub min_support: runtime_types::pallet_referenda::types::Curve, } } } pub mod pallet_remark { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Index and store data off chain."] store { remark: ::std::vec::Vec<::core::primitive::u8>, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Attempting to store empty data."] Empty, #[codec(index = 1)] #[doc = "Attempted to call `store` outside of block execution."] BadContext, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "Stored data off chain."] Stored { sender: ::subxt::utils::AccountId32, content_hash: ::subxt::utils::H256, }, } } } pub mod pallet_root_testing { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "A dispatch that will fill the block weight up to the given ratio."] fill_block { ratio: runtime_types::sp_arithmetic::per_things::Perbill, }, } } } pub mod pallet_scheduler { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Anonymously schedule a task."] schedule { when: ::core::primitive::u32, maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, priority: ::core::primitive::u8, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 1)] #[doc = "Cancel an anonymously scheduled task."] cancel { when: ::core::primitive::u32, index: ::core::primitive::u32, }, #[codec(index = 2)] #[doc = "Schedule a named task."] schedule_named { id: [::core::primitive::u8; 32usize], when: ::core::primitive::u32, maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, priority: ::core::primitive::u8, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 3)] #[doc = "Cancel a named scheduled task."] cancel_named { id: [::core::primitive::u8; 32usize], }, #[codec(index = 4)] #[doc = "Anonymously schedule a task after a delay."] #[doc = ""] #[doc = "# "] #[doc = "Same as [`schedule`]."] #[doc = "# "] schedule_after { after: ::core::primitive::u32, maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, priority: ::core::primitive::u8, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 5)] #[doc = "Schedule a named task after a delay."] #[doc = ""] #[doc = "# "] #[doc = "Same as [`schedule_named`](Self::schedule_named)."] #[doc = "# "] schedule_named_after { id: [::core::primitive::u8; 32usize], after: ::core::primitive::u32, maybe_periodic: ::core::option::Option<( ::core::primitive::u32, ::core::primitive::u32, )>, priority: ::core::primitive::u8, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Failed to schedule a call"] FailedToSchedule, #[codec(index = 1)] #[doc = "Cannot find the scheduled call."] NotFound, #[codec(index = 2)] #[doc = "Given target block number is in the past."] TargetBlockNumberInPast, #[codec(index = 3)] #[doc = "Reschedule failed because it does not change scheduled time."] RescheduleNoChange, #[codec(index = 4)] #[doc = "Attempt to use a non-named function on a named task."] Named, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Events type."] pub enum Event { #[codec(index = 0)] #[doc = "Scheduled some task."] Scheduled { when: ::core::primitive::u32, index: ::core::primitive::u32, }, #[codec(index = 1)] #[doc = "Canceled some task."] Canceled { when: ::core::primitive::u32, index: ::core::primitive::u32, }, #[codec(index = 2)] #[doc = "Dispatched some task."] Dispatched { task: (::core::primitive::u32, ::core::primitive::u32), id: ::core::option::Option<[::core::primitive::u8; 32usize]>, result: ::core::result::Result< (), runtime_types::sp_runtime::DispatchError, >, }, #[codec(index = 3)] #[doc = "The call for the provided hash was not found so the task has been aborted."] CallUnavailable { task: (::core::primitive::u32, ::core::primitive::u32), id: ::core::option::Option<[::core::primitive::u8; 32usize]>, }, #[codec(index = 4)] #[doc = "The given task was unable to be renewed since the agenda is full at that block."] PeriodicFailed { task: (::core::primitive::u32, ::core::primitive::u32), id: ::core::option::Option<[::core::primitive::u8; 32usize]>, }, #[codec(index = 5)] #[doc = "The given task can never be executed since it is overweight."] PermanentlyOverweight { task: (::core::primitive::u32, ::core::primitive::u32), id: ::core::option::Option<[::core::primitive::u8; 32usize]>, }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Scheduled<_0, _1, _2, _3, _4> { pub maybe_id: ::core::option::Option<_0>, pub priority: ::core::primitive::u8, pub call: _1, pub maybe_periodic: ::core::option::Option<(_2, _2)>, pub origin: _3, #[codec(skip)] pub __subxt_unused_type_params: ::core::marker::PhantomData<_4>, } } pub mod pallet_session { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Sets the session key(s) of the function caller to `keys`."] #[doc = "Allows an account to set its session key prior to becoming a validator."] #[doc = "This doesn't take effect until the next session."] #[doc = ""] #[doc = "The dispatch origin of this function must be signed."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(1)`. Actual cost depends on the number of length of"] #[doc = " `T::Keys::key_ids()` which is fixed."] #[doc = "- DbReads: `origin account`, `T::ValidatorIdOf`, `NextKeys`"] #[doc = "- DbWrites: `origin account`, `NextKeys`"] #[doc = "- DbReads per key id: `KeyOwner`"] #[doc = "- DbWrites per key id: `KeyOwner`"] #[doc = "# "] set_keys { keys: runtime_types::kitchensink_runtime::SessionKeys, proof: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 1)] #[doc = "Removes any session key(s) of the function caller."] #[doc = ""] #[doc = "This doesn't take effect until the next session."] #[doc = ""] #[doc = "The dispatch origin of this function must be Signed and the account must be either be"] #[doc = "convertible to a validator ID using the chain's typical addressing system (this usually"] #[doc = "means being a controller account) or directly convertible into a validator ID (which"] #[doc = "usually means being a stash account)."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(1)` in number of key types. Actual cost depends on the number of length"] #[doc = " of `T::Keys::key_ids()` which is fixed."] #[doc = "- DbReads: `T::ValidatorIdOf`, `NextKeys`, `origin account`"] #[doc = "- DbWrites: `NextKeys`, `origin account`"] #[doc = "- DbWrites per key id: `KeyOwner`"] #[doc = "# "] purge_keys, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Error for the session pallet."] pub enum Error { #[codec(index = 0)] #[doc = "Invalid ownership proof."] InvalidProof, #[codec(index = 1)] #[doc = "No associated validator ID for account."] NoAssociatedValidatorId, #[codec(index = 2)] #[doc = "Registered duplicate key."] DuplicatedKey, #[codec(index = 3)] #[doc = "No keys are associated with this account."] NoKeys, #[codec(index = 4)] #[doc = "Key setting account is not live, so it's impossible to associate keys."] NoAccount, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "New session has happened. Note that the argument is the session index, not the"] #[doc = "block number as the type might suggest."] NewSession { session_index: ::core::primitive::u32, }, } } } pub mod pallet_society { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "A user outside of the society can make a bid for entry."] #[doc = ""] #[doc = "Payment: `CandidateDeposit` will be reserved for making a bid. It is returned"] #[doc = "when the bid becomes a member, or if the bid calls `unbid`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `value`: A one time payment the bid would like to receive when joining the society."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids), C (len of candidates), M (len of members), X (balance reserve)"] #[doc = "- Storage Reads:"] #[doc = "\t- One storage read to check for suspended candidate. O(1)"] #[doc = "\t- One storage read to check for suspended member. O(1)"] #[doc = "\t- One storage read to retrieve all current bids. O(B)"] #[doc = "\t- One storage read to retrieve all current candidates. O(C)"] #[doc = "\t- One storage read to retrieve all members. O(M)"] #[doc = "- Storage Writes:"] #[doc = "\t- One storage mutate to add a new bid to the vector O(B) (TODO: possible optimization"] #[doc = " w/ read)"] #[doc = "\t- Up to one storage removal if bid.len() > MAX_BID_COUNT. O(1)"] #[doc = "- Notable Computation:"] #[doc = "\t- O(B + C + log M) search to check user is not already a part of society."] #[doc = "\t- O(log B) search to insert the new bid sorted."] #[doc = "- External Pallet Operations:"] #[doc = "\t- One balance reserve operation. O(X)"] #[doc = "\t- Up to one balance unreserve operation if bids.len() > MAX_BID_COUNT."] #[doc = "- Events:"] #[doc = "\t- One event for new bid."] #[doc = "\t- Up to one event for AutoUnbid if bid.len() > MAX_BID_COUNT."] #[doc = ""] #[doc = "Total Complexity: O(M + B + C + logM + logB + X)"] #[doc = "# "] bid { value: ::core::primitive::u128 }, #[codec(index = 1)] #[doc = "A bidder can remove their bid for entry into society."] #[doc = "By doing so, they will have their candidate deposit returned or"] #[doc = "they will unvouch their voucher."] #[doc = ""] #[doc = "Payment: The bid deposit is unreserved if the user made a bid."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a bidder."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `pos`: Position in the `Bids` vector of the bid who wants to unbid."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids), X (balance unreserve)"] #[doc = "- One storage read and write to retrieve and update the bids. O(B)"] #[doc = "- Either one unreserve balance action O(X) or one vouching storage removal. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(B + X)"] #[doc = "# "] unbid { pos: ::core::primitive::u32 }, #[codec(index = 2)] #[doc = "As a member, vouch for someone to join society by placing a bid on their behalf."] #[doc = ""] #[doc = "There is no deposit required to vouch for a new bid, but a member can only vouch for"] #[doc = "one bid at a time. If the bid becomes a suspended candidate and ultimately rejected by"] #[doc = "the suspension judgement origin, the member will be banned from vouching again."] #[doc = ""] #[doc = "As a vouching member, you can claim a tip if the candidate is accepted. This tip will"] #[doc = "be paid as a portion of the reward the member will receive for joining the society."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a member."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `who`: The user who you would like to vouch for."] #[doc = "- `value`: The total reward to be paid between you and the candidate if they become"] #[doc = "a member in the society."] #[doc = "- `tip`: Your cut of the total `value` payout when the candidate is inducted into"] #[doc = "the society. Tips larger than `value` will be saturated upon payout."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids), C (len of candidates), M (len of members)"] #[doc = "- Storage Reads:"] #[doc = "\t- One storage read to retrieve all members. O(M)"] #[doc = "\t- One storage read to check member is not already vouching. O(1)"] #[doc = "\t- One storage read to check for suspended candidate. O(1)"] #[doc = "\t- One storage read to check for suspended member. O(1)"] #[doc = "\t- One storage read to retrieve all current bids. O(B)"] #[doc = "\t- One storage read to retrieve all current candidates. O(C)"] #[doc = "- Storage Writes:"] #[doc = "\t- One storage write to insert vouching status to the member. O(1)"] #[doc = "\t- One storage mutate to add a new bid to the vector O(B) (TODO: possible optimization"] #[doc = " w/ read)"] #[doc = "\t- Up to one storage removal if bid.len() > MAX_BID_COUNT. O(1)"] #[doc = "- Notable Computation:"] #[doc = "\t- O(log M) search to check sender is a member."] #[doc = "\t- O(B + C + log M) search to check user is not already a part of society."] #[doc = "\t- O(log B) search to insert the new bid sorted."] #[doc = "- External Pallet Operations:"] #[doc = "\t- One balance reserve operation. O(X)"] #[doc = "\t- Up to one balance unreserve operation if bids.len() > MAX_BID_COUNT."] #[doc = "- Events:"] #[doc = "\t- One event for vouch."] #[doc = "\t- Up to one event for AutoUnbid if bid.len() > MAX_BID_COUNT."] #[doc = ""] #[doc = "Total Complexity: O(M + B + C + logM + logB + X)"] #[doc = "# "] vouch { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, value: ::core::primitive::u128, tip: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "As a vouching member, unvouch a bid. This only works while vouched user is"] #[doc = "only a bidder (and not a candidate)."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a vouching member."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `pos`: Position in the `Bids` vector of the bid who should be unvouched."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids)"] #[doc = "- One storage read O(1) to check the signer is a vouching member."] #[doc = "- One storage mutate to retrieve and update the bids. O(B)"] #[doc = "- One vouching storage removal. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(B)"] #[doc = "# "] unvouch { pos: ::core::primitive::u32 }, #[codec(index = 4)] #[doc = "As a member, vote on a candidate."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a member."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `candidate`: The candidate that the member would like to bid on."] #[doc = "- `approve`: A boolean which says if the candidate should be approved (`true`) or"] #[doc = " rejected (`false`)."] #[doc = ""] #[doc = "# "] #[doc = "Key: C (len of candidates), M (len of members)"] #[doc = "- One storage read O(M) and O(log M) search to check user is a member."] #[doc = "- One account lookup."] #[doc = "- One storage read O(C) and O(C) search to check that user is a candidate."] #[doc = "- One storage write to add vote to votes. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(M + logM + C)"] #[doc = "# "] vote { candidate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, approve: ::core::primitive::bool, }, #[codec(index = 5)] #[doc = "As a member, vote on the defender."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a member."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `approve`: A boolean which says if the candidate should be"] #[doc = "approved (`true`) or rejected (`false`)."] #[doc = ""] #[doc = "# "] #[doc = "- Key: M (len of members)"] #[doc = "- One storage read O(M) and O(log M) search to check user is a member."] #[doc = "- One storage write to add vote to votes. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(M + logM)"] #[doc = "# "] defender_vote { approve: ::core::primitive::bool }, #[codec(index = 6)] #[doc = "Transfer the first matured payout for the sender and remove it from the records."] #[doc = ""] #[doc = "NOTE: This extrinsic needs to be called multiple times to claim multiple matured"] #[doc = "payouts."] #[doc = ""] #[doc = "Payment: The member will receive a payment equal to their first matured"] #[doc = "payout to their free balance."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and a member with"] #[doc = "payouts remaining."] #[doc = ""] #[doc = "# "] #[doc = "Key: M (len of members), P (number of payouts for a particular member)"] #[doc = "- One storage read O(M) and O(log M) search to check signer is a member."] #[doc = "- One storage read O(P) to get all payouts for a member."] #[doc = "- One storage read O(1) to get the current block number."] #[doc = "- One currency transfer call. O(X)"] #[doc = "- One storage write or removal to update the member's payouts. O(P)"] #[doc = ""] #[doc = "Total Complexity: O(M + logM + P + X)"] #[doc = "# "] payout, #[codec(index = 7)] #[doc = "Found the society."] #[doc = ""] #[doc = "This is done as a discrete action in order to allow for the"] #[doc = "pallet to be included into a running chain and can only be done once."] #[doc = ""] #[doc = "The dispatch origin for this call must be from the _FounderSetOrigin_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `founder` - The first member and head of the newly founded society."] #[doc = "- `max_members` - The initial max number of members for the society."] #[doc = "- `rules` - The rules of this society concerning membership."] #[doc = ""] #[doc = "# "] #[doc = "- Two storage mutates to set `Head` and `Founder`. O(1)"] #[doc = "- One storage write to add the first member to society. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(1)"] #[doc = "# "] found { founder: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, max_members: ::core::primitive::u32, rules: ::std::vec::Vec<::core::primitive::u8>, }, #[codec(index = 8)] #[doc = "Annul the founding of the society."] #[doc = ""] #[doc = "The dispatch origin for this call must be Signed, and the signing account must be both"] #[doc = "the `Founder` and the `Head`. This implies that it may only be done when there is one"] #[doc = "member."] #[doc = ""] #[doc = "# "] #[doc = "- Two storage reads O(1)."] #[doc = "- Four storage removals O(1)."] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(1)"] #[doc = "# "] unfound, #[codec(index = 9)] #[doc = "Allow suspension judgement origin to make judgement on a suspended member."] #[doc = ""] #[doc = "If a suspended member is forgiven, we simply add them back as a member, not affecting"] #[doc = "any of the existing storage items for that member."] #[doc = ""] #[doc = "If a suspended member is rejected, remove all associated storage items, including"] #[doc = "their payouts, and remove any vouched bids they currently have."] #[doc = ""] #[doc = "The dispatch origin for this call must be from the _SuspensionJudgementOrigin_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `who` - The suspended member to be judged."] #[doc = "- `forgive` - A boolean representing whether the suspension judgement origin forgives"] #[doc = " (`true`) or rejects (`false`) a suspended member."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids), M (len of members)"] #[doc = "- One storage read to check `who` is a suspended member. O(1)"] #[doc = "- Up to one storage write O(M) with O(log M) binary search to add a member back to"] #[doc = " society."] #[doc = "- Up to 3 storage removals O(1) to clean up a removed member."] #[doc = "- Up to one storage write O(B) with O(B) search to remove vouched bid from bids."] #[doc = "- Up to one additional event if unvouch takes place."] #[doc = "- One storage removal. O(1)"] #[doc = "- One event for the judgement."] #[doc = ""] #[doc = "Total Complexity: O(M + logM + B)"] #[doc = "# "] judge_suspended_member { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, forgive: ::core::primitive::bool, }, #[codec(index = 10)] #[doc = "Allow suspended judgement origin to make judgement on a suspended candidate."] #[doc = ""] #[doc = "If the judgement is `Approve`, we add them to society as a member with the appropriate"] #[doc = "payment for joining society."] #[doc = ""] #[doc = "If the judgement is `Reject`, we either slash the deposit of the bid, giving it back"] #[doc = "to the society treasury, or we ban the voucher from vouching again."] #[doc = ""] #[doc = "If the judgement is `Rebid`, we put the candidate back in the bid pool and let them go"] #[doc = "through the induction process again."] #[doc = ""] #[doc = "The dispatch origin for this call must be from the _SuspensionJudgementOrigin_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `who` - The suspended candidate to be judged."] #[doc = "- `judgement` - `Approve`, `Reject`, or `Rebid`."] #[doc = ""] #[doc = "# "] #[doc = "Key: B (len of bids), M (len of members), X (balance action)"] #[doc = "- One storage read to check `who` is a suspended candidate."] #[doc = "- One storage removal of the suspended candidate."] #[doc = "- Approve Logic"] #[doc = "\t- One storage read to get the available pot to pay users with. O(1)"] #[doc = "\t- One storage write to update the available pot. O(1)"] #[doc = "\t- One storage read to get the current block number. O(1)"] #[doc = "\t- One storage read to get all members. O(M)"] #[doc = "\t- Up to one unreserve currency action."] #[doc = "\t- Up to two new storage writes to payouts."] #[doc = "\t- Up to one storage write with O(log M) binary search to add a member to society."] #[doc = "- Reject Logic"] #[doc = "\t- Up to one repatriate reserved currency action. O(X)"] #[doc = "\t- Up to one storage write to ban the vouching member from vouching again."] #[doc = "- Rebid Logic"] #[doc = "\t- Storage mutate with O(log B) binary search to place the user back into bids."] #[doc = "- Up to one additional event if unvouch takes place."] #[doc = "- One storage removal."] #[doc = "- One event for the judgement."] #[doc = ""] #[doc = "Total Complexity: O(M + logM + B + X)"] #[doc = "# "] judge_suspended_candidate { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, judgement: runtime_types::pallet_society::Judgement, }, #[codec(index = 11)] #[doc = "Allows root origin to change the maximum number of members in society."] #[doc = "Max membership count must be greater than 1."] #[doc = ""] #[doc = "The dispatch origin for this call must be from _ROOT_."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `max` - The maximum number of members for the society."] #[doc = ""] #[doc = "# "] #[doc = "- One storage write to update the max. O(1)"] #[doc = "- One event."] #[doc = ""] #[doc = "Total Complexity: O(1)"] #[doc = "# "] set_max_members { max: ::core::primitive::u32 }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "An incorrect position was provided."] BadPosition, #[codec(index = 1)] #[doc = "User is not a member."] NotMember, #[codec(index = 2)] #[doc = "User is already a member."] AlreadyMember, #[codec(index = 3)] #[doc = "User is suspended."] Suspended, #[codec(index = 4)] #[doc = "User is not suspended."] NotSuspended, #[codec(index = 5)] #[doc = "Nothing to payout."] NoPayout, #[codec(index = 6)] #[doc = "Society already founded."] AlreadyFounded, #[codec(index = 7)] #[doc = "Not enough in pot to accept candidate."] InsufficientPot, #[codec(index = 8)] #[doc = "Member is already vouching or banned from vouching again."] AlreadyVouching, #[codec(index = 9)] #[doc = "Member is not vouching."] NotVouching, #[codec(index = 10)] #[doc = "Cannot remove the head of the chain."] Head, #[codec(index = 11)] #[doc = "Cannot remove the founder."] Founder, #[codec(index = 12)] #[doc = "User has already made a bid."] AlreadyBid, #[codec(index = 13)] #[doc = "User is already a candidate."] AlreadyCandidate, #[codec(index = 14)] #[doc = "User is not a candidate."] NotCandidate, #[codec(index = 15)] #[doc = "Too many members in the society."] MaxMembers, #[codec(index = 16)] #[doc = "The caller is not the founder."] NotFounder, #[codec(index = 17)] #[doc = "The caller is not the head."] NotHead, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "The society is founded by the given identity."] Founded { founder: ::subxt::utils::AccountId32, }, #[codec(index = 1)] #[doc = "A membership bid just happened. The given account is the candidate's ID and their offer"] #[doc = "is the second."] Bid { candidate_id: ::subxt::utils::AccountId32, offer: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "A membership bid just happened by vouching. The given account is the candidate's ID and"] #[doc = "their offer is the second. The vouching party is the third."] Vouch { candidate_id: ::subxt::utils::AccountId32, offer: ::core::primitive::u128, vouching: ::subxt::utils::AccountId32, }, #[codec(index = 3)] #[doc = "A candidate was dropped (due to an excess of bids in the system)."] AutoUnbid { candidate: ::subxt::utils::AccountId32, }, #[codec(index = 4)] #[doc = "A candidate was dropped (by their request)."] Unbid { candidate: ::subxt::utils::AccountId32, }, #[codec(index = 5)] #[doc = "A candidate was dropped (by request of who vouched for them)."] Unvouch { candidate: ::subxt::utils::AccountId32, }, #[codec(index = 6)] #[doc = "A group of candidates have been inducted. The batch's primary is the first value, the"] #[doc = "batch in full is the second."] Inducted { primary: ::subxt::utils::AccountId32, candidates: ::std::vec::Vec<::subxt::utils::AccountId32>, }, #[codec(index = 7)] #[doc = "A suspended member has been judged."] SuspendedMemberJudgement { who: ::subxt::utils::AccountId32, judged: ::core::primitive::bool, }, #[codec(index = 8)] #[doc = "A candidate has been suspended"] CandidateSuspended { candidate: ::subxt::utils::AccountId32, }, #[codec(index = 9)] #[doc = "A member has been suspended"] MemberSuspended { member: ::subxt::utils::AccountId32 }, #[codec(index = 10)] #[doc = "A member has been challenged"] Challenged { member: ::subxt::utils::AccountId32 }, #[codec(index = 11)] #[doc = "A vote has been placed"] Vote { candidate: ::subxt::utils::AccountId32, voter: ::subxt::utils::AccountId32, vote: ::core::primitive::bool, }, #[codec(index = 12)] #[doc = "A vote has been placed for a defending member"] DefenderVote { voter: ::subxt::utils::AccountId32, vote: ::core::primitive::bool, }, #[codec(index = 13)] #[doc = "A new \\[max\\] member count has been set"] NewMaxMembers { max: ::core::primitive::u32 }, #[codec(index = 14)] #[doc = "Society is unfounded."] Unfounded { founder: ::subxt::utils::AccountId32, }, #[codec(index = 15)] #[doc = "Some funds were deposited into the society account."] Deposit { value: ::core::primitive::u128 }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Bid<_0, _1> { pub who: _0, pub kind: runtime_types::pallet_society::BidKind<_0, _1>, pub value: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum BidKind<_0, _1> { #[codec(index = 0)] Deposit(_1), #[codec(index = 1)] Vouch(_0, _1), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Judgement { #[codec(index = 0)] Rebid, #[codec(index = 1)] Reject, #[codec(index = 2)] Approve, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Vote { #[codec(index = 0)] Skeptic, #[codec(index = 1)] Reject, #[codec(index = 2)] Approve, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum VouchingStatus { #[codec(index = 0)] Vouching, #[codec(index = 1)] Banned, } } pub mod pallet_staking { use super::runtime_types; pub mod pallet { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Take the origin account as a stash and lock up `value` of its balance. `controller` will"] #[doc = "be the account that controls it."] #[doc = ""] #[doc = "`value` must be more than the `minimum_balance` specified by `T::Currency`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the stash account."] #[doc = ""] #[doc = "Emits `Bonded`."] #[doc = "# "] #[doc = "- Independent of the arguments. Moderate complexity."] #[doc = "- O(1)."] #[doc = "- Three extra DB entries."] #[doc = ""] #[doc = "NOTE: Two of the storage writes (`Self::bonded`, `Self::payee`) are _never_ cleaned"] #[doc = "unless the `origin` falls below _existential deposit_ and gets removed as dust."] #[doc = "------------------"] #[doc = "# "] bond { controller: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] value: ::core::primitive::u128, payee: runtime_types::pallet_staking::RewardDestination< ::subxt::utils::AccountId32, >, }, #[codec(index = 1)] #[doc = "Add some extra amount that have appeared in the stash `free_balance` into the balance up"] #[doc = "for staking."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the stash, not the controller."] #[doc = ""] #[doc = "Use this if there are additional funds in your stash account that you wish to bond."] #[doc = "Unlike [`bond`](Self::bond) or [`unbond`](Self::unbond) this function does not impose"] #[doc = "any limitation on the amount that can be added."] #[doc = ""] #[doc = "Emits `Bonded`."] #[doc = ""] #[doc = "# "] #[doc = "- Independent of the arguments. Insignificant complexity."] #[doc = "- O(1)."] #[doc = "# "] bond_extra { #[codec(compact)] max_additional: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "Schedule a portion of the stash to be unlocked ready for transfer out after the bond"] #[doc = "period ends. If this leaves an amount actively bonded less than"] #[doc = "T::Currency::minimum_balance(), then it is increased to the full amount."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] #[doc = ""] #[doc = "Once the unlock period is done, you can call `withdraw_unbonded` to actually move"] #[doc = "the funds out of management ready for transfer."] #[doc = ""] #[doc = "No more than a limited number of unlocking chunks (see `MaxUnlockingChunks`)"] #[doc = "can co-exists at the same time. If there are no unlocking chunks slots available"] #[doc = "[`Call::withdraw_unbonded`] is called to remove some of the chunks (if possible)."] #[doc = ""] #[doc = "If a user encounters the `InsufficientBond` error when calling this extrinsic,"] #[doc = "they should call `chill` first in order to free up their bonded funds."] #[doc = ""] #[doc = "Emits `Unbonded`."] #[doc = ""] #[doc = "See also [`Call::withdraw_unbonded`]."] unbond { #[codec(compact)] value: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "Remove any unlocked chunks from the `unlocking` queue from our management."] #[doc = ""] #[doc = "This essentially frees up that balance to be used by the stash account to do"] #[doc = "whatever it wants."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller."] #[doc = ""] #[doc = "Emits `Withdrawn`."] #[doc = ""] #[doc = "See also [`Call::unbond`]."] #[doc = ""] #[doc = "# "] #[doc = "Complexity O(S) where S is the number of slashing spans to remove"] #[doc = "NOTE: Weight annotation is the kill scenario, we refund otherwise."] #[doc = "# "] withdraw_unbonded { num_slashing_spans: ::core::primitive::u32, }, #[codec(index = 4)] #[doc = "Declare the desire to validate for the origin controller."] #[doc = ""] #[doc = "Effects will be felt at the beginning of the next era."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] validate { prefs: runtime_types::pallet_staking::ValidatorPrefs, }, #[codec(index = 5)] #[doc = "Declare the desire to nominate `targets` for the origin controller."] #[doc = ""] #[doc = "Effects will be felt at the beginning of the next era."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] #[doc = ""] #[doc = "# "] #[doc = "- The transaction's complexity is proportional to the size of `targets` (N)"] #[doc = "which is capped at CompactAssignments::LIMIT (T::MaxNominations)."] #[doc = "- Both the reads and writes follow a similar pattern."] #[doc = "# "] nominate { targets: ::std::vec::Vec< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, }, #[codec(index = 6)] #[doc = "Declare no desire to either validate or nominate."] #[doc = ""] #[doc = "Effects will be felt at the beginning of the next era."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] #[doc = ""] #[doc = "# "] #[doc = "- Independent of the arguments. Insignificant complexity."] #[doc = "- Contains one read."] #[doc = "- Writes are limited to the `origin` account key."] #[doc = "# "] chill, #[codec(index = 7)] #[doc = "(Re-)set the payment target for a controller."] #[doc = ""] #[doc = "Effects will be felt instantly (as soon as this function is completed successfully)."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] #[doc = ""] #[doc = "# "] #[doc = "- Independent of the arguments. Insignificant complexity."] #[doc = "- Contains a limited number of reads."] #[doc = "- Writes are limited to the `origin` account key."] #[doc = "---------"] #[doc = "- Weight: O(1)"] #[doc = "- DB Weight:"] #[doc = " - Read: Ledger"] #[doc = " - Write: Payee"] #[doc = "# "] set_payee { payee: runtime_types::pallet_staking::RewardDestination< ::subxt::utils::AccountId32, >, }, #[codec(index = 8)] #[doc = "(Re-)set the controller of a stash."] #[doc = ""] #[doc = "Effects will be felt instantly (as soon as this function is completed successfully)."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the stash, not the controller."] #[doc = ""] #[doc = "# "] #[doc = "- Independent of the arguments. Insignificant complexity."] #[doc = "- Contains a limited number of reads."] #[doc = "- Writes are limited to the `origin` account key."] #[doc = "----------"] #[doc = "Weight: O(1)"] #[doc = "DB Weight:"] #[doc = "- Read: Bonded, Ledger New Controller, Ledger Old Controller"] #[doc = "- Write: Bonded, Ledger New Controller, Ledger Old Controller"] #[doc = "# "] set_controller { controller: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 9)] #[doc = "Sets the ideal number of validators."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# "] #[doc = "Weight: O(1)"] #[doc = "Write: Validator Count"] #[doc = "# "] set_validator_count { #[codec(compact)] new: ::core::primitive::u32, }, #[codec(index = 10)] #[doc = "Increments the ideal number of validators upto maximum of"] #[doc = "`ElectionProviderBase::MaxWinners`."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# "] #[doc = "Same as [`Self::set_validator_count`]."] #[doc = "# "] increase_validator_count { #[codec(compact)] additional: ::core::primitive::u32, }, #[codec(index = 11)] #[doc = "Scale up the ideal number of validators by a factor upto maximum of"] #[doc = "`ElectionProviderBase::MaxWinners`."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# "] #[doc = "Same as [`Self::set_validator_count`]."] #[doc = "# "] scale_validator_count { factor: runtime_types::sp_arithmetic::per_things::Percent, }, #[codec(index = 12)] #[doc = "Force there to be no new eras indefinitely."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# Warning"] #[doc = ""] #[doc = "The election process starts multiple blocks before the end of the era."] #[doc = "Thus the election process may be ongoing when this is called. In this case the"] #[doc = "election will continue until the next era is triggered."] #[doc = ""] #[doc = "# "] #[doc = "- No arguments."] #[doc = "- Weight: O(1)"] #[doc = "- Write: ForceEra"] #[doc = "# "] force_no_eras, #[codec(index = 13)] #[doc = "Force there to be a new era at the end of the next session. After this, it will be"] #[doc = "reset to normal (non-forced) behaviour."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# Warning"] #[doc = ""] #[doc = "The election process starts multiple blocks before the end of the era."] #[doc = "If this is called just before a new era is triggered, the election process may not"] #[doc = "have enough blocks to get a result."] #[doc = ""] #[doc = "# "] #[doc = "- No arguments."] #[doc = "- Weight: O(1)"] #[doc = "- Write ForceEra"] #[doc = "# "] force_new_era, #[codec(index = 14)] #[doc = "Set the validators who cannot be slashed (if any)."] #[doc = ""] #[doc = "The dispatch origin must be Root."] set_invulnerables { invulnerables: ::std::vec::Vec<::subxt::utils::AccountId32>, }, #[codec(index = 15)] #[doc = "Force a current staker to become completely unstaked, immediately."] #[doc = ""] #[doc = "The dispatch origin must be Root."] force_unstake { stash: ::subxt::utils::AccountId32, num_slashing_spans: ::core::primitive::u32, }, #[codec(index = 16)] #[doc = "Force there to be a new era at the end of sessions indefinitely."] #[doc = ""] #[doc = "The dispatch origin must be Root."] #[doc = ""] #[doc = "# Warning"] #[doc = ""] #[doc = "The election process starts multiple blocks before the end of the era."] #[doc = "If this is called just before a new era is triggered, the election process may not"] #[doc = "have enough blocks to get a result."] force_new_era_always, #[codec(index = 17)] #[doc = "Cancel enactment of a deferred slash."] #[doc = ""] #[doc = "Can be called by the `T::AdminOrigin`."] #[doc = ""] #[doc = "Parameters: era and indices of the slashes for that era to kill."] cancel_deferred_slash { era: ::core::primitive::u32, slash_indices: ::std::vec::Vec<::core::primitive::u32>, }, #[codec(index = 18)] #[doc = "Pay out all the stakers behind a single validator for a single era."] #[doc = ""] #[doc = "- `validator_stash` is the stash account of the validator. Their nominators, up to"] #[doc = " `T::MaxNominatorRewardedPerValidator`, will also receive their rewards."] #[doc = "- `era` may be any era between `[current_era - history_depth; current_era]`."] #[doc = ""] #[doc = "The origin of this call must be _Signed_. Any account can call this function, even if"] #[doc = "it is not one of the stakers."] #[doc = ""] #[doc = "# "] #[doc = "- Time complexity: at most O(MaxNominatorRewardedPerValidator)."] #[doc = "- Contains a limited number of reads and writes."] #[doc = "-----------"] #[doc = "N is the Number of payouts for the validator (including the validator)"] #[doc = "Weight:"] #[doc = "- Reward Destination Staked: O(N)"] #[doc = "- Reward Destination Controller (Creating): O(N)"] #[doc = ""] #[doc = " NOTE: weights are assuming that payouts are made to alive stash account (Staked)."] #[doc = " Paying even a dead controller is cheaper weight-wise. We don't do any refunds here."] #[doc = "# "] payout_stakers { validator_stash: ::subxt::utils::AccountId32, era: ::core::primitive::u32, }, #[codec(index = 19)] #[doc = "Rebond a portion of the stash scheduled to be unlocked."] #[doc = ""] #[doc = "The dispatch origin must be signed by the controller."] #[doc = ""] #[doc = "# "] #[doc = "- Time complexity: O(L), where L is unlocking chunks"] #[doc = "- Bounded by `MaxUnlockingChunks`."] #[doc = "- Storage changes: Can't increase storage, only decrease it."] #[doc = "# "] rebond { #[codec(compact)] value: ::core::primitive::u128, }, #[codec(index = 20)] #[doc = "Remove all data structures concerning a staker/stash once it is at a state where it can"] #[doc = "be considered `dust` in the staking system. The requirements are:"] #[doc = ""] #[doc = "1. the `total_balance` of the stash is below existential deposit."] #[doc = "2. or, the `ledger.total` of the stash is below existential deposit."] #[doc = ""] #[doc = "The former can happen in cases like a slash; the latter when a fully unbonded account"] #[doc = "is still receiving staking rewards in `RewardDestination::Staked`."] #[doc = ""] #[doc = "It can be called by anyone, as long as `stash` meets the above requirements."] #[doc = ""] #[doc = "Refunds the transaction fees upon successful execution."] reap_stash { stash: ::subxt::utils::AccountId32, num_slashing_spans: ::core::primitive::u32, }, #[codec(index = 21)] #[doc = "Remove the given nominations from the calling validator."] #[doc = ""] #[doc = "Effects will be felt at the beginning of the next era."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ by the controller, not the stash."] #[doc = ""] #[doc = "- `who`: A list of nominator stash accounts who are nominating this validator which"] #[doc = " should no longer be nominating this validator."] #[doc = ""] #[doc = "Note: Making this call only makes sense if you first set the validator preferences to"] #[doc = "block any further nominations."] kick { who: ::std::vec::Vec< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, }, #[codec(index = 22)] #[doc = "Update the various staking configurations ."] #[doc = ""] #[doc = "* `min_nominator_bond`: The minimum active bond needed to be a nominator."] #[doc = "* `min_validator_bond`: The minimum active bond needed to be a validator."] #[doc = "* `max_nominator_count`: The max number of users who can be a nominator at once. When"] #[doc = " set to `None`, no limit is enforced."] #[doc = "* `max_validator_count`: The max number of users who can be a validator at once. When"] #[doc = " set to `None`, no limit is enforced."] #[doc = "* `chill_threshold`: The ratio of `max_nominator_count` or `max_validator_count` which"] #[doc = " should be filled in order for the `chill_other` transaction to work."] #[doc = "* `min_commission`: The minimum amount of commission that each validators must maintain."] #[doc = " This is checked only upon calling `validate`. Existing validators are not affected."] #[doc = ""] #[doc = "RuntimeOrigin must be Root to call this function."] #[doc = ""] #[doc = "NOTE: Existing nominators and validators will not be affected by this update."] #[doc = "to kick people under the new limits, `chill_other` should be called."] set_staking_configs { min_nominator_bond: runtime_types::pallet_staking::pallet::pallet::ConfigOp< ::core::primitive::u128, >, min_validator_bond: runtime_types::pallet_staking::pallet::pallet::ConfigOp< ::core::primitive::u128, >, max_nominator_count: runtime_types::pallet_staking::pallet::pallet::ConfigOp< ::core::primitive::u32, >, max_validator_count: runtime_types::pallet_staking::pallet::pallet::ConfigOp< ::core::primitive::u32, >, chill_threshold: runtime_types::pallet_staking::pallet::pallet::ConfigOp< runtime_types::sp_arithmetic::per_things::Percent, >, min_commission: runtime_types::pallet_staking::pallet::pallet::ConfigOp< runtime_types::sp_arithmetic::per_things::Perbill, >, }, #[codec(index = 23)] #[doc = "Declare a `controller` to stop participating as either a validator or nominator."] #[doc = ""] #[doc = "Effects will be felt at the beginning of the next era."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_, but can be called by anyone."] #[doc = ""] #[doc = "If the caller is the same as the controller being targeted, then no further checks are"] #[doc = "enforced, and this function behaves just like `chill`."] #[doc = ""] #[doc = "If the caller is different than the controller being targeted, the following conditions"] #[doc = "must be met:"] #[doc = ""] #[doc = "* `controller` must belong to a nominator who has become non-decodable,"] #[doc = ""] #[doc = "Or:"] #[doc = ""] #[doc = "* A `ChillThreshold` must be set and checked which defines how close to the max"] #[doc = " nominators or validators we must reach before users can start chilling one-another."] #[doc = "* A `MaxNominatorCount` and `MaxValidatorCount` must be set which is used to determine"] #[doc = " how close we are to the threshold."] #[doc = "* A `MinNominatorBond` and `MinValidatorBond` must be set and checked, which determines"] #[doc = " if this is a person that should be chilled because they have not met the threshold"] #[doc = " bond required."] #[doc = ""] #[doc = "This can be helpful if bond requirements are updated, and we need to remove old users"] #[doc = "who do not satisfy these requirements."] chill_other { controller: ::subxt::utils::AccountId32, }, #[codec(index = 24)] #[doc = "Force a validator to have at least the minimum commission. This will not affect a"] #[doc = "validator who already has a commission greater than or equal to the minimum. Any account"] #[doc = "can call this."] force_apply_min_commission { validator_stash: ::subxt::utils::AccountId32, }, #[codec(index = 25)] #[doc = "Sets the minimum amount of commission that each validators must maintain."] #[doc = ""] #[doc = "This call has lower privilege requirements than `set_staking_config` and can be called"] #[doc = "by the `T::AdminOrigin`. Root can always call this."] set_min_commission { new: runtime_types::sp_arithmetic::per_things::Perbill, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ConfigOp<_0> { #[codec(index = 0)] Noop, #[codec(index = 1)] Set(_0), #[codec(index = 2)] Remove, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Not a controller account."] NotController, #[codec(index = 1)] #[doc = "Not a stash account."] NotStash, #[codec(index = 2)] #[doc = "Stash is already bonded."] AlreadyBonded, #[codec(index = 3)] #[doc = "Controller is already paired."] AlreadyPaired, #[codec(index = 4)] #[doc = "Targets cannot be empty."] EmptyTargets, #[codec(index = 5)] #[doc = "Duplicate index."] DuplicateIndex, #[codec(index = 6)] #[doc = "Slash record index out of bounds."] InvalidSlashIndex, #[codec(index = 7)] #[doc = "Cannot have a validator or nominator role, with value less than the minimum defined by"] #[doc = "governance (see `MinValidatorBond` and `MinNominatorBond`). If unbonding is the"] #[doc = "intention, `chill` first to remove one's role as validator/nominator."] InsufficientBond, #[codec(index = 8)] #[doc = "Can not schedule more unlock chunks."] NoMoreChunks, #[codec(index = 9)] #[doc = "Can not rebond without unlocking chunks."] NoUnlockChunk, #[codec(index = 10)] #[doc = "Attempting to target a stash that still has funds."] FundedTarget, #[codec(index = 11)] #[doc = "Invalid era to reward."] InvalidEraToReward, #[codec(index = 12)] #[doc = "Invalid number of nominations."] InvalidNumberOfNominations, #[codec(index = 13)] #[doc = "Items are not sorted and unique."] NotSortedAndUnique, #[codec(index = 14)] #[doc = "Rewards for this era have already been claimed for this validator."] AlreadyClaimed, #[codec(index = 15)] #[doc = "Incorrect previous history depth input provided."] IncorrectHistoryDepth, #[codec(index = 16)] #[doc = "Incorrect number of slashing spans provided."] IncorrectSlashingSpans, #[codec(index = 17)] #[doc = "Internal state has become somehow corrupted and the operation cannot continue."] BadState, #[codec(index = 18)] #[doc = "Too many nomination targets supplied."] TooManyTargets, #[codec(index = 19)] #[doc = "A nomination target was supplied that was blocked or otherwise not a validator."] BadTarget, #[codec(index = 20)] #[doc = "The user has enough bond and thus cannot be chilled forcefully by an external person."] CannotChillOther, #[codec(index = 21)] #[doc = "There are too many nominators in the system. Governance needs to adjust the staking"] #[doc = "settings to keep things safe for the runtime."] TooManyNominators, #[codec(index = 22)] #[doc = "There are too many validator candidates in the system. Governance needs to adjust the"] #[doc = "staking settings to keep things safe for the runtime."] TooManyValidators, #[codec(index = 23)] #[doc = "Commission is too low. Must be at least `MinCommission`."] CommissionTooLow, #[codec(index = 24)] #[doc = "Some bound is not met."] BoundNotMet, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "The era payout has been set; the first balance is the validator-payout; the second is"] #[doc = "the remainder from the maximum amount of reward."] EraPaid { era_index: ::core::primitive::u32, validator_payout: ::core::primitive::u128, remainder: ::core::primitive::u128, }, #[codec(index = 1)] #[doc = "The nominator has been rewarded by this amount."] Rewarded { stash: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "A staker (validator or nominator) has been slashed by the given amount."] Slashed { staker: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "A slash for the given validator, for the given percentage of their stake, at the given"] #[doc = "era as been reported."] SlashReported { validator: ::subxt::utils::AccountId32, fraction: runtime_types::sp_arithmetic::per_things::Perbill, slash_era: ::core::primitive::u32, }, #[codec(index = 4)] #[doc = "An old slashing report from a prior era was discarded because it could"] #[doc = "not be processed."] OldSlashingReportDiscarded { session_index: ::core::primitive::u32, }, #[codec(index = 5)] #[doc = "A new set of stakers was elected."] StakersElected, #[codec(index = 6)] #[doc = "An account has bonded this amount. \\[stash, amount\\]"] #[doc = ""] #[doc = "NOTE: This event is only emitted when funds are bonded via a dispatchable. Notably,"] #[doc = "it will not be emitted for staking rewards when they are added to stake."] Bonded { stash: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 7)] #[doc = "An account has unbonded this amount."] Unbonded { stash: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 8)] #[doc = "An account has called `withdraw_unbonded` and removed unbonding chunks worth `Balance`"] #[doc = "from the unlocking queue."] Withdrawn { stash: ::subxt::utils::AccountId32, amount: ::core::primitive::u128, }, #[codec(index = 9)] #[doc = "A nominator has been kicked from a validator."] Kicked { nominator: ::subxt::utils::AccountId32, stash: ::subxt::utils::AccountId32, }, #[codec(index = 10)] #[doc = "The election failed. No new era is planned."] StakingElectionFailed, #[codec(index = 11)] #[doc = "An account has stopped participating as either a validator or nominator."] Chilled { stash: ::subxt::utils::AccountId32 }, #[codec(index = 12)] #[doc = "The stakers' rewards are getting paid."] PayoutStarted { era_index: ::core::primitive::u32, validator_stash: ::subxt::utils::AccountId32, }, #[codec(index = 13)] #[doc = "A validator has set their preferences."] ValidatorPrefsSet { stash: ::subxt::utils::AccountId32, prefs: runtime_types::pallet_staking::ValidatorPrefs, }, #[codec(index = 14)] #[doc = "A new force era mode was set."] ForceEra { mode: runtime_types::pallet_staking::Forcing, }, } } } pub mod slashing { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SlashingSpans { pub span_index: ::core::primitive::u32, pub last_start: ::core::primitive::u32, pub last_nonzero_slash: ::core::primitive::u32, pub prior: ::std::vec::Vec<::core::primitive::u32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SpanRecord<_0> { pub slashed: _0, pub paid_out: _0, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ActiveEraInfo { pub index: ::core::primitive::u32, pub start: ::core::option::Option<::core::primitive::u64>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct EraRewardPoints<_0> { pub total: ::core::primitive::u32, pub individual: ::subxt::utils::KeyedVec<_0, ::core::primitive::u32>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Exposure<_0, _1> { #[codec(compact)] pub total: _1, #[codec(compact)] pub own: _1, pub others: ::std::vec::Vec< runtime_types::pallet_staking::IndividualExposure<_0, _1>, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Forcing { #[codec(index = 0)] NotForcing, #[codec(index = 1)] ForceNew, #[codec(index = 2)] ForceNone, #[codec(index = 3)] ForceAlways, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct IndividualExposure<_0, _1> { pub who: _0, #[codec(compact)] pub value: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Nominations { pub targets: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::subxt::utils::AccountId32, >, pub submitted_in: ::core::primitive::u32, pub suppressed: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum RewardDestination<_0> { #[codec(index = 0)] Staked, #[codec(index = 1)] Stash, #[codec(index = 2)] Controller, #[codec(index = 3)] Account(_0), #[codec(index = 4)] None, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct StakingLedger { pub stash: ::subxt::utils::AccountId32, #[codec(compact)] pub total: ::core::primitive::u128, #[codec(compact)] pub active: ::core::primitive::u128, pub unlocking: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< runtime_types::pallet_staking::UnlockChunk<::core::primitive::u128>, >, pub claimed_rewards: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u32, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UnappliedSlash<_0, _1> { pub validator: _0, pub own: _1, pub others: ::std::vec::Vec<(_0, _1)>, pub reporters: ::std::vec::Vec<_0>, pub payout: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UnlockChunk<_0> { #[codec(compact)] pub value: _0, #[codec(compact)] pub era: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ValidatorPrefs { #[codec(compact)] pub commission: runtime_types::sp_arithmetic::per_things::Perbill, pub blocked: ::core::primitive::bool, } } pub mod pallet_state_trie_migration { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { # [codec (index = 0)] # [doc = "Control the automatic migration."] # [doc = ""] # [doc = "The dispatch origin of this call must be [`Config::ControlOrigin`]."] control_auto_migration { maybe_config : :: core :: option :: Option < runtime_types :: pallet_state_trie_migration :: pallet :: MigrationLimits > , } , # [codec (index = 1)] # [doc = "Continue the migration for the given `limits`."] # [doc = ""] # [doc = "The dispatch origin of this call can be any signed account."] # [doc = ""] # [doc = "This transaction has NO MONETARY INCENTIVES. calling it will not reward anyone. Albeit,"] # [doc = "Upon successful execution, the transaction fee is returned."] # [doc = ""] # [doc = "The (potentially over-estimated) of the byte length of all the data read must be"] # [doc = "provided for up-front fee-payment and weighing. In essence, the caller is guaranteeing"] # [doc = "that executing the current `MigrationTask` with the given `limits` will not exceed"] # [doc = "`real_size_upper` bytes of read data."] # [doc = ""] # [doc = "The `witness_task` is merely a helper to prevent the caller from being slashed or"] # [doc = "generally trigger a migration that they do not intend. This parameter is just a message"] # [doc = "from caller, saying that they believed `witness_task` was the last state of the"] # [doc = "migration, and they only wish for their transaction to do anything, if this assumption"] # [doc = "holds. In case `witness_task` does not match, the transaction fails."] # [doc = ""] # [doc = "Based on the documentation of [`MigrationTask::migrate_until_exhaustion`], the"] # [doc = "recommended way of doing this is to pass a `limit` that only bounds `count`, as the"] # [doc = "`size` limit can always be overwritten."] continue_migrate { limits : runtime_types :: pallet_state_trie_migration :: pallet :: MigrationLimits , real_size_upper : :: core :: primitive :: u32 , witness_task : runtime_types :: pallet_state_trie_migration :: pallet :: MigrationTask , } , # [codec (index = 2)] # [doc = "Migrate the list of top keys by iterating each of them one by one."] # [doc = ""] # [doc = "This does not affect the global migration process tracker ([`MigrationProcess`]), and"] # [doc = "should only be used in case any keys are leftover due to a bug."] migrate_custom_top { keys : :: std :: vec :: Vec < :: std :: vec :: Vec < :: core :: primitive :: u8 > > , witness_size : :: core :: primitive :: u32 , } , # [codec (index = 3)] # [doc = "Migrate the list of child keys by iterating each of them one by one."] # [doc = ""] # [doc = "All of the given child keys must be present under one `child_root`."] # [doc = ""] # [doc = "This does not affect the global migration process tracker ([`MigrationProcess`]), and"] # [doc = "should only be used in case any keys are leftover due to a bug."] migrate_custom_child { root : :: std :: vec :: Vec < :: core :: primitive :: u8 > , child_keys : :: std :: vec :: Vec < :: std :: vec :: Vec < :: core :: primitive :: u8 > > , total_size : :: core :: primitive :: u32 , } , # [codec (index = 4)] # [doc = "Set the maximum limit of the signed migration."] set_signed_max_limits { limits : runtime_types :: pallet_state_trie_migration :: pallet :: MigrationLimits , } , # [codec (index = 5)] # [doc = "Forcefully set the progress the running migration."] # [doc = ""] # [doc = "This is only useful in one case: the next key to migrate is too big to be migrated with"] # [doc = "a signed account, in a parachain context, and we simply want to skip it. A reasonable"] # [doc = "example of this would be `:code:`, which is both very expensive to migrate, and commonly"] # [doc = "used, so probably it is already migrated."] # [doc = ""] # [doc = "In case you mess things up, you can also, in principle, use this to reset the migration"] # [doc = "process."] force_set_progress { progress_top : runtime_types :: pallet_state_trie_migration :: pallet :: Progress , progress_child : runtime_types :: pallet_state_trie_migration :: pallet :: Progress , } , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Max signed limits not respected."] MaxSignedLimits, #[codec(index = 1)] #[doc = "A key was longer than the configured maximum."] #[doc = ""] #[doc = "This means that the migration halted at the current [`Progress`] and"] #[doc = "can be resumed with a larger [`crate::Config::MaxKeyLen`] value."] #[doc = "Retrying with the same [`crate::Config::MaxKeyLen`] value will not work."] #[doc = "The value should only be increased to avoid a storage migration for the currently"] #[doc = "stored [`crate::Progress::LastKey`]."] KeyTooLong, #[codec(index = 2)] #[doc = "submitter does not have enough funds."] NotEnoughFunds, #[codec(index = 3)] #[doc = "Bad witness data provided."] BadWitness, #[codec(index = 4)] #[doc = "Signed migration is not allowed because the maximum limit is not set yet."] SignedMigrationNotAllowed, #[codec(index = 5)] #[doc = "Bad child root provided."] BadChildRoot, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Inner events of this pallet."] pub enum Event { # [codec (index = 0)] # [doc = "Given number of `(top, child)` keys were migrated respectively, with the given"] # [doc = "`compute`."] Migrated { top : :: core :: primitive :: u32 , child : :: core :: primitive :: u32 , compute : runtime_types :: pallet_state_trie_migration :: pallet :: MigrationCompute , } , # [codec (index = 1)] # [doc = "Some account got slashed by the given amount."] Slashed { who : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 2)] # [doc = "The auto migration task finished."] AutoMigrationFinished , # [codec (index = 3)] # [doc = "Migration got halted due to an error or miss-configuration."] Halted { error : runtime_types :: pallet_state_trie_migration :: pallet :: Error , } , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum MigrationCompute { #[codec(index = 0)] Signed, #[codec(index = 1)] Auto, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct MigrationLimits { pub size: ::core::primitive::u32, pub item: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct MigrationTask { pub progress_top: runtime_types::pallet_state_trie_migration::pallet::Progress, pub progress_child: runtime_types::pallet_state_trie_migration::pallet::Progress, pub size: ::core::primitive::u32, pub top_items: ::core::primitive::u32, pub child_items: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Progress { #[codec(index = 0)] ToStart, #[codec(index = 1)] LastKey( runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, ), #[codec(index = 2)] Complete, } } } pub mod pallet_sudo { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Authenticates the sudo key and dispatches a function call with `Root` origin."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "- Limited storage reads."] #[doc = "- One DB write (event)."] #[doc = "- Weight of derivative `call` execution + 10,000."] #[doc = "# "] sudo { call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 1)] #[doc = "Authenticates the sudo key and dispatches a function call with `Root` origin."] #[doc = "This function does not check the weight of the call, and instead allows the"] #[doc = "Sudo user to specify the weight of the call."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "- The weight of this call is defined by the caller."] #[doc = "# "] sudo_unchecked_weight { call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, weight: runtime_types::sp_weights::weight_v2::Weight, }, #[codec(index = 2)] #[doc = "Authenticates the current sudo key and sets the given AccountId (`new`) as the new sudo"] #[doc = "key."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "- Limited storage reads."] #[doc = "- One DB change."] #[doc = "# "] set_key { new: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 3)] #[doc = "Authenticates the sudo key and dispatches a function call with `Signed` origin from"] #[doc = "a given account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "- Limited storage reads."] #[doc = "- One DB write (event)."] #[doc = "- Weight of derivative `call` execution + 10,000."] #[doc = "# "] sudo_as { who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Error for the Sudo pallet"] pub enum Error { #[codec(index = 0)] #[doc = "Sender must be the Sudo account"] RequireSudo, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A sudo just took place. \\[result\\]"] Sudid { sudo_result: ::core::result::Result< (), runtime_types::sp_runtime::DispatchError, >, }, #[codec(index = 1)] #[doc = "The \\[sudoer\\] just switched identity; the old key is supplied if one existed."] KeyChanged { old_sudoer: ::core::option::Option<::subxt::utils::AccountId32>, }, #[codec(index = 2)] #[doc = "A sudo just took place. \\[result\\]"] SudoAsDone { sudo_result: ::core::result::Result< (), runtime_types::sp_runtime::DispatchError, >, }, } } } pub mod pallet_timestamp { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Set the current time."] #[doc = ""] #[doc = "This call should be invoked exactly once per block. It will panic at the finalization"] #[doc = "phase, if this call hasn't been invoked by that time."] #[doc = ""] #[doc = "The timestamp should be greater than the previous one by the amount specified by"] #[doc = "`MinimumPeriod`."] #[doc = ""] #[doc = "The dispatch origin for this call must be `Inherent`."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)` (Note that implementations of `OnTimestampSet` must also be `O(1)`)"] #[doc = "- 1 storage read and 1 storage mutation (codec `O(1)`). (because of `DidUpdate::take` in"] #[doc = " `on_finalize`)"] #[doc = "- 1 event handler `on_timestamp_set`. Must be `O(1)`."] #[doc = "# "] set { #[codec(compact)] now: ::core::primitive::u64, }, } } } pub mod pallet_tips { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Report something `reason` that deserves a tip and claim any eventual the finder's fee."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "Payment: `TipReportDepositBase` will be reserved from the origin account, as well as"] #[doc = "`DataDepositPerByte` for each byte in `reason`."] #[doc = ""] #[doc = "- `reason`: The reason for, or the thing that deserves, the tip; generally this will be"] #[doc = " a UTF-8-encoded URL."] #[doc = "- `who`: The account which should be credited for the tip."] #[doc = ""] #[doc = "Emits `NewTip` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(R)` where `R` length of `reason`."] #[doc = " - encoding and hashing of 'reason'"] #[doc = "- DbReads: `Reasons`, `Tips`"] #[doc = "- DbWrites: `Reasons`, `Tips`"] #[doc = "# "] report_awesome { reason: ::std::vec::Vec<::core::primitive::u8>, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 1)] #[doc = "Retract a prior tip-report from `report_awesome`, and cancel the process of tipping."] #[doc = ""] #[doc = "If successful, the original deposit will be unreserved."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the tip identified by `hash`"] #[doc = "must have been reported by the signing account through `report_awesome` (and not"] #[doc = "through `tip_new`)."] #[doc = ""] #[doc = "- `hash`: The identity of the open tip for which a tip value is declared. This is formed"] #[doc = " as the hash of the tuple of the original tip `reason` and the beneficiary account ID."] #[doc = ""] #[doc = "Emits `TipRetracted` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(1)`"] #[doc = " - Depends on the length of `T::Hash` which is fixed."] #[doc = "- DbReads: `Tips`, `origin account`"] #[doc = "- DbWrites: `Reasons`, `Tips`, `origin account`"] #[doc = "# "] retract_tip { hash: ::subxt::utils::H256 }, #[codec(index = 2)] #[doc = "Give a tip for something new; no finder's fee will be taken."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the signing account must be a"] #[doc = "member of the `Tippers` set."] #[doc = ""] #[doc = "- `reason`: The reason for, or the thing that deserves, the tip; generally this will be"] #[doc = " a UTF-8-encoded URL."] #[doc = "- `who`: The account which should be credited for the tip."] #[doc = "- `tip_value`: The amount of tip that the sender would like to give. The median tip"] #[doc = " value of active tippers will be given to the `who`."] #[doc = ""] #[doc = "Emits `NewTip` if successful."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(R + T)` where `R` length of `reason`, `T` is the number of tippers."] #[doc = " - `O(T)`: decoding `Tipper` vec of length `T`. `T` is charged as upper bound given by"] #[doc = " `ContainsLengthBound`. The actual cost depends on the implementation of"] #[doc = " `T::Tippers`."] #[doc = " - `O(R)`: hashing and encoding of reason of length `R`"] #[doc = "- DbReads: `Tippers`, `Reasons`"] #[doc = "- DbWrites: `Reasons`, `Tips`"] #[doc = "# "] tip_new { reason: ::std::vec::Vec<::core::primitive::u8>, who: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, #[codec(compact)] tip_value: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "Declare a tip value for an already-open tip."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the signing account must be a"] #[doc = "member of the `Tippers` set."] #[doc = ""] #[doc = "- `hash`: The identity of the open tip for which a tip value is declared. This is formed"] #[doc = " as the hash of the tuple of the hash of the original tip `reason` and the beneficiary"] #[doc = " account ID."] #[doc = "- `tip_value`: The amount of tip that the sender would like to give. The median tip"] #[doc = " value of active tippers will be given to the `who`."] #[doc = ""] #[doc = "Emits `TipClosing` if the threshold of tippers has been reached and the countdown period"] #[doc = "has started."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(T)` where `T` is the number of tippers. decoding `Tipper` vec of length"] #[doc = " `T`, insert tip and check closing, `T` is charged as upper bound given by"] #[doc = " `ContainsLengthBound`. The actual cost depends on the implementation of `T::Tippers`."] #[doc = ""] #[doc = " Actually weight could be lower as it depends on how many tips are in `OpenTip` but it"] #[doc = " is weighted as if almost full i.e of length `T-1`."] #[doc = "- DbReads: `Tippers`, `Tips`"] #[doc = "- DbWrites: `Tips`"] #[doc = "# "] tip { hash: ::subxt::utils::H256, #[codec(compact)] tip_value: ::core::primitive::u128, }, #[codec(index = 4)] #[doc = "Close and payout a tip."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "The tip identified by `hash` must have finished its countdown period."] #[doc = ""] #[doc = "- `hash`: The identity of the open tip for which a tip value is declared. This is formed"] #[doc = " as the hash of the tuple of the original tip `reason` and the beneficiary account ID."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: `O(T)` where `T` is the number of tippers. decoding `Tipper` vec of length"] #[doc = " `T`. `T` is charged as upper bound given by `ContainsLengthBound`. The actual cost"] #[doc = " depends on the implementation of `T::Tippers`."] #[doc = "- DbReads: `Tips`, `Tippers`, `tip finder`"] #[doc = "- DbWrites: `Reasons`, `Tips`, `Tippers`, `tip finder`"] #[doc = "# "] close_tip { hash: ::subxt::utils::H256 }, #[codec(index = 5)] #[doc = "Remove and slash an already-open tip."] #[doc = ""] #[doc = "May only be called from `T::RejectOrigin`."] #[doc = ""] #[doc = "As a result, the finder is slashed and the deposits are lost."] #[doc = ""] #[doc = "Emits `TipSlashed` if successful."] #[doc = ""] #[doc = "# "] #[doc = " `T` is charged as upper bound given by `ContainsLengthBound`."] #[doc = " The actual cost depends on the implementation of `T::Tippers`."] #[doc = "# "] slash_tip { hash: ::subxt::utils::H256 }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "The reason given is just too big."] ReasonTooBig, #[codec(index = 1)] #[doc = "The tip was already found/started."] AlreadyKnown, #[codec(index = 2)] #[doc = "The tip hash is unknown."] UnknownTip, #[codec(index = 3)] #[doc = "The account attempting to retract the tip is not the finder of the tip."] NotFinder, #[codec(index = 4)] #[doc = "The tip cannot be claimed/closed because there are not enough tippers yet."] StillOpen, #[codec(index = 5)] #[doc = "The tip cannot be claimed/closed because it's still in the countdown period."] Premature, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A new tip suggestion has been opened."] NewTip { tip_hash: ::subxt::utils::H256 }, #[codec(index = 1)] #[doc = "A tip suggestion has reached threshold and is closing."] TipClosing { tip_hash: ::subxt::utils::H256 }, #[codec(index = 2)] #[doc = "A tip suggestion has been closed."] TipClosed { tip_hash: ::subxt::utils::H256, who: ::subxt::utils::AccountId32, payout: ::core::primitive::u128, }, #[codec(index = 3)] #[doc = "A tip suggestion has been retracted."] TipRetracted { tip_hash: ::subxt::utils::H256 }, #[codec(index = 4)] #[doc = "A tip suggestion has been slashed."] TipSlashed { tip_hash: ::subxt::utils::H256, finder: ::subxt::utils::AccountId32, deposit: ::core::primitive::u128, }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OpenTip<_0, _1, _2, _3> { pub reason: _3, pub who: _0, pub finder: _0, pub deposit: _1, pub closes: ::core::option::Option<_2>, pub tips: ::std::vec::Vec<(_0, _1)>, pub finders_fee: ::core::primitive::bool, } } pub mod pallet_transaction_payment { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A transaction fee `actual_fee`, of which `tip` was added to the minimum inclusion fee,"] #[doc = "has been paid by `who`."] TransactionFeePaid { who: ::subxt::utils::AccountId32, actual_fee: ::core::primitive::u128, tip: ::core::primitive::u128, }, } } pub mod types { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct FeeDetails<_0> { pub inclusion_fee: ::core::option::Option< runtime_types::pallet_transaction_payment::types::InclusionFee< _0, >, >, pub tip: _0, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct InclusionFee<_0> { pub base_fee: _0, pub len_fee: _0, pub adjusted_weight_fee: _0, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RuntimeDispatchInfo<_0, _1> { pub weight: _1, pub class: runtime_types::frame_support::dispatch::DispatchClass, pub partial_fee: _0, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Releases { #[codec(index = 0)] V1Ancient, #[codec(index = 1)] V2, } } pub mod pallet_transaction_storage { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { # [codec (index = 0)] # [doc = "Index and store data off chain. Minimum data size is 1 bytes, maximum is"] # [doc = "`MaxTransactionSize`. Data will be removed after `STORAGE_PERIOD` blocks, unless `renew`"] # [doc = "is called. # "] # [doc = "- n*log(n) of data size, as all data is pushed to an in-memory trie."] # [doc = "Additionally contains a DB write."] # [doc = "# "] store { data : :: std :: vec :: Vec < :: core :: primitive :: u8 > , } , # [codec (index = 1)] # [doc = "Renew previously stored data. Parameters are the block number that contains"] # [doc = "previous `store` or `renew` call and transaction index within that block."] # [doc = "Transaction index is emitted in the `Stored` or `Renewed` event."] # [doc = "Applies same fees as `store`."] # [doc = "# "] # [doc = "- Constant."] # [doc = "# "] renew { block : :: core :: primitive :: u32 , index : :: core :: primitive :: u32 , } , # [codec (index = 2)] # [doc = "Check storage proof for block number `block_number() - StoragePeriod`."] # [doc = "If such block does not exist the proof is expected to be `None`."] # [doc = "# "] # [doc = "- Linear w.r.t the number of indexed transactions in the proved block for random"] # [doc = " probing."] # [doc = "There's a DB read for each transaction."] # [doc = "Here we assume a maximum of 100 probed transactions."] # [doc = "# "] check_proof { proof : runtime_types :: sp_transaction_storage_proof :: TransactionStorageProof , } , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Insufficient account balance."] InsufficientFunds, #[codec(index = 1)] #[doc = "Invalid configuration."] NotConfigured, #[codec(index = 2)] #[doc = "Renewed extrinsic is not found."] RenewedNotFound, #[codec(index = 3)] #[doc = "Attempting to store empty transaction"] EmptyTransaction, #[codec(index = 4)] #[doc = "Proof was not expected in this block."] UnexpectedProof, #[codec(index = 5)] #[doc = "Proof failed verification."] InvalidProof, #[codec(index = 6)] #[doc = "Missing storage proof."] MissingProof, #[codec(index = 7)] #[doc = "Unable to verify proof becasue state data is missing."] MissingStateData, #[codec(index = 8)] #[doc = "Double proof check in the block."] DoubleCheck, #[codec(index = 9)] #[doc = "Storage proof was not checked in the block."] ProofNotChecked, #[codec(index = 10)] #[doc = "Transaction is too large."] TransactionTooLarge, #[codec(index = 11)] #[doc = "Too many transactions in the block."] TooManyTransactions, #[codec(index = 12)] #[doc = "Attempted to call `store` outside of block execution."] BadContext, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "Stored data under specified index."] Stored { index: ::core::primitive::u32 }, #[codec(index = 1)] #[doc = "Renewed data under specified index."] Renewed { index: ::core::primitive::u32 }, #[codec(index = 2)] #[doc = "Storage proof was successfully checked."] ProofChecked, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TransactionInfo { pub chunk_root: ::subxt::utils::H256, pub content_hash: ::subxt::utils::H256, pub size: ::core::primitive::u32, pub block_chunks: ::core::primitive::u32, } } pub mod pallet_treasury { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Put forward a suggestion for spending. A deposit proportional to the value"] #[doc = "is reserved and slashed if the proposal is rejected. It is returned once the"] #[doc = "proposal is awarded."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(1)"] #[doc = "- DbReads: `ProposalCount`, `origin account`"] #[doc = "- DbWrites: `ProposalCount`, `Proposals`, `origin account`"] #[doc = "# "] propose_spend { #[codec(compact)] value: ::core::primitive::u128, beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 1)] #[doc = "Reject a proposed spend. The original deposit will be slashed."] #[doc = ""] #[doc = "May only be called from `T::RejectOrigin`."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(1)"] #[doc = "- DbReads: `Proposals`, `rejected proposer account`"] #[doc = "- DbWrites: `Proposals`, `rejected proposer account`"] #[doc = "# "] reject_proposal { #[codec(compact)] proposal_id: ::core::primitive::u32, }, #[codec(index = 2)] #[doc = "Approve a proposal. At a later time, the proposal will be allocated to the beneficiary"] #[doc = "and the original deposit will be returned."] #[doc = ""] #[doc = "May only be called from `T::ApproveOrigin`."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(1)."] #[doc = "- DbReads: `Proposals`, `Approvals`"] #[doc = "- DbWrite: `Approvals`"] #[doc = "# "] approve_proposal { #[codec(compact)] proposal_id: ::core::primitive::u32, }, #[codec(index = 3)] #[doc = "Propose and approve a spend of treasury funds."] #[doc = ""] #[doc = "- `origin`: Must be `SpendOrigin` with the `Success` value being at least `amount`."] #[doc = "- `amount`: The amount to be transferred from the treasury to the `beneficiary`."] #[doc = "- `beneficiary`: The destination account for the transfer."] #[doc = ""] #[doc = "NOTE: For record-keeping purposes, the proposer is deemed to be equivalent to the"] #[doc = "beneficiary."] spend { #[codec(compact)] amount: ::core::primitive::u128, beneficiary: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 4)] #[doc = "Force a previously approved proposal to be removed from the approval queue."] #[doc = "The original deposit will no longer be returned."] #[doc = ""] #[doc = "May only be called from `T::RejectOrigin`."] #[doc = "- `proposal_id`: The index of a proposal"] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(A) where `A` is the number of approvals"] #[doc = "- Db reads and writes: `Approvals`"] #[doc = "# "] #[doc = ""] #[doc = "Errors:"] #[doc = "- `ProposalNotApproved`: The `proposal_id` supplied was not found in the approval queue,"] #[doc = "i.e., the proposal has not been approved. This could also mean the proposal does not"] #[doc = "exist altogether, thus there is no way it would have been approved in the first place."] remove_approval { #[codec(compact)] proposal_id: ::core::primitive::u32, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Error for the treasury pallet."] pub enum Error { #[codec(index = 0)] #[doc = "Proposer's balance is too low."] InsufficientProposersBalance, #[codec(index = 1)] #[doc = "No proposal or bounty at that index."] InvalidIndex, #[codec(index = 2)] #[doc = "Too many approvals in the queue."] TooManyApprovals, #[codec(index = 3)] #[doc = "The spend origin is valid but the amount it is allowed to spend is lower than the"] #[doc = "amount to be spent."] InsufficientPermission, #[codec(index = 4)] #[doc = "Proposal has not been approved."] ProposalNotApproved, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "New proposal."] Proposed { proposal_index: ::core::primitive::u32, }, #[codec(index = 1)] #[doc = "We have ended a spend period and will now allocate funds."] Spending { budget_remaining: ::core::primitive::u128, }, #[codec(index = 2)] #[doc = "Some funds have been allocated."] Awarded { proposal_index: ::core::primitive::u32, award: ::core::primitive::u128, account: ::subxt::utils::AccountId32, }, #[codec(index = 3)] #[doc = "A proposal was rejected; funds were slashed."] Rejected { proposal_index: ::core::primitive::u32, slashed: ::core::primitive::u128, }, #[codec(index = 4)] #[doc = "Some of our funds have been burnt."] Burnt { burnt_funds: ::core::primitive::u128, }, #[codec(index = 5)] #[doc = "Spending has finished; this is the amount that rolls over until next spend."] Rollover { rollover_balance: ::core::primitive::u128, }, #[codec(index = 6)] #[doc = "Some funds have been deposited."] Deposit { value: ::core::primitive::u128 }, #[codec(index = 7)] #[doc = "A new spend proposal has been approved."] SpendApproved { proposal_index: ::core::primitive::u32, amount: ::core::primitive::u128, beneficiary: ::subxt::utils::AccountId32, }, #[codec(index = 8)] #[doc = "The inactive funds of the pallet have been updated."] UpdatedInactive { reactivated: ::core::primitive::u128, deactivated: ::core::primitive::u128, }, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Proposal<_0, _1> { pub proposer: _0, pub value: _1, pub beneficiary: _0, pub bond: _1, } } pub mod pallet_uniques { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Issue a new collection of non-fungible items from a public origin."] #[doc = ""] #[doc = "This new collection has no items initially and its owner is the origin."] #[doc = ""] #[doc = "The origin must conform to the configured `CreateOrigin` and have sufficient funds free."] #[doc = ""] #[doc = "`ItemDeposit` funds of sender are reserved."] #[doc = ""] #[doc = "Parameters:"] #[doc = "- `collection`: The identifier of the new collection. This must not be currently in use."] #[doc = "- `admin`: The admin of this collection. The admin is the initial address of each"] #[doc = "member of the collection's admin team."] #[doc = ""] #[doc = "Emits `Created` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] create { collection: ::core::primitive::u32, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 1)] #[doc = "Issue a new collection of non-fungible items from a privileged origin."] #[doc = ""] #[doc = "This new collection has no items initially."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin`."] #[doc = ""] #[doc = "Unlike `create`, no funds are reserved."] #[doc = ""] #[doc = "- `collection`: The identifier of the new item. This must not be currently in use."] #[doc = "- `owner`: The owner of this collection of items. The owner has full superuser"] #[doc = " permissions"] #[doc = "over this item, but may later change and configure the permissions using"] #[doc = "`transfer_ownership` and `set_team`."] #[doc = ""] #[doc = "Emits `ForceCreated` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] force_create { collection: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, free_holding: ::core::primitive::bool, }, #[codec(index = 2)] #[doc = "Destroy a collection of fungible items."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin` or must be `Signed` and the sender must be the"] #[doc = "owner of the `collection`."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection to be destroyed."] #[doc = "- `witness`: Information on the items minted in the collection. This must be"] #[doc = "correct."] #[doc = ""] #[doc = "Emits `Destroyed` event when successful."] #[doc = ""] #[doc = "Weight: `O(n + m)` where:"] #[doc = "- `n = witness.items`"] #[doc = "- `m = witness.item_metadatas`"] #[doc = "- `a = witness.attributes`"] destroy { collection: ::core::primitive::u32, witness: runtime_types::pallet_uniques::types::DestroyWitness, }, #[codec(index = 3)] #[doc = "Mint an item of a particular collection."] #[doc = ""] #[doc = "The origin must be Signed and the sender must be the Issuer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be minted."] #[doc = "- `item`: The item value of the item to be minted."] #[doc = "- `beneficiary`: The initial owner of the minted item."] #[doc = ""] #[doc = "Emits `Issued` event when successful."] #[doc = ""] #[doc = "Weight: `O(1)`"] mint { collection: ::core::primitive::u32, item: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 4)] #[doc = "Destroy a single item."] #[doc = ""] #[doc = "Origin must be Signed and the signing account must be either:"] #[doc = "- the Admin of the `collection`;"] #[doc = "- the Owner of the `item`;"] #[doc = ""] #[doc = "- `collection`: The collection of the item to be burned."] #[doc = "- `item`: The item of the item to be burned."] #[doc = "- `check_owner`: If `Some` then the operation will fail with `WrongOwner` unless the"] #[doc = " item is owned by this value."] #[doc = ""] #[doc = "Emits `Burned` with the actual amount burned."] #[doc = ""] #[doc = "Weight: `O(1)`"] #[doc = "Modes: `check_owner.is_some()`."] burn { collection: ::core::primitive::u32, item: ::core::primitive::u32, check_owner: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, }, #[codec(index = 5)] #[doc = "Move an item from the sender account to another."] #[doc = ""] #[doc = "This resets the approved account of the item."] #[doc = ""] #[doc = "Origin must be Signed and the signing account must be either:"] #[doc = "- the Admin of the `collection`;"] #[doc = "- the Owner of the `item`;"] #[doc = "- the approved delegate for the `item` (in this case, the approval is reset)."] #[doc = ""] #[doc = "Arguments:"] #[doc = "- `collection`: The collection of the item to be transferred."] #[doc = "- `item`: The item of the item to be transferred."] #[doc = "- `dest`: The account to receive ownership of the item."] #[doc = ""] #[doc = "Emits `Transferred`."] #[doc = ""] #[doc = "Weight: `O(1)`"] transfer { collection: ::core::primitive::u32, item: ::core::primitive::u32, dest: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 6)] #[doc = "Reevaluate the deposits on some items."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection to be frozen."] #[doc = "- `items`: The items of the collection whose deposits will be reevaluated."] #[doc = ""] #[doc = "NOTE: This exists as a best-effort function. Any items which are unknown or"] #[doc = "in the case that the owner account does not have reservable funds to pay for a"] #[doc = "deposit increase are ignored. Generally the owner isn't going to call this on items"] #[doc = "whose existing deposit is less than the refreshed deposit as it would only cost them,"] #[doc = "so it's of little consequence."] #[doc = ""] #[doc = "It will still return an error in the case that the collection is unknown of the signer"] #[doc = "is not permitted to call it."] #[doc = ""] #[doc = "Weight: `O(items.len())`"] redeposit { collection: ::core::primitive::u32, items: ::std::vec::Vec<::core::primitive::u32>, }, #[codec(index = 7)] #[doc = "Disallow further unprivileged transfer of an item."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be frozen."] #[doc = "- `item`: The item of the item to be frozen."] #[doc = ""] #[doc = "Emits `Frozen`."] #[doc = ""] #[doc = "Weight: `O(1)`"] freeze { collection: ::core::primitive::u32, item: ::core::primitive::u32, }, #[codec(index = 8)] #[doc = "Re-allow unprivileged transfer of an item."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be thawed."] #[doc = "- `item`: The item of the item to be thawed."] #[doc = ""] #[doc = "Emits `Thawed`."] #[doc = ""] #[doc = "Weight: `O(1)`"] thaw { collection: ::core::primitive::u32, item: ::core::primitive::u32, }, #[codec(index = 9)] #[doc = "Disallow further unprivileged transfers for a whole collection."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Freezer of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection to be frozen."] #[doc = ""] #[doc = "Emits `CollectionFrozen`."] #[doc = ""] #[doc = "Weight: `O(1)`"] freeze_collection { collection: ::core::primitive::u32 }, #[codec(index = 10)] #[doc = "Re-allow unprivileged transfers for a whole collection."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Admin of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection to be thawed."] #[doc = ""] #[doc = "Emits `CollectionThawed`."] #[doc = ""] #[doc = "Weight: `O(1)`"] thaw_collection { collection: ::core::primitive::u32 }, #[codec(index = 11)] #[doc = "Change the Owner of a collection."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection whose owner should be changed."] #[doc = "- `owner`: The new Owner of this collection. They must have called"] #[doc = " `set_accept_ownership` with `collection` in order for this operation to succeed."] #[doc = ""] #[doc = "Emits `OwnerChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] transfer_ownership { collection: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 12)] #[doc = "Change the Issuer, Admin and Freezer of a collection."] #[doc = ""] #[doc = "Origin must be Signed and the sender should be the Owner of the `collection`."] #[doc = ""] #[doc = "- `collection`: The collection whose team should be changed."] #[doc = "- `issuer`: The new Issuer of this collection."] #[doc = "- `admin`: The new Admin of this collection."] #[doc = "- `freezer`: The new Freezer of this collection."] #[doc = ""] #[doc = "Emits `TeamChanged`."] #[doc = ""] #[doc = "Weight: `O(1)`"] set_team { collection: ::core::primitive::u32, issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 13)] #[doc = "Approve an item to be transferred by a delegated third-party account."] #[doc = ""] #[doc = "The origin must conform to `ForceOrigin` or must be `Signed` and the sender must be"] #[doc = "either the owner of the `item` or the admin of the collection."] #[doc = ""] #[doc = "- `collection`: The collection of the item to be approved for delegated transfer."] #[doc = "- `item`: The item of the item to be approved for delegated transfer."] #[doc = "- `delegate`: The account to delegate permission to transfer the item."] #[doc = ""] #[doc = "Important NOTE: The `approved` account gets reset after each transfer."] #[doc = ""] #[doc = "Emits `ApprovedTransfer` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] approve_transfer { collection: ::core::primitive::u32, item: ::core::primitive::u32, delegate: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 14)] #[doc = "Cancel the prior approval for the transfer of an item by a delegate."] #[doc = ""] #[doc = "Origin must be either:"] #[doc = "- the `Force` origin;"] #[doc = "- `Signed` with the signer being the Admin of the `collection`;"] #[doc = "- `Signed` with the signer being the Owner of the `item`;"] #[doc = ""] #[doc = "Arguments:"] #[doc = "- `collection`: The collection of the item of whose approval will be cancelled."] #[doc = "- `item`: The item of the item of whose approval will be cancelled."] #[doc = "- `maybe_check_delegate`: If `Some` will ensure that the given account is the one to"] #[doc = " which permission of transfer is delegated."] #[doc = ""] #[doc = "Emits `ApprovalCancelled` on success."] #[doc = ""] #[doc = "Weight: `O(1)`"] cancel_approval { collection: ::core::primitive::u32, item: ::core::primitive::u32, maybe_check_delegate: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, }, #[codec(index = 15)] #[doc = "Alter the attributes of a given item."] #[doc = ""] #[doc = "Origin must be `ForceOrigin`."] #[doc = ""] #[doc = "- `collection`: The identifier of the item."] #[doc = "- `owner`: The new Owner of this item."] #[doc = "- `issuer`: The new Issuer of this item."] #[doc = "- `admin`: The new Admin of this item."] #[doc = "- `freezer`: The new Freezer of this item."] #[doc = "- `free_holding`: Whether a deposit is taken for holding an item of this collection."] #[doc = "- `is_frozen`: Whether this collection is frozen except for permissioned/admin"] #[doc = "instructions."] #[doc = ""] #[doc = "Emits `ItemStatusChanged` with the identity of the item."] #[doc = ""] #[doc = "Weight: `O(1)`"] force_item_status { collection: ::core::primitive::u32, owner: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, issuer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, admin: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, freezer: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, free_holding: ::core::primitive::bool, is_frozen: ::core::primitive::bool, }, #[codec(index = 16)] #[doc = "Set an attribute for a collection or item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`collection`."] #[doc = ""] #[doc = "If the origin is Signed, then funds of signer are reserved according to the formula:"] #[doc = "`MetadataDepositBase + DepositPerByte * (key.len + value.len)` taking into"] #[doc = "account any already reserved funds."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to set."] #[doc = "- `maybe_item`: The identifier of the item whose metadata to set."] #[doc = "- `key`: The key of the attribute."] #[doc = "- `value`: The value to which to set the attribute."] #[doc = ""] #[doc = "Emits `AttributeSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] set_attribute { collection: ::core::primitive::u32, maybe_item: ::core::option::Option<::core::primitive::u32>, key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, value: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, }, #[codec(index = 17)] #[doc = "Clear an attribute for a collection or item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`collection`."] #[doc = ""] #[doc = "Any deposit is freed for the collection's owner."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to clear."] #[doc = "- `maybe_item`: The identifier of the item whose metadata to clear."] #[doc = "- `key`: The key of the attribute."] #[doc = ""] #[doc = "Emits `AttributeCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] clear_attribute { collection: ::core::primitive::u32, maybe_item: ::core::option::Option<::core::primitive::u32>, key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, }, #[codec(index = 18)] #[doc = "Set the metadata for an item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`collection`."] #[doc = ""] #[doc = "If the origin is Signed, then funds of signer are reserved according to the formula:"] #[doc = "`MetadataDepositBase + DepositPerByte * data.len` taking into"] #[doc = "account any already reserved funds."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to set."] #[doc = "- `item`: The identifier of the item whose metadata to set."] #[doc = "- `data`: The general information of this item. Limited in length by `StringLimit`."] #[doc = "- `is_frozen`: Whether the metadata should be frozen against further changes."] #[doc = ""] #[doc = "Emits `MetadataSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] set_metadata { collection: ::core::primitive::u32, item: ::core::primitive::u32, data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, is_frozen: ::core::primitive::bool, }, #[codec(index = 19)] #[doc = "Clear the metadata for an item."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or Signed and the sender should be the Owner of the"] #[doc = "`item`."] #[doc = ""] #[doc = "Any deposit is freed for the collection's owner."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose item's metadata to clear."] #[doc = "- `item`: The identifier of the item whose metadata to clear."] #[doc = ""] #[doc = "Emits `MetadataCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] clear_metadata { collection: ::core::primitive::u32, item: ::core::primitive::u32, }, #[codec(index = 20)] #[doc = "Set the metadata for a collection."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] #[doc = "the `collection`."] #[doc = ""] #[doc = "If the origin is `Signed`, then funds of signer are reserved according to the formula:"] #[doc = "`MetadataDepositBase + DepositPerByte * data.len` taking into"] #[doc = "account any already reserved funds."] #[doc = ""] #[doc = "- `collection`: The identifier of the item whose metadata to update."] #[doc = "- `data`: The general information of this item. Limited in length by `StringLimit`."] #[doc = "- `is_frozen`: Whether the metadata should be frozen against further changes."] #[doc = ""] #[doc = "Emits `CollectionMetadataSet`."] #[doc = ""] #[doc = "Weight: `O(1)`"] set_collection_metadata { collection: ::core::primitive::u32, data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, is_frozen: ::core::primitive::bool, }, #[codec(index = 21)] #[doc = "Clear the metadata for a collection."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] #[doc = "the `collection`."] #[doc = ""] #[doc = "Any deposit is freed for the collection's owner."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection whose metadata to clear."] #[doc = ""] #[doc = "Emits `CollectionMetadataCleared`."] #[doc = ""] #[doc = "Weight: `O(1)`"] clear_collection_metadata { collection: ::core::primitive::u32 }, #[codec(index = 22)] #[doc = "Set (or reset) the acceptance of ownership for a particular account."] #[doc = ""] #[doc = "Origin must be `Signed` and if `maybe_collection` is `Some`, then the signer must have a"] #[doc = "provider reference."] #[doc = ""] #[doc = "- `maybe_collection`: The identifier of the collection whose ownership the signer is"] #[doc = " willing to accept, or if `None`, an indication that the signer is willing to accept no"] #[doc = " ownership transferal."] #[doc = ""] #[doc = "Emits `OwnershipAcceptanceChanged`."] set_accept_ownership { maybe_collection: ::core::option::Option<::core::primitive::u32>, }, #[codec(index = 23)] #[doc = "Set the maximum amount of items a collection could have."] #[doc = ""] #[doc = "Origin must be either `ForceOrigin` or `Signed` and the sender should be the Owner of"] #[doc = "the `collection`."] #[doc = ""] #[doc = "Note: This function can only succeed once per collection."] #[doc = ""] #[doc = "- `collection`: The identifier of the collection to change."] #[doc = "- `max_supply`: The maximum amount of items a collection could have."] #[doc = ""] #[doc = "Emits `CollectionMaxSupplySet` event when successful."] set_collection_max_supply { collection: ::core::primitive::u32, max_supply: ::core::primitive::u32, }, #[codec(index = 24)] #[doc = "Set (or reset) the price for an item."] #[doc = ""] #[doc = "Origin must be Signed and must be the owner of the asset `item`."] #[doc = ""] #[doc = "- `collection`: The collection of the item."] #[doc = "- `item`: The item to set the price for."] #[doc = "- `price`: The price for the item. Pass `None`, to reset the price."] #[doc = "- `buyer`: Restricts the buy operation to a specific account."] #[doc = ""] #[doc = "Emits `ItemPriceSet` on success if the price is not `None`."] #[doc = "Emits `ItemPriceRemoved` on success if the price is `None`."] set_price { collection: ::core::primitive::u32, item: ::core::primitive::u32, price: ::core::option::Option<::core::primitive::u128>, whitelisted_buyer: ::core::option::Option< ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, >, }, #[codec(index = 25)] #[doc = "Allows to buy an item if it's up for sale."] #[doc = ""] #[doc = "Origin must be Signed and must not be the owner of the `item`."] #[doc = ""] #[doc = "- `collection`: The collection of the item."] #[doc = "- `item`: The item the sender wants to buy."] #[doc = "- `bid_price`: The price the sender is willing to pay."] #[doc = ""] #[doc = "Emits `ItemBought` on success."] buy_item { collection: ::core::primitive::u32, item: ::core::primitive::u32, bid_price: ::core::primitive::u128, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "The signing account has no permission to do the operation."] NoPermission, #[codec(index = 1)] #[doc = "The given item ID is unknown."] UnknownCollection, #[codec(index = 2)] #[doc = "The item ID has already been used for an item."] AlreadyExists, #[codec(index = 3)] #[doc = "The owner turned out to be different to what was expected."] WrongOwner, #[codec(index = 4)] #[doc = "Invalid witness data given."] BadWitness, #[codec(index = 5)] #[doc = "The item ID is already taken."] InUse, #[codec(index = 6)] #[doc = "The item or collection is frozen."] Frozen, #[codec(index = 7)] #[doc = "The delegate turned out to be different to what was expected."] WrongDelegate, #[codec(index = 8)] #[doc = "There is no delegate approved."] NoDelegate, #[codec(index = 9)] #[doc = "No approval exists that would allow the transfer."] Unapproved, #[codec(index = 10)] #[doc = "The named owner has not signed ownership of the collection is acceptable."] Unaccepted, #[codec(index = 11)] #[doc = "The item is locked."] Locked, #[codec(index = 12)] #[doc = "All items have been minted."] MaxSupplyReached, #[codec(index = 13)] #[doc = "The max supply has already been set."] MaxSupplyAlreadySet, #[codec(index = 14)] #[doc = "The provided max supply is less to the amount of items a collection already has."] MaxSupplyTooSmall, #[codec(index = 15)] #[doc = "The given item ID is unknown."] UnknownItem, #[codec(index = 16)] #[doc = "Item is not for sale."] NotForSale, #[codec(index = 17)] #[doc = "The provided bid is too low."] BidTooLow, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "A `collection` was created."] Created { collection: ::core::primitive::u32, creator: ::subxt::utils::AccountId32, owner: ::subxt::utils::AccountId32, }, #[codec(index = 1)] #[doc = "A `collection` was force-created."] ForceCreated { collection: ::core::primitive::u32, owner: ::subxt::utils::AccountId32, }, #[codec(index = 2)] #[doc = "A `collection` was destroyed."] Destroyed { collection: ::core::primitive::u32 }, #[codec(index = 3)] #[doc = "An `item` was issued."] Issued { collection: ::core::primitive::u32, item: ::core::primitive::u32, owner: ::subxt::utils::AccountId32, }, #[codec(index = 4)] #[doc = "An `item` was transferred."] Transferred { collection: ::core::primitive::u32, item: ::core::primitive::u32, from: ::subxt::utils::AccountId32, to: ::subxt::utils::AccountId32, }, #[codec(index = 5)] #[doc = "An `item` was destroyed."] Burned { collection: ::core::primitive::u32, item: ::core::primitive::u32, owner: ::subxt::utils::AccountId32, }, #[codec(index = 6)] #[doc = "Some `item` was frozen."] Frozen { collection: ::core::primitive::u32, item: ::core::primitive::u32, }, #[codec(index = 7)] #[doc = "Some `item` was thawed."] Thawed { collection: ::core::primitive::u32, item: ::core::primitive::u32, }, #[codec(index = 8)] #[doc = "Some `collection` was frozen."] CollectionFrozen { collection: ::core::primitive::u32 }, #[codec(index = 9)] #[doc = "Some `collection` was thawed."] CollectionThawed { collection: ::core::primitive::u32 }, #[codec(index = 10)] #[doc = "The owner changed."] OwnerChanged { collection: ::core::primitive::u32, new_owner: ::subxt::utils::AccountId32, }, #[codec(index = 11)] #[doc = "The management team changed."] TeamChanged { collection: ::core::primitive::u32, issuer: ::subxt::utils::AccountId32, admin: ::subxt::utils::AccountId32, freezer: ::subxt::utils::AccountId32, }, #[codec(index = 12)] #[doc = "An `item` of a `collection` has been approved by the `owner` for transfer by"] #[doc = "a `delegate`."] ApprovedTransfer { collection: ::core::primitive::u32, item: ::core::primitive::u32, owner: ::subxt::utils::AccountId32, delegate: ::subxt::utils::AccountId32, }, #[codec(index = 13)] #[doc = "An approval for a `delegate` account to transfer the `item` of an item"] #[doc = "`collection` was cancelled by its `owner`."] ApprovalCancelled { collection: ::core::primitive::u32, item: ::core::primitive::u32, owner: ::subxt::utils::AccountId32, delegate: ::subxt::utils::AccountId32, }, #[codec(index = 14)] #[doc = "A `collection` has had its attributes changed by the `Force` origin."] ItemStatusChanged { collection: ::core::primitive::u32 }, #[codec(index = 15)] #[doc = "New metadata has been set for a `collection`."] CollectionMetadataSet { collection: ::core::primitive::u32, data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, is_frozen: ::core::primitive::bool, }, #[codec(index = 16)] #[doc = "Metadata has been cleared for a `collection`."] CollectionMetadataCleared { collection: ::core::primitive::u32 }, #[codec(index = 17)] #[doc = "New metadata has been set for an item."] MetadataSet { collection: ::core::primitive::u32, item: ::core::primitive::u32, data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, is_frozen: ::core::primitive::bool, }, #[codec(index = 18)] #[doc = "Metadata has been cleared for an item."] MetadataCleared { collection: ::core::primitive::u32, item: ::core::primitive::u32, }, #[codec(index = 19)] #[doc = "Metadata has been cleared for an item."] Redeposited { collection: ::core::primitive::u32, successful_items: ::std::vec::Vec<::core::primitive::u32>, }, #[codec(index = 20)] #[doc = "New attribute metadata has been set for a `collection` or `item`."] AttributeSet { collection: ::core::primitive::u32, maybe_item: ::core::option::Option<::core::primitive::u32>, key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, value: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, }, #[codec(index = 21)] #[doc = "Attribute metadata has been cleared for a `collection` or `item`."] AttributeCleared { collection: ::core::primitive::u32, maybe_item: ::core::option::Option<::core::primitive::u32>, key: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, }, #[codec(index = 22)] #[doc = "Ownership acceptance has changed for an account."] OwnershipAcceptanceChanged { who: ::subxt::utils::AccountId32, maybe_collection: ::core::option::Option<::core::primitive::u32>, }, #[codec(index = 23)] #[doc = "Max supply has been set for a collection."] CollectionMaxSupplySet { collection: ::core::primitive::u32, max_supply: ::core::primitive::u32, }, #[codec(index = 24)] #[doc = "The price was set for the instance."] ItemPriceSet { collection: ::core::primitive::u32, item: ::core::primitive::u32, price: ::core::primitive::u128, whitelisted_buyer: ::core::option::Option<::subxt::utils::AccountId32>, }, #[codec(index = 25)] #[doc = "The price for the instance was removed."] ItemPriceRemoved { collection: ::core::primitive::u32, item: ::core::primitive::u32, }, #[codec(index = 26)] #[doc = "An item was bought."] ItemBought { collection: ::core::primitive::u32, item: ::core::primitive::u32, price: ::core::primitive::u128, seller: ::subxt::utils::AccountId32, buyer: ::subxt::utils::AccountId32, }, } } pub mod types { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CollectionDetails<_0, _1> { pub owner: _0, pub issuer: _0, pub admin: _0, pub freezer: _0, pub total_deposit: _1, pub free_holding: ::core::primitive::bool, pub items: ::core::primitive::u32, pub item_metadatas: ::core::primitive::u32, pub attributes: ::core::primitive::u32, pub is_frozen: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CollectionMetadata<_0> { pub deposit: _0, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, pub is_frozen: ::core::primitive::bool, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DestroyWitness { #[codec(compact)] pub items: ::core::primitive::u32, #[codec(compact)] pub item_metadatas: ::core::primitive::u32, #[codec(compact)] pub attributes: ::core::primitive::u32, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ItemDetails<_0, _1> { pub owner: _0, pub approved: ::core::option::Option<_0>, pub is_frozen: ::core::primitive::bool, pub deposit: _1, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ItemMetadata<_0> { pub deposit: _0, pub data: runtime_types::sp_core::bounded::bounded_vec::BoundedVec< ::core::primitive::u8, >, pub is_frozen: ::core::primitive::bool, } } } pub mod pallet_utility { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Send a batch of dispatch calls."] #[doc = ""] #[doc = "May be called from any origin except `None`."] #[doc = ""] #[doc = "- `calls`: The calls to be dispatched from the same origin. The number of call must not"] #[doc = " exceed the constant: `batched_calls_limit` (available in constant metadata)."] #[doc = ""] #[doc = "If origin is root then the calls are dispatched without checking origin filter. (This"] #[doc = "includes bypassing `frame_system::Config::BaseCallFilter`)."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(C) where C is the number of calls to be batched."] #[doc = "# "] #[doc = ""] #[doc = "This will return `Ok` in all circumstances. To determine the success of the batch, an"] #[doc = "event is deposited. If a call failed and the batch was interrupted, then the"] #[doc = "`BatchInterrupted` event is deposited, along with the number of successful calls made"] #[doc = "and the error of the failed call. If all were successful, then the `BatchCompleted`"] #[doc = "event is deposited."] batch { calls: ::std::vec::Vec< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 1)] #[doc = "Send a call through an indexed pseudonym of the sender."] #[doc = ""] #[doc = "Filter from origin are passed along. The call will be dispatched with an origin which"] #[doc = "use the same filter as the origin of this call."] #[doc = ""] #[doc = "NOTE: If you need to ensure that any account-based filtering is not honored (i.e."] #[doc = "because you expect `proxy` to have been used prior in the call stack and you do not want"] #[doc = "the call restrictions to apply to any sub-accounts), then use `as_multi_threshold_1`"] #[doc = "in the Multisig pallet instead."] #[doc = ""] #[doc = "NOTE: Prior to version *12, this was called `as_limited_sub`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] as_derivative { index: ::core::primitive::u16, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 2)] #[doc = "Send a batch of dispatch calls and atomically execute them."] #[doc = "The whole transaction will rollback and fail if any of the calls failed."] #[doc = ""] #[doc = "May be called from any origin except `None`."] #[doc = ""] #[doc = "- `calls`: The calls to be dispatched from the same origin. The number of call must not"] #[doc = " exceed the constant: `batched_calls_limit` (available in constant metadata)."] #[doc = ""] #[doc = "If origin is root then the calls are dispatched without checking origin filter. (This"] #[doc = "includes bypassing `frame_system::Config::BaseCallFilter`)."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(C) where C is the number of calls to be batched."] #[doc = "# "] batch_all { calls: ::std::vec::Vec< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 3)] #[doc = "Dispatches a function call with a provided origin."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Root_."] #[doc = ""] #[doc = "# "] #[doc = "- O(1)."] #[doc = "- Limited storage reads."] #[doc = "- One DB write (event)."] #[doc = "- Weight of derivative `call` execution + T::WeightInfo::dispatch_as()."] #[doc = "# "] dispatch_as { as_origin: ::std::boxed::Box< runtime_types::kitchensink_runtime::OriginCaller, >, call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 4)] #[doc = "Send a batch of dispatch calls."] #[doc = "Unlike `batch`, it allows errors and won't interrupt."] #[doc = ""] #[doc = "May be called from any origin except `None`."] #[doc = ""] #[doc = "- `calls`: The calls to be dispatched from the same origin. The number of call must not"] #[doc = " exceed the constant: `batched_calls_limit` (available in constant metadata)."] #[doc = ""] #[doc = "If origin is root then the calls are dispatch without checking origin filter. (This"] #[doc = "includes bypassing `frame_system::Config::BaseCallFilter`)."] #[doc = ""] #[doc = "# "] #[doc = "- Complexity: O(C) where C is the number of calls to be batched."] #[doc = "# "] force_batch { calls: ::std::vec::Vec< runtime_types::kitchensink_runtime::RuntimeCall, >, }, #[codec(index = 5)] #[doc = "Dispatch a function call with a specified weight."] #[doc = ""] #[doc = "This function does not check the weight of the call, and instead allows the"] #[doc = "Root origin to specify the weight of the call."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Root_."] with_weight { call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, weight: runtime_types::sp_weights::weight_v2::Weight, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "Too many calls batched."] TooManyCalls, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "Batch of dispatches did not complete fully. Index of first failing dispatch given, as"] #[doc = "well as the error."] BatchInterrupted { index: ::core::primitive::u32, error: runtime_types::sp_runtime::DispatchError, }, #[codec(index = 1)] #[doc = "Batch of dispatches completed fully with no error."] BatchCompleted, #[codec(index = 2)] #[doc = "Batch of dispatches completed but has errors."] BatchCompletedWithErrors, #[codec(index = 3)] #[doc = "A single item within a Batch of dispatches has completed with no error."] ItemCompleted, #[codec(index = 4)] #[doc = "A single item within a Batch of dispatches has completed with error."] ItemFailed { error: runtime_types::sp_runtime::DispatchError, }, #[codec(index = 5)] #[doc = "A call was dispatched."] DispatchedAs { result: ::core::result::Result< (), runtime_types::sp_runtime::DispatchError, >, }, } } } pub mod pallet_vesting { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] #[doc = "Unlock any vested funds of the sender account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_ and the sender must have funds still"] #[doc = "locked under this pallet."] #[doc = ""] #[doc = "Emits either `VestingCompleted` or `VestingUpdated`."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- DbWeight: 2 Reads, 2 Writes"] #[doc = " - Reads: Vesting Storage, Balances Locks, [Sender Account]"] #[doc = " - Writes: Vesting Storage, Balances Locks, [Sender Account]"] #[doc = "# "] vest, #[codec(index = 1)] #[doc = "Unlock any vested funds of a `target` account."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `target`: The account whose vested funds should be unlocked. Must have funds still"] #[doc = "locked under this pallet."] #[doc = ""] #[doc = "Emits either `VestingCompleted` or `VestingUpdated`."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- DbWeight: 3 Reads, 3 Writes"] #[doc = " - Reads: Vesting Storage, Balances Locks, Target Account"] #[doc = " - Writes: Vesting Storage, Balances Locks, Target Account"] #[doc = "# "] vest_other { target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, }, #[codec(index = 2)] #[doc = "Create a vested transfer."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `target`: The account receiving the vested funds."] #[doc = "- `schedule`: The vesting schedule attached to the transfer."] #[doc = ""] #[doc = "Emits `VestingCreated`."] #[doc = ""] #[doc = "NOTE: This will unlock all schedules through the current block."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- DbWeight: 3 Reads, 3 Writes"] #[doc = " - Reads: Vesting Storage, Balances Locks, Target Account, [Sender Account]"] #[doc = " - Writes: Vesting Storage, Balances Locks, Target Account, [Sender Account]"] #[doc = "# "] vested_transfer { target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, schedule: runtime_types::pallet_vesting::vesting_info::VestingInfo< ::core::primitive::u128, ::core::primitive::u32, >, }, #[codec(index = 3)] #[doc = "Force a vested transfer."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Root_."] #[doc = ""] #[doc = "- `source`: The account whose funds should be transferred."] #[doc = "- `target`: The account that should be transferred the vested funds."] #[doc = "- `schedule`: The vesting schedule attached to the transfer."] #[doc = ""] #[doc = "Emits `VestingCreated`."] #[doc = ""] #[doc = "NOTE: This will unlock all schedules through the current block."] #[doc = ""] #[doc = "# "] #[doc = "- `O(1)`."] #[doc = "- DbWeight: 4 Reads, 4 Writes"] #[doc = " - Reads: Vesting Storage, Balances Locks, Target Account, Source Account"] #[doc = " - Writes: Vesting Storage, Balances Locks, Target Account, Source Account"] #[doc = "# "] force_vested_transfer { source: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, target: ::subxt::utils::MultiAddress< ::subxt::utils::AccountId32, ::core::primitive::u32, >, schedule: runtime_types::pallet_vesting::vesting_info::VestingInfo< ::core::primitive::u128, ::core::primitive::u32, >, }, #[codec(index = 4)] #[doc = "Merge two vesting schedules together, creating a new vesting schedule that unlocks over"] #[doc = "the highest possible start and end blocks. If both schedules have already started the"] #[doc = "current block will be used as the schedule start; with the caveat that if one schedule"] #[doc = "is finished by the current block, the other will be treated as the new merged schedule,"] #[doc = "unmodified."] #[doc = ""] #[doc = "NOTE: If `schedule1_index == schedule2_index` this is a no-op."] #[doc = "NOTE: This will unlock all schedules through the current block prior to merging."] #[doc = "NOTE: If both schedules have ended by the current block, no new schedule will be created"] #[doc = "and both will be removed."] #[doc = ""] #[doc = "Merged schedule attributes:"] #[doc = "- `starting_block`: `MAX(schedule1.starting_block, scheduled2.starting_block,"] #[doc = " current_block)`."] #[doc = "- `ending_block`: `MAX(schedule1.ending_block, schedule2.ending_block)`."] #[doc = "- `locked`: `schedule1.locked_at(current_block) + schedule2.locked_at(current_block)`."] #[doc = ""] #[doc = "The dispatch origin for this call must be _Signed_."] #[doc = ""] #[doc = "- `schedule1_index`: index of the first schedule to merge."] #[doc = "- `schedule2_index`: index of the second schedule to merge."] merge_schedules { schedule1_index: ::core::primitive::u32, schedule2_index: ::core::primitive::u32, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Error for the vesting pallet."] pub enum Error { #[codec(index = 0)] #[doc = "The account given is not vesting."] NotVesting, #[codec(index = 1)] #[doc = "The account already has `MaxVestingSchedules` count of schedules and thus"] #[doc = "cannot add another one. Consider merging existing schedules in order to add another."] AtMaxVestingSchedules, #[codec(index = 2)] #[doc = "Amount being transferred is too low to create a vesting schedule."] AmountLow, #[codec(index = 3)] #[doc = "An index was out of bounds of the vesting schedules."] ScheduleIndexOutOfBounds, #[codec(index = 4)] #[doc = "Failed to create a new schedule because some parameter was invalid."] InvalidScheduleParams, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] #[doc = "The amount vested has been updated. This could indicate a change in funds available."] #[doc = "The balance given is the amount which is left unvested (and thus locked)."] VestingUpdated { account: ::subxt::utils::AccountId32, unvested: ::core::primitive::u128, }, #[codec(index = 1)] #[doc = "An \\[account\\] has become fully vested."] VestingCompleted { account: ::subxt::utils::AccountId32, }, } } pub mod vesting_info { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct VestingInfo<_0, _1> { pub locked: _0, pub per_block: _0, pub starting_block: _1, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Releases { #[codec(index = 0)] V0, #[codec(index = 1)] V1, } } pub mod pallet_whitelist { use super::runtime_types; pub mod pallet { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] pub enum Call { #[codec(index = 0)] whitelist_call { call_hash: ::subxt::utils::H256 }, #[codec(index = 1)] remove_whitelisted_call { call_hash: ::subxt::utils::H256 }, #[codec(index = 2)] dispatch_whitelisted_call { call_hash: ::subxt::utils::H256, call_encoded_len: ::core::primitive::u32, call_weight_witness: runtime_types::sp_weights::weight_v2::Weight, }, #[codec(index = 3)] dispatch_whitelisted_call_with_preimage { call: ::std::boxed::Box< runtime_types::kitchensink_runtime::RuntimeCall, >, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t"] pub enum Error { #[codec(index = 0)] #[doc = "The preimage of the call hash could not be loaded."] UnavailablePreImage, #[codec(index = 1)] #[doc = "The call could not be decoded."] UndecodableCall, #[codec(index = 2)] #[doc = "The weight of the decoded call was higher than the witness."] InvalidCallWeightWitness, #[codec(index = 3)] #[doc = "The call was not whitelisted."] CallIsNotWhitelisted, #[codec(index = 4)] #[doc = "The call was already whitelisted; No-Op."] CallAlreadyWhitelisted, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] #[doc = "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t"] pub enum Event { #[codec(index = 0)] CallWhitelisted { call_hash: ::subxt::utils::H256 }, #[codec(index = 1)] WhitelistedCallRemoved { call_hash: ::subxt::utils::H256 }, #[codec(index = 2)] WhitelistedCallDispatched { call_hash: ::subxt::utils::H256, result: ::core::result::Result< runtime_types::frame_support::dispatch::PostDispatchInfo, runtime_types::sp_runtime::DispatchErrorWithPostInfo< runtime_types::frame_support::dispatch::PostDispatchInfo, >, >, }, } } } pub mod sp_arithmetic { use super::runtime_types; pub mod fixed_point { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct FixedI64(pub ::core::primitive::i64); #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct FixedU128(pub ::core::primitive::u128); } pub mod per_things { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PerU16(pub ::core::primitive::u16); #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Perbill(pub ::core::primitive::u32); #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Percent(pub ::core::primitive::u8); #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Permill(pub ::core::primitive::u32); #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Perquintill(pub ::core::primitive::u64); } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum ArithmeticError { #[codec(index = 0)] Underflow, #[codec(index = 1)] Overflow, #[codec(index = 2)] DivisionByZero, } } pub mod sp_authority_discovery { use super::runtime_types; pub mod app { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Public(pub runtime_types::sp_core::sr25519::Public); } } pub mod sp_consensus_babe { use super::runtime_types; pub mod app { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Public(pub runtime_types::sp_core::sr25519::Public); } pub mod digests { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum NextConfigDescriptor { #[codec(index = 1)] V1 { c: (::core::primitive::u64, ::core::primitive::u64), allowed_slots: runtime_types::sp_consensus_babe::AllowedSlots, }, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum PreDigest { # [codec (index = 1)] Primary (runtime_types :: sp_consensus_babe :: digests :: PrimaryPreDigest ,) , # [codec (index = 2)] SecondaryPlain (runtime_types :: sp_consensus_babe :: digests :: SecondaryPlainPreDigest ,) , # [codec (index = 3)] SecondaryVRF (runtime_types :: sp_consensus_babe :: digests :: SecondaryVRFPreDigest ,) , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct PrimaryPreDigest { pub authority_index: ::core::primitive::u32, pub slot: runtime_types::sp_consensus_slots::Slot, pub vrf_output: [::core::primitive::u8; 32usize], pub vrf_proof: [::core::primitive::u8; 64usize], } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SecondaryPlainPreDigest { pub authority_index: ::core::primitive::u32, pub slot: runtime_types::sp_consensus_slots::Slot, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct SecondaryVRFPreDigest { pub authority_index: ::core::primitive::u32, pub slot: runtime_types::sp_consensus_slots::Slot, pub vrf_output: [::core::primitive::u8; 32usize], pub vrf_proof: [::core::primitive::u8; 64usize], } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum AllowedSlots { #[codec(index = 0)] PrimarySlots, #[codec(index = 1)] PrimaryAndSecondaryPlainSlots, #[codec(index = 2)] PrimaryAndSecondaryVRFSlots, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BabeConfiguration { pub slot_duration: ::core::primitive::u64, pub epoch_length: ::core::primitive::u64, pub c: (::core::primitive::u64, ::core::primitive::u64), pub authorities: ::std::vec::Vec<( runtime_types::sp_consensus_babe::app::Public, ::core::primitive::u64, )>, pub randomness: [::core::primitive::u8; 32usize], pub allowed_slots: runtime_types::sp_consensus_babe::AllowedSlots, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BabeEpochConfiguration { pub c: (::core::primitive::u64, ::core::primitive::u64), pub allowed_slots: runtime_types::sp_consensus_babe::AllowedSlots, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Epoch { pub epoch_index: ::core::primitive::u64, pub start_slot: runtime_types::sp_consensus_slots::Slot, pub duration: ::core::primitive::u64, pub authorities: ::std::vec::Vec<( runtime_types::sp_consensus_babe::app::Public, ::core::primitive::u64, )>, pub randomness: [::core::primitive::u8; 32usize], pub config: runtime_types::sp_consensus_babe::BabeEpochConfiguration, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OpaqueKeyOwnershipProof( pub ::std::vec::Vec<::core::primitive::u8>, ); } pub mod sp_consensus_slots { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct EquivocationProof<_0, _1> { pub offender: _1, pub slot: runtime_types::sp_consensus_slots::Slot, pub first_header: _0, pub second_header: _0, } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Slot(pub ::core::primitive::u64); } pub mod sp_core { use super::runtime_types; pub mod bounded { use super::runtime_types; pub mod bounded_btree_map { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BoundedBTreeMap<_0, _1>( pub ::subxt::utils::KeyedVec<_0, _1>, ); } pub mod bounded_btree_set { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BoundedBTreeSet<_0>(pub ::std::vec::Vec<_0>); } pub mod bounded_vec { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BoundedVec<_0>(pub ::std::vec::Vec<_0>); } pub mod weak_bounded_vec { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct WeakBoundedVec<_0>(pub ::std::vec::Vec<_0>); } } pub mod crypto { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct KeyTypeId(pub [::core::primitive::u8; 4usize]); } pub mod ecdsa { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Signature(pub [::core::primitive::u8; 65usize]); } pub mod ed25519 { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Public(pub [::core::primitive::u8; 32usize]); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Signature(pub [::core::primitive::u8; 64usize]); } pub mod offchain { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OpaqueMultiaddr(pub ::std::vec::Vec<::core::primitive::u8>); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OpaqueNetworkState { pub peer_id: runtime_types::sp_core::OpaquePeerId, pub external_addresses: ::std::vec::Vec< runtime_types::sp_core::offchain::OpaqueMultiaddr, >, } } pub mod sr25519 { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Public(pub [::core::primitive::u8; 32usize]); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Signature(pub [::core::primitive::u8; 64usize]); } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OpaqueMetadata(pub ::std::vec::Vec<::core::primitive::u8>); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OpaquePeerId(pub ::std::vec::Vec<::core::primitive::u8>); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Void {} } pub mod sp_finality_grandpa { use super::runtime_types; pub mod app { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Public(pub runtime_types::sp_core::ed25519::Public); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Signature(pub runtime_types::sp_core::ed25519::Signature); } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Equivocation<_0, _1> { #[codec(index = 0)] Prevote( runtime_types::finality_grandpa::Equivocation< runtime_types::sp_finality_grandpa::app::Public, runtime_types::finality_grandpa::Prevote<_0, _1>, runtime_types::sp_finality_grandpa::app::Signature, >, ), #[codec(index = 1)] Precommit( runtime_types::finality_grandpa::Equivocation< runtime_types::sp_finality_grandpa::app::Public, runtime_types::finality_grandpa::Precommit<_0, _1>, runtime_types::sp_finality_grandpa::app::Signature, >, ), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct EquivocationProof<_0, _1> { pub set_id: ::core::primitive::u64, pub equivocation: runtime_types::sp_finality_grandpa::Equivocation<_0, _1>, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OpaqueKeyOwnershipProof( pub ::std::vec::Vec<::core::primitive::u8>, ); } pub mod sp_inherents { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct CheckInherentsResult { pub okay: ::core::primitive::bool, pub fatal_error: ::core::primitive::bool, pub errors: runtime_types::sp_inherents::InherentData, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct InherentData { pub data: ::subxt::utils::KeyedVec< [::core::primitive::u8; 8usize], ::std::vec::Vec<::core::primitive::u8>, >, } } pub mod sp_mmr_primitives { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct EncodableOpaqueLeaf(pub ::std::vec::Vec<::core::primitive::u8>); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Error { #[codec(index = 0)] InvalidNumericOp, #[codec(index = 1)] Push, #[codec(index = 2)] GetRoot, #[codec(index = 3)] Commit, #[codec(index = 4)] GenerateProof, #[codec(index = 5)] Verify, #[codec(index = 6)] LeafNotFound, #[codec(index = 7)] PalletNotIncluded, #[codec(index = 8)] InvalidLeafIndex, #[codec(index = 9)] InvalidBestKnownBlock, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Proof<_0> { pub leaf_indices: ::std::vec::Vec<::core::primitive::u64>, pub leaf_count: ::core::primitive::u64, pub items: ::std::vec::Vec<_0>, } } pub mod sp_npos_elections { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ElectionScore { pub minimal_stake: ::core::primitive::u128, pub sum_stake: ::core::primitive::u128, pub sum_stake_squared: ::core::primitive::u128, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Support<_0> { pub total: ::core::primitive::u128, pub voters: ::std::vec::Vec<(_0, ::core::primitive::u128)>, } } pub mod sp_runtime { use super::runtime_types; pub mod generic { use super::runtime_types; pub mod block { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Block<_0, _1> { pub header: _0, pub extrinsics: ::std::vec::Vec<_1>, } } pub mod digest { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Digest { pub logs: ::std::vec::Vec< runtime_types::sp_runtime::generic::digest::DigestItem, >, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum DigestItem { #[codec(index = 6)] PreRuntime( [::core::primitive::u8; 4usize], ::std::vec::Vec<::core::primitive::u8>, ), #[codec(index = 4)] Consensus( [::core::primitive::u8; 4usize], ::std::vec::Vec<::core::primitive::u8>, ), #[codec(index = 5)] Seal( [::core::primitive::u8; 4usize], ::std::vec::Vec<::core::primitive::u8>, ), #[codec(index = 0)] Other(::std::vec::Vec<::core::primitive::u8>), #[codec(index = 8)] RuntimeEnvironmentUpdated, } } pub mod era { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum Era { #[codec(index = 0)] Immortal, #[codec(index = 1)] Mortal1(::core::primitive::u8), #[codec(index = 2)] Mortal2(::core::primitive::u8), #[codec(index = 3)] Mortal3(::core::primitive::u8), #[codec(index = 4)] Mortal4(::core::primitive::u8), #[codec(index = 5)] Mortal5(::core::primitive::u8), #[codec(index = 6)] Mortal6(::core::primitive::u8), #[codec(index = 7)] Mortal7(::core::primitive::u8), #[codec(index = 8)] Mortal8(::core::primitive::u8), #[codec(index = 9)] Mortal9(::core::primitive::u8), #[codec(index = 10)] Mortal10(::core::primitive::u8), #[codec(index = 11)] Mortal11(::core::primitive::u8), #[codec(index = 12)] Mortal12(::core::primitive::u8), #[codec(index = 13)] Mortal13(::core::primitive::u8), #[codec(index = 14)] Mortal14(::core::primitive::u8), #[codec(index = 15)] Mortal15(::core::primitive::u8), #[codec(index = 16)] Mortal16(::core::primitive::u8), #[codec(index = 17)] Mortal17(::core::primitive::u8), #[codec(index = 18)] Mortal18(::core::primitive::u8), #[codec(index = 19)] Mortal19(::core::primitive::u8), #[codec(index = 20)] Mortal20(::core::primitive::u8), #[codec(index = 21)] Mortal21(::core::primitive::u8), #[codec(index = 22)] Mortal22(::core::primitive::u8), #[codec(index = 23)] Mortal23(::core::primitive::u8), #[codec(index = 24)] Mortal24(::core::primitive::u8), #[codec(index = 25)] Mortal25(::core::primitive::u8), #[codec(index = 26)] Mortal26(::core::primitive::u8), #[codec(index = 27)] Mortal27(::core::primitive::u8), #[codec(index = 28)] Mortal28(::core::primitive::u8), #[codec(index = 29)] Mortal29(::core::primitive::u8), #[codec(index = 30)] Mortal30(::core::primitive::u8), #[codec(index = 31)] Mortal31(::core::primitive::u8), #[codec(index = 32)] Mortal32(::core::primitive::u8), #[codec(index = 33)] Mortal33(::core::primitive::u8), #[codec(index = 34)] Mortal34(::core::primitive::u8), #[codec(index = 35)] Mortal35(::core::primitive::u8), #[codec(index = 36)] Mortal36(::core::primitive::u8), #[codec(index = 37)] Mortal37(::core::primitive::u8), #[codec(index = 38)] Mortal38(::core::primitive::u8), #[codec(index = 39)] Mortal39(::core::primitive::u8), #[codec(index = 40)] Mortal40(::core::primitive::u8), #[codec(index = 41)] Mortal41(::core::primitive::u8), #[codec(index = 42)] Mortal42(::core::primitive::u8), #[codec(index = 43)] Mortal43(::core::primitive::u8), #[codec(index = 44)] Mortal44(::core::primitive::u8), #[codec(index = 45)] Mortal45(::core::primitive::u8), #[codec(index = 46)] Mortal46(::core::primitive::u8), #[codec(index = 47)] Mortal47(::core::primitive::u8), #[codec(index = 48)] Mortal48(::core::primitive::u8), #[codec(index = 49)] Mortal49(::core::primitive::u8), #[codec(index = 50)] Mortal50(::core::primitive::u8), #[codec(index = 51)] Mortal51(::core::primitive::u8), #[codec(index = 52)] Mortal52(::core::primitive::u8), #[codec(index = 53)] Mortal53(::core::primitive::u8), #[codec(index = 54)] Mortal54(::core::primitive::u8), #[codec(index = 55)] Mortal55(::core::primitive::u8), #[codec(index = 56)] Mortal56(::core::primitive::u8), #[codec(index = 57)] Mortal57(::core::primitive::u8), #[codec(index = 58)] Mortal58(::core::primitive::u8), #[codec(index = 59)] Mortal59(::core::primitive::u8), #[codec(index = 60)] Mortal60(::core::primitive::u8), #[codec(index = 61)] Mortal61(::core::primitive::u8), #[codec(index = 62)] Mortal62(::core::primitive::u8), #[codec(index = 63)] Mortal63(::core::primitive::u8), #[codec(index = 64)] Mortal64(::core::primitive::u8), #[codec(index = 65)] Mortal65(::core::primitive::u8), #[codec(index = 66)] Mortal66(::core::primitive::u8), #[codec(index = 67)] Mortal67(::core::primitive::u8), #[codec(index = 68)] Mortal68(::core::primitive::u8), #[codec(index = 69)] Mortal69(::core::primitive::u8), #[codec(index = 70)] Mortal70(::core::primitive::u8), #[codec(index = 71)] Mortal71(::core::primitive::u8), #[codec(index = 72)] Mortal72(::core::primitive::u8), #[codec(index = 73)] Mortal73(::core::primitive::u8), #[codec(index = 74)] Mortal74(::core::primitive::u8), #[codec(index = 75)] Mortal75(::core::primitive::u8), #[codec(index = 76)] Mortal76(::core::primitive::u8), #[codec(index = 77)] Mortal77(::core::primitive::u8), #[codec(index = 78)] Mortal78(::core::primitive::u8), #[codec(index = 79)] Mortal79(::core::primitive::u8), #[codec(index = 80)] Mortal80(::core::primitive::u8), #[codec(index = 81)] Mortal81(::core::primitive::u8), #[codec(index = 82)] Mortal82(::core::primitive::u8), #[codec(index = 83)] Mortal83(::core::primitive::u8), #[codec(index = 84)] Mortal84(::core::primitive::u8), #[codec(index = 85)] Mortal85(::core::primitive::u8), #[codec(index = 86)] Mortal86(::core::primitive::u8), #[codec(index = 87)] Mortal87(::core::primitive::u8), #[codec(index = 88)] Mortal88(::core::primitive::u8), #[codec(index = 89)] Mortal89(::core::primitive::u8), #[codec(index = 90)] Mortal90(::core::primitive::u8), #[codec(index = 91)] Mortal91(::core::primitive::u8), #[codec(index = 92)] Mortal92(::core::primitive::u8), #[codec(index = 93)] Mortal93(::core::primitive::u8), #[codec(index = 94)] Mortal94(::core::primitive::u8), #[codec(index = 95)] Mortal95(::core::primitive::u8), #[codec(index = 96)] Mortal96(::core::primitive::u8), #[codec(index = 97)] Mortal97(::core::primitive::u8), #[codec(index = 98)] Mortal98(::core::primitive::u8), #[codec(index = 99)] Mortal99(::core::primitive::u8), #[codec(index = 100)] Mortal100(::core::primitive::u8), #[codec(index = 101)] Mortal101(::core::primitive::u8), #[codec(index = 102)] Mortal102(::core::primitive::u8), #[codec(index = 103)] Mortal103(::core::primitive::u8), #[codec(index = 104)] Mortal104(::core::primitive::u8), #[codec(index = 105)] Mortal105(::core::primitive::u8), #[codec(index = 106)] Mortal106(::core::primitive::u8), #[codec(index = 107)] Mortal107(::core::primitive::u8), #[codec(index = 108)] Mortal108(::core::primitive::u8), #[codec(index = 109)] Mortal109(::core::primitive::u8), #[codec(index = 110)] Mortal110(::core::primitive::u8), #[codec(index = 111)] Mortal111(::core::primitive::u8), #[codec(index = 112)] Mortal112(::core::primitive::u8), #[codec(index = 113)] Mortal113(::core::primitive::u8), #[codec(index = 114)] Mortal114(::core::primitive::u8), #[codec(index = 115)] Mortal115(::core::primitive::u8), #[codec(index = 116)] Mortal116(::core::primitive::u8), #[codec(index = 117)] Mortal117(::core::primitive::u8), #[codec(index = 118)] Mortal118(::core::primitive::u8), #[codec(index = 119)] Mortal119(::core::primitive::u8), #[codec(index = 120)] Mortal120(::core::primitive::u8), #[codec(index = 121)] Mortal121(::core::primitive::u8), #[codec(index = 122)] Mortal122(::core::primitive::u8), #[codec(index = 123)] Mortal123(::core::primitive::u8), #[codec(index = 124)] Mortal124(::core::primitive::u8), #[codec(index = 125)] Mortal125(::core::primitive::u8), #[codec(index = 126)] Mortal126(::core::primitive::u8), #[codec(index = 127)] Mortal127(::core::primitive::u8), #[codec(index = 128)] Mortal128(::core::primitive::u8), #[codec(index = 129)] Mortal129(::core::primitive::u8), #[codec(index = 130)] Mortal130(::core::primitive::u8), #[codec(index = 131)] Mortal131(::core::primitive::u8), #[codec(index = 132)] Mortal132(::core::primitive::u8), #[codec(index = 133)] Mortal133(::core::primitive::u8), #[codec(index = 134)] Mortal134(::core::primitive::u8), #[codec(index = 135)] Mortal135(::core::primitive::u8), #[codec(index = 136)] Mortal136(::core::primitive::u8), #[codec(index = 137)] Mortal137(::core::primitive::u8), #[codec(index = 138)] Mortal138(::core::primitive::u8), #[codec(index = 139)] Mortal139(::core::primitive::u8), #[codec(index = 140)] Mortal140(::core::primitive::u8), #[codec(index = 141)] Mortal141(::core::primitive::u8), #[codec(index = 142)] Mortal142(::core::primitive::u8), #[codec(index = 143)] Mortal143(::core::primitive::u8), #[codec(index = 144)] Mortal144(::core::primitive::u8), #[codec(index = 145)] Mortal145(::core::primitive::u8), #[codec(index = 146)] Mortal146(::core::primitive::u8), #[codec(index = 147)] Mortal147(::core::primitive::u8), #[codec(index = 148)] Mortal148(::core::primitive::u8), #[codec(index = 149)] Mortal149(::core::primitive::u8), #[codec(index = 150)] Mortal150(::core::primitive::u8), #[codec(index = 151)] Mortal151(::core::primitive::u8), #[codec(index = 152)] Mortal152(::core::primitive::u8), #[codec(index = 153)] Mortal153(::core::primitive::u8), #[codec(index = 154)] Mortal154(::core::primitive::u8), #[codec(index = 155)] Mortal155(::core::primitive::u8), #[codec(index = 156)] Mortal156(::core::primitive::u8), #[codec(index = 157)] Mortal157(::core::primitive::u8), #[codec(index = 158)] Mortal158(::core::primitive::u8), #[codec(index = 159)] Mortal159(::core::primitive::u8), #[codec(index = 160)] Mortal160(::core::primitive::u8), #[codec(index = 161)] Mortal161(::core::primitive::u8), #[codec(index = 162)] Mortal162(::core::primitive::u8), #[codec(index = 163)] Mortal163(::core::primitive::u8), #[codec(index = 164)] Mortal164(::core::primitive::u8), #[codec(index = 165)] Mortal165(::core::primitive::u8), #[codec(index = 166)] Mortal166(::core::primitive::u8), #[codec(index = 167)] Mortal167(::core::primitive::u8), #[codec(index = 168)] Mortal168(::core::primitive::u8), #[codec(index = 169)] Mortal169(::core::primitive::u8), #[codec(index = 170)] Mortal170(::core::primitive::u8), #[codec(index = 171)] Mortal171(::core::primitive::u8), #[codec(index = 172)] Mortal172(::core::primitive::u8), #[codec(index = 173)] Mortal173(::core::primitive::u8), #[codec(index = 174)] Mortal174(::core::primitive::u8), #[codec(index = 175)] Mortal175(::core::primitive::u8), #[codec(index = 176)] Mortal176(::core::primitive::u8), #[codec(index = 177)] Mortal177(::core::primitive::u8), #[codec(index = 178)] Mortal178(::core::primitive::u8), #[codec(index = 179)] Mortal179(::core::primitive::u8), #[codec(index = 180)] Mortal180(::core::primitive::u8), #[codec(index = 181)] Mortal181(::core::primitive::u8), #[codec(index = 182)] Mortal182(::core::primitive::u8), #[codec(index = 183)] Mortal183(::core::primitive::u8), #[codec(index = 184)] Mortal184(::core::primitive::u8), #[codec(index = 185)] Mortal185(::core::primitive::u8), #[codec(index = 186)] Mortal186(::core::primitive::u8), #[codec(index = 187)] Mortal187(::core::primitive::u8), #[codec(index = 188)] Mortal188(::core::primitive::u8), #[codec(index = 189)] Mortal189(::core::primitive::u8), #[codec(index = 190)] Mortal190(::core::primitive::u8), #[codec(index = 191)] Mortal191(::core::primitive::u8), #[codec(index = 192)] Mortal192(::core::primitive::u8), #[codec(index = 193)] Mortal193(::core::primitive::u8), #[codec(index = 194)] Mortal194(::core::primitive::u8), #[codec(index = 195)] Mortal195(::core::primitive::u8), #[codec(index = 196)] Mortal196(::core::primitive::u8), #[codec(index = 197)] Mortal197(::core::primitive::u8), #[codec(index = 198)] Mortal198(::core::primitive::u8), #[codec(index = 199)] Mortal199(::core::primitive::u8), #[codec(index = 200)] Mortal200(::core::primitive::u8), #[codec(index = 201)] Mortal201(::core::primitive::u8), #[codec(index = 202)] Mortal202(::core::primitive::u8), #[codec(index = 203)] Mortal203(::core::primitive::u8), #[codec(index = 204)] Mortal204(::core::primitive::u8), #[codec(index = 205)] Mortal205(::core::primitive::u8), #[codec(index = 206)] Mortal206(::core::primitive::u8), #[codec(index = 207)] Mortal207(::core::primitive::u8), #[codec(index = 208)] Mortal208(::core::primitive::u8), #[codec(index = 209)] Mortal209(::core::primitive::u8), #[codec(index = 210)] Mortal210(::core::primitive::u8), #[codec(index = 211)] Mortal211(::core::primitive::u8), #[codec(index = 212)] Mortal212(::core::primitive::u8), #[codec(index = 213)] Mortal213(::core::primitive::u8), #[codec(index = 214)] Mortal214(::core::primitive::u8), #[codec(index = 215)] Mortal215(::core::primitive::u8), #[codec(index = 216)] Mortal216(::core::primitive::u8), #[codec(index = 217)] Mortal217(::core::primitive::u8), #[codec(index = 218)] Mortal218(::core::primitive::u8), #[codec(index = 219)] Mortal219(::core::primitive::u8), #[codec(index = 220)] Mortal220(::core::primitive::u8), #[codec(index = 221)] Mortal221(::core::primitive::u8), #[codec(index = 222)] Mortal222(::core::primitive::u8), #[codec(index = 223)] Mortal223(::core::primitive::u8), #[codec(index = 224)] Mortal224(::core::primitive::u8), #[codec(index = 225)] Mortal225(::core::primitive::u8), #[codec(index = 226)] Mortal226(::core::primitive::u8), #[codec(index = 227)] Mortal227(::core::primitive::u8), #[codec(index = 228)] Mortal228(::core::primitive::u8), #[codec(index = 229)] Mortal229(::core::primitive::u8), #[codec(index = 230)] Mortal230(::core::primitive::u8), #[codec(index = 231)] Mortal231(::core::primitive::u8), #[codec(index = 232)] Mortal232(::core::primitive::u8), #[codec(index = 233)] Mortal233(::core::primitive::u8), #[codec(index = 234)] Mortal234(::core::primitive::u8), #[codec(index = 235)] Mortal235(::core::primitive::u8), #[codec(index = 236)] Mortal236(::core::primitive::u8), #[codec(index = 237)] Mortal237(::core::primitive::u8), #[codec(index = 238)] Mortal238(::core::primitive::u8), #[codec(index = 239)] Mortal239(::core::primitive::u8), #[codec(index = 240)] Mortal240(::core::primitive::u8), #[codec(index = 241)] Mortal241(::core::primitive::u8), #[codec(index = 242)] Mortal242(::core::primitive::u8), #[codec(index = 243)] Mortal243(::core::primitive::u8), #[codec(index = 244)] Mortal244(::core::primitive::u8), #[codec(index = 245)] Mortal245(::core::primitive::u8), #[codec(index = 246)] Mortal246(::core::primitive::u8), #[codec(index = 247)] Mortal247(::core::primitive::u8), #[codec(index = 248)] Mortal248(::core::primitive::u8), #[codec(index = 249)] Mortal249(::core::primitive::u8), #[codec(index = 250)] Mortal250(::core::primitive::u8), #[codec(index = 251)] Mortal251(::core::primitive::u8), #[codec(index = 252)] Mortal252(::core::primitive::u8), #[codec(index = 253)] Mortal253(::core::primitive::u8), #[codec(index = 254)] Mortal254(::core::primitive::u8), #[codec(index = 255)] Mortal255(::core::primitive::u8), } } pub mod header { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Header<_0, _1> { pub parent_hash: ::subxt::utils::H256, #[codec(compact)] pub number: _0, pub state_root: ::subxt::utils::H256, pub extrinsics_root: ::subxt::utils::H256, pub digest: runtime_types::sp_runtime::generic::digest::Digest, #[codec(skip)] pub __subxt_unused_type_params: ::core::marker::PhantomData<_1>, } } pub mod unchecked_extrinsic { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct UncheckedExtrinsic<_0, _1, _2, _3>( pub ::std::vec::Vec<::core::primitive::u8>, #[codec(skip)] pub ::core::marker::PhantomData<(_1, _0, _2, _3)>, ); } } pub mod traits { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct BlakeTwo256; } pub mod transaction_validity { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum InvalidTransaction { #[codec(index = 0)] Call, #[codec(index = 1)] Payment, #[codec(index = 2)] Future, #[codec(index = 3)] Stale, #[codec(index = 4)] BadProof, #[codec(index = 5)] AncientBirthBlock, #[codec(index = 6)] ExhaustsResources, #[codec(index = 7)] Custom(::core::primitive::u8), #[codec(index = 8)] BadMandatory, #[codec(index = 9)] MandatoryValidation, #[codec(index = 10)] BadSigner, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum TransactionSource { #[codec(index = 0)] InBlock, #[codec(index = 1)] Local, #[codec(index = 2)] External, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum TransactionValidityError { # [codec (index = 0)] Invalid (runtime_types :: sp_runtime :: transaction_validity :: InvalidTransaction ,) , # [codec (index = 1)] Unknown (runtime_types :: sp_runtime :: transaction_validity :: UnknownTransaction ,) , } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum UnknownTransaction { #[codec(index = 0)] CannotLookup, #[codec(index = 1)] NoUnsignedValidator, #[codec(index = 2)] Custom(::core::primitive::u8), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ValidTransaction { pub priority: ::core::primitive::u64, pub requires: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, pub provides: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, pub longevity: ::core::primitive::u64, pub propagate: ::core::primitive::bool, } } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum DispatchError { #[codec(index = 0)] Other, #[codec(index = 1)] CannotLookup, #[codec(index = 2)] BadOrigin, #[codec(index = 3)] Module(runtime_types::sp_runtime::ModuleError), #[codec(index = 4)] ConsumerRemaining, #[codec(index = 5)] NoProviders, #[codec(index = 6)] TooManyConsumers, #[codec(index = 7)] Token(runtime_types::sp_runtime::TokenError), #[codec(index = 8)] Arithmetic(runtime_types::sp_arithmetic::ArithmeticError), #[codec(index = 9)] Transactional(runtime_types::sp_runtime::TransactionalError), #[codec(index = 10)] Exhausted, #[codec(index = 11)] Corruption, #[codec(index = 12)] Unavailable, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct DispatchErrorWithPostInfo<_0> { pub post_info: _0, pub error: runtime_types::sp_runtime::DispatchError, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct ModuleError { pub index: ::core::primitive::u8, pub error: [::core::primitive::u8; 4usize], } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum MultiSignature { #[codec(index = 0)] Ed25519(runtime_types::sp_core::ed25519::Signature), #[codec(index = 1)] Sr25519(runtime_types::sp_core::sr25519::Signature), #[codec(index = 2)] Ecdsa(runtime_types::sp_core::ecdsa::Signature), } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum TokenError { #[codec(index = 0)] NoFunds, #[codec(index = 1)] WouldDie, #[codec(index = 2)] BelowMinimum, #[codec(index = 3)] CannotCreate, #[codec(index = 4)] UnknownAsset, #[codec(index = 5)] Frozen, #[codec(index = 6)] Unsupported, } #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub enum TransactionalError { #[codec(index = 0)] LimitReached, #[codec(index = 1)] NoLayer, } } pub mod sp_session { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct MembershipProof { pub session: ::core::primitive::u32, pub trie_nodes: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, pub validator_count: ::core::primitive::u32, } } pub mod sp_staking { use super::runtime_types; pub mod offence { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OffenceDetails<_0, _1> { pub offender: _1, pub reporters: ::std::vec::Vec<_0>, } } } pub mod sp_transaction_storage_proof { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct TransactionStorageProof { pub chunk: ::std::vec::Vec<::core::primitive::u8>, pub proof: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, } } pub mod sp_version { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RuntimeVersion { pub spec_name: ::std::string::String, pub impl_name: ::std::string::String, pub authoring_version: ::core::primitive::u32, pub spec_version: ::core::primitive::u32, pub impl_version: ::core::primitive::u32, pub apis: ::std::vec::Vec<( [::core::primitive::u8; 8usize], ::core::primitive::u32, )>, pub transaction_version: ::core::primitive::u32, pub state_version: ::core::primitive::u8, } } pub mod sp_weights { use super::runtime_types; pub mod weight_v2 { use super::runtime_types; #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct Weight { #[codec(compact)] pub ref_time: ::core::primitive::u64, #[codec(compact)] pub proof_size: ::core::primitive::u64, } } #[derive( :: subxt :: ext :: codec :: CompactAs, :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct OldWeight(pub ::core::primitive::u64); #[derive( :: subxt :: ext :: codec :: Decode, :: subxt :: ext :: codec :: Encode, Debug, )] pub struct RuntimeDbWeight { pub read: ::core::primitive::u64, pub write: ::core::primitive::u64, } } } #[doc = r" The default error type returned when there is a runtime issue,"] #[doc = r" exposed here for ease of use."] pub type DispatchError = runtime_types::sp_runtime::DispatchError; pub fn constants() -> ConstantsApi { ConstantsApi } pub fn storage() -> StorageApi { StorageApi } pub fn tx() -> TransactionApi { TransactionApi } pub struct ConstantsApi; impl ConstantsApi { pub fn system(&self) -> system::constants::ConstantsApi { system::constants::ConstantsApi } pub fn utility(&self) -> utility::constants::ConstantsApi { utility::constants::ConstantsApi } pub fn babe(&self) -> babe::constants::ConstantsApi { babe::constants::ConstantsApi } pub fn timestamp(&self) -> timestamp::constants::ConstantsApi { timestamp::constants::ConstantsApi } pub fn indices(&self) -> indices::constants::ConstantsApi { indices::constants::ConstantsApi } pub fn balances(&self) -> balances::constants::ConstantsApi { balances::constants::ConstantsApi } pub fn transaction_payment( &self, ) -> transaction_payment::constants::ConstantsApi { transaction_payment::constants::ConstantsApi } pub fn election_provider_multi_phase( &self, ) -> election_provider_multi_phase::constants::ConstantsApi { election_provider_multi_phase::constants::ConstantsApi } pub fn staking(&self) -> staking::constants::ConstantsApi { staking::constants::ConstantsApi } pub fn democracy(&self) -> democracy::constants::ConstantsApi { democracy::constants::ConstantsApi } pub fn elections(&self) -> elections::constants::ConstantsApi { elections::constants::ConstantsApi } pub fn grandpa(&self) -> grandpa::constants::ConstantsApi { grandpa::constants::ConstantsApi } pub fn treasury(&self) -> treasury::constants::ConstantsApi { treasury::constants::ConstantsApi } pub fn contracts(&self) -> contracts::constants::ConstantsApi { contracts::constants::ConstantsApi } pub fn im_online(&self) -> im_online::constants::ConstantsApi { im_online::constants::ConstantsApi } pub fn identity(&self) -> identity::constants::ConstantsApi { identity::constants::ConstantsApi } pub fn society(&self) -> society::constants::ConstantsApi { society::constants::ConstantsApi } pub fn recovery(&self) -> recovery::constants::ConstantsApi { recovery::constants::ConstantsApi } pub fn vesting(&self) -> vesting::constants::ConstantsApi { vesting::constants::ConstantsApi } pub fn scheduler(&self) -> scheduler::constants::ConstantsApi { scheduler::constants::ConstantsApi } pub fn proxy(&self) -> proxy::constants::ConstantsApi { proxy::constants::ConstantsApi } pub fn multisig(&self) -> multisig::constants::ConstantsApi { multisig::constants::ConstantsApi } pub fn bounties(&self) -> bounties::constants::ConstantsApi { bounties::constants::ConstantsApi } pub fn tips(&self) -> tips::constants::ConstantsApi { tips::constants::ConstantsApi } pub fn assets(&self) -> assets::constants::ConstantsApi { assets::constants::ConstantsApi } pub fn lottery(&self) -> lottery::constants::ConstantsApi { lottery::constants::ConstantsApi } pub fn nis(&self) -> nis::constants::ConstantsApi { nis::constants::ConstantsApi } pub fn uniques(&self) -> uniques::constants::ConstantsApi { uniques::constants::ConstantsApi } pub fn nfts(&self) -> nfts::constants::ConstantsApi { nfts::constants::ConstantsApi } pub fn voter_list(&self) -> voter_list::constants::ConstantsApi { voter_list::constants::ConstantsApi } pub fn state_trie_migration( &self, ) -> state_trie_migration::constants::ConstantsApi { state_trie_migration::constants::ConstantsApi } pub fn child_bounties(&self) -> child_bounties::constants::ConstantsApi { child_bounties::constants::ConstantsApi } pub fn referenda(&self) -> referenda::constants::ConstantsApi { referenda::constants::ConstantsApi } pub fn conviction_voting(&self) -> conviction_voting::constants::ConstantsApi { conviction_voting::constants::ConstantsApi } pub fn alliance(&self) -> alliance::constants::ConstantsApi { alliance::constants::ConstantsApi } pub fn nomination_pools(&self) -> nomination_pools::constants::ConstantsApi { nomination_pools::constants::ConstantsApi } pub fn ranked_polls(&self) -> ranked_polls::constants::ConstantsApi { ranked_polls::constants::ConstantsApi } pub fn fast_unstake(&self) -> fast_unstake::constants::ConstantsApi { fast_unstake::constants::ConstantsApi } pub fn message_queue(&self) -> message_queue::constants::ConstantsApi { message_queue::constants::ConstantsApi } } pub struct StorageApi; impl StorageApi { pub fn system(&self) -> system::storage::StorageApi { system::storage::StorageApi } pub fn babe(&self) -> babe::storage::StorageApi { babe::storage::StorageApi } pub fn timestamp(&self) -> timestamp::storage::StorageApi { timestamp::storage::StorageApi } pub fn authorship(&self) -> authorship::storage::StorageApi { authorship::storage::StorageApi } pub fn indices(&self) -> indices::storage::StorageApi { indices::storage::StorageApi } pub fn balances(&self) -> balances::storage::StorageApi { balances::storage::StorageApi } pub fn transaction_payment(&self) -> transaction_payment::storage::StorageApi { transaction_payment::storage::StorageApi } pub fn election_provider_multi_phase( &self, ) -> election_provider_multi_phase::storage::StorageApi { election_provider_multi_phase::storage::StorageApi } pub fn staking(&self) -> staking::storage::StorageApi { staking::storage::StorageApi } pub fn session(&self) -> session::storage::StorageApi { session::storage::StorageApi } pub fn democracy(&self) -> democracy::storage::StorageApi { democracy::storage::StorageApi } pub fn council(&self) -> council::storage::StorageApi { council::storage::StorageApi } pub fn technical_committee(&self) -> technical_committee::storage::StorageApi { technical_committee::storage::StorageApi } pub fn elections(&self) -> elections::storage::StorageApi { elections::storage::StorageApi } pub fn technical_membership(&self) -> technical_membership::storage::StorageApi { technical_membership::storage::StorageApi } pub fn grandpa(&self) -> grandpa::storage::StorageApi { grandpa::storage::StorageApi } pub fn treasury(&self) -> treasury::storage::StorageApi { treasury::storage::StorageApi } pub fn contracts(&self) -> contracts::storage::StorageApi { contracts::storage::StorageApi } pub fn sudo(&self) -> sudo::storage::StorageApi { sudo::storage::StorageApi } pub fn im_online(&self) -> im_online::storage::StorageApi { im_online::storage::StorageApi } pub fn authority_discovery(&self) -> authority_discovery::storage::StorageApi { authority_discovery::storage::StorageApi } pub fn offences(&self) -> offences::storage::StorageApi { offences::storage::StorageApi } pub fn randomness_collective_flip( &self, ) -> randomness_collective_flip::storage::StorageApi { randomness_collective_flip::storage::StorageApi } pub fn identity(&self) -> identity::storage::StorageApi { identity::storage::StorageApi } pub fn society(&self) -> society::storage::StorageApi { society::storage::StorageApi } pub fn recovery(&self) -> recovery::storage::StorageApi { recovery::storage::StorageApi } pub fn vesting(&self) -> vesting::storage::StorageApi { vesting::storage::StorageApi } pub fn scheduler(&self) -> scheduler::storage::StorageApi { scheduler::storage::StorageApi } pub fn preimage(&self) -> preimage::storage::StorageApi { preimage::storage::StorageApi } pub fn proxy(&self) -> proxy::storage::StorageApi { proxy::storage::StorageApi } pub fn multisig(&self) -> multisig::storage::StorageApi { multisig::storage::StorageApi } pub fn bounties(&self) -> bounties::storage::StorageApi { bounties::storage::StorageApi } pub fn tips(&self) -> tips::storage::StorageApi { tips::storage::StorageApi } pub fn assets(&self) -> assets::storage::StorageApi { assets::storage::StorageApi } pub fn mmr(&self) -> mmr::storage::StorageApi { mmr::storage::StorageApi } pub fn lottery(&self) -> lottery::storage::StorageApi { lottery::storage::StorageApi } pub fn nis(&self) -> nis::storage::StorageApi { nis::storage::StorageApi } pub fn uniques(&self) -> uniques::storage::StorageApi { uniques::storage::StorageApi } pub fn nfts(&self) -> nfts::storage::StorageApi { nfts::storage::StorageApi } pub fn transaction_storage(&self) -> transaction_storage::storage::StorageApi { transaction_storage::storage::StorageApi } pub fn voter_list(&self) -> voter_list::storage::StorageApi { voter_list::storage::StorageApi } pub fn state_trie_migration(&self) -> state_trie_migration::storage::StorageApi { state_trie_migration::storage::StorageApi } pub fn child_bounties(&self) -> child_bounties::storage::StorageApi { child_bounties::storage::StorageApi } pub fn referenda(&self) -> referenda::storage::StorageApi { referenda::storage::StorageApi } pub fn conviction_voting(&self) -> conviction_voting::storage::StorageApi { conviction_voting::storage::StorageApi } pub fn whitelist(&self) -> whitelist::storage::StorageApi { whitelist::storage::StorageApi } pub fn alliance_motion(&self) -> alliance_motion::storage::StorageApi { alliance_motion::storage::StorageApi } pub fn alliance(&self) -> alliance::storage::StorageApi { alliance::storage::StorageApi } pub fn nomination_pools(&self) -> nomination_pools::storage::StorageApi { nomination_pools::storage::StorageApi } pub fn ranked_polls(&self) -> ranked_polls::storage::StorageApi { ranked_polls::storage::StorageApi } pub fn ranked_collective(&self) -> ranked_collective::storage::StorageApi { ranked_collective::storage::StorageApi } pub fn fast_unstake(&self) -> fast_unstake::storage::StorageApi { fast_unstake::storage::StorageApi } pub fn message_queue(&self) -> message_queue::storage::StorageApi { message_queue::storage::StorageApi } pub fn pov(&self) -> pov::storage::StorageApi { pov::storage::StorageApi } } pub struct TransactionApi; impl TransactionApi { pub fn system(&self) -> system::calls::TransactionApi { system::calls::TransactionApi } pub fn utility(&self) -> utility::calls::TransactionApi { utility::calls::TransactionApi } pub fn babe(&self) -> babe::calls::TransactionApi { babe::calls::TransactionApi } pub fn timestamp(&self) -> timestamp::calls::TransactionApi { timestamp::calls::TransactionApi } pub fn indices(&self) -> indices::calls::TransactionApi { indices::calls::TransactionApi } pub fn balances(&self) -> balances::calls::TransactionApi { balances::calls::TransactionApi } pub fn election_provider_multi_phase( &self, ) -> election_provider_multi_phase::calls::TransactionApi { election_provider_multi_phase::calls::TransactionApi } pub fn staking(&self) -> staking::calls::TransactionApi { staking::calls::TransactionApi } pub fn session(&self) -> session::calls::TransactionApi { session::calls::TransactionApi } pub fn democracy(&self) -> democracy::calls::TransactionApi { democracy::calls::TransactionApi } pub fn council(&self) -> council::calls::TransactionApi { council::calls::TransactionApi } pub fn technical_committee(&self) -> technical_committee::calls::TransactionApi { technical_committee::calls::TransactionApi } pub fn elections(&self) -> elections::calls::TransactionApi { elections::calls::TransactionApi } pub fn technical_membership( &self, ) -> technical_membership::calls::TransactionApi { technical_membership::calls::TransactionApi } pub fn grandpa(&self) -> grandpa::calls::TransactionApi { grandpa::calls::TransactionApi } pub fn treasury(&self) -> treasury::calls::TransactionApi { treasury::calls::TransactionApi } pub fn contracts(&self) -> contracts::calls::TransactionApi { contracts::calls::TransactionApi } pub fn sudo(&self) -> sudo::calls::TransactionApi { sudo::calls::TransactionApi } pub fn im_online(&self) -> im_online::calls::TransactionApi { im_online::calls::TransactionApi } pub fn identity(&self) -> identity::calls::TransactionApi { identity::calls::TransactionApi } pub fn society(&self) -> society::calls::TransactionApi { society::calls::TransactionApi } pub fn recovery(&self) -> recovery::calls::TransactionApi { recovery::calls::TransactionApi } pub fn vesting(&self) -> vesting::calls::TransactionApi { vesting::calls::TransactionApi } pub fn scheduler(&self) -> scheduler::calls::TransactionApi { scheduler::calls::TransactionApi } pub fn preimage(&self) -> preimage::calls::TransactionApi { preimage::calls::TransactionApi } pub fn proxy(&self) -> proxy::calls::TransactionApi { proxy::calls::TransactionApi } pub fn multisig(&self) -> multisig::calls::TransactionApi { multisig::calls::TransactionApi } pub fn bounties(&self) -> bounties::calls::TransactionApi { bounties::calls::TransactionApi } pub fn tips(&self) -> tips::calls::TransactionApi { tips::calls::TransactionApi } pub fn assets(&self) -> assets::calls::TransactionApi { assets::calls::TransactionApi } pub fn lottery(&self) -> lottery::calls::TransactionApi { lottery::calls::TransactionApi } pub fn nis(&self) -> nis::calls::TransactionApi { nis::calls::TransactionApi } pub fn uniques(&self) -> uniques::calls::TransactionApi { uniques::calls::TransactionApi } pub fn nfts(&self) -> nfts::calls::TransactionApi { nfts::calls::TransactionApi } pub fn transaction_storage(&self) -> transaction_storage::calls::TransactionApi { transaction_storage::calls::TransactionApi } pub fn voter_list(&self) -> voter_list::calls::TransactionApi { voter_list::calls::TransactionApi } pub fn state_trie_migration( &self, ) -> state_trie_migration::calls::TransactionApi { state_trie_migration::calls::TransactionApi } pub fn child_bounties(&self) -> child_bounties::calls::TransactionApi { child_bounties::calls::TransactionApi } pub fn referenda(&self) -> referenda::calls::TransactionApi { referenda::calls::TransactionApi } pub fn remark(&self) -> remark::calls::TransactionApi { remark::calls::TransactionApi } pub fn root_testing(&self) -> root_testing::calls::TransactionApi { root_testing::calls::TransactionApi } pub fn conviction_voting(&self) -> conviction_voting::calls::TransactionApi { conviction_voting::calls::TransactionApi } pub fn whitelist(&self) -> whitelist::calls::TransactionApi { whitelist::calls::TransactionApi } pub fn alliance_motion(&self) -> alliance_motion::calls::TransactionApi { alliance_motion::calls::TransactionApi } pub fn alliance(&self) -> alliance::calls::TransactionApi { alliance::calls::TransactionApi } pub fn nomination_pools(&self) -> nomination_pools::calls::TransactionApi { nomination_pools::calls::TransactionApi } pub fn ranked_polls(&self) -> ranked_polls::calls::TransactionApi { ranked_polls::calls::TransactionApi } pub fn ranked_collective(&self) -> ranked_collective::calls::TransactionApi { ranked_collective::calls::TransactionApi } pub fn fast_unstake(&self) -> fast_unstake::calls::TransactionApi { fast_unstake::calls::TransactionApi } pub fn message_queue(&self) -> message_queue::calls::TransactionApi { message_queue::calls::TransactionApi } pub fn pov(&self) -> pov::calls::TransactionApi { pov::calls::TransactionApi } } #[doc = r" check whether the Client you are using is aligned with the statically generated codegen."] pub fn validate_codegen>( client: &C, ) -> Result<(), ::subxt::error::MetadataError> { let runtime_metadata_hash = client.metadata().metadata_hash(&PALLETS); if runtime_metadata_hash != [ 120u8, 75u8, 113u8, 254u8, 107u8, 133u8, 213u8, 42u8, 124u8, 22u8, 61u8, 128u8, 4u8, 45u8, 51u8, 62u8, 131u8, 185u8, 247u8, 123u8, 23u8, 95u8, 53u8, 149u8, 113u8, 11u8, 201u8, 144u8, 109u8, 109u8, 165u8, 189u8, ] { Err(::subxt::error::MetadataError::IncompatibleMetadata) } else { Ok(()) } } #[doc = r" Runtime API."] pub mod runtime_api { use super::root_mod; use super::runtime_types; #[doc = " The `Core` runtime api that every Substrate runtime needs to implement."] pub mod Core { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Returns the version of the runtime."] pub fn version() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "Core_version", result, [0; 32], ) } pub type version_target = runtime_types::sp_version::RuntimeVersion; #[doc = " Execute the given block."] pub fn execute_block( block : runtime_types :: sp_runtime :: generic :: block :: Block < runtime_types :: sp_runtime :: generic :: header :: Header < :: core :: primitive :: u32 , runtime_types :: sp_runtime :: traits :: BlakeTwo256 > , runtime_types :: sp_runtime :: generic :: unchecked_extrinsic :: UncheckedExtrinsic < :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , runtime_types :: kitchensink_runtime :: RuntimeCall , runtime_types :: sp_runtime :: MultiSignature , (runtime_types :: frame_system :: extensions :: check_non_zero_sender :: CheckNonZeroSender , runtime_types :: frame_system :: extensions :: check_spec_version :: CheckSpecVersion , runtime_types :: frame_system :: extensions :: check_tx_version :: CheckTxVersion , runtime_types :: frame_system :: extensions :: check_genesis :: CheckGenesis , runtime_types :: frame_system :: extensions :: check_mortality :: CheckMortality , runtime_types :: frame_system :: extensions :: check_nonce :: CheckNonce , runtime_types :: frame_system :: extensions :: check_weight :: CheckWeight , runtime_types :: pallet_asset_tx_payment :: ChargeAssetTxPayment ,) > >, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); block.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "Core_execute_block", result, [0; 32], ) } pub type execute_block_target = (); #[doc = " Initialize a block with the given header."] pub fn initialize_block( header: runtime_types::sp_runtime::generic::header::Header< ::core::primitive::u32, runtime_types::sp_runtime::traits::BlakeTwo256, >, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); header.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "Core_initialize_block", result, [0; 32], ) } pub type initialize_block_target = (); } #[doc = " The `Metadata` api trait that returns metadata for the runtime."] pub mod Metadata { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Returns the metadata of a runtime."] pub fn metadata() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "Metadata_metadata", result, [0; 32], ) } pub type metadata_target = runtime_types::sp_core::OpaqueMetadata; #[doc = " Returns the metadata at a given version."] pub fn metadata_at_version( version: ::core::primitive::u32, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); version.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "Metadata_metadata_at_version", result, [0; 32], ) } pub type metadata_at_version_target = ::core::option::Option; #[doc = " Returns the supported versions of metadata."] #[doc = ""] #[doc = " This can be used to call `metadata_at_version`."] pub fn metadata_versions() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "Metadata_metadata_versions", result, [0; 32], ) } pub type metadata_versions_target = ::std::vec::Vec<::core::primitive::u32>; } #[doc = " The `BlockBuilder` api trait that provides the required functionality for building a block."] pub mod BlockBuilder { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Apply the given extrinsic."] #[doc = ""] #[doc = " Returns an inclusion outcome which specifies if this extrinsic is included in"] #[doc = " this block or not."] pub fn apply_extrinsic( extrinsic : runtime_types :: sp_runtime :: generic :: unchecked_extrinsic :: UncheckedExtrinsic < :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , runtime_types :: kitchensink_runtime :: RuntimeCall , runtime_types :: sp_runtime :: MultiSignature , (runtime_types :: frame_system :: extensions :: check_non_zero_sender :: CheckNonZeroSender , runtime_types :: frame_system :: extensions :: check_spec_version :: CheckSpecVersion , runtime_types :: frame_system :: extensions :: check_tx_version :: CheckTxVersion , runtime_types :: frame_system :: extensions :: check_genesis :: CheckGenesis , runtime_types :: frame_system :: extensions :: check_mortality :: CheckMortality , runtime_types :: frame_system :: extensions :: check_nonce :: CheckNonce , runtime_types :: frame_system :: extensions :: check_weight :: CheckWeight , runtime_types :: pallet_asset_tx_payment :: ChargeAssetTxPayment ,) >, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); extrinsic.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "BlockBuilder_apply_extrinsic", result, [0; 32], ) } pub type apply_extrinsic_target = ::core::result::Result< ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, runtime_types::sp_runtime::transaction_validity::TransactionValidityError, >; #[doc = " Finish the current block."] pub fn finalize_block() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "BlockBuilder_finalize_block", result, [0; 32], ) } pub type finalize_block_target = runtime_types::sp_runtime::generic::header::Header< ::core::primitive::u32, runtime_types::sp_runtime::traits::BlakeTwo256, >; #[doc = " Generate inherent extrinsics. The inherent data will vary from chain to chain."] pub fn inherent_extrinsics( inherent: runtime_types::sp_inherents::InherentData, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); inherent.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "BlockBuilder_inherent_extrinsics", result, [0; 32], ) } pub type inherent_extrinsics_target = :: std :: vec :: Vec < runtime_types :: sp_runtime :: generic :: unchecked_extrinsic :: UncheckedExtrinsic < :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , runtime_types :: kitchensink_runtime :: RuntimeCall , runtime_types :: sp_runtime :: MultiSignature , (runtime_types :: frame_system :: extensions :: check_non_zero_sender :: CheckNonZeroSender , runtime_types :: frame_system :: extensions :: check_spec_version :: CheckSpecVersion , runtime_types :: frame_system :: extensions :: check_tx_version :: CheckTxVersion , runtime_types :: frame_system :: extensions :: check_genesis :: CheckGenesis , runtime_types :: frame_system :: extensions :: check_mortality :: CheckMortality , runtime_types :: frame_system :: extensions :: check_nonce :: CheckNonce , runtime_types :: frame_system :: extensions :: check_weight :: CheckWeight , runtime_types :: pallet_asset_tx_payment :: ChargeAssetTxPayment ,) > > ; #[doc = " Check that the inherents are valid. The inherent data will vary from chain to chain."] pub fn check_inherents( block : runtime_types :: sp_runtime :: generic :: block :: Block < runtime_types :: sp_runtime :: generic :: header :: Header < :: core :: primitive :: u32 , runtime_types :: sp_runtime :: traits :: BlakeTwo256 > , runtime_types :: sp_runtime :: generic :: unchecked_extrinsic :: UncheckedExtrinsic < :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , runtime_types :: kitchensink_runtime :: RuntimeCall , runtime_types :: sp_runtime :: MultiSignature , (runtime_types :: frame_system :: extensions :: check_non_zero_sender :: CheckNonZeroSender , runtime_types :: frame_system :: extensions :: check_spec_version :: CheckSpecVersion , runtime_types :: frame_system :: extensions :: check_tx_version :: CheckTxVersion , runtime_types :: frame_system :: extensions :: check_genesis :: CheckGenesis , runtime_types :: frame_system :: extensions :: check_mortality :: CheckMortality , runtime_types :: frame_system :: extensions :: check_nonce :: CheckNonce , runtime_types :: frame_system :: extensions :: check_weight :: CheckWeight , runtime_types :: pallet_asset_tx_payment :: ChargeAssetTxPayment ,) > >, data: runtime_types::sp_inherents::InherentData, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); block.encode_to(&mut result); data.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "BlockBuilder_check_inherents", result, [0; 32], ) } pub type check_inherents_target = runtime_types::sp_inherents::CheckInherentsResult; } #[doc = " The `TaggedTransactionQueue` api trait for interfering with the transaction queue."] pub mod TaggedTransactionQueue { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Validate the transaction."] #[doc = ""] #[doc = " This method is invoked by the transaction pool to learn details about given transaction."] #[doc = " The implementation should make sure to verify the correctness of the transaction"] #[doc = " against current state. The given `block_hash` corresponds to the hash of the block"] #[doc = " that is used as current state."] #[doc = ""] #[doc = " Note that this call may be performed by the pool multiple times and transactions"] #[doc = " might be verified in any possible order."] pub fn validate_transaction( source : runtime_types :: sp_runtime :: transaction_validity :: TransactionSource, tx : runtime_types :: sp_runtime :: generic :: unchecked_extrinsic :: UncheckedExtrinsic < :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , runtime_types :: kitchensink_runtime :: RuntimeCall , runtime_types :: sp_runtime :: MultiSignature , (runtime_types :: frame_system :: extensions :: check_non_zero_sender :: CheckNonZeroSender , runtime_types :: frame_system :: extensions :: check_spec_version :: CheckSpecVersion , runtime_types :: frame_system :: extensions :: check_tx_version :: CheckTxVersion , runtime_types :: frame_system :: extensions :: check_genesis :: CheckGenesis , runtime_types :: frame_system :: extensions :: check_mortality :: CheckMortality , runtime_types :: frame_system :: extensions :: check_nonce :: CheckNonce , runtime_types :: frame_system :: extensions :: check_weight :: CheckWeight , runtime_types :: pallet_asset_tx_payment :: ChargeAssetTxPayment ,) >, block_hash: ::subxt::utils::H256, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); source.encode_to(&mut result); tx.encode_to(&mut result); block_hash.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "TaggedTransactionQueue_validate_transaction", result, [0; 32], ) } pub type validate_transaction_target = ::core::result::Result< runtime_types::sp_runtime::transaction_validity::ValidTransaction, runtime_types::sp_runtime::transaction_validity::TransactionValidityError, >; } #[doc = " The offchain worker api."] pub mod OffchainWorkerApi { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Starts the off-chain task for given block header."] pub fn offchain_worker( header: runtime_types::sp_runtime::generic::header::Header< ::core::primitive::u32, runtime_types::sp_runtime::traits::BlakeTwo256, >, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); header.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "OffchainWorkerApi_offchain_worker", result, [0; 32], ) } pub type offchain_worker_target = (); } #[doc = " APIs for integrating the GRANDPA finality gadget into runtimes."] #[doc = " This should be implemented on the runtime side."] #[doc = ""] #[doc = " This is primarily used for negotiating authority-set changes for the"] #[doc = " gadget. GRANDPA uses a signaling model of changing authority sets:"] #[doc = " changes should be signaled with a delay of N blocks, and then automatically"] #[doc = " applied in the runtime after those N blocks have passed."] #[doc = ""] #[doc = " The consensus protocol will coordinate the handoff externally."] pub mod GrandpaApi { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Get the current GRANDPA authorities and weights. This should not change except"] #[doc = " for when changes are scheduled and the corresponding delay has passed."] #[doc = ""] #[doc = " When called at block B, it will return the set of authorities that should be"] #[doc = " used to finalize descendants of this block (B+1, B+2, ...). The block B itself"] #[doc = " is finalized by the authorities from block B-1."] pub fn grandpa_authorities() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "GrandpaApi_grandpa_authorities", result, [0; 32], ) } pub type grandpa_authorities_target = ::std::vec::Vec<( runtime_types::sp_finality_grandpa::app::Public, ::core::primitive::u64, )>; #[doc = " Submits an unsigned extrinsic to report an equivocation. The caller"] #[doc = " must provide the equivocation proof and a key ownership proof"] #[doc = " (should be obtained using `generate_key_ownership_proof`). The"] #[doc = " extrinsic will be unsigned and should only be accepted for local"] #[doc = " authorship (not to be broadcast to the network). This method returns"] #[doc = " `None` when creation of the extrinsic fails, e.g. if equivocation"] #[doc = " reporting is disabled for the given runtime (i.e. this method is"] #[doc = " hardcoded to return `None`). Only useful in an offchain context."] pub fn submit_report_equivocation_unsigned_extrinsic( equivocation_proof: runtime_types::sp_finality_grandpa::EquivocationProof< ::subxt::utils::H256, ::core::primitive::u32, >, key_owner_proof : runtime_types :: sp_finality_grandpa :: OpaqueKeyOwnershipProof, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); equivocation_proof.encode_to(&mut result); key_owner_proof.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "GrandpaApi_submit_report_equivocation_unsigned_extrinsic", result, [0; 32], ) } pub type submit_report_equivocation_unsigned_extrinsic_target = ::core::option::Option<()>; #[doc = " Generates a proof of key ownership for the given authority in the"] #[doc = " given set. An example usage of this module is coupled with the"] #[doc = " session historical module to prove that a given authority key is"] #[doc = " tied to a given staking identity during a specific session. Proofs"] #[doc = " of key ownership are necessary for submitting equivocation reports."] #[doc = " NOTE: even though the API takes a `set_id` as parameter the current"] #[doc = " implementations ignore this parameter and instead rely on this"] #[doc = " method being called at the correct block height, i.e. any point at"] #[doc = " which the given set id is live on-chain. Future implementations will"] #[doc = " instead use indexed data through an offchain worker, not requiring"] #[doc = " older states to be available."] pub fn generate_key_ownership_proof( set_id: ::core::primitive::u64, authority_id: runtime_types::sp_finality_grandpa::app::Public, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); set_id.encode_to(&mut result); authority_id.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "GrandpaApi_generate_key_ownership_proof", result, [0; 32], ) } pub type generate_key_ownership_proof_target = ::core::option::Option< runtime_types::sp_finality_grandpa::OpaqueKeyOwnershipProof, >; #[doc = " Get current GRANDPA authority set id."] pub fn current_set_id() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "GrandpaApi_current_set_id", result, [0; 32], ) } pub type current_set_id_target = ::core::primitive::u64; } #[doc = " Runtime api for accessing information about nomination pools."] pub mod NominationPoolsApi { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Returns the pending rewards for the member that the AccountId was given for."] pub fn pending_rewards( member: ::subxt::utils::AccountId32, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); member.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "NominationPoolsApi_pending_rewards", result, [0; 32], ) } pub type pending_rewards_target = ::core::primitive::u128; } #[doc = " API necessary for block authorship with BABE."] pub mod BabeApi { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Return the configuration for BABE."] pub fn configuration() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "BabeApi_configuration", result, [0; 32], ) } pub type configuration_target = runtime_types::sp_consensus_babe::BabeConfiguration; #[doc = " Returns the slot that started the current epoch."] pub fn current_epoch_start() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "BabeApi_current_epoch_start", result, [0; 32], ) } pub type current_epoch_start_target = runtime_types::sp_consensus_slots::Slot; #[doc = " Returns information regarding the current epoch."] pub fn current_epoch() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "BabeApi_current_epoch", result, [0; 32], ) } pub type current_epoch_target = runtime_types::sp_consensus_babe::Epoch; #[doc = " Returns information regarding the next epoch (which was already"] #[doc = " previously announced)."] pub fn next_epoch() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "BabeApi_next_epoch", result, [0; 32], ) } pub type next_epoch_target = runtime_types::sp_consensus_babe::Epoch; #[doc = " Generates a proof of key ownership for the given authority in the"] #[doc = " current epoch. An example usage of this module is coupled with the"] #[doc = " session historical module to prove that a given authority key is"] #[doc = " tied to a given staking identity during a specific session. Proofs"] #[doc = " of key ownership are necessary for submitting equivocation reports."] #[doc = " NOTE: even though the API takes a `slot` as parameter the current"] #[doc = " implementations ignores this parameter and instead relies on this"] #[doc = " method being called at the correct block height, i.e. any point at"] #[doc = " which the epoch for the given slot is live on-chain. Future"] #[doc = " implementations will instead use indexed data through an offchain"] #[doc = " worker, not requiring older states to be available."] pub fn generate_key_ownership_proof( slot: runtime_types::sp_consensus_slots::Slot, authority_id: runtime_types::sp_consensus_babe::app::Public, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); slot.encode_to(&mut result); authority_id.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "BabeApi_generate_key_ownership_proof", result, [0; 32], ) } pub type generate_key_ownership_proof_target = ::core::option::Option< runtime_types::sp_consensus_babe::OpaqueKeyOwnershipProof, >; #[doc = " Submits an unsigned extrinsic to report an equivocation. The caller"] #[doc = " must provide the equivocation proof and a key ownership proof"] #[doc = " (should be obtained using `generate_key_ownership_proof`). The"] #[doc = " extrinsic will be unsigned and should only be accepted for local"] #[doc = " authorship (not to be broadcast to the network). This method returns"] #[doc = " `None` when creation of the extrinsic fails, e.g. if equivocation"] #[doc = " reporting is disabled for the given runtime (i.e. this method is"] #[doc = " hardcoded to return `None`). Only useful in an offchain context."] pub fn submit_report_equivocation_unsigned_extrinsic( equivocation_proof: runtime_types::sp_consensus_slots::EquivocationProof< runtime_types::sp_runtime::generic::header::Header< ::core::primitive::u32, runtime_types::sp_runtime::traits::BlakeTwo256, >, runtime_types::sp_consensus_babe::app::Public, >, key_owner_proof : runtime_types :: sp_consensus_babe :: OpaqueKeyOwnershipProof, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); equivocation_proof.encode_to(&mut result); key_owner_proof.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "BabeApi_submit_report_equivocation_unsigned_extrinsic", result, [0; 32], ) } pub type submit_report_equivocation_unsigned_extrinsic_target = ::core::option::Option<()>; } #[doc = " The authority discovery api."] #[doc = ""] #[doc = " This api is used by the `client/authority-discovery` module to retrieve identifiers"] #[doc = " of the current and next authority set."] pub mod AuthorityDiscoveryApi { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Retrieve authority identifiers of the current and next authority set."] pub fn authorities() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "AuthorityDiscoveryApi_authorities", result, [0; 32], ) } pub type authorities_target = ::std::vec::Vec; } #[doc = " The API to query account nonce (aka transaction index)."] pub mod AccountNonceApi { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Get current account nonce of given `AccountId`."] pub fn account_nonce( account: ::subxt::utils::AccountId32, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); account.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "AccountNonceApi_account_nonce", result, [0; 32], ) } pub type account_nonce_target = ::core::primitive::u32; } #[doc = " The API used to dry-run contract interactions."] pub mod ContractsApi { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Perform a call from a specified account to a given contract."] #[doc = ""] #[doc = " See [`crate::Pallet::bare_call`]."] pub fn call( origin: ::subxt::utils::AccountId32, dest: ::subxt::utils::AccountId32, value: ::core::primitive::u128, gas_limit: ::core::option::Option< runtime_types::sp_weights::weight_v2::Weight, >, storage_deposit_limit: ::core::option::Option<::core::primitive::u128>, input_data: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); origin.encode_to(&mut result); dest.encode_to(&mut result); value.encode_to(&mut result); gas_limit.encode_to(&mut result); storage_deposit_limit.encode_to(&mut result); input_data.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "ContractsApi_call", result, [0; 32], ) } pub type call_target = runtime_types::pallet_contracts_primitives::ContractResult< ::core::result::Result< runtime_types::pallet_contracts_primitives::ExecReturnValue, runtime_types::sp_runtime::DispatchError, >, ::core::primitive::u128, >; #[doc = " Instantiate a new contract."] #[doc = ""] #[doc = " See `[crate::Pallet::bare_instantiate]`."] pub fn instantiate( origin: ::subxt::utils::AccountId32, value: ::core::primitive::u128, gas_limit: ::core::option::Option< runtime_types::sp_weights::weight_v2::Weight, >, storage_deposit_limit: ::core::option::Option<::core::primitive::u128>, code: runtime_types::pallet_contracts_primitives::Code< ::subxt::utils::H256, >, data: ::std::vec::Vec<::core::primitive::u8>, salt: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); origin.encode_to(&mut result); value.encode_to(&mut result); gas_limit.encode_to(&mut result); storage_deposit_limit.encode_to(&mut result); code.encode_to(&mut result); data.encode_to(&mut result); salt.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "ContractsApi_instantiate", result, [0; 32], ) } pub type instantiate_target = runtime_types :: pallet_contracts_primitives :: ContractResult < :: core :: result :: Result < runtime_types :: pallet_contracts_primitives :: InstantiateReturnValue < :: subxt :: utils :: AccountId32 > , runtime_types :: sp_runtime :: DispatchError > , :: core :: primitive :: u128 > ; #[doc = " Upload new code without instantiating a contract from it."] #[doc = ""] #[doc = " See [`crate::Pallet::bare_upload_code`]."] pub fn upload_code( origin: ::subxt::utils::AccountId32, code: ::std::vec::Vec<::core::primitive::u8>, storage_deposit_limit: ::core::option::Option<::core::primitive::u128>, determinism: runtime_types::pallet_contracts::wasm::Determinism, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); origin.encode_to(&mut result); code.encode_to(&mut result); storage_deposit_limit.encode_to(&mut result); determinism.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "ContractsApi_upload_code", result, [0; 32], ) } pub type upload_code_target = ::core::result::Result< runtime_types::pallet_contracts_primitives::CodeUploadReturnValue< ::subxt::utils::H256, ::core::primitive::u128, >, runtime_types::sp_runtime::DispatchError, >; #[doc = " Query a given storage key in a given contract."] #[doc = ""] #[doc = " Returns `Ok(Some(Vec))` if the storage value exists under the given key in the"] #[doc = " specified account and `Ok(None)` if it doesn't. If the account specified by the address"] #[doc = " doesn't exist, or doesn't have a contract then `Err` is returned."] pub fn get_storage( address: ::subxt::utils::AccountId32, key: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); address.encode_to(&mut result); key.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "ContractsApi_get_storage", result, [0; 32], ) } pub type get_storage_target = ::core::result::Result< ::core::option::Option<::std::vec::Vec<::core::primitive::u8>>, runtime_types::pallet_contracts_primitives::ContractAccessError, >; } pub mod TransactionPaymentApi { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; pub fn query_info( uxt : runtime_types :: sp_runtime :: generic :: unchecked_extrinsic :: UncheckedExtrinsic < :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , runtime_types :: kitchensink_runtime :: RuntimeCall , runtime_types :: sp_runtime :: MultiSignature , (runtime_types :: frame_system :: extensions :: check_non_zero_sender :: CheckNonZeroSender , runtime_types :: frame_system :: extensions :: check_spec_version :: CheckSpecVersion , runtime_types :: frame_system :: extensions :: check_tx_version :: CheckTxVersion , runtime_types :: frame_system :: extensions :: check_genesis :: CheckGenesis , runtime_types :: frame_system :: extensions :: check_mortality :: CheckMortality , runtime_types :: frame_system :: extensions :: check_nonce :: CheckNonce , runtime_types :: frame_system :: extensions :: check_weight :: CheckWeight , runtime_types :: pallet_asset_tx_payment :: ChargeAssetTxPayment ,) >, len: ::core::primitive::u32, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); uxt.encode_to(&mut result); len.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "TransactionPaymentApi_query_info", result, [0; 32], ) } pub type query_info_target = runtime_types::pallet_transaction_payment::types::RuntimeDispatchInfo< ::core::primitive::u128, runtime_types::sp_weights::weight_v2::Weight, >; pub fn query_fee_details( uxt : runtime_types :: sp_runtime :: generic :: unchecked_extrinsic :: UncheckedExtrinsic < :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u32 > , runtime_types :: kitchensink_runtime :: RuntimeCall , runtime_types :: sp_runtime :: MultiSignature , (runtime_types :: frame_system :: extensions :: check_non_zero_sender :: CheckNonZeroSender , runtime_types :: frame_system :: extensions :: check_spec_version :: CheckSpecVersion , runtime_types :: frame_system :: extensions :: check_tx_version :: CheckTxVersion , runtime_types :: frame_system :: extensions :: check_genesis :: CheckGenesis , runtime_types :: frame_system :: extensions :: check_mortality :: CheckMortality , runtime_types :: frame_system :: extensions :: check_nonce :: CheckNonce , runtime_types :: frame_system :: extensions :: check_weight :: CheckWeight , runtime_types :: pallet_asset_tx_payment :: ChargeAssetTxPayment ,) >, len: ::core::primitive::u32, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); uxt.encode_to(&mut result); len.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "TransactionPaymentApi_query_fee_details", result, [0; 32], ) } pub type query_fee_details_target = runtime_types::pallet_transaction_payment::types::FeeDetails< ::core::primitive::u128, >; pub fn query_weight_to_fee( weight: runtime_types::sp_weights::weight_v2::Weight, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); weight.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "TransactionPaymentApi_query_weight_to_fee", result, [0; 32], ) } pub type query_weight_to_fee_target = ::core::primitive::u128; pub fn query_length_to_fee( length: ::core::primitive::u32, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); length.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "TransactionPaymentApi_query_length_to_fee", result, [0; 32], ) } pub type query_length_to_fee_target = ::core::primitive::u128; } pub mod TransactionPaymentCallApi { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Query information of a dispatch class, weight, and fee of a given encoded `Call`."] pub fn query_call_info( call: runtime_types::kitchensink_runtime::RuntimeCall, len: ::core::primitive::u32, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); call.encode_to(&mut result); len.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "TransactionPaymentCallApi_query_call_info", result, [0; 32], ) } pub type query_call_info_target = runtime_types::pallet_transaction_payment::types::RuntimeDispatchInfo< ::core::primitive::u128, runtime_types::sp_weights::weight_v2::Weight, >; #[doc = " Query fee details of a given encoded `Call`."] pub fn query_call_fee_details( call: runtime_types::kitchensink_runtime::RuntimeCall, len: ::core::primitive::u32, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); call.encode_to(&mut result); len.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "TransactionPaymentCallApi_query_call_fee_details", result, [0; 32], ) } pub type query_call_fee_details_target = runtime_types::pallet_transaction_payment::types::FeeDetails< ::core::primitive::u128, >; #[doc = " Query the output of the current `WeightToFee` given some input."] pub fn query_weight_to_fee( weight: runtime_types::sp_weights::weight_v2::Weight, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); weight.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "TransactionPaymentCallApi_query_weight_to_fee", result, [0; 32], ) } pub type query_weight_to_fee_target = ::core::primitive::u128; #[doc = " Query the output of the current `LengthToFee` given some input."] pub fn query_length_to_fee( length: ::core::primitive::u32, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); length.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "TransactionPaymentCallApi_query_length_to_fee", result, [0; 32], ) } pub type query_length_to_fee_target = ::core::primitive::u128; } #[doc = " API to interact with MMR pallet."] pub mod MmrApi { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Return the on-chain MMR root hash."] pub fn mmr_root() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "MmrApi_mmr_root", result, [0; 32], ) } pub type mmr_root_target = ::core::result::Result< ::subxt::utils::H256, runtime_types::sp_mmr_primitives::Error, >; #[doc = " Return the number of MMR blocks in the chain."] pub fn mmr_leaf_count() -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); ::subxt::runtime_api::RuntimeAPIPayload::new( "MmrApi_mmr_leaf_count", result, [0; 32], ) } pub type mmr_leaf_count_target = ::core::result::Result< ::core::primitive::u64, runtime_types::sp_mmr_primitives::Error, >; #[doc = " Generate MMR proof for a series of block numbers. If `best_known_block_number = Some(n)`,"] #[doc = " use historical MMR state at given block height `n`. Else, use current MMR state."] pub fn generate_proof( block_numbers: ::std::vec::Vec<::core::primitive::u32>, best_known_block_number: ::core::option::Option<::core::primitive::u32>, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); block_numbers.encode_to(&mut result); best_known_block_number.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "MmrApi_generate_proof", result, [0; 32], ) } pub type generate_proof_target = ::core::result::Result< ( ::std::vec::Vec< runtime_types::sp_mmr_primitives::EncodableOpaqueLeaf, >, runtime_types::sp_mmr_primitives::Proof<::subxt::utils::H256>, ), runtime_types::sp_mmr_primitives::Error, >; #[doc = " Verify MMR proof against on-chain MMR for a batch of leaves."] #[doc = ""] #[doc = " Note this function will use on-chain MMR root hash and check if the proof matches the hash."] #[doc = " Note, the leaves should be sorted such that corresponding leaves and leaf indices have the"] #[doc = " same position in both the `leaves` vector and the `leaf_indices` vector contained in the [Proof]"] pub fn verify_proof( leaves: ::std::vec::Vec< runtime_types::sp_mmr_primitives::EncodableOpaqueLeaf, >, proof: runtime_types::sp_mmr_primitives::Proof<::subxt::utils::H256>, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); leaves.encode_to(&mut result); proof.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "MmrApi_verify_proof", result, [0; 32], ) } pub type verify_proof_target = ::core::result::Result<(), runtime_types::sp_mmr_primitives::Error>; #[doc = " Verify MMR proof against given root hash for a batch of leaves."] #[doc = ""] #[doc = " Note this function does not require any on-chain storage - the"] #[doc = " proof is verified against given MMR root hash."] #[doc = ""] #[doc = " Note, the leaves should be sorted such that corresponding leaves and leaf indices have the"] #[doc = " same position in both the `leaves` vector and the `leaf_indices` vector contained in the [Proof]"] pub fn verify_proof_stateless( root: ::subxt::utils::H256, leaves: ::std::vec::Vec< runtime_types::sp_mmr_primitives::EncodableOpaqueLeaf, >, proof: runtime_types::sp_mmr_primitives::Proof<::subxt::utils::H256>, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); root.encode_to(&mut result); leaves.encode_to(&mut result); proof.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "MmrApi_verify_proof_stateless", result, [0; 32], ) } pub type verify_proof_stateless_target = ::core::result::Result<(), runtime_types::sp_mmr_primitives::Error>; } #[doc = " Session keys runtime api."] pub mod SessionKeys { use super::root_mod; use super::runtime_types; use ::subxt::ext::codec::Encode; #[doc = " Generate a set of session keys with optionally using the given seed."] #[doc = " The keys should be stored within the keystore exposed via runtime"] #[doc = " externalities."] #[doc = ""] #[doc = " The seed needs to be a valid `utf8` string."] #[doc = ""] #[doc = " Returns the concatenated SCALE encoded public keys."] pub fn generate_session_keys( seed: ::core::option::Option<::std::vec::Vec<::core::primitive::u8>>, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); seed.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "SessionKeys_generate_session_keys", result, [0; 32], ) } pub type generate_session_keys_target = ::std::vec::Vec<::core::primitive::u8>; #[doc = " Decode the given public session keys."] #[doc = ""] #[doc = " Returns the list of public raw public keys + key type."] pub fn decode_session_keys( encoded: ::std::vec::Vec<::core::primitive::u8>, ) -> ::subxt::runtime_api::RuntimeAPIPayload { let mut result = Vec::new(); encoded.encode_to(&mut result); ::subxt::runtime_api::RuntimeAPIPayload::new( "SessionKeys_decode_session_keys", result, [0; 32], ) } pub type decode_session_keys_target = ::core::option::Option< ::std::vec::Vec<( ::std::vec::Vec<::core::primitive::u8>, runtime_types::sp_core::crypto::KeyTypeId, )>, >; } } }