diff --git a/cli/enjin.scale b/cli/enjin.scale new file mode 100644 index 0000000000..b1299e0fad --- /dev/null +++ b/cli/enjin.scale @@ -0,0 +1,69039 @@ +[ + 1635018093, + { + "V14": { + "types": { + "types": [ + { + "id": 0, + "type": { + "path": [ + "sp_core", + "crypto", + "AccountId32" + ], + "def": { + "composite": { + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ] + } + } + } + }, + { + "id": 1, + "type": { + "def": { + "array": { + "len": 32, + "type": 2 + } + } + } + }, + { + "id": 2, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 3, + "type": { + "path": [ + "frame_system", + "AccountInfo" + ], + "params": [ + { + "name": "Index", + "type": 4 + }, + { + "name": "AccountData", + "type": 5 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "nonce", + "type": 4, + "typeName": "Index" + }, + { + "name": "consumers", + "type": 4, + "typeName": "RefCount" + }, + { + "name": "providers", + "type": 4, + "typeName": "RefCount" + }, + { + "name": "sufficients", + "type": 4, + "typeName": "RefCount" + }, + { + "name": "data", + "type": 5, + "typeName": "AccountData" + } + ] + } + } + } + }, + { + "id": 4, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 5, + "type": { + "path": [ + "pallet_balances", + "types", + "AccountData" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "free", + "type": 6, + "typeName": "Balance" + }, + { + "name": "reserved", + "type": 6, + "typeName": "Balance" + }, + { + "name": "frozen", + "type": 6, + "typeName": "Balance" + }, + { + "name": "flags", + "type": 7, + "typeName": "ExtraFlags" + } + ] + } + } + } + }, + { + "id": 6, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 7, + "type": { + "path": [ + "pallet_balances", + "types", + "ExtraFlags" + ], + "def": { + "composite": { + "fields": [ + { + "type": 6, + "typeName": "u128" + } + ] + } + } + } + }, + { + "id": 8, + "type": { + "path": [ + "frame_support", + "dispatch", + "PerDispatchClass" + ], + "params": [ + { + "name": "T", + "type": 9 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "normal", + "type": 9, + "typeName": "T" + }, + { + "name": "operational", + "type": 9, + "typeName": "T" + }, + { + "name": "mandatory", + "type": 9, + "typeName": "T" + } + ] + } + } + } + }, + { + "id": 9, + "type": { + "path": [ + "sp_weights", + "weight_v2", + "Weight" + ], + "def": { + "composite": { + "fields": [ + { + "name": "ref_time", + "type": 10, + "typeName": "u64" + }, + { + "name": "proof_size", + "type": 10, + "typeName": "u64" + } + ] + } + } + } + }, + { + "id": 10, + "type": { + "def": { + "compact": { + "type": 11 + } + } + } + }, + { + "id": 11, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 12, + "type": { + "path": [ + "primitive_types", + "H256" + ], + "def": { + "composite": { + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ] + } + } + } + }, + { + "id": 13, + "type": { + "def": { + "sequence": { + "type": 2 + } + } + } + }, + { + "id": 14, + "type": { + "path": [ + "sp_runtime", + "generic", + "digest", + "Digest" + ], + "def": { + "composite": { + "fields": [ + { + "name": "logs", + "type": 15, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 15, + "type": { + "def": { + "sequence": { + "type": 16 + } + } + } + }, + { + "id": 16, + "type": { + "path": [ + "sp_runtime", + "generic", + "digest", + "DigestItem" + ], + "def": { + "variant": { + "variants": [ + { + "name": "PreRuntime", + "fields": [ + { + "type": 17, + "typeName": "ConsensusEngineId" + }, + { + "type": 13, + "typeName": "Vec" + } + ], + "index": 6 + }, + { + "name": "Consensus", + "fields": [ + { + "type": 17, + "typeName": "ConsensusEngineId" + }, + { + "type": 13, + "typeName": "Vec" + } + ], + "index": 4 + }, + { + "name": "Seal", + "fields": [ + { + "type": 17, + "typeName": "ConsensusEngineId" + }, + { + "type": 13, + "typeName": "Vec" + } + ], + "index": 5 + }, + { + "name": "Other", + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ], + "index": 0 + }, + { + "name": "RuntimeEnvironmentUpdated", + "index": 8 + } + ] + } + } + } + }, + { + "id": 17, + "type": { + "def": { + "array": { + "len": 4, + "type": 2 + } + } + } + }, + { + "id": 18, + "type": { + "def": { + "sequence": { + "type": 19 + } + } + } + }, + { + "id": 19, + "type": { + "path": [ + "frame_system", + "EventRecord" + ], + "params": [ + { + "name": "E", + "type": 20 + }, + { + "name": "T", + "type": 12 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "phase", + "type": 651, + "typeName": "Phase" + }, + { + "name": "event", + "type": 20, + "typeName": "E" + }, + { + "name": "topics", + "type": 652, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 20, + "type": { + "path": [ + "enjin_runtime", + "RuntimeEvent" + ], + "def": { + "variant": { + "variants": [ + { + "name": "System", + "fields": [ + { + "type": 21, + "typeName": "frame_system::Event" + } + ], + "index": 0 + }, + { + "name": "Balances", + "fields": [ + { + "type": 30, + "typeName": "pallet_balances::Event" + } + ], + "index": 6 + }, + { + "name": "Offences", + "fields": [ + { + "type": 32, + "typeName": "pallet_offences::Event" + } + ], + "index": 7 + }, + { + "name": "ElectionProviderMultiPhase", + "fields": [ + { + "type": 34, + "typeName": "pallet_election_provider_multi_phase::Event" + } + ], + "index": 8 + }, + { + "name": "Staking", + "fields": [ + { + "type": 41, + "typeName": "pallet_staking::Event" + } + ], + "index": 9 + }, + { + "name": "Session", + "fields": [ + { + "type": 46, + "typeName": "pallet_session::Event" + } + ], + "index": 10 + }, + { + "name": "Grandpa", + "fields": [ + { + "type": 47, + "typeName": "pallet_grandpa::Event" + } + ], + "index": 11 + }, + { + "name": "Treasury", + "fields": [ + { + "type": 52, + "typeName": "pallet_treasury::Event" + } + ], + "index": 12 + }, + { + "name": "TransactionPayment", + "fields": [ + { + "type": 53, + "typeName": "pallet_transaction_payment::Event" + } + ], + "index": 13 + }, + { + "name": "Sudo", + "fields": [ + { + "type": 54, + "typeName": "pallet_sudo::Event" + } + ], + "index": 14 + }, + { + "name": "ImOnline", + "fields": [ + { + "type": 57, + "typeName": "pallet_im_online::Event" + } + ], + "index": 15 + }, + { + "name": "VoterList", + "fields": [ + { + "type": 66, + "typeName": "pallet_bags_list::Event" + } + ], + "index": 17 + }, + { + "name": "NominationPools", + "fields": [ + { + "type": 67, + "typeName": "pallet_nomination_pools::Event" + } + ], + "index": 18 + }, + { + "name": "StakeExchange", + "fields": [ + { + "type": 79, + "typeName": "pallet_stake_exchange::Event" + } + ], + "index": 19 + }, + { + "name": "Utility", + "fields": [ + { + "type": 87, + "typeName": "pallet_utility::Event" + } + ], + "index": 20 + }, + { + "name": "Multisig", + "fields": [ + { + "type": 88, + "typeName": "pallet_multisig::Event" + } + ], + "index": 21 + }, + { + "name": "ParaInclusion", + "fields": [ + { + "type": 90, + "typeName": "parachains_inclusion::Event" + } + ], + "index": 53 + }, + { + "name": "Paras", + "fields": [ + { + "type": 102, + "typeName": "parachains_paras::Event" + } + ], + "index": 56 + }, + { + "name": "Hrmp", + "fields": [ + { + "type": 103, + "typeName": "parachains_hrmp::Event" + } + ], + "index": 60 + }, + { + "name": "ParasDisputes", + "fields": [ + { + "type": 105, + "typeName": "parachains_disputes::Event" + } + ], + "index": 62 + }, + { + "name": "Registrar", + "fields": [ + { + "type": 109, + "typeName": "paras_registrar::Event" + } + ], + "index": 70 + }, + { + "name": "Slots", + "fields": [ + { + "type": 110, + "typeName": "slots::Event" + } + ], + "index": 71 + }, + { + "name": "Auctions", + "fields": [ + { + "type": 111, + "typeName": "auctions::Event" + } + ], + "index": 72 + }, + { + "name": "Crowdloan", + "fields": [ + { + "type": 112, + "typeName": "crowdloan::Event" + } + ], + "index": 73 + }, + { + "name": "XcmPallet", + "fields": [ + { + "type": 113, + "typeName": "pallet_xcm::Event" + } + ], + "index": 99 + }, + { + "name": "MessageQueue", + "fields": [ + { + "type": 167, + "typeName": "pallet_message_queue::Event" + } + ], + "index": 110 + }, + { + "name": "AssignedSlots", + "fields": [ + { + "type": 171, + "typeName": "assigned_slots::Event" + } + ], + "index": 251 + }, + { + "name": "ValidatorManager", + "fields": [ + { + "type": 172, + "typeName": "pallet_validator_manager::Event" + } + ], + "index": 252 + }, + { + "name": "MultiTokens", + "fields": [ + { + "type": 173, + "typeName": "pallet_multi_tokens::Event" + } + ], + "index": 253 + }, + { + "name": "FuelTanks", + "fields": [ + { + "type": 249, + "typeName": "pallet_fuel_tanks::Event" + } + ], + "index": 254 + }, + { + "name": "ExtrinsicPause", + "fields": [ + { + "type": 270, + "typeName": "pallet_extrinsic_pause::Event" + } + ], + "index": 255 + }, + { + "name": "Marketplace", + "fields": [ + { + "type": 274, + "typeName": "pallet_marketplace::Event" + } + ], + "index": 249 + }, + { + "name": "Scheduler", + "fields": [ + { + "type": 284, + "typeName": "pallet_scheduler::Event" + } + ], + "index": 100 + }, + { + "name": "Preimage", + "fields": [ + { + "type": 287, + "typeName": "pallet_preimage::Event" + } + ], + "index": 101 + }, + { + "name": "ConvictionVoting", + "fields": [ + { + "type": 288, + "typeName": "pallet_conviction_voting::Event" + } + ], + "index": 102 + }, + { + "name": "Referenda", + "fields": [ + { + "type": 289, + "typeName": "pallet_referenda::Event" + } + ], + "index": 103 + }, + { + "name": "Whitelist", + "fields": [ + { + "type": 640, + "typeName": "pallet_whitelist::Event" + } + ], + "index": 105 + }, + { + "name": "FellowshipCollective", + "fields": [ + { + "type": 645, + "typeName": "pallet_ranked_collective::Event" + } + ], + "index": 106 + }, + { + "name": "FellowshipReferenda", + "fields": [ + { + "type": 648, + "typeName": "pallet_referenda::Event" + } + ], + "index": 107 + }, + { + "name": "Identity", + "fields": [ + { + "type": 649, + "typeName": "pallet_identity::Event" + } + ], + "index": 108 + }, + { + "name": "VoteManager", + "fields": [ + { + "type": 650, + "typeName": "pallet_vote_manager::Event" + } + ], + "index": 109 + } + ] + } + } + } + }, + { + "id": 21, + "type": { + "path": [ + "frame_system", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ExtrinsicSuccess", + "fields": [ + { + "name": "dispatch_info", + "type": 22, + "typeName": "DispatchInfo" + } + ], + "index": 0, + "docs": [ + "An extrinsic completed successfully." + ] + }, + { + "name": "ExtrinsicFailed", + "fields": [ + { + "name": "dispatch_error", + "type": 25, + "typeName": "DispatchError" + }, + { + "name": "dispatch_info", + "type": 22, + "typeName": "DispatchInfo" + } + ], + "index": 1, + "docs": [ + "An extrinsic failed." + ] + }, + { + "name": "CodeUpdated", + "index": 2, + "docs": [ + "`:code` was updated." + ] + }, + { + "name": "NewAccount", + "fields": [ + { + "name": "account", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 3, + "docs": [ + "A new account was created." + ] + }, + { + "name": "KilledAccount", + "fields": [ + { + "name": "account", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 4, + "docs": [ + "An account was reaped." + ] + }, + { + "name": "Remarked", + "fields": [ + { + "name": "sender", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "hash", + "type": 12, + "typeName": "T::Hash" + } + ], + "index": 5, + "docs": [ + "On on-chain remark happened." + ] + } + ] + } + }, + "docs": [ + "Event for the System pallet." + ] + } + }, + { + "id": 22, + "type": { + "path": [ + "frame_support", + "dispatch", + "DispatchInfo" + ], + "def": { + "composite": { + "fields": [ + { + "name": "weight", + "type": 9, + "typeName": "Weight" + }, + { + "name": "class", + "type": 23, + "typeName": "DispatchClass" + }, + { + "name": "pays_fee", + "type": 24, + "typeName": "Pays" + } + ] + } + } + } + }, + { + "id": 23, + "type": { + "path": [ + "frame_support", + "dispatch", + "DispatchClass" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Normal", + "index": 0 + }, + { + "name": "Operational", + "index": 1 + }, + { + "name": "Mandatory", + "index": 2 + } + ] + } + } + } + }, + { + "id": 24, + "type": { + "path": [ + "frame_support", + "dispatch", + "Pays" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Yes", + "index": 0 + }, + { + "name": "No", + "index": 1 + } + ] + } + } + } + }, + { + "id": 25, + "type": { + "path": [ + "sp_runtime", + "DispatchError" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Other", + "index": 0 + }, + { + "name": "CannotLookup", + "index": 1 + }, + { + "name": "BadOrigin", + "index": 2 + }, + { + "name": "Module", + "fields": [ + { + "type": 26, + "typeName": "ModuleError" + } + ], + "index": 3 + }, + { + "name": "ConsumerRemaining", + "index": 4 + }, + { + "name": "NoProviders", + "index": 5 + }, + { + "name": "TooManyConsumers", + "index": 6 + }, + { + "name": "Token", + "fields": [ + { + "type": 27, + "typeName": "TokenError" + } + ], + "index": 7 + }, + { + "name": "Arithmetic", + "fields": [ + { + "type": 28, + "typeName": "ArithmeticError" + } + ], + "index": 8 + }, + { + "name": "Transactional", + "fields": [ + { + "type": 29, + "typeName": "TransactionalError" + } + ], + "index": 9 + }, + { + "name": "Exhausted", + "index": 10 + }, + { + "name": "Corruption", + "index": 11 + }, + { + "name": "Unavailable", + "index": 12 + }, + { + "name": "RootNotAllowed", + "index": 13 + } + ] + } + } + } + }, + { + "id": 26, + "type": { + "path": [ + "sp_runtime", + "ModuleError" + ], + "def": { + "composite": { + "fields": [ + { + "name": "index", + "type": 2, + "typeName": "u8" + }, + { + "name": "error", + "type": 17, + "typeName": "[u8; MAX_MODULE_ERROR_ENCODED_SIZE]" + } + ] + } + } + } + }, + { + "id": 27, + "type": { + "path": [ + "sp_runtime", + "TokenError" + ], + "def": { + "variant": { + "variants": [ + { + "name": "FundsUnavailable", + "index": 0 + }, + { + "name": "OnlyProvider", + "index": 1 + }, + { + "name": "BelowMinimum", + "index": 2 + }, + { + "name": "CannotCreate", + "index": 3 + }, + { + "name": "UnknownAsset", + "index": 4 + }, + { + "name": "Frozen", + "index": 5 + }, + { + "name": "Unsupported", + "index": 6 + }, + { + "name": "CannotCreateHold", + "index": 7 + }, + { + "name": "NotExpendable", + "index": 8 + }, + { + "name": "Blocked", + "index": 9 + } + ] + } + } + } + }, + { + "id": 28, + "type": { + "path": [ + "sp_arithmetic", + "ArithmeticError" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Underflow", + "index": 0 + }, + { + "name": "Overflow", + "index": 1 + }, + { + "name": "DivisionByZero", + "index": 2 + } + ] + } + } + } + }, + { + "id": 29, + "type": { + "path": [ + "sp_runtime", + "TransactionalError" + ], + "def": { + "variant": { + "variants": [ + { + "name": "LimitReached", + "index": 0 + }, + { + "name": "NoLayer", + "index": 1 + } + ] + } + } + } + }, + { + "id": 30, + "type": { + "path": [ + "pallet_balances", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Endowed", + "fields": [ + { + "name": "account", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "free_balance", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 0, + "docs": [ + "An account was created with some free balance." + ] + }, + { + "name": "DustLost", + "fields": [ + { + "name": "account", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 1, + "docs": [ + "An account was removed whose balance was non-zero but below ExistentialDeposit,", + "resulting in an outright loss." + ] + }, + { + "name": "Transfer", + "fields": [ + { + "name": "from", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "to", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 2, + "docs": [ + "Transfer succeeded." + ] + }, + { + "name": "BalanceSet", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "free", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 3, + "docs": [ + "A balance was set by root." + ] + }, + { + "name": "Reserved", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 4, + "docs": [ + "Some balance was reserved (moved from free to reserved)." + ] + }, + { + "name": "Unreserved", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 5, + "docs": [ + "Some balance was unreserved (moved from reserved to free)." + ] + }, + { + "name": "ReserveRepatriated", + "fields": [ + { + "name": "from", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "to", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + }, + { + "name": "destination_status", + "type": 31, + "typeName": "Status" + } + ], + "index": 6, + "docs": [ + "Some balance was moved from the reserve of the first account to the second account.", + "Final argument indicates the destination balance type." + ] + }, + { + "name": "Deposit", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 7, + "docs": [ + "Some amount was deposited (e.g. for transaction fees)." + ] + }, + { + "name": "Withdraw", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 8, + "docs": [ + "Some amount was withdrawn from the account (e.g. for transaction fees)." + ] + }, + { + "name": "Slashed", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 9, + "docs": [ + "Some amount was removed from the account (e.g. for misbehavior)." + ] + }, + { + "name": "Minted", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 10, + "docs": [ + "Some amount was minted into an account." + ] + }, + { + "name": "Burned", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 11, + "docs": [ + "Some amount was burned from an account." + ] + }, + { + "name": "Suspended", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 12, + "docs": [ + "Some amount was suspended from an account (it can be restored later)." + ] + }, + { + "name": "Restored", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 13, + "docs": [ + "Some amount was restored into an account." + ] + }, + { + "name": "Upgraded", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 14, + "docs": [ + "An account was upgraded." + ] + }, + { + "name": "Issued", + "fields": [ + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 15, + "docs": [ + "Total issuance was increased by `amount`, creating a credit to be balanced." + ] + }, + { + "name": "Rescinded", + "fields": [ + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 16, + "docs": [ + "Total issuance was decreased by `amount`, creating a debt to be balanced." + ] + }, + { + "name": "Locked", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 17, + "docs": [ + "Some balance was locked." + ] + }, + { + "name": "Unlocked", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 18, + "docs": [ + "Some balance was unlocked." + ] + }, + { + "name": "Frozen", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 19, + "docs": [ + "Some balance was frozen." + ] + }, + { + "name": "Thawed", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 20, + "docs": [ + "Some balance was thawed." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 31, + "type": { + "path": [ + "frame_support", + "traits", + "tokens", + "misc", + "BalanceStatus" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Free", + "index": 0 + }, + { + "name": "Reserved", + "index": 1 + } + ] + } + } + } + }, + { + "id": 32, + "type": { + "path": [ + "pallet_offences", + "pallet", + "Event" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Offence", + "fields": [ + { + "name": "kind", + "type": 33, + "typeName": "Kind" + }, + { + "name": "timeslot", + "type": 13, + "typeName": "OpaqueTimeSlot" + } + ], + "index": 0, + "docs": [ + "There is an offence reported of the given `kind` happened at the `session_index` and", + "(kind-specific) time slot. This event is not deposited for duplicate slashes.", + "\\[kind, timeslot\\]." + ] + } + ] + } + }, + "docs": [ + "Events type." + ] + } + }, + { + "id": 33, + "type": { + "def": { + "array": { + "len": 16, + "type": 2 + } + } + } + }, + { + "id": 34, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "SolutionStored", + "fields": [ + { + "name": "compute", + "type": 35, + "typeName": "ElectionCompute" + }, + { + "name": "origin", + "type": 36, + "typeName": "Option" + }, + { + "name": "prev_ejected", + "type": 37, + "typeName": "bool" + } + ], + "index": 0, + "docs": [ + "A solution was stored with the given compute.", + "", + "The `origin` indicates the origin of the solution. If `origin` is `Some(AccountId)`,", + "the stored solution was submited in the signed phase by a miner with the `AccountId`.", + "Otherwise, the solution was stored either during the unsigned phase or by", + "`T::ForceOrigin`. The `bool` is `true` when a previous solution was ejected to make", + "room for this one." + ] + }, + { + "name": "ElectionFinalized", + "fields": [ + { + "name": "compute", + "type": 35, + "typeName": "ElectionCompute" + }, + { + "name": "score", + "type": 38, + "typeName": "ElectionScore" + } + ], + "index": 1, + "docs": [ + "The election has been finalized, with the given computation and score." + ] + }, + { + "name": "ElectionFailed", + "index": 2, + "docs": [ + "An election failed.", + "", + "Not much can be said about which computes failed in the process." + ] + }, + { + "name": "Rewarded", + "fields": [ + { + "name": "account", + "type": 0, + "typeName": "::AccountId" + }, + { + "name": "value", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 3, + "docs": [ + "An account has been rewarded for their signed submission being finalized." + ] + }, + { + "name": "Slashed", + "fields": [ + { + "name": "account", + "type": 0, + "typeName": "::AccountId" + }, + { + "name": "value", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 4, + "docs": [ + "An account has been slashed for submitting an invalid signed submission." + ] + }, + { + "name": "PhaseTransitioned", + "fields": [ + { + "name": "from", + "type": 39, + "typeName": "Phase" + }, + { + "name": "to", + "type": 39, + "typeName": "Phase" + }, + { + "name": "round", + "type": 4, + "typeName": "u32" + } + ], + "index": 5, + "docs": [ + "There was a phase transition in a given round." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 35, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "ElectionCompute" + ], + "def": { + "variant": { + "variants": [ + { + "name": "OnChain", + "index": 0 + }, + { + "name": "Signed", + "index": 1 + }, + { + "name": "Unsigned", + "index": 2 + }, + { + "name": "Fallback", + "index": 3 + }, + { + "name": "Emergency", + "index": 4 + } + ] + } + } + } + }, + { + "id": 36, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 0 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 0 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 37, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 38, + "type": { + "path": [ + "sp_npos_elections", + "ElectionScore" + ], + "def": { + "composite": { + "fields": [ + { + "name": "minimal_stake", + "type": 6, + "typeName": "ExtendedBalance" + }, + { + "name": "sum_stake", + "type": 6, + "typeName": "ExtendedBalance" + }, + { + "name": "sum_stake_squared", + "type": 6, + "typeName": "ExtendedBalance" + } + ] + } + } + } + }, + { + "id": 39, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "Phase" + ], + "params": [ + { + "name": "Bn", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Off", + "index": 0 + }, + { + "name": "Signed", + "index": 1 + }, + { + "name": "Unsigned", + "fields": [ + { + "type": 40, + "typeName": "(bool, Bn)" + } + ], + "index": 2 + }, + { + "name": "Emergency", + "index": 3 + } + ] + } + } + } + }, + { + "id": 40, + "type": { + "def": { + "tuple": [ + 37, + 4 + ] + } + } + }, + { + "id": 41, + "type": { + "path": [ + "pallet_staking", + "pallet", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "EraPaid", + "fields": [ + { + "name": "era_index", + "type": 4, + "typeName": "EraIndex" + }, + { + "name": "validator_payout", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "remainder", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 0, + "docs": [ + "The era payout has been set; the first balance is the validator-payout; the second is", + "the remainder from the maximum amount of reward." + ] + }, + { + "name": "Rewarded", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 1, + "docs": [ + "The nominator has been rewarded by this amount." + ] + }, + { + "name": "Slashed", + "fields": [ + { + "name": "staker", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 2, + "docs": [ + "A staker (validator or nominator) has been slashed by the given amount." + ] + }, + { + "name": "SlashReported", + "fields": [ + { + "name": "validator", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "fraction", + "type": 42, + "typeName": "Perbill" + }, + { + "name": "slash_era", + "type": 4, + "typeName": "EraIndex" + } + ], + "index": 3, + "docs": [ + "A slash for the given validator, for the given percentage of their stake, at the given", + "era as been reported." + ] + }, + { + "name": "OldSlashingReportDiscarded", + "fields": [ + { + "name": "session_index", + "type": 4, + "typeName": "SessionIndex" + } + ], + "index": 4, + "docs": [ + "An old slashing report from a prior era was discarded because it could", + "not be processed." + ] + }, + { + "name": "StakersElected", + "index": 5, + "docs": [ + "A new set of stakers was elected." + ] + }, + { + "name": "Bonded", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 6, + "docs": [ + "An account has bonded this amount. \\[stash, amount\\]", + "", + "NOTE: This event is only emitted when funds are bonded via a dispatchable. Notably,", + "it will not be emitted for staking rewards when they are added to stake." + ] + }, + { + "name": "Unbonded", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 7, + "docs": [ + "An account has unbonded this amount." + ] + }, + { + "name": "Withdrawn", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 8, + "docs": [ + "An account has called `withdraw_unbonded` and removed unbonding chunks worth `Balance`", + "from the unlocking queue." + ] + }, + { + "name": "Kicked", + "fields": [ + { + "name": "nominator", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 9, + "docs": [ + "A nominator has been kicked from a validator." + ] + }, + { + "name": "StakingElectionFailed", + "index": 10, + "docs": [ + "The election failed. No new era is planned." + ] + }, + { + "name": "Chilled", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 11, + "docs": [ + "An account has stopped participating as either a validator or nominator." + ] + }, + { + "name": "PayoutStarted", + "fields": [ + { + "name": "era_index", + "type": 4, + "typeName": "EraIndex" + }, + { + "name": "validator_stash", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 12, + "docs": [ + "The stakers' rewards are getting paid." + ] + }, + { + "name": "ValidatorPrefsSet", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "prefs", + "type": 43, + "typeName": "ValidatorPrefs" + } + ], + "index": 13, + "docs": [ + "A validator has set their preferences." + ] + }, + { + "name": "ForceEra", + "fields": [ + { + "name": "mode", + "type": 45, + "typeName": "Forcing" + } + ], + "index": 14, + "docs": [ + "A new force era mode was set." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 42, + "type": { + "path": [ + "sp_arithmetic", + "per_things", + "Perbill" + ], + "def": { + "composite": { + "fields": [ + { + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 43, + "type": { + "path": [ + "pallet_staking", + "ValidatorPrefs" + ], + "def": { + "composite": { + "fields": [ + { + "name": "commission", + "type": 44, + "typeName": "Perbill" + }, + { + "name": "blocked", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 44, + "type": { + "def": { + "compact": { + "type": 42 + } + } + } + }, + { + "id": 45, + "type": { + "path": [ + "pallet_staking", + "Forcing" + ], + "def": { + "variant": { + "variants": [ + { + "name": "NotForcing", + "index": 0 + }, + { + "name": "ForceNew", + "index": 1 + }, + { + "name": "ForceNone", + "index": 2 + }, + { + "name": "ForceAlways", + "index": 3 + } + ] + } + } + } + }, + { + "id": 46, + "type": { + "path": [ + "pallet_session", + "pallet", + "Event" + ], + "def": { + "variant": { + "variants": [ + { + "name": "NewSession", + "fields": [ + { + "name": "session_index", + "type": 4, + "typeName": "SessionIndex" + } + ], + "index": 0, + "docs": [ + "New session has happened. Note that the argument is the session index, not the", + "block number as the type might suggest." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 47, + "type": { + "path": [ + "pallet_grandpa", + "pallet", + "Event" + ], + "def": { + "variant": { + "variants": [ + { + "name": "NewAuthorities", + "fields": [ + { + "name": "authority_set", + "type": 48, + "typeName": "AuthorityList" + } + ], + "index": 0, + "docs": [ + "New authority set has been applied." + ] + }, + { + "name": "Paused", + "index": 1, + "docs": [ + "Current authority set has been paused." + ] + }, + { + "name": "Resumed", + "index": 2, + "docs": [ + "Current authority set has been resumed." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 48, + "type": { + "def": { + "sequence": { + "type": 49 + } + } + } + }, + { + "id": 49, + "type": { + "def": { + "tuple": [ + 50, + 11 + ] + } + } + }, + { + "id": 50, + "type": { + "path": [ + "sp_consensus_grandpa", + "app", + "Public" + ], + "def": { + "composite": { + "fields": [ + { + "type": 51, + "typeName": "ed25519::Public" + } + ] + } + } + } + }, + { + "id": 51, + "type": { + "path": [ + "sp_core", + "ed25519", + "Public" + ], + "def": { + "composite": { + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ] + } + } + } + }, + { + "id": 52, + "type": { + "path": [ + "pallet_treasury", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Proposed", + "fields": [ + { + "name": "proposal_index", + "type": 4, + "typeName": "ProposalIndex" + } + ], + "index": 0, + "docs": [ + "New proposal." + ] + }, + { + "name": "Spending", + "fields": [ + { + "name": "budget_remaining", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 1, + "docs": [ + "We have ended a spend period and will now allocate funds." + ] + }, + { + "name": "Awarded", + "fields": [ + { + "name": "proposal_index", + "type": 4, + "typeName": "ProposalIndex" + }, + { + "name": "award", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "account", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 2, + "docs": [ + "Some funds have been allocated." + ] + }, + { + "name": "Rejected", + "fields": [ + { + "name": "proposal_index", + "type": 4, + "typeName": "ProposalIndex" + }, + { + "name": "slashed", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 3, + "docs": [ + "A proposal was rejected; funds were slashed." + ] + }, + { + "name": "Burnt", + "fields": [ + { + "name": "burnt_funds", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 4, + "docs": [ + "Some of our funds have been burnt." + ] + }, + { + "name": "Rollover", + "fields": [ + { + "name": "rollover_balance", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 5, + "docs": [ + "Spending has finished; this is the amount that rolls over until next spend." + ] + }, + { + "name": "Deposit", + "fields": [ + { + "name": "value", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 6, + "docs": [ + "Some funds have been deposited." + ] + }, + { + "name": "SpendApproved", + "fields": [ + { + "name": "proposal_index", + "type": 4, + "typeName": "ProposalIndex" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "beneficiary", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 7, + "docs": [ + "A new spend proposal has been approved." + ] + }, + { + "name": "UpdatedInactive", + "fields": [ + { + "name": "reactivated", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "deactivated", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 8, + "docs": [ + "The inactive funds of the pallet have been updated." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 53, + "type": { + "path": [ + "pallet_transaction_payment", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "TransactionFeePaid", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "actual_fee", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "tip", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 0, + "docs": [ + "A transaction fee `actual_fee`, of which `tip` was added to the minimum inclusion fee,", + "has been paid by `who`." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 54, + "type": { + "path": [ + "pallet_sudo", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Sudid", + "fields": [ + { + "name": "sudo_result", + "type": 55, + "typeName": "DispatchResult" + } + ], + "index": 0, + "docs": [ + "A sudo just took place. \\[result\\]" + ] + }, + { + "name": "KeyChanged", + "fields": [ + { + "name": "old_sudoer", + "type": 36, + "typeName": "Option" + } + ], + "index": 1, + "docs": [ + "The \\[sudoer\\] just switched identity; the old key is supplied if one existed." + ] + }, + { + "name": "SudoAsDone", + "fields": [ + { + "name": "sudo_result", + "type": 55, + "typeName": "DispatchResult" + } + ], + "index": 2, + "docs": [ + "A sudo just took place. \\[result\\]" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 55, + "type": { + "path": [ + "Result" + ], + "params": [ + { + "name": "T", + "type": 56 + }, + { + "name": "E", + "type": 25 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Ok", + "fields": [ + { + "type": 56 + } + ], + "index": 0 + }, + { + "name": "Err", + "fields": [ + { + "type": 25 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 56, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 57, + "type": { + "path": [ + "pallet_im_online", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "HeartbeatReceived", + "fields": [ + { + "name": "authority_id", + "type": 58, + "typeName": "T::AuthorityId" + } + ], + "index": 0, + "docs": [ + "A new heartbeat was received from `AuthorityId`." + ] + }, + { + "name": "AllGood", + "index": 1, + "docs": [ + "At the end of the session, no offence was committed." + ] + }, + { + "name": "SomeOffline", + "fields": [ + { + "name": "offline", + "type": 60, + "typeName": "Vec>" + } + ], + "index": 2, + "docs": [ + "At the end of the session, at least one validator was found to be offline." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 58, + "type": { + "path": [ + "pallet_im_online", + "sr25519", + "app_sr25519", + "Public" + ], + "def": { + "composite": { + "fields": [ + { + "type": 59, + "typeName": "sr25519::Public" + } + ] + } + } + } + }, + { + "id": 59, + "type": { + "path": [ + "sp_core", + "sr25519", + "Public" + ], + "def": { + "composite": { + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ] + } + } + } + }, + { + "id": 60, + "type": { + "def": { + "sequence": { + "type": 61 + } + } + } + }, + { + "id": 61, + "type": { + "def": { + "tuple": [ + 0, + 62 + ] + } + } + }, + { + "id": 62, + "type": { + "path": [ + "pallet_staking", + "Exposure" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "total", + "type": 63, + "typeName": "Balance" + }, + { + "name": "own", + "type": 63, + "typeName": "Balance" + }, + { + "name": "others", + "type": 64, + "typeName": "Vec>" + } + ] + } + } + } + }, + { + "id": 63, + "type": { + "def": { + "compact": { + "type": 6 + } + } + } + }, + { + "id": 64, + "type": { + "def": { + "sequence": { + "type": 65 + } + } + } + }, + { + "id": 65, + "type": { + "path": [ + "pallet_staking", + "IndividualExposure" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "value", + "type": 63, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 66, + "type": { + "path": [ + "pallet_bags_list", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Rebagged", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "from", + "type": 11, + "typeName": "T::Score" + }, + { + "name": "to", + "type": 11, + "typeName": "T::Score" + } + ], + "index": 0, + "docs": [ + "Moved an account from one bag to another." + ] + }, + { + "name": "ScoreUpdated", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "new_score", + "type": 11, + "typeName": "T::Score" + } + ], + "index": 1, + "docs": [ + "Updated the score of some account to the given amount." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 67, + "type": { + "path": [ + "pallet_nomination_pools", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Created", + "fields": [ + { + "name": "creator", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "capacity", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 0, + "docs": [ + "A pool has been created." + ] + }, + { + "name": "Bonded", + "fields": [ + { + "name": "member", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "bonded", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 1, + "docs": [ + "A member has became bonded in a pool." + ] + }, + { + "name": "Unbonded", + "fields": [ + { + "name": "member", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The member that unbonded" + ] + }, + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId", + "docs": [ + "The id of the pool unbonded from" + ] + }, + { + "name": "balance", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "the corresponding balance of the number of points that has been requested to be", + "unbonded (the argument of the `unbond` transaction) from the bonded pool." + ] + }, + { + "name": "points", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "the number of points that are issued as a result of `balance` being dissolved into", + "the corresponding unbonding pool." + ] + }, + { + "name": "era", + "type": 4, + "typeName": "EraIndex", + "docs": [ + "the era in which the balance will be unbonded. In the absence of slashing,", + "these values will match. In the presence of slashing, the number of points that are", + "issued in the unbonding pool will be less than the amount requested to be unbonded." + ] + } + ], + "index": 2, + "docs": [ + "A member has unbonded from their pool." + ] + }, + { + "name": "Withdrawn", + "fields": [ + { + "name": "member", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "balance", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "points", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 3, + "docs": [ + "A member has withdrawn from their pool.", + "", + "The given number of `points` have been dissolved in return of `balance`.", + "", + "Similar to `Unbonded` event, in the absence of slashing, the ratio of point to balance", + "will be 1." + ] + }, + { + "name": "Destroyed", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + } + ], + "index": 4, + "docs": [ + "A pool has been destroyed." + ] + }, + { + "name": "StateChanged", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "new_state", + "type": 68, + "typeName": "PoolState" + } + ], + "index": 5, + "docs": [ + "The state of a pool has changed" + ] + }, + { + "name": "PoolSlashed", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "balance", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 6, + "docs": [ + "The active balance of pool `pool_id` has been slashed to `balance`." + ] + }, + { + "name": "UnbondingPoolSlashed", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "era", + "type": 4, + "typeName": "EraIndex" + }, + { + "name": "balance", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 7, + "docs": [ + "The unbond pool at `era` of pool `pool_id` has been slashed to `balance`." + ] + }, + { + "name": "CommissionUpdated", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "current", + "type": 69, + "typeName": "Option" + } + ], + "index": 8, + "docs": [ + "A pool's commission rate has been changed." + ] + }, + { + "name": "EraRewardsProcessed", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId", + "docs": [ + "The id of the pool" + ] + }, + { + "name": "era", + "type": 4, + "typeName": "EraIndex", + "docs": [ + "The era that was processed." + ] + }, + { + "name": "commission", + "type": 70, + "typeName": "Option>", + "docs": [ + "The commission that was paid" + ] + }, + { + "name": "bonus", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount of bonus that was unlocked" + ] + }, + { + "name": "reinvested", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount that was bonded" + ] + }, + { + "name": "bonus_cycle_ended", + "type": 37, + "typeName": "bool", + "docs": [ + "The current bonus cycle ended" + ] + } + ], + "index": 9, + "docs": [ + "This event happens once per era on the previous era that rewards are paid out for. It", + "pays commission, distributes bonus, and reinvests rewards." + ] + }, + { + "name": "RewardPaid", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId", + "docs": [ + "The id of the pool" + ] + }, + { + "name": "era", + "type": 4, + "typeName": "EraIndex", + "docs": [ + "The era that was processed." + ] + }, + { + "name": "validator_stash", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The validator that the payment was received from" + ] + }, + { + "name": "reward", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount added to the pool's reward account" + ] + }, + { + "name": "bonus", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount that was added to the pool's bonus account" + ] + } + ], + "index": 10, + "docs": [ + "Rewards were paid to a pool" + ] + }, + { + "name": "PoolMutated", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "mutation", + "type": 72, + "typeName": "PoolMutationOf" + } + ], + "index": 11, + "docs": [ + "Pool has been mutated." + ] + }, + { + "name": "Nominated", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId", + "docs": [ + "The id of the pool" + ] + }, + { + "name": "validators", + "type": 78, + "typeName": "Vec", + "docs": [ + "The validators that were nominated" + ] + } + ], + "index": 12, + "docs": [ + "A nomination took place" + ] + }, + { + "name": "EarlyBirdBonusQueued", + "fields": [ + { + "name": "total_amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The total amount to be distributed" + ] + } + ], + "index": 13 + }, + { + "name": "EarlyBirdBonusDistributed", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId", + "docs": [ + "The id of the pool" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount distributed" + ] + } + ], + "index": 14, + "docs": [ + "The early bird bonus has been distributed" + ] + } + ] + } + }, + "docs": [ + "Events of this pallet." + ] + } + }, + { + "id": 68, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "PoolState" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Open", + "index": 0 + }, + { + "name": "Destroying", + "index": 1 + } + ] + } + } + } + }, + { + "id": 69, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 42 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 42 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 70, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 71 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 71 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 71, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "CommissionPayment" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "beneficiary", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 72, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "PoolMutation" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "duration", + "type": 73, + "typeName": "Option" + }, + { + "name": "new_commission", + "type": 74, + "typeName": "ShouldMutate>" + }, + { + "name": "max_commission", + "type": 69, + "typeName": "Option" + }, + { + "name": "change_rate", + "type": 75, + "typeName": "Option>" + }, + { + "name": "capacity", + "type": 77, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 73, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 4 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 74, + "type": { + "path": [ + "ep_multi_tokens", + "types", + "ShouldMutate" + ], + "params": [ + { + "name": "T", + "type": 69 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NoMutation", + "index": 0 + }, + { + "name": "SomeMutation", + "fields": [ + { + "type": 69, + "typeName": "T" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 75, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 76 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 76 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 76, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "CommissionChangeRate" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "max_delta", + "type": 42, + "typeName": "Perbill" + }, + { + "name": "min_delay", + "type": 4, + "typeName": "BlockNumber" + } + ] + } + } + } + }, + { + "id": 77, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 6 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 78, + "type": { + "def": { + "sequence": { + "type": 0 + } + } + } + }, + { + "id": 79, + "type": { + "path": [ + "pallet_stake_exchange", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OfferCreated", + "fields": [ + { + "name": "offer_id", + "type": 6, + "typeName": "T::OfferId", + "docs": [ + "ID of the offer" + ] + }, + { + "name": "offer", + "type": 80, + "typeName": "OfferOf", + "docs": [ + "The offer that was placed" + ] + } + ], + "index": 0, + "docs": [ + "A offer was placed" + ] + }, + { + "name": "OfferCancelled", + "fields": [ + { + "name": "offer_id", + "type": 6, + "typeName": "T::OfferId", + "docs": [ + "ID of the offer" + ] + } + ], + "index": 1, + "docs": [ + "A offer was cancelled" + ] + }, + { + "name": "LiquidityConfigUpdated", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "ID of the offer" + ] + }, + { + "name": "config", + "type": 81, + "typeName": "LiquidityAccountConfigOf", + "docs": [ + "The offer that was placed" + ] + } + ], + "index": 2, + "docs": [ + "Liquidity config was set for account" + ] + }, + { + "name": "LiquidityWithdrawn", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "ID of the account" + ] + }, + { + "name": "offer_id", + "type": 6, + "typeName": "T::OfferId", + "docs": [ + "ID of the offer" + ] + } + ], + "index": 3, + "docs": [ + "Liquidity was withdrawn from a offer" + ] + }, + { + "name": "LiquidityAdded", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "ID of the account" + ] + }, + { + "name": "offer_id", + "type": 6, + "typeName": "T::OfferId", + "docs": [ + "ID of the offer" + ] + } + ], + "index": 4, + "docs": [ + "Liquidity was added to a offer" + ] + }, + { + "name": "BuyOrderCompleted", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "AccountId of the buyer" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "TokenIdOf", + "docs": [ + "The tokenId that was exchanged" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount of tokens transferred" + ] + }, + { + "name": "rate", + "type": 42, + "typeName": "Rate", + "docs": [ + "The rate at which the order was completed" + ] + } + ], + "index": 5, + "docs": [ + "Buy order was completed" + ] + }, + { + "name": "OfferCompleted", + "fields": [ + { + "name": "offer_id", + "type": 6, + "typeName": "T::OfferId", + "docs": [ + "ID of the offer" + ] + } + ], + "index": 6, + "docs": [ + "A offer was completed and removed" + ] + } + ] + } + }, + "docs": [ + "The pallet's event type." + ] + } + }, + { + "id": 80, + "type": { + "path": [ + "pallet_stake_exchange", + "types", + "Offer" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "account", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "total", + "type": 63, + "typeName": "Balance" + }, + { + "name": "rate", + "type": 44, + "typeName": "Rate" + }, + { + "name": "min_average_reward_rate", + "type": 42, + "typeName": "Rate" + }, + { + "name": "deposit", + "type": 63, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 81, + "type": { + "path": [ + "pallet_stake_exchange", + "types", + "LiquidityAccountConfig" + ], + "params": [ + { + "name": "TokenId", + "type": 6 + }, + { + "name": "MaxFilteredTokenCount", + "type": 82 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "token_filter", + "type": 83, + "typeName": "TokenFilter" + } + ] + } + } + } + }, + { + "id": 82, + "type": { + "path": [ + "enjin_runtime", + "MaxFilteredTokenCount" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 83, + "type": { + "path": [ + "pallet_stake_exchange", + "types", + "TokenFilter" + ], + "params": [ + { + "name": "TokenId", + "type": 6 + }, + { + "name": "MaxFilteredTokenCount", + "type": 82 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "All", + "index": 0 + }, + { + "name": "Whitelist", + "fields": [ + { + "type": 84, + "typeName": "BoundedBTreeSet" + } + ], + "index": 1 + }, + { + "name": "BlockList", + "fields": [ + { + "type": 84, + "typeName": "BoundedBTreeSet" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 84, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 6 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 85, + "typeName": "BTreeSet" + } + ] + } + } + } + }, + { + "id": 85, + "type": { + "path": [ + "BTreeSet" + ], + "params": [ + { + "name": "T", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 86 + } + ] + } + } + } + }, + { + "id": 86, + "type": { + "def": { + "sequence": { + "type": 6 + } + } + } + }, + { + "id": 87, + "type": { + "path": [ + "pallet_utility", + "pallet", + "Event" + ], + "def": { + "variant": { + "variants": [ + { + "name": "BatchInterrupted", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "u32" + }, + { + "name": "error", + "type": 25, + "typeName": "DispatchError" + } + ], + "index": 0, + "docs": [ + "Batch of dispatches did not complete fully. Index of first failing dispatch given, as", + "well as the error." + ] + }, + { + "name": "BatchCompleted", + "index": 1, + "docs": [ + "Batch of dispatches completed fully with no error." + ] + }, + { + "name": "BatchCompletedWithErrors", + "index": 2, + "docs": [ + "Batch of dispatches completed but has errors." + ] + }, + { + "name": "ItemCompleted", + "index": 3, + "docs": [ + "A single item within a Batch of dispatches has completed with no error." + ] + }, + { + "name": "ItemFailed", + "fields": [ + { + "name": "error", + "type": 25, + "typeName": "DispatchError" + } + ], + "index": 4, + "docs": [ + "A single item within a Batch of dispatches has completed with error." + ] + }, + { + "name": "DispatchedAs", + "fields": [ + { + "name": "result", + "type": 55, + "typeName": "DispatchResult" + } + ], + "index": 5, + "docs": [ + "A call was dispatched." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 88, + "type": { + "path": [ + "pallet_multisig", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NewMultisig", + "fields": [ + { + "name": "approving", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "multisig", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "call_hash", + "type": 1, + "typeName": "CallHash" + } + ], + "index": 0, + "docs": [ + "A new multisig operation has begun." + ] + }, + { + "name": "MultisigApproval", + "fields": [ + { + "name": "approving", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "timepoint", + "type": 89, + "typeName": "Timepoint" + }, + { + "name": "multisig", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "call_hash", + "type": 1, + "typeName": "CallHash" + } + ], + "index": 1, + "docs": [ + "A multisig operation has been approved by someone." + ] + }, + { + "name": "MultisigExecuted", + "fields": [ + { + "name": "approving", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "timepoint", + "type": 89, + "typeName": "Timepoint" + }, + { + "name": "multisig", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "call_hash", + "type": 1, + "typeName": "CallHash" + }, + { + "name": "result", + "type": 55, + "typeName": "DispatchResult" + } + ], + "index": 2, + "docs": [ + "A multisig operation has been executed." + ] + }, + { + "name": "MultisigCancelled", + "fields": [ + { + "name": "cancelling", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "timepoint", + "type": 89, + "typeName": "Timepoint" + }, + { + "name": "multisig", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "call_hash", + "type": 1, + "typeName": "CallHash" + } + ], + "index": 3, + "docs": [ + "A multisig operation has been cancelled." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 89, + "type": { + "path": [ + "pallet_multisig", + "Timepoint" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "height", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "index", + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 90, + "type": { + "path": [ + "polkadot_runtime_parachains", + "inclusion", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "CandidateBacked", + "fields": [ + { + "type": 91, + "typeName": "CandidateReceipt" + }, + { + "type": 99, + "typeName": "HeadData" + }, + { + "type": 100, + "typeName": "CoreIndex" + }, + { + "type": 101, + "typeName": "GroupIndex" + } + ], + "index": 0, + "docs": [ + "A candidate was backed. `[candidate, head_data]`" + ] + }, + { + "name": "CandidateIncluded", + "fields": [ + { + "type": 91, + "typeName": "CandidateReceipt" + }, + { + "type": 99, + "typeName": "HeadData" + }, + { + "type": 100, + "typeName": "CoreIndex" + }, + { + "type": 101, + "typeName": "GroupIndex" + } + ], + "index": 1, + "docs": [ + "A candidate was included. `[candidate, head_data]`" + ] + }, + { + "name": "CandidateTimedOut", + "fields": [ + { + "type": 91, + "typeName": "CandidateReceipt" + }, + { + "type": 99, + "typeName": "HeadData" + }, + { + "type": 100, + "typeName": "CoreIndex" + } + ], + "index": 2, + "docs": [ + "A candidate timed out. `[candidate, head_data]`" + ] + }, + { + "name": "UpwardMessagesReceived", + "fields": [ + { + "name": "from", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "count", + "type": 4, + "typeName": "u32" + } + ], + "index": 3, + "docs": [ + "Some upward messages have been received and will be processed." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 91, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "CandidateReceipt" + ], + "params": [ + { + "name": "H", + "type": 12 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "descriptor", + "type": 92, + "typeName": "CandidateDescriptor" + }, + { + "name": "commitments_hash", + "type": 12, + "typeName": "Hash" + } + ] + } + } + } + }, + { + "id": 92, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "CandidateDescriptor" + ], + "params": [ + { + "name": "H", + "type": 12 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "Id" + }, + { + "name": "relay_parent", + "type": 12, + "typeName": "H" + }, + { + "name": "collator", + "type": 94, + "typeName": "CollatorId" + }, + { + "name": "persisted_validation_data_hash", + "type": 12, + "typeName": "Hash" + }, + { + "name": "pov_hash", + "type": 12, + "typeName": "Hash" + }, + { + "name": "erasure_root", + "type": 12, + "typeName": "Hash" + }, + { + "name": "signature", + "type": 95, + "typeName": "CollatorSignature" + }, + { + "name": "para_head", + "type": 12, + "typeName": "Hash" + }, + { + "name": "validation_code_hash", + "type": 98, + "typeName": "ValidationCodeHash" + } + ] + } + } + } + }, + { + "id": 93, + "type": { + "path": [ + "polkadot_parachain", + "primitives", + "Id" + ], + "def": { + "composite": { + "fields": [ + { + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 94, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "collator_app", + "Public" + ], + "def": { + "composite": { + "fields": [ + { + "type": 59, + "typeName": "sr25519::Public" + } + ] + } + } + } + }, + { + "id": 95, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "collator_app", + "Signature" + ], + "def": { + "composite": { + "fields": [ + { + "type": 96, + "typeName": "sr25519::Signature" + } + ] + } + } + } + }, + { + "id": 96, + "type": { + "path": [ + "sp_core", + "sr25519", + "Signature" + ], + "def": { + "composite": { + "fields": [ + { + "type": 97, + "typeName": "[u8; 64]" + } + ] + } + } + } + }, + { + "id": 97, + "type": { + "def": { + "array": { + "len": 64, + "type": 2 + } + } + } + }, + { + "id": 98, + "type": { + "path": [ + "polkadot_parachain", + "primitives", + "ValidationCodeHash" + ], + "def": { + "composite": { + "fields": [ + { + "type": 12, + "typeName": "Hash" + } + ] + } + } + } + }, + { + "id": 99, + "type": { + "path": [ + "polkadot_parachain", + "primitives", + "HeadData" + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 100, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "CoreIndex" + ], + "def": { + "composite": { + "fields": [ + { + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 101, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "GroupIndex" + ], + "def": { + "composite": { + "fields": [ + { + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 102, + "type": { + "path": [ + "polkadot_runtime_parachains", + "paras", + "pallet", + "Event" + ], + "def": { + "variant": { + "variants": [ + { + "name": "CurrentCodeUpdated", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 0, + "docs": [ + "Current code has been updated for a Para. `para_id`" + ] + }, + { + "name": "CurrentHeadUpdated", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 1, + "docs": [ + "Current head has been updated for a Para. `para_id`" + ] + }, + { + "name": "CodeUpgradeScheduled", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 2, + "docs": [ + "A code upgrade has been scheduled for a Para. `para_id`" + ] + }, + { + "name": "NewHeadNoted", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 3, + "docs": [ + "A new head has been noted for a Para. `para_id`" + ] + }, + { + "name": "ActionQueued", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + }, + { + "type": 4, + "typeName": "SessionIndex" + } + ], + "index": 4, + "docs": [ + "A para has been queued to execute pending actions. `para_id`" + ] + }, + { + "name": "PvfCheckStarted", + "fields": [ + { + "type": 98, + "typeName": "ValidationCodeHash" + }, + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 5, + "docs": [ + "The given para either initiated or subscribed to a PVF check for the given validation", + "code. `code_hash` `para_id`" + ] + }, + { + "name": "PvfCheckAccepted", + "fields": [ + { + "type": 98, + "typeName": "ValidationCodeHash" + }, + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 6, + "docs": [ + "The given validation code was accepted by the PVF pre-checking vote.", + "`code_hash` `para_id`" + ] + }, + { + "name": "PvfCheckRejected", + "fields": [ + { + "type": 98, + "typeName": "ValidationCodeHash" + }, + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 7, + "docs": [ + "The given validation code was rejected by the PVF pre-checking vote.", + "`code_hash` `para_id`" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 103, + "type": { + "path": [ + "polkadot_runtime_parachains", + "hrmp", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OpenChannelRequested", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + }, + { + "type": 93, + "typeName": "ParaId" + }, + { + "type": 4, + "typeName": "u32" + }, + { + "type": 4, + "typeName": "u32" + } + ], + "index": 0, + "docs": [ + "Open HRMP channel requested.", + "`[sender, recipient, proposed_max_capacity, proposed_max_message_size]`" + ] + }, + { + "name": "OpenChannelCanceled", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + }, + { + "type": 104, + "typeName": "HrmpChannelId" + } + ], + "index": 1, + "docs": [ + "An HRMP channel request sent by the receiver was canceled by either party.", + "`[by_parachain, channel_id]`" + ] + }, + { + "name": "OpenChannelAccepted", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + }, + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 2, + "docs": [ + "Open HRMP channel accepted. `[sender, recipient]`" + ] + }, + { + "name": "ChannelClosed", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + }, + { + "type": 104, + "typeName": "HrmpChannelId" + } + ], + "index": 3, + "docs": [ + "HRMP channel closed. `[by_parachain, channel_id]`" + ] + }, + { + "name": "HrmpChannelForceOpened", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + }, + { + "type": 93, + "typeName": "ParaId" + }, + { + "type": 4, + "typeName": "u32" + }, + { + "type": 4, + "typeName": "u32" + } + ], + "index": 4, + "docs": [ + "An HRMP channel was opened via Root origin.", + "`[sender, recipient, proposed_max_capacity, proposed_max_message_size]`" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 104, + "type": { + "path": [ + "polkadot_parachain", + "primitives", + "HrmpChannelId" + ], + "def": { + "composite": { + "fields": [ + { + "name": "sender", + "type": 93, + "typeName": "Id" + }, + { + "name": "recipient", + "type": 93, + "typeName": "Id" + } + ] + } + } + } + }, + { + "id": 105, + "type": { + "path": [ + "polkadot_runtime_parachains", + "disputes", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "DisputeInitiated", + "fields": [ + { + "type": 106, + "typeName": "CandidateHash" + }, + { + "type": 107, + "typeName": "DisputeLocation" + } + ], + "index": 0, + "docs": [ + "A dispute has been initiated. \\[candidate hash, dispute location\\]" + ] + }, + { + "name": "DisputeConcluded", + "fields": [ + { + "type": 106, + "typeName": "CandidateHash" + }, + { + "type": 108, + "typeName": "DisputeResult" + } + ], + "index": 1, + "docs": [ + "A dispute has concluded for or against a candidate.", + "`\\[para id, candidate hash, dispute result\\]`" + ] + }, + { + "name": "Revert", + "fields": [ + { + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 2, + "docs": [ + "A dispute has concluded with supermajority against a candidate.", + "Block authors should no longer build on top of this head and should", + "instead revert the block at the given height. This should be the", + "number of the child of the last known valid block in the chain." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 106, + "type": { + "path": [ + "polkadot_core_primitives", + "CandidateHash" + ], + "def": { + "composite": { + "fields": [ + { + "type": 12, + "typeName": "Hash" + } + ] + } + } + } + }, + { + "id": 107, + "type": { + "path": [ + "polkadot_runtime_parachains", + "disputes", + "DisputeLocation" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Local", + "index": 0 + }, + { + "name": "Remote", + "index": 1 + } + ] + } + } + } + }, + { + "id": 108, + "type": { + "path": [ + "polkadot_runtime_parachains", + "disputes", + "DisputeResult" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Valid", + "index": 0 + }, + { + "name": "Invalid", + "index": 1 + } + ] + } + } + } + }, + { + "id": 109, + "type": { + "path": [ + "polkadot_runtime_common", + "paras_registrar", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Registered", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "manager", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 0 + }, + { + "name": "Deregistered", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 1 + }, + { + "name": "Reserved", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 2 + }, + { + "name": "Swapped", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "other_id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 3 + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 110, + "type": { + "path": [ + "polkadot_runtime_common", + "slots", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NewLeasePeriod", + "fields": [ + { + "name": "lease_period", + "type": 4, + "typeName": "LeasePeriodOf" + } + ], + "index": 0, + "docs": [ + "A new `[lease_period]` is beginning." + ] + }, + { + "name": "Leased", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "leaser", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "period_begin", + "type": 4, + "typeName": "LeasePeriodOf" + }, + { + "name": "period_count", + "type": 4, + "typeName": "LeasePeriodOf" + }, + { + "name": "extra_reserved", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "total_amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 1, + "docs": [ + "A para has won the right to a continuous set of lease periods as a parachain.", + "First balance is any extra amount reserved on top of the para's existing deposit.", + "Second balance is the total amount reserved." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 111, + "type": { + "path": [ + "polkadot_runtime_common", + "auctions", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "AuctionStarted", + "fields": [ + { + "name": "auction_index", + "type": 4, + "typeName": "AuctionIndex" + }, + { + "name": "lease_period", + "type": 4, + "typeName": "LeasePeriodOf" + }, + { + "name": "ending", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 0, + "docs": [ + "An auction started. Provides its index and the block number where it will begin to", + "close and the first lease period of the quadruplet that is auctioned." + ] + }, + { + "name": "AuctionClosed", + "fields": [ + { + "name": "auction_index", + "type": 4, + "typeName": "AuctionIndex" + } + ], + "index": 1, + "docs": [ + "An auction ended. All funds become unreserved." + ] + }, + { + "name": "Reserved", + "fields": [ + { + "name": "bidder", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "extra_reserved", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "total_amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 2, + "docs": [ + "Funds were reserved for a winning bid. First balance is the extra amount reserved.", + "Second is the total." + ] + }, + { + "name": "Unreserved", + "fields": [ + { + "name": "bidder", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 3, + "docs": [ + "Funds were unreserved since bidder is no longer active. `[bidder, amount]`" + ] + }, + { + "name": "ReserveConfiscated", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "leaser", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 4, + "docs": [ + "Someone attempted to lease the same slot twice for a parachain. The amount is held in reserve", + "but no parachain slot has been leased." + ] + }, + { + "name": "BidAccepted", + "fields": [ + { + "name": "bidder", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "first_slot", + "type": 4, + "typeName": "LeasePeriodOf" + }, + { + "name": "last_slot", + "type": 4, + "typeName": "LeasePeriodOf" + } + ], + "index": 5, + "docs": [ + "A new bid has been accepted as the current winner." + ] + }, + { + "name": "WinningOffset", + "fields": [ + { + "name": "auction_index", + "type": 4, + "typeName": "AuctionIndex" + }, + { + "name": "block_number", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 6, + "docs": [ + "The winning offset was chosen for an auction. This will map into the `Winning` storage map." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 112, + "type": { + "path": [ + "polkadot_runtime_common", + "crowdloan", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Created", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 0, + "docs": [ + "Create a new crowdloaning campaign." + ] + }, + { + "name": "Contributed", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "fund_index", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 1, + "docs": [ + "Contributed to a crowd sale." + ] + }, + { + "name": "Withdrew", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "fund_index", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 2, + "docs": [ + "Withdrew full balance of a contributor." + ] + }, + { + "name": "PartiallyRefunded", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 3, + "docs": [ + "The loans in a fund have been partially dissolved, i.e. there are some left", + "over child keys that still need to be killed." + ] + }, + { + "name": "AllRefunded", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 4, + "docs": [ + "All loans in a fund have been refunded." + ] + }, + { + "name": "Dissolved", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 5, + "docs": [ + "Fund is dissolved." + ] + }, + { + "name": "HandleBidResult", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "result", + "type": 55, + "typeName": "DispatchResult" + } + ], + "index": 6, + "docs": [ + "The result of trying to submit a new bid to the Slots pallet." + ] + }, + { + "name": "Edited", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 7, + "docs": [ + "The configuration to a crowdloan has been edited." + ] + }, + { + "name": "MemoUpdated", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "memo", + "type": 13, + "typeName": "Vec" + } + ], + "index": 8, + "docs": [ + "A memo has been updated." + ] + }, + { + "name": "AddedToNewRaise", + "fields": [ + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 9, + "docs": [ + "A parachain has been moved to `NewRaise`" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 113, + "type": { + "path": [ + "pallet_xcm", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Attempted", + "fields": [ + { + "type": 114, + "typeName": "xcm::latest::Outcome" + } + ], + "index": 0, + "docs": [ + "Execution of an XCM message was attempted.", + "", + "\\[ outcome \\]" + ] + }, + { + "name": "Sent", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 125, + "typeName": "Xcm<()>" + } + ], + "index": 1, + "docs": [ + "A XCM message was sent.", + "", + "\\[ origin, destination, message \\]" + ] + }, + { + "name": "UnexpectedResponse", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 11, + "typeName": "QueryId" + } + ], + "index": 2, + "docs": [ + "Query response received which does not match a registered query. This may be because a", + "matching query was never registered, it may be because it is a duplicate response, or", + "because the query timed out.", + "", + "\\[ origin location, id \\]" + ] + }, + { + "name": "ResponseReady", + "fields": [ + { + "type": 11, + "typeName": "QueryId" + }, + { + "type": 135, + "typeName": "Response" + } + ], + "index": 3, + "docs": [ + "Query response has been received and is ready for taking with `take_response`. There is", + "no registered notification call.", + "", + "\\[ id, response \\]" + ] + }, + { + "name": "Notified", + "fields": [ + { + "type": 11, + "typeName": "QueryId" + }, + { + "type": 2, + "typeName": "u8" + }, + { + "type": 2, + "typeName": "u8" + } + ], + "index": 4, + "docs": [ + "Query response has been received and query is removed. The registered notification has", + "been dispatched and executed successfully.", + "", + "\\[ id, pallet index, call index \\]" + ] + }, + { + "name": "NotifyOverweight", + "fields": [ + { + "type": 11, + "typeName": "QueryId" + }, + { + "type": 2, + "typeName": "u8" + }, + { + "type": 2, + "typeName": "u8" + }, + { + "type": 9, + "typeName": "Weight" + }, + { + "type": 9, + "typeName": "Weight" + } + ], + "index": 5, + "docs": [ + "Query response has been received and query is removed. The registered notification could", + "not be dispatched because the dispatch weight is greater than the maximum weight", + "originally budgeted by this runtime for the query result.", + "", + "\\[ id, pallet index, call index, actual weight, max budgeted weight \\]" + ] + }, + { + "name": "NotifyDispatchError", + "fields": [ + { + "type": 11, + "typeName": "QueryId" + }, + { + "type": 2, + "typeName": "u8" + }, + { + "type": 2, + "typeName": "u8" + } + ], + "index": 6, + "docs": [ + "Query response has been received and query is removed. There was a general error with", + "dispatching the notification call.", + "", + "\\[ id, pallet index, call index \\]" + ] + }, + { + "name": "NotifyDecodeFailed", + "fields": [ + { + "type": 11, + "typeName": "QueryId" + }, + { + "type": 2, + "typeName": "u8" + }, + { + "type": 2, + "typeName": "u8" + } + ], + "index": 7, + "docs": [ + "Query response has been received and query is removed. The dispatch was unable to be", + "decoded into a `Call`; this might be due to dispatch function having a signature which", + "is not `(origin, QueryId, Response)`.", + "", + "\\[ id, pallet index, call index \\]" + ] + }, + { + "name": "InvalidResponder", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 11, + "typeName": "QueryId" + }, + { + "type": 144, + "typeName": "Option" + } + ], + "index": 8, + "docs": [ + "Expected query response has been received but the origin location of the response does", + "not match that expected. The query remains registered for a later, valid, response to", + "be received and acted upon.", + "", + "\\[ origin location, id, expected location \\]" + ] + }, + { + "name": "InvalidResponderVersion", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 11, + "typeName": "QueryId" + } + ], + "index": 9, + "docs": [ + "Expected query response has been received but the expected origin location placed in", + "storage by this runtime previously cannot be decoded. The query remains registered.", + "", + "This is unexpected (since a location placed in storage in a previously executing", + "runtime should be readable prior to query timeout) and dangerous since the possibly", + "valid response will be dropped. Manual governance intervention is probably going to be", + "needed.", + "", + "\\[ origin location, id \\]" + ] + }, + { + "name": "ResponseTaken", + "fields": [ + { + "type": 11, + "typeName": "QueryId" + } + ], + "index": 10, + "docs": [ + "Received query response has been read and removed.", + "", + "\\[ id \\]" + ] + }, + { + "name": "AssetsTrapped", + "fields": [ + { + "type": 12, + "typeName": "H256" + }, + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 152, + "typeName": "VersionedMultiAssets" + } + ], + "index": 11, + "docs": [ + "Some assets have been placed in an asset trap.", + "", + "\\[ hash, origin, assets \\]" + ] + }, + { + "name": "VersionChangeNotified", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 4, + "typeName": "XcmVersion" + }, + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 12, + "docs": [ + "An XCM version change notification message has been attempted to be sent.", + "", + "The cost of sending it (borne by the chain) is included.", + "", + "\\[ destination, result, cost \\]" + ] + }, + { + "name": "SupportedVersionChanged", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 4, + "typeName": "XcmVersion" + } + ], + "index": 13, + "docs": [ + "The supported version of a location has been changed. This might be through an", + "automatic notification or a manual intervention.", + "", + "\\[ location, XCM version \\]" + ] + }, + { + "name": "NotifyTargetSendFail", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 11, + "typeName": "QueryId" + }, + { + "type": 115, + "typeName": "XcmError" + } + ], + "index": 14, + "docs": [ + "A given location which had a version change subscription was dropped owing to an error", + "sending the notification to it.", + "", + "\\[ location, query ID, error \\]" + ] + }, + { + "name": "NotifyTargetMigrationFail", + "fields": [ + { + "type": 166, + "typeName": "VersionedMultiLocation" + }, + { + "type": 11, + "typeName": "QueryId" + } + ], + "index": 15, + "docs": [ + "A given location which had a version change subscription was dropped owing to an error", + "migrating the location to our new XCM format.", + "", + "\\[ location, query ID \\]" + ] + }, + { + "name": "InvalidQuerierVersion", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 11, + "typeName": "QueryId" + } + ], + "index": 16, + "docs": [ + "Expected query response has been received but the expected querier location placed in", + "storage by this runtime previously cannot be decoded. The query remains registered.", + "", + "This is unexpected (since a location placed in storage in a previously executing", + "runtime should be readable prior to query timeout) and dangerous since the possibly", + "valid response will be dropped. Manual governance intervention is probably going to be", + "needed.", + "", + "\\[ origin location, id \\]" + ] + }, + { + "name": "InvalidQuerier", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 11, + "typeName": "QueryId" + }, + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 144, + "typeName": "Option" + } + ], + "index": 17, + "docs": [ + "Expected query response has been received but the querier location of the response does", + "not match the expected. The query remains registered for a later, valid, response to", + "be received and acted upon.", + "", + "\\[ origin location, id, expected querier, maybe actual querier \\]" + ] + }, + { + "name": "VersionNotifyStarted", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 18, + "docs": [ + "A remote has requested XCM version change notification from us and we have honored it.", + "A version information message is sent to them and its cost is included.", + "", + "\\[ destination location, cost \\]" + ] + }, + { + "name": "VersionNotifyRequested", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 19, + "docs": [ + "We have requested that a remote chain sends us XCM version change notifications.", + "", + "\\[ destination location, cost \\]" + ] + }, + { + "name": "VersionNotifyUnrequested", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 20, + "docs": [ + "We have requested that a remote chain stops sending us XCM version change notifications.", + "", + "\\[ destination location, cost \\]" + ] + }, + { + "name": "FeesPaid", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 21, + "docs": [ + "Fees were paid from a location for an operation (often for using `SendXcm`).", + "", + "\\[ paying location, fees \\]" + ] + }, + { + "name": "AssetsClaimed", + "fields": [ + { + "type": 12, + "typeName": "H256" + }, + { + "type": 116, + "typeName": "MultiLocation" + }, + { + "type": 152, + "typeName": "VersionedMultiAssets" + } + ], + "index": 22, + "docs": [ + "Some assets have been claimed from an asset trap", + "", + "\\[ hash, origin, assets \\]" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 114, + "type": { + "path": [ + "xcm", + "v3", + "traits", + "Outcome" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Complete", + "fields": [ + { + "type": 9, + "typeName": "Weight" + } + ], + "index": 0 + }, + { + "name": "Incomplete", + "fields": [ + { + "type": 9, + "typeName": "Weight" + }, + { + "type": 115, + "typeName": "Error" + } + ], + "index": 1 + }, + { + "name": "Error", + "fields": [ + { + "type": 115, + "typeName": "Error" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 115, + "type": { + "path": [ + "xcm", + "v3", + "traits", + "Error" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Overflow", + "index": 0 + }, + { + "name": "Unimplemented", + "index": 1 + }, + { + "name": "UntrustedReserveLocation", + "index": 2 + }, + { + "name": "UntrustedTeleportLocation", + "index": 3 + }, + { + "name": "LocationFull", + "index": 4 + }, + { + "name": "LocationNotInvertible", + "index": 5 + }, + { + "name": "BadOrigin", + "index": 6 + }, + { + "name": "InvalidLocation", + "index": 7 + }, + { + "name": "AssetNotFound", + "index": 8 + }, + { + "name": "FailedToTransactAsset", + "index": 9 + }, + { + "name": "NotWithdrawable", + "index": 10 + }, + { + "name": "LocationCannotHold", + "index": 11 + }, + { + "name": "ExceedsMaxMessageSize", + "index": 12 + }, + { + "name": "DestinationUnsupported", + "index": 13 + }, + { + "name": "Transport", + "index": 14 + }, + { + "name": "Unroutable", + "index": 15 + }, + { + "name": "UnknownClaim", + "index": 16 + }, + { + "name": "FailedToDecode", + "index": 17 + }, + { + "name": "MaxWeightInvalid", + "index": 18 + }, + { + "name": "NotHoldingFees", + "index": 19 + }, + { + "name": "TooExpensive", + "index": 20 + }, + { + "name": "Trap", + "fields": [ + { + "type": 11, + "typeName": "u64" + } + ], + "index": 21 + }, + { + "name": "ExpectationFalse", + "index": 22 + }, + { + "name": "PalletNotFound", + "index": 23 + }, + { + "name": "NameMismatch", + "index": 24 + }, + { + "name": "VersionIncompatible", + "index": 25 + }, + { + "name": "HoldingWouldOverflow", + "index": 26 + }, + { + "name": "ExportError", + "index": 27 + }, + { + "name": "ReanchorFailed", + "index": 28 + }, + { + "name": "NoDeal", + "index": 29 + }, + { + "name": "FeesNotMet", + "index": 30 + }, + { + "name": "LockError", + "index": 31 + }, + { + "name": "NoPermission", + "index": 32 + }, + { + "name": "Unanchored", + "index": 33 + }, + { + "name": "NotDepositable", + "index": 34 + }, + { + "name": "UnhandledXcmVersion", + "index": 35 + }, + { + "name": "WeightLimitReached", + "fields": [ + { + "type": 9, + "typeName": "Weight" + } + ], + "index": 36 + }, + { + "name": "Barrier", + "index": 37 + }, + { + "name": "WeightNotComputable", + "index": 38 + }, + { + "name": "ExceedsStackLimit", + "index": 39 + } + ] + } + } + } + }, + { + "id": 116, + "type": { + "path": [ + "xcm", + "v3", + "multilocation", + "MultiLocation" + ], + "def": { + "composite": { + "fields": [ + { + "name": "parents", + "type": 2, + "typeName": "u8" + }, + { + "name": "interior", + "type": 117, + "typeName": "Junctions" + } + ] + } + } + } + }, + { + "id": 117, + "type": { + "path": [ + "xcm", + "v3", + "junctions", + "Junctions" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Here", + "index": 0 + }, + { + "name": "X1", + "fields": [ + { + "type": 118, + "typeName": "Junction" + } + ], + "index": 1 + }, + { + "name": "X2", + "fields": [ + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + } + ], + "index": 2 + }, + { + "name": "X3", + "fields": [ + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + } + ], + "index": 3 + }, + { + "name": "X4", + "fields": [ + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + } + ], + "index": 4 + }, + { + "name": "X5", + "fields": [ + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + } + ], + "index": 5 + }, + { + "name": "X6", + "fields": [ + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + } + ], + "index": 6 + }, + { + "name": "X7", + "fields": [ + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + } + ], + "index": 7 + }, + { + "name": "X8", + "fields": [ + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + }, + { + "type": 118, + "typeName": "Junction" + } + ], + "index": 8 + } + ] + } + } + } + }, + { + "id": 118, + "type": { + "path": [ + "xcm", + "v3", + "junction", + "Junction" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Parachain", + "fields": [ + { + "type": 119, + "typeName": "u32" + } + ], + "index": 0 + }, + { + "name": "AccountId32", + "fields": [ + { + "name": "network", + "type": 120, + "typeName": "Option" + }, + { + "name": "id", + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 1 + }, + { + "name": "AccountIndex64", + "fields": [ + { + "name": "network", + "type": 120, + "typeName": "Option" + }, + { + "name": "index", + "type": 10, + "typeName": "u64" + } + ], + "index": 2 + }, + { + "name": "AccountKey20", + "fields": [ + { + "name": "network", + "type": 120, + "typeName": "Option" + }, + { + "name": "key", + "type": 122, + "typeName": "[u8; 20]" + } + ], + "index": 3 + }, + { + "name": "PalletInstance", + "fields": [ + { + "type": 2, + "typeName": "u8" + } + ], + "index": 4 + }, + { + "name": "GeneralIndex", + "fields": [ + { + "type": 63, + "typeName": "u128" + } + ], + "index": 5 + }, + { + "name": "GeneralKey", + "fields": [ + { + "name": "length", + "type": 2, + "typeName": "u8" + }, + { + "name": "data", + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 6 + }, + { + "name": "OnlyChild", + "index": 7 + }, + { + "name": "Plurality", + "fields": [ + { + "name": "id", + "type": 123, + "typeName": "BodyId" + }, + { + "name": "part", + "type": 124, + "typeName": "BodyPart" + } + ], + "index": 8 + }, + { + "name": "GlobalConsensus", + "fields": [ + { + "type": 121, + "typeName": "NetworkId" + } + ], + "index": 9 + } + ] + } + } + } + }, + { + "id": 119, + "type": { + "def": { + "compact": { + "type": 4 + } + } + } + }, + { + "id": 120, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 121 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 121 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 121, + "type": { + "path": [ + "xcm", + "v3", + "junction", + "NetworkId" + ], + "def": { + "variant": { + "variants": [ + { + "name": "ByGenesis", + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 0 + }, + { + "name": "ByFork", + "fields": [ + { + "name": "block_number", + "type": 11, + "typeName": "u64" + }, + { + "name": "block_hash", + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 1 + }, + { + "name": "Polkadot", + "index": 2 + }, + { + "name": "Kusama", + "index": 3 + }, + { + "name": "Westend", + "index": 4 + }, + { + "name": "Rococo", + "index": 5 + }, + { + "name": "Wococo", + "index": 6 + }, + { + "name": "Ethereum", + "fields": [ + { + "name": "chain_id", + "type": 10, + "typeName": "u64" + } + ], + "index": 7 + }, + { + "name": "BitcoinCore", + "index": 8 + }, + { + "name": "BitcoinCash", + "index": 9 + } + ] + } + } + } + }, + { + "id": 122, + "type": { + "def": { + "array": { + "len": 20, + "type": 2 + } + } + } + }, + { + "id": 123, + "type": { + "path": [ + "xcm", + "v3", + "junction", + "BodyId" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Unit", + "index": 0 + }, + { + "name": "Moniker", + "fields": [ + { + "type": 17, + "typeName": "[u8; 4]" + } + ], + "index": 1 + }, + { + "name": "Index", + "fields": [ + { + "type": 119, + "typeName": "u32" + } + ], + "index": 2 + }, + { + "name": "Executive", + "index": 3 + }, + { + "name": "Technical", + "index": 4 + }, + { + "name": "Legislative", + "index": 5 + }, + { + "name": "Judicial", + "index": 6 + }, + { + "name": "Defense", + "index": 7 + }, + { + "name": "Administration", + "index": 8 + }, + { + "name": "Treasury", + "index": 9 + } + ] + } + } + } + }, + { + "id": 124, + "type": { + "path": [ + "xcm", + "v3", + "junction", + "BodyPart" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Voice", + "index": 0 + }, + { + "name": "Members", + "fields": [ + { + "name": "count", + "type": 119, + "typeName": "u32" + } + ], + "index": 1 + }, + { + "name": "Fraction", + "fields": [ + { + "name": "nom", + "type": 119, + "typeName": "u32" + }, + { + "name": "denom", + "type": 119, + "typeName": "u32" + } + ], + "index": 2 + }, + { + "name": "AtLeastProportion", + "fields": [ + { + "name": "nom", + "type": 119, + "typeName": "u32" + }, + { + "name": "denom", + "type": 119, + "typeName": "u32" + } + ], + "index": 3 + }, + { + "name": "MoreThanProportion", + "fields": [ + { + "name": "nom", + "type": 119, + "typeName": "u32" + }, + { + "name": "denom", + "type": 119, + "typeName": "u32" + } + ], + "index": 4 + } + ] + } + } + } + }, + { + "id": 125, + "type": { + "path": [ + "xcm", + "v3", + "Xcm" + ], + "params": [ + { + "name": "Call", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 126, + "typeName": "Vec>" + } + ] + } + } + } + }, + { + "id": 126, + "type": { + "def": { + "sequence": { + "type": 127 + } + } + } + }, + { + "id": 127, + "type": { + "path": [ + "xcm", + "v3", + "Instruction" + ], + "params": [ + { + "name": "Call", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "WithdrawAsset", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 0 + }, + { + "name": "ReserveAssetDeposited", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 1 + }, + { + "name": "ReceiveTeleportedAsset", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 2 + }, + { + "name": "QueryResponse", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "response", + "type": 135, + "typeName": "Response" + }, + { + "name": "max_weight", + "type": 9, + "typeName": "Weight" + }, + { + "name": "querier", + "type": 144, + "typeName": "Option" + } + ], + "index": 3 + }, + { + "name": "TransferAsset", + "fields": [ + { + "name": "assets", + "type": 128, + "typeName": "MultiAssets" + }, + { + "name": "beneficiary", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 4 + }, + { + "name": "TransferReserveAsset", + "fields": [ + { + "name": "assets", + "type": 128, + "typeName": "MultiAssets" + }, + { + "name": "dest", + "type": 116, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 125, + "typeName": "Xcm<()>" + } + ], + "index": 5 + }, + { + "name": "Transact", + "fields": [ + { + "name": "origin_kind", + "type": 145, + "typeName": "OriginKind" + }, + { + "name": "require_weight_at_most", + "type": 9, + "typeName": "Weight" + }, + { + "name": "call", + "type": 146, + "typeName": "DoubleEncoded" + } + ], + "index": 6 + }, + { + "name": "HrmpNewChannelOpenRequest", + "fields": [ + { + "name": "sender", + "type": 119, + "typeName": "u32" + }, + { + "name": "max_message_size", + "type": 119, + "typeName": "u32" + }, + { + "name": "max_capacity", + "type": 119, + "typeName": "u32" + } + ], + "index": 7 + }, + { + "name": "HrmpChannelAccepted", + "fields": [ + { + "name": "recipient", + "type": 119, + "typeName": "u32" + } + ], + "index": 8 + }, + { + "name": "HrmpChannelClosing", + "fields": [ + { + "name": "initiator", + "type": 119, + "typeName": "u32" + }, + { + "name": "sender", + "type": 119, + "typeName": "u32" + }, + { + "name": "recipient", + "type": 119, + "typeName": "u32" + } + ], + "index": 9 + }, + { + "name": "ClearOrigin", + "index": 10 + }, + { + "name": "DescendOrigin", + "fields": [ + { + "type": 117, + "typeName": "InteriorMultiLocation" + } + ], + "index": 11 + }, + { + "name": "ReportError", + "fields": [ + { + "type": 147, + "typeName": "QueryResponseInfo" + } + ], + "index": 12 + }, + { + "name": "DepositAsset", + "fields": [ + { + "name": "assets", + "type": 148, + "typeName": "MultiAssetFilter" + }, + { + "name": "beneficiary", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 13 + }, + { + "name": "DepositReserveAsset", + "fields": [ + { + "name": "assets", + "type": 148, + "typeName": "MultiAssetFilter" + }, + { + "name": "dest", + "type": 116, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 125, + "typeName": "Xcm<()>" + } + ], + "index": 14 + }, + { + "name": "ExchangeAsset", + "fields": [ + { + "name": "give", + "type": 148, + "typeName": "MultiAssetFilter" + }, + { + "name": "want", + "type": 128, + "typeName": "MultiAssets" + }, + { + "name": "maximal", + "type": 37, + "typeName": "bool" + } + ], + "index": 15 + }, + { + "name": "InitiateReserveWithdraw", + "fields": [ + { + "name": "assets", + "type": 148, + "typeName": "MultiAssetFilter" + }, + { + "name": "reserve", + "type": 116, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 125, + "typeName": "Xcm<()>" + } + ], + "index": 16 + }, + { + "name": "InitiateTeleport", + "fields": [ + { + "name": "assets", + "type": 148, + "typeName": "MultiAssetFilter" + }, + { + "name": "dest", + "type": 116, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 125, + "typeName": "Xcm<()>" + } + ], + "index": 17 + }, + { + "name": "ReportHolding", + "fields": [ + { + "name": "response_info", + "type": 147, + "typeName": "QueryResponseInfo" + }, + { + "name": "assets", + "type": 148, + "typeName": "MultiAssetFilter" + } + ], + "index": 18 + }, + { + "name": "BuyExecution", + "fields": [ + { + "name": "fees", + "type": 130, + "typeName": "MultiAsset" + }, + { + "name": "weight_limit", + "type": 151, + "typeName": "WeightLimit" + } + ], + "index": 19 + }, + { + "name": "RefundSurplus", + "index": 20 + }, + { + "name": "SetErrorHandler", + "fields": [ + { + "type": 125, + "typeName": "Xcm" + } + ], + "index": 21 + }, + { + "name": "SetAppendix", + "fields": [ + { + "type": 125, + "typeName": "Xcm" + } + ], + "index": 22 + }, + { + "name": "ClearError", + "index": 23 + }, + { + "name": "ClaimAsset", + "fields": [ + { + "name": "assets", + "type": 128, + "typeName": "MultiAssets" + }, + { + "name": "ticket", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 24 + }, + { + "name": "Trap", + "fields": [ + { + "type": 10, + "typeName": "u64" + } + ], + "index": 25 + }, + { + "name": "SubscribeVersion", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "max_response_weight", + "type": 9, + "typeName": "Weight" + } + ], + "index": 26 + }, + { + "name": "UnsubscribeVersion", + "index": 27 + }, + { + "name": "BurnAsset", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 28 + }, + { + "name": "ExpectAsset", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 29 + }, + { + "name": "ExpectOrigin", + "fields": [ + { + "type": 144, + "typeName": "Option" + } + ], + "index": 30 + }, + { + "name": "ExpectError", + "fields": [ + { + "type": 136, + "typeName": "Option<(u32, Error)>" + } + ], + "index": 31 + }, + { + "name": "ExpectTransactStatus", + "fields": [ + { + "type": 142, + "typeName": "MaybeErrorCode" + } + ], + "index": 32 + }, + { + "name": "QueryPallet", + "fields": [ + { + "name": "module_name", + "type": 13, + "typeName": "Vec" + }, + { + "name": "response_info", + "type": 147, + "typeName": "QueryResponseInfo" + } + ], + "index": 33 + }, + { + "name": "ExpectPallet", + "fields": [ + { + "name": "index", + "type": 119, + "typeName": "u32" + }, + { + "name": "name", + "type": 13, + "typeName": "Vec" + }, + { + "name": "module_name", + "type": 13, + "typeName": "Vec" + }, + { + "name": "crate_major", + "type": 119, + "typeName": "u32" + }, + { + "name": "min_crate_minor", + "type": 119, + "typeName": "u32" + } + ], + "index": 34 + }, + { + "name": "ReportTransactStatus", + "fields": [ + { + "type": 147, + "typeName": "QueryResponseInfo" + } + ], + "index": 35 + }, + { + "name": "ClearTransactStatus", + "index": 36 + }, + { + "name": "UniversalOrigin", + "fields": [ + { + "type": 118, + "typeName": "Junction" + } + ], + "index": 37 + }, + { + "name": "ExportMessage", + "fields": [ + { + "name": "network", + "type": 121, + "typeName": "NetworkId" + }, + { + "name": "destination", + "type": 117, + "typeName": "InteriorMultiLocation" + }, + { + "name": "xcm", + "type": 125, + "typeName": "Xcm<()>" + } + ], + "index": 38 + }, + { + "name": "LockAsset", + "fields": [ + { + "name": "asset", + "type": 130, + "typeName": "MultiAsset" + }, + { + "name": "unlocker", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 39 + }, + { + "name": "UnlockAsset", + "fields": [ + { + "name": "asset", + "type": 130, + "typeName": "MultiAsset" + }, + { + "name": "target", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 40 + }, + { + "name": "NoteUnlockable", + "fields": [ + { + "name": "asset", + "type": 130, + "typeName": "MultiAsset" + }, + { + "name": "owner", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 41 + }, + { + "name": "RequestUnlock", + "fields": [ + { + "name": "asset", + "type": 130, + "typeName": "MultiAsset" + }, + { + "name": "locker", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 42 + }, + { + "name": "SetFeesMode", + "fields": [ + { + "name": "jit_withdraw", + "type": 37, + "typeName": "bool" + } + ], + "index": 43 + }, + { + "name": "SetTopic", + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 44 + }, + { + "name": "ClearTopic", + "index": 45 + }, + { + "name": "AliasOrigin", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 46 + }, + { + "name": "UnpaidExecution", + "fields": [ + { + "name": "weight_limit", + "type": 151, + "typeName": "WeightLimit" + }, + { + "name": "check_origin", + "type": 144, + "typeName": "Option" + } + ], + "index": 47 + } + ] + } + } + } + }, + { + "id": 128, + "type": { + "path": [ + "xcm", + "v3", + "multiasset", + "MultiAssets" + ], + "def": { + "composite": { + "fields": [ + { + "type": 129, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 129, + "type": { + "def": { + "sequence": { + "type": 130 + } + } + } + }, + { + "id": 130, + "type": { + "path": [ + "xcm", + "v3", + "multiasset", + "MultiAsset" + ], + "def": { + "composite": { + "fields": [ + { + "name": "id", + "type": 131, + "typeName": "AssetId" + }, + { + "name": "fun", + "type": 132, + "typeName": "Fungibility" + } + ] + } + } + } + }, + { + "id": 131, + "type": { + "path": [ + "xcm", + "v3", + "multiasset", + "AssetId" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Concrete", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 0 + }, + { + "name": "Abstract", + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 132, + "type": { + "path": [ + "xcm", + "v3", + "multiasset", + "Fungibility" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Fungible", + "fields": [ + { + "type": 63, + "typeName": "u128" + } + ], + "index": 0 + }, + { + "name": "NonFungible", + "fields": [ + { + "type": 133, + "typeName": "AssetInstance" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 133, + "type": { + "path": [ + "xcm", + "v3", + "multiasset", + "AssetInstance" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Undefined", + "index": 0 + }, + { + "name": "Index", + "fields": [ + { + "type": 63, + "typeName": "u128" + } + ], + "index": 1 + }, + { + "name": "Array4", + "fields": [ + { + "type": 17, + "typeName": "[u8; 4]" + } + ], + "index": 2 + }, + { + "name": "Array8", + "fields": [ + { + "type": 134, + "typeName": "[u8; 8]" + } + ], + "index": 3 + }, + { + "name": "Array16", + "fields": [ + { + "type": 33, + "typeName": "[u8; 16]" + } + ], + "index": 4 + }, + { + "name": "Array32", + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 5 + } + ] + } + } + } + }, + { + "id": 134, + "type": { + "def": { + "array": { + "len": 8, + "type": 2 + } + } + } + }, + { + "id": 135, + "type": { + "path": [ + "xcm", + "v3", + "Response" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Null", + "index": 0 + }, + { + "name": "Assets", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 1 + }, + { + "name": "ExecutionResult", + "fields": [ + { + "type": 136, + "typeName": "Option<(u32, Error)>" + } + ], + "index": 2 + }, + { + "name": "Version", + "fields": [ + { + "type": 4, + "typeName": "super::Version" + } + ], + "index": 3 + }, + { + "name": "PalletsInfo", + "fields": [ + { + "type": 138, + "typeName": "BoundedVec" + } + ], + "index": 4 + }, + { + "name": "DispatchResult", + "fields": [ + { + "type": 142, + "typeName": "MaybeErrorCode" + } + ], + "index": 5 + } + ] + } + } + } + }, + { + "id": 136, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 137 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 137 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 137, + "type": { + "def": { + "tuple": [ + 4, + 115 + ] + } + } + }, + { + "id": 138, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 139 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 141, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 139, + "type": { + "path": [ + "xcm", + "v3", + "PalletInfo" + ], + "def": { + "composite": { + "fields": [ + { + "name": "index", + "type": 119, + "typeName": "u32" + }, + { + "name": "name", + "type": 140, + "typeName": "BoundedVec" + }, + { + "name": "module_name", + "type": 140, + "typeName": "BoundedVec" + }, + { + "name": "major", + "type": 119, + "typeName": "u32" + }, + { + "name": "minor", + "type": 119, + "typeName": "u32" + }, + { + "name": "patch", + "type": 119, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 140, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 141, + "type": { + "def": { + "sequence": { + "type": 139 + } + } + } + }, + { + "id": 142, + "type": { + "path": [ + "xcm", + "v3", + "MaybeErrorCode" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Success", + "index": 0 + }, + { + "name": "Error", + "fields": [ + { + "type": 143, + "typeName": "BoundedVec" + } + ], + "index": 1 + }, + { + "name": "TruncatedError", + "fields": [ + { + "type": 143, + "typeName": "BoundedVec" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 143, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 144, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 116 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 116 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 145, + "type": { + "path": [ + "xcm", + "v2", + "OriginKind" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Native", + "index": 0 + }, + { + "name": "SovereignAccount", + "index": 1 + }, + { + "name": "Superuser", + "index": 2 + }, + { + "name": "Xcm", + "index": 3 + } + ] + } + } + } + }, + { + "id": 146, + "type": { + "path": [ + "xcm", + "double_encoded", + "DoubleEncoded" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "encoded", + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 147, + "type": { + "path": [ + "xcm", + "v3", + "QueryResponseInfo" + ], + "def": { + "composite": { + "fields": [ + { + "name": "destination", + "type": 116, + "typeName": "MultiLocation" + }, + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "max_weight", + "type": 9, + "typeName": "Weight" + } + ] + } + } + } + }, + { + "id": 148, + "type": { + "path": [ + "xcm", + "v3", + "multiasset", + "MultiAssetFilter" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Definite", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 0 + }, + { + "name": "Wild", + "fields": [ + { + "type": 149, + "typeName": "WildMultiAsset" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 149, + "type": { + "path": [ + "xcm", + "v3", + "multiasset", + "WildMultiAsset" + ], + "def": { + "variant": { + "variants": [ + { + "name": "All", + "index": 0 + }, + { + "name": "AllOf", + "fields": [ + { + "name": "id", + "type": 131, + "typeName": "AssetId" + }, + { + "name": "fun", + "type": 150, + "typeName": "WildFungibility" + } + ], + "index": 1 + }, + { + "name": "AllCounted", + "fields": [ + { + "type": 119, + "typeName": "u32" + } + ], + "index": 2 + }, + { + "name": "AllOfCounted", + "fields": [ + { + "name": "id", + "type": 131, + "typeName": "AssetId" + }, + { + "name": "fun", + "type": 150, + "typeName": "WildFungibility" + }, + { + "name": "count", + "type": 119, + "typeName": "u32" + } + ], + "index": 3 + } + ] + } + } + } + }, + { + "id": 150, + "type": { + "path": [ + "xcm", + "v3", + "multiasset", + "WildFungibility" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Fungible", + "index": 0 + }, + { + "name": "NonFungible", + "index": 1 + } + ] + } + } + } + }, + { + "id": 151, + "type": { + "path": [ + "xcm", + "v3", + "WeightLimit" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Unlimited", + "index": 0 + }, + { + "name": "Limited", + "fields": [ + { + "type": 9, + "typeName": "Weight" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 152, + "type": { + "path": [ + "xcm", + "VersionedMultiAssets" + ], + "def": { + "variant": { + "variants": [ + { + "name": "V2", + "fields": [ + { + "type": 153, + "typeName": "v2::MultiAssets" + } + ], + "index": 1 + }, + { + "name": "V3", + "fields": [ + { + "type": 128, + "typeName": "v3::MultiAssets" + } + ], + "index": 3 + } + ] + } + } + } + }, + { + "id": 153, + "type": { + "path": [ + "xcm", + "v2", + "multiasset", + "MultiAssets" + ], + "def": { + "composite": { + "fields": [ + { + "type": 154, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 154, + "type": { + "def": { + "sequence": { + "type": 155 + } + } + } + }, + { + "id": 155, + "type": { + "path": [ + "xcm", + "v2", + "multiasset", + "MultiAsset" + ], + "def": { + "composite": { + "fields": [ + { + "name": "id", + "type": 156, + "typeName": "AssetId" + }, + { + "name": "fun", + "type": 164, + "typeName": "Fungibility" + } + ] + } + } + } + }, + { + "id": 156, + "type": { + "path": [ + "xcm", + "v2", + "multiasset", + "AssetId" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Concrete", + "fields": [ + { + "type": 157, + "typeName": "MultiLocation" + } + ], + "index": 0 + }, + { + "name": "Abstract", + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 157, + "type": { + "path": [ + "xcm", + "v2", + "multilocation", + "MultiLocation" + ], + "def": { + "composite": { + "fields": [ + { + "name": "parents", + "type": 2, + "typeName": "u8" + }, + { + "name": "interior", + "type": 158, + "typeName": "Junctions" + } + ] + } + } + } + }, + { + "id": 158, + "type": { + "path": [ + "xcm", + "v2", + "multilocation", + "Junctions" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Here", + "index": 0 + }, + { + "name": "X1", + "fields": [ + { + "type": 159, + "typeName": "Junction" + } + ], + "index": 1 + }, + { + "name": "X2", + "fields": [ + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + } + ], + "index": 2 + }, + { + "name": "X3", + "fields": [ + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + } + ], + "index": 3 + }, + { + "name": "X4", + "fields": [ + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + } + ], + "index": 4 + }, + { + "name": "X5", + "fields": [ + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + } + ], + "index": 5 + }, + { + "name": "X6", + "fields": [ + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + } + ], + "index": 6 + }, + { + "name": "X7", + "fields": [ + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + } + ], + "index": 7 + }, + { + "name": "X8", + "fields": [ + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + }, + { + "type": 159, + "typeName": "Junction" + } + ], + "index": 8 + } + ] + } + } + } + }, + { + "id": 159, + "type": { + "path": [ + "xcm", + "v2", + "junction", + "Junction" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Parachain", + "fields": [ + { + "type": 119, + "typeName": "u32" + } + ], + "index": 0 + }, + { + "name": "AccountId32", + "fields": [ + { + "name": "network", + "type": 160, + "typeName": "NetworkId" + }, + { + "name": "id", + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 1 + }, + { + "name": "AccountIndex64", + "fields": [ + { + "name": "network", + "type": 160, + "typeName": "NetworkId" + }, + { + "name": "index", + "type": 10, + "typeName": "u64" + } + ], + "index": 2 + }, + { + "name": "AccountKey20", + "fields": [ + { + "name": "network", + "type": 160, + "typeName": "NetworkId" + }, + { + "name": "key", + "type": 122, + "typeName": "[u8; 20]" + } + ], + "index": 3 + }, + { + "name": "PalletInstance", + "fields": [ + { + "type": 2, + "typeName": "u8" + } + ], + "index": 4 + }, + { + "name": "GeneralIndex", + "fields": [ + { + "type": 63, + "typeName": "u128" + } + ], + "index": 5 + }, + { + "name": "GeneralKey", + "fields": [ + { + "type": 161, + "typeName": "WeakBoundedVec>" + } + ], + "index": 6 + }, + { + "name": "OnlyChild", + "index": 7 + }, + { + "name": "Plurality", + "fields": [ + { + "name": "id", + "type": 162, + "typeName": "BodyId" + }, + { + "name": "part", + "type": 163, + "typeName": "BodyPart" + } + ], + "index": 8 + } + ] + } + } + } + }, + { + "id": 160, + "type": { + "path": [ + "xcm", + "v2", + "NetworkId" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Any", + "index": 0 + }, + { + "name": "Named", + "fields": [ + { + "type": 161, + "typeName": "WeakBoundedVec>" + } + ], + "index": 1 + }, + { + "name": "Polkadot", + "index": 2 + }, + { + "name": "Kusama", + "index": 3 + } + ] + } + } + } + }, + { + "id": 161, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 162, + "type": { + "path": [ + "xcm", + "v2", + "BodyId" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Unit", + "index": 0 + }, + { + "name": "Named", + "fields": [ + { + "type": 161, + "typeName": "WeakBoundedVec>" + } + ], + "index": 1 + }, + { + "name": "Index", + "fields": [ + { + "type": 119, + "typeName": "u32" + } + ], + "index": 2 + }, + { + "name": "Executive", + "index": 3 + }, + { + "name": "Technical", + "index": 4 + }, + { + "name": "Legislative", + "index": 5 + }, + { + "name": "Judicial", + "index": 6 + }, + { + "name": "Defense", + "index": 7 + }, + { + "name": "Administration", + "index": 8 + }, + { + "name": "Treasury", + "index": 9 + } + ] + } + } + } + }, + { + "id": 163, + "type": { + "path": [ + "xcm", + "v2", + "BodyPart" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Voice", + "index": 0 + }, + { + "name": "Members", + "fields": [ + { + "name": "count", + "type": 119, + "typeName": "u32" + } + ], + "index": 1 + }, + { + "name": "Fraction", + "fields": [ + { + "name": "nom", + "type": 119, + "typeName": "u32" + }, + { + "name": "denom", + "type": 119, + "typeName": "u32" + } + ], + "index": 2 + }, + { + "name": "AtLeastProportion", + "fields": [ + { + "name": "nom", + "type": 119, + "typeName": "u32" + }, + { + "name": "denom", + "type": 119, + "typeName": "u32" + } + ], + "index": 3 + }, + { + "name": "MoreThanProportion", + "fields": [ + { + "name": "nom", + "type": 119, + "typeName": "u32" + }, + { + "name": "denom", + "type": 119, + "typeName": "u32" + } + ], + "index": 4 + } + ] + } + } + } + }, + { + "id": 164, + "type": { + "path": [ + "xcm", + "v2", + "multiasset", + "Fungibility" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Fungible", + "fields": [ + { + "type": 63, + "typeName": "u128" + } + ], + "index": 0 + }, + { + "name": "NonFungible", + "fields": [ + { + "type": 165, + "typeName": "AssetInstance" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 165, + "type": { + "path": [ + "xcm", + "v2", + "multiasset", + "AssetInstance" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Undefined", + "index": 0 + }, + { + "name": "Index", + "fields": [ + { + "type": 63, + "typeName": "u128" + } + ], + "index": 1 + }, + { + "name": "Array4", + "fields": [ + { + "type": 17, + "typeName": "[u8; 4]" + } + ], + "index": 2 + }, + { + "name": "Array8", + "fields": [ + { + "type": 134, + "typeName": "[u8; 8]" + } + ], + "index": 3 + }, + { + "name": "Array16", + "fields": [ + { + "type": 33, + "typeName": "[u8; 16]" + } + ], + "index": 4 + }, + { + "name": "Array32", + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 5 + }, + { + "name": "Blob", + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ], + "index": 6 + } + ] + } + } + } + }, + { + "id": 166, + "type": { + "path": [ + "xcm", + "VersionedMultiLocation" + ], + "def": { + "variant": { + "variants": [ + { + "name": "V2", + "fields": [ + { + "type": 157, + "typeName": "v2::MultiLocation" + } + ], + "index": 1 + }, + { + "name": "V3", + "fields": [ + { + "type": 116, + "typeName": "v3::MultiLocation" + } + ], + "index": 3 + } + ] + } + } + } + }, + { + "id": 167, + "type": { + "path": [ + "pallet_message_queue", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ProcessingFailed", + "fields": [ + { + "name": "id", + "type": 1, + "typeName": "[u8; 32]" + }, + { + "name": "origin", + "type": 168, + "typeName": "MessageOriginOf" + }, + { + "name": "error", + "type": 170, + "typeName": "ProcessMessageError" + } + ], + "index": 0, + "docs": [ + "Message discarded due to an error in the `MessageProcessor` (usually a format error)." + ] + }, + { + "name": "Processed", + "fields": [ + { + "name": "id", + "type": 1, + "typeName": "[u8; 32]" + }, + { + "name": "origin", + "type": 168, + "typeName": "MessageOriginOf" + }, + { + "name": "weight_used", + "type": 9, + "typeName": "Weight" + }, + { + "name": "success", + "type": 37, + "typeName": "bool" + } + ], + "index": 1, + "docs": [ + "Message is processed." + ] + }, + { + "name": "OverweightEnqueued", + "fields": [ + { + "name": "id", + "type": 1, + "typeName": "[u8; 32]" + }, + { + "name": "origin", + "type": 168, + "typeName": "MessageOriginOf" + }, + { + "name": "page_index", + "type": 4, + "typeName": "PageIndex" + }, + { + "name": "message_index", + "type": 4, + "typeName": "T::Size" + } + ], + "index": 2, + "docs": [ + "Message placed in overweight queue." + ] + }, + { + "name": "PageReaped", + "fields": [ + { + "name": "origin", + "type": 168, + "typeName": "MessageOriginOf" + }, + { + "name": "index", + "type": 4, + "typeName": "PageIndex" + } + ], + "index": 3, + "docs": [ + "This page was reaped." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 168, + "type": { + "path": [ + "polkadot_runtime_parachains", + "inclusion", + "AggregateMessageOrigin" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Ump", + "fields": [ + { + "type": 169, + "typeName": "UmpQueueId" + } + ], + "index": 0 + } + ] + } + } + } + }, + { + "id": 169, + "type": { + "path": [ + "polkadot_runtime_parachains", + "inclusion", + "UmpQueueId" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Para", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 0 + } + ] + } + } + } + }, + { + "id": 170, + "type": { + "path": [ + "frame_support", + "traits", + "messages", + "ProcessMessageError" + ], + "def": { + "variant": { + "variants": [ + { + "name": "BadFormat", + "index": 0 + }, + { + "name": "Corrupt", + "index": 1 + }, + { + "name": "Unsupported", + "index": 2 + }, + { + "name": "Overweight", + "fields": [ + { + "type": 9, + "typeName": "Weight" + } + ], + "index": 3 + }, + { + "name": "Yield", + "index": 4 + } + ] + } + } + } + }, + { + "id": 171, + "type": { + "path": [ + "polkadot_runtime_common", + "assigned_slots", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "PermanentSlotAssigned", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 0, + "docs": [ + "A para was assigned a permanent parachain slot" + ] + }, + { + "name": "TemporarySlotAssigned", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 1, + "docs": [ + "A para was assigned a temporary parachain slot" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 172, + "type": { + "path": [ + "pallet_validator_manager", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ValidatorsRegistered", + "fields": [ + { + "type": 78, + "typeName": "Vec" + } + ], + "index": 0, + "docs": [ + "New validators were added to the set." + ] + }, + { + "name": "ValidatorsDeregistered", + "fields": [ + { + "type": 78, + "typeName": "Vec" + } + ], + "index": 1, + "docs": [ + "Validators were removed from the set." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 173, + "type": { + "path": [ + "pallet_multi_tokens", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "CollectionCreated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The id of the [`Collection`](ep_multi_tokens::Collection)" + ] + }, + { + "name": "owner", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The owner of the [`Collection`](ep_multi_tokens::Collection)" + ] + } + ], + "index": 0, + "docs": [ + "A new collection was created" + ] + }, + { + "name": "CollectionDestroyed", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "id of collection destroyed" + ] + }, + { + "name": "caller", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) that destroyed the collection" + ] + } + ], + "index": 1, + "docs": [ + "A collection was destroyed." + ] + }, + { + "name": "CollectionMutated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "[`CollectionId`](Config::CollectionId) of the", + "[`Collection`](ep_multi_tokens::Collection)" + ] + }, + { + "name": "mutation", + "type": 174, + "typeName": "T::CollectionMutation", + "docs": [ + "The mutation that was applied to the collection" + ] + } + ], + "index": 2, + "docs": [ + "A collection was mutated" + ] + }, + { + "name": "Minted", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "[`CollectionId`](Config::CollectionId) of minted token" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) minted" + ] + }, + { + "name": "issuer", + "type": 182, + "typeName": "RootOrSigned", + "docs": [ + "issuer of minted token" + ] + }, + { + "name": "recipient", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The receiver of the token" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "the amount of units minted" + ] + } + ], + "index": 3, + "docs": [ + "Units of a token were minted" + ] + }, + { + "name": "TokenCreated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) minted" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) minted" + ] + }, + { + "name": "issuer", + "type": 182, + "typeName": "RootOrSigned", + "docs": [ + "issuer of minted [`Token`](ep_multi_tokens::Token)" + ] + }, + { + "name": "initial_supply", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "the initial supply of the [`Token`](ep_multi_tokens::Token)" + ] + } + ], + "index": 4, + "docs": [ + "A token was created" + ] + }, + { + "name": "TokenMutated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) [`Token`](ep_multi_tokens::Token)", + "belongs to" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "Id of the [`Token`](ep_multi_tokens::Token) mutated" + ] + }, + { + "name": "mutation", + "type": 183, + "typeName": "T::TokenMutation", + "docs": [ + "mutation that was applied to the [`Token`](ep_multi_tokens::Token)" + ] + } + ], + "index": 5, + "docs": [ + "A token was mutated" + ] + }, + { + "name": "Burned", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "collection id of tokens burned" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "the token id that was burned" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "the account the tokens were burned from" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "The amount that was burned for each token_id" + ] + } + ], + "index": 6, + "docs": [ + "Units of a token were burned" + ] + }, + { + "name": "TokenDestroyed", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) destroyed" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) destroyed" + ] + }, + { + "name": "caller", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "the [`AccountId`](frame_system::Config::AccountId) that destroyed the", + "[`Token`](ep_multi_tokens::Token)" + ] + } + ], + "index": 7, + "docs": [ + "A token was destroyed" + ] + }, + { + "name": "Transferred", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "collection_id of transferred collection" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "[`TokenId`](Config::TokenId) transferred" + ] + }, + { + "name": "operator", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) that performed the transfer" + ] + }, + { + "name": "from", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "transaction sender" + ] + }, + { + "name": "to", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "transaction recipient" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "number of units transferred" + ] + } + ], + "index": 8, + "docs": [ + "Units of a token were transferred" + ] + }, + { + "name": "Frozen", + "fields": [ + { + "type": 197, + "typeName": "FreezeOf" + } + ], + "index": 9, + "docs": [ + "Collection, token or account was frozen" + ] + }, + { + "name": "Thawed", + "fields": [ + { + "type": 197, + "typeName": "FreezeOf" + } + ], + "index": 10, + "docs": [ + "Collection, token or account was unfrozen" + ] + }, + { + "name": "AttributeSet", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "collectionId of collection modified" + ] + }, + { + "name": "token_id", + "type": 77, + "typeName": "Option", + "docs": [ + "[`TokenId`](Config::TokenId) of [`Token`](ep_multi_tokens::Token) modified" + ] + }, + { + "name": "key", + "type": 201, + "typeName": "T::AttributeKey", + "docs": [ + "key of attribute set" + ] + }, + { + "name": "value", + "type": 202, + "typeName": "T::AttributeValue", + "docs": [ + "value of attribute set" + ] + } + ], + "index": 11, + "docs": [ + "New attribute has been set" + ] + }, + { + "name": "AttributeRemoved", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "collectionId of collection modified" + ] + }, + { + "name": "token_id", + "type": 77, + "typeName": "Option", + "docs": [ + "tokenid of token modified" + ] + }, + { + "name": "key", + "type": 201, + "typeName": "T::AttributeKey", + "docs": [ + "key of attribute cleared" + ] + } + ], + "index": 12, + "docs": [ + "An attribute has been removed" + ] + }, + { + "name": "Approved", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The collection that was approved" + ] + }, + { + "name": "token_id", + "type": 77, + "typeName": "Option", + "docs": [ + "The token that was approved" + ] + }, + { + "name": "owner", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that made the approval" + ] + }, + { + "name": "operator", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that was approved to operate" + ] + }, + { + "name": "amount", + "type": 77, + "typeName": "Option", + "docs": [ + "The amount approved for" + ] + }, + { + "name": "expiration", + "type": 73, + "typeName": "T::Expiration", + "docs": [ + "The expiration of the approval" + ] + } + ], + "index": 13, + "docs": [ + "An approval took place. If `token_id` is `None`, it applies to the whole collection." + ] + }, + { + "name": "Unapproved", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The collection that was unapproved" + ] + }, + { + "name": "token_id", + "type": 77, + "typeName": "Option", + "docs": [ + "The token that was unapproved" + ] + }, + { + "name": "owner", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that `operator` was unapproved for" + ] + }, + { + "name": "operator", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that was unapproved to operate" + ] + } + ], + "index": 14, + "docs": [ + "An unapproval took place. If `token_id` is `None`, it applies to the collection." + ] + }, + { + "name": "CollectionAccountCreated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) for which the account is created" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the account" + ] + } + ], + "index": 15, + "docs": [ + "A new collection account was created" + ] + }, + { + "name": "TokenAccountCreated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) for which the account is created" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) for which the account is created" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the account" + ] + }, + { + "name": "balance", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "The balance that this account holds" + ] + } + ], + "index": 16, + "docs": [ + "A new token account was created" + ] + }, + { + "name": "CollectionAccountDestroyed", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) of the destroyed account" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the destroyed account" + ] + } + ], + "index": 17, + "docs": [ + "A collection account was destroyed" + ] + }, + { + "name": "TokenAccountDestroyed", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) for which the account is created" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) fof the destroyed account" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the destroyed account" + ] + } + ], + "index": 18, + "docs": [ + "A token account was destroyed" + ] + }, + { + "name": "Reserved", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The collection in which token was reserved" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The token that was reserved" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that reserved the tokens" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "The amount that was reserved" + ] + }, + { + "name": "reserve_id", + "type": 203, + "typeName": "Option", + "docs": [ + "The identifier of the reserves" + ] + } + ], + "index": 19, + "docs": [ + "Token units were reserved" + ] + }, + { + "name": "Unreserved", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) in which token was unreserved" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) that was unreserved" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that unreserved the tokens" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "The amount that was unreserved" + ] + }, + { + "name": "reserve_id", + "type": 203, + "typeName": "Option", + "docs": [ + "The identifier of the unreserved tokens" + ] + } + ], + "index": 20, + "docs": [ + "Token units were unreserved" + ] + }, + { + "name": "MovedReserves", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) in which token was moved" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) that was moved" + ] + }, + { + "name": "source", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that reserves were moved from" + ] + }, + { + "name": "destination", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that received the moved reserves" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "The amount that was moved" + ] + }, + { + "name": "reserve_id", + "type": 203, + "typeName": "Option", + "docs": [ + "The identifier of the moved reserves" + ] + } + ], + "index": 21, + "docs": [ + "Reserved token units were moved" + ] + }, + { + "name": "ReserveRepatriated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) in which token was moved" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) that was moved" + ] + }, + { + "name": "source", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that reserves were moved from" + ] + }, + { + "name": "destination", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that received the moved reserves" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "The amount that was moved" + ] + }, + { + "name": "reserve_id", + "type": 203, + "typeName": "Option", + "docs": [ + "The identifier of the moved reserves" + ] + } + ], + "index": 22, + "docs": [ + "Reserved token units were transferred" + ] + }, + { + "name": "BalanceSet", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) for which balance was set" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) for which balance was set" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) that balance was set for" + ] + }, + { + "name": "balance", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "The balance of the account" + ] + }, + { + "name": "reserved_balance", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "The reserved balance of the account" + ] + } + ], + "index": 23, + "docs": [ + "The balance of an account was set" + ] + }, + { + "name": "Withdraw", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) of the tokens withdrawn" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) of the tokens withdrawn" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) withdrawn from" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "The amount of tokens withdrawn" + ] + } + ], + "index": 24, + "docs": [ + "Token units were withdrawn" + ] + }, + { + "name": "Deposit", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) of the tokens deposited" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) of the tokens deposited" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) deposited to" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "The amount of tokens deposited" + ] + } + ], + "index": 25, + "docs": [ + "Token units were deposited" + ] + }, + { + "name": "Slashed", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) of the tokens slashed" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) of the tokens slashed" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) slashed" + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "T::TokenBalance", + "docs": [ + "The amount of tokens slashed" + ] + } + ], + "index": 26, + "docs": [ + "An amount of tokens were slashed from account" + ] + }, + { + "name": "CollectionUpdated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) for which the value is set" + ] + }, + { + "name": "value", + "type": 204, + "typeName": "Option>", + "docs": [ + "new value of Collection storage" + ] + } + ], + "index": 27, + "docs": [ + "Collection storage was set to `value`" + ] + }, + { + "name": "TokenUpdated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) for which the value is set" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) for which the value is set" + ] + }, + { + "name": "value", + "type": 217, + "typeName": "Option>", + "docs": [ + "new value of Token storage" + ] + } + ], + "index": 28, + "docs": [ + "Token storage was set to `value`" + ] + }, + { + "name": "NextCollectionIdUpdated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId" + } + ], + "index": 29, + "docs": [ + "NextCollectionId storage was set to `collection_id`" + ] + }, + { + "name": "CollectionAccountUpdated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) for which the value is set" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) that owned the token account" + ] + }, + { + "name": "value", + "type": 222, + "typeName": "Option>", + "docs": [ + "new value of TokenAccount storage" + ] + } + ], + "index": 30, + "docs": [ + "TokenAccount storage was set to `value`" + ] + }, + { + "name": "TokenAccountUpdated", + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "T::CollectionId", + "docs": [ + "The [`CollectionId`](Config::CollectionId) for which the value is set" + ] + }, + { + "name": "token_id", + "type": 6, + "typeName": "T::TokenId", + "docs": [ + "The [`TokenId`](Config::TokenId) of the destroyed account" + ] + }, + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) that owned the token account" + ] + }, + { + "name": "value", + "type": 229, + "typeName": "Option>", + "docs": [ + "new value of TokenAccount storage" + ] + } + ], + "index": 31, + "docs": [ + "TokenAccount storage was set to `value`" + ] + }, + { + "name": "MigrationStatusUpdated", + "fields": [ + { + "name": "stage", + "type": 243, + "typeName": "MigrationStage" + } + ], + "index": 32, + "docs": [ + "Migration stage updated" + ] + }, + { + "name": "ClaimedCollections", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that received the claim" + ] + }, + { + "name": "ethereum_address", + "type": 244, + "typeName": "EthereumAddress", + "docs": [ + "The ethereum address" + ] + }, + { + "name": "collection_ids", + "type": 245, + "typeName": "Vec>", + "docs": [ + "The collection ids that were claimed" + ] + } + ], + "index": 33, + "docs": [ + "Collections were claimed" + ] + }, + { + "name": "ClaimedTokens", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that received the tokens" + ] + }, + { + "name": "ethereum_address", + "type": 244, + "typeName": "EthereumAddress", + "docs": [ + "The ethereum address" + ] + }, + { + "name": "asset_ids", + "type": 247, + "typeName": "Vec>", + "docs": [ + "The asset ids that were claimed" + ] + }, + { + "name": "more_tokens_remain", + "type": 37, + "typeName": "bool", + "docs": [ + "This is true if there are still more tokens to claim" + ] + } + ], + "index": 34, + "docs": [ + "Tokens were claimed" + ] + }, + { + "name": "ClaimTokensInitiated", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account that will receive the tokens" + ] + }, + { + "name": "ethereum_address", + "type": 244, + "typeName": "EthereumAddress", + "docs": [ + "The ethereum address" + ] + } + ], + "index": 35, + "docs": [ + "Claims tokens initiated" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 174, + "type": { + "path": [ + "ep_multi_tokens", + "collection", + "DefaultCollectionMutation" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Royalty", + "type": 175 + }, + { + "name": "ExplicitRoyaltyCurrencies", + "type": 176 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "owner", + "type": 36, + "typeName": "Option" + }, + { + "name": "royalty", + "type": 179, + "typeName": "ShouldMutate>" + }, + { + "name": "explicit_royalty_currencies", + "type": 181, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 175, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "market", + "DefaultRoyalty" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "beneficiary", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "percentage", + "type": 44, + "typeName": "Perbill" + } + ] + } + } + } + }, + { + "id": 176, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 177 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 178, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 177, + "type": { + "path": [ + "ep_multi_tokens", + "token", + "AssetId" + ], + "params": [ + { + "name": "CollectionId", + "type": 6 + }, + { + "name": "TokenId", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "CollectionId" + }, + { + "name": "token_id", + "type": 63, + "typeName": "TokenId" + } + ] + } + } + } + }, + { + "id": 178, + "type": { + "def": { + "sequence": { + "type": 177 + } + } + } + }, + { + "id": 179, + "type": { + "path": [ + "ep_multi_tokens", + "types", + "ShouldMutate" + ], + "params": [ + { + "name": "T", + "type": 180 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NoMutation", + "index": 0 + }, + { + "name": "SomeMutation", + "fields": [ + { + "type": 180, + "typeName": "T" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 180, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 175 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 175 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 181, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 176 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 176 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 182, + "type": { + "path": [ + "ep_multi_tokens", + "types", + "RootOrSigned" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Root", + "index": 0 + }, + { + "name": "Signed", + "fields": [ + { + "type": 0, + "typeName": "AccountId" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 183, + "type": { + "path": [ + "ep_multi_tokens", + "token", + "DefaultTokenMutation" + ], + "params": [ + { + "name": "Royalty", + "type": 175 + }, + { + "name": "TokenMetadata", + "type": 184 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "behavior", + "type": 192, + "typeName": "ShouldMutate>>" + }, + { + "name": "listing_forbidden", + "type": 195, + "typeName": "ShouldMutate" + }, + { + "name": "metadata", + "type": 196, + "typeName": "ShouldMutate" + } + ] + } + } + } + }, + { + "id": 184, + "type": { + "path": [ + "ep_multi_tokens", + "frame", + "DefaultTokenMetadata" + ], + "params": [ + { + "name": "ForeignTokenMetadata", + "type": 185 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Native", + "index": 0 + }, + { + "name": "Foreign", + "fields": [ + { + "type": 185, + "typeName": "ForeignTokenMetadata" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 185, + "type": { + "path": [ + "ep_multi_tokens", + "frame", + "DefaultForeignTokenMetadata" + ], + "params": [ + { + "name": "TokenBalance", + "type": 6 + }, + { + "name": "Name", + "type": 186 + }, + { + "name": "Symbol", + "type": 189 + }, + { + "name": "Location", + "type": 116 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "decimal_count", + "type": 119, + "typeName": "u32" + }, + { + "name": "name", + "type": 186, + "typeName": "Name" + }, + { + "name": "symbol", + "type": 189, + "typeName": "Symbol" + }, + { + "name": "location", + "type": 144, + "typeName": "Option" + }, + { + "name": "units_per_second", + "type": 77, + "typeName": "Option" + }, + { + "name": "preminted_supply", + "type": 63, + "typeName": "TokenBalance" + } + ] + } + } + } + }, + { + "id": 186, + "type": { + "path": [ + "ep_core", + "frame", + "types", + "BoundedString" + ], + "params": [ + { + "name": "MaxLength", + "type": 187 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 188, + "typeName": "BoundedVec" + } + ] + } + } + } + }, + { + "id": 187, + "type": { + "path": [ + "enjin_runtime", + "ForeignTokenNameLength" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 188, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 189, + "type": { + "path": [ + "ep_core", + "frame", + "types", + "BoundedString" + ], + "params": [ + { + "name": "MaxLength", + "type": 190 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 191, + "typeName": "BoundedVec" + } + ] + } + } + } + }, + { + "id": 190, + "type": { + "path": [ + "enjin_runtime", + "ForeignTokenSymbolLength" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 191, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 192, + "type": { + "path": [ + "ep_multi_tokens", + "types", + "ShouldMutate" + ], + "params": [ + { + "name": "T", + "type": 193 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NoMutation", + "index": 0 + }, + { + "name": "SomeMutation", + "fields": [ + { + "type": 193, + "typeName": "T" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 193, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 194 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 194 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 194, + "type": { + "path": [ + "ep_multi_tokens", + "token", + "TokenMarketBehavior" + ], + "params": [ + { + "name": "Royalty", + "type": 175 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "HasRoyalty", + "fields": [ + { + "type": 175, + "typeName": "Royalty" + } + ], + "index": 0 + }, + { + "name": "IsCurrency", + "index": 1 + } + ] + } + } + } + }, + { + "id": 195, + "type": { + "path": [ + "ep_multi_tokens", + "types", + "ShouldMutate" + ], + "params": [ + { + "name": "T", + "type": 37 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NoMutation", + "index": 0 + }, + { + "name": "SomeMutation", + "fields": [ + { + "type": 37, + "typeName": "T" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 196, + "type": { + "path": [ + "ep_multi_tokens", + "types", + "ShouldMutate" + ], + "params": [ + { + "name": "T", + "type": 184 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NoMutation", + "index": 0 + }, + { + "name": "SomeMutation", + "fields": [ + { + "type": 184, + "typeName": "T" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 197, + "type": { + "path": [ + "ep_multi_tokens", + "types", + "Freeze" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "CollectionId", + "type": 6 + }, + { + "name": "TokenId", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "CollectionId" + }, + { + "name": "freeze_type", + "type": 198, + "typeName": "FreezeType" + } + ] + } + } + } + }, + { + "id": 198, + "type": { + "path": [ + "ep_multi_tokens", + "types", + "FreezeType" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "TokenId", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Collection", + "index": 0 + }, + { + "name": "Token", + "fields": [ + { + "name": "token_id", + "type": 6, + "typeName": "TokenId" + }, + { + "name": "freeze_state", + "type": 199, + "typeName": "Option" + } + ], + "index": 1 + }, + { + "name": "CollectionAccount", + "fields": [ + { + "type": 0, + "typeName": "AccountId" + } + ], + "index": 2 + }, + { + "name": "TokenAccount", + "fields": [ + { + "name": "token_id", + "type": 63, + "typeName": "TokenId" + }, + { + "name": "account_id", + "type": 0, + "typeName": "AccountId" + } + ], + "index": 3 + } + ] + } + } + } + }, + { + "id": 199, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 200 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 200 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 200, + "type": { + "path": [ + "ep_multi_tokens", + "token", + "FreezeState" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Permanent", + "index": 0 + }, + { + "name": "Temporary", + "index": 1 + }, + { + "name": "Never", + "index": 2 + } + ] + } + } + } + }, + { + "id": 201, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 202, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 203, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 134 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 134 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 204, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 205 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 205 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 205, + "type": { + "path": [ + "ep_multi_tokens", + "collection", + "Collection" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Policy", + "type": 206 + }, + { + "name": "ExplicitRoyaltyCurrencies", + "type": 213 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "owner", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "policy", + "type": 206, + "typeName": "Policy" + }, + { + "name": "token_count", + "type": 10, + "typeName": "TokenCount" + }, + { + "name": "attribute_count", + "type": 119, + "typeName": "u32" + }, + { + "name": "total_deposit", + "type": 63, + "typeName": "Balance" + }, + { + "name": "explicit_royalty_currencies", + "type": 213, + "typeName": "ExplicitRoyaltyCurrencies" + } + ] + } + } + } + }, + { + "id": 206, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "DefaultCollectionPolicy" + ], + "params": [ + { + "name": "TokenBalance", + "type": 6 + }, + { + "name": "Royalty", + "type": 175 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "mint", + "type": 207, + "typeName": "DefaultMintPolicy" + }, + { + "name": "burn", + "type": 209, + "typeName": "DefaultBurnPolicy" + }, + { + "name": "transfer", + "type": 210, + "typeName": "DefaultTransferPolicy" + }, + { + "name": "attribute", + "type": 211, + "typeName": "DefaultAttributePolicy" + }, + { + "name": "market", + "type": 212, + "typeName": "DefaultMarketPolicy" + } + ] + } + } + } + }, + { + "id": 207, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "mint", + "DefaultMintPolicy" + ], + "params": [ + { + "name": "TokenBalance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "max_token_count", + "type": 208, + "typeName": "Option" + }, + { + "name": "max_token_supply", + "type": 77, + "typeName": "Option" + }, + { + "name": "force_single_mint", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 208, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 11 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 11 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 209, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "burn", + "DefaultBurnPolicy" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 210, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "transfer", + "DefaultTransferPolicy" + ], + "def": { + "composite": { + "fields": [ + { + "name": "is_frozen", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 211, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "attribute", + "DefaultAttributePolicy" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 212, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "market", + "DefaultMarketPolicy" + ], + "params": [ + { + "name": "Royalty", + "type": 175 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "royalty", + "type": 180, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 213, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 177 + }, + { + "name": "V", + "type": 56 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 214, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 214, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 177 + }, + { + "name": "V", + "type": 56 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 215 + } + ] + } + } + } + }, + { + "id": 215, + "type": { + "def": { + "sequence": { + "type": 216 + } + } + } + }, + { + "id": 216, + "type": { + "def": { + "tuple": [ + 177, + 56 + ] + } + } + }, + { + "id": 217, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 218 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 218 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 218, + "type": { + "path": [ + "ep_multi_tokens", + "token", + "Token" + ], + "params": [ + { + "name": "TokenBalance", + "type": 6 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Royalty", + "type": 175 + }, + { + "name": "TokenMetadata", + "type": 184 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "supply", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "cap", + "type": 219, + "typeName": "Option>" + }, + { + "name": "freeze_state", + "type": 199, + "typeName": "Option" + }, + { + "name": "minimum_balance", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "sufficiency", + "type": 221, + "typeName": "Sufficiency" + }, + { + "name": "mint_deposit", + "type": 63, + "typeName": "Balance" + }, + { + "name": "attribute_count", + "type": 119, + "typeName": "u32" + }, + { + "name": "market_behavior", + "type": 193, + "typeName": "Option>" + }, + { + "name": "listing_forbidden", + "type": 37, + "typeName": "bool" + }, + { + "name": "metadata", + "type": 184, + "typeName": "TokenMetadata" + } + ] + } + } + } + }, + { + "id": 219, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 220 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 220 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 220, + "type": { + "path": [ + "ep_multi_tokens", + "token", + "TokenCap" + ], + "params": [ + { + "name": "TokenBalance", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "SingleMint", + "index": 0 + }, + { + "name": "Supply", + "fields": [ + { + "type": 63, + "typeName": "TokenBalance" + } + ], + "index": 1 + }, + { + "name": "CollapsingSupply", + "fields": [ + { + "type": 63, + "typeName": "TokenBalance" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 221, + "type": { + "path": [ + "ep_multi_tokens", + "token", + "Sufficiency" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Sufficient", + "index": 0 + }, + { + "name": "Insufficient", + "fields": [ + { + "name": "unit_price", + "type": 63, + "typeName": "Balance" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 222, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 223 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 223 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 223, + "type": { + "path": [ + "pallet_multi_tokens", + "features", + "collection", + "types", + "CollectionAccount" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Expiration", + "type": 73 + }, + { + "name": "MaxApprovalCount", + "type": 224 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "is_frozen", + "type": 37, + "typeName": "bool" + }, + { + "name": "approvals", + "type": 225, + "typeName": "BoundedBTreeMap" + }, + { + "name": "account_count", + "type": 119, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 224, + "type": { + "path": [ + "enjin_runtime", + "MaxOperatorsPerAccount" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 225, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 73 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 226, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 226, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 73 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 227 + } + ] + } + } + } + }, + { + "id": 227, + "type": { + "def": { + "sequence": { + "type": 228 + } + } + } + }, + { + "id": 228, + "type": { + "def": { + "tuple": [ + 0, + 73 + ] + } + } + }, + { + "id": 229, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 230 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 230 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 230, + "type": { + "path": [ + "pallet_multi_tokens", + "features", + "token", + "types", + "TokenAccount" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "TokenBalance", + "type": 6 + }, + { + "name": "Approval", + "type": 231 + }, + { + "name": "ApprovalCount", + "type": 224 + }, + { + "name": "ReserveIdentifier", + "type": 134 + }, + { + "name": "LockId", + "type": 134 + }, + { + "name": "MaxReserves", + "type": 232 + }, + { + "name": "MaxLocks", + "type": 233 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "balance", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "reserved_balance", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "locked_balance", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "named_reserves", + "type": 234, + "typeName": "BoundedBTreeMap" + }, + { + "name": "locks", + "type": 238, + "typeName": "BoundedBTreeMap" + }, + { + "name": "approvals", + "type": 239, + "typeName": "BoundedBTreeMap" + }, + { + "name": "is_frozen", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 231, + "type": { + "path": [ + "pallet_multi_tokens", + "features", + "operator", + "types", + "Approval" + ], + "params": [ + { + "name": "TokenBalance", + "type": 6 + }, + { + "name": "Expiration", + "type": 73 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "amount", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "expiration", + "type": 73, + "typeName": "Expiration" + } + ] + } + } + } + }, + { + "id": 232, + "type": { + "path": [ + "enjin_runtime", + "MaxMultiTokensReserves" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 233, + "type": { + "path": [ + "enjin_runtime", + "MaxMultiTokensLocks" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 234, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 134 + }, + { + "name": "V", + "type": 6 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 235, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 235, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 134 + }, + { + "name": "V", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 236 + } + ] + } + } + } + }, + { + "id": 236, + "type": { + "def": { + "sequence": { + "type": 237 + } + } + } + }, + { + "id": 237, + "type": { + "def": { + "tuple": [ + 134, + 6 + ] + } + } + }, + { + "id": 238, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 134 + }, + { + "name": "V", + "type": 6 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 235, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 239, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 231 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 240, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 240, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 231 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 241 + } + ] + } + } + } + }, + { + "id": 241, + "type": { + "def": { + "sequence": { + "type": 242 + } + } + } + }, + { + "id": 242, + "type": { + "def": { + "tuple": [ + 0, + 231 + ] + } + } + }, + { + "id": 243, + "type": { + "path": [ + "ep_core", + "frame", + "migrations", + "MigrationStage" + ], + "def": { + "variant": { + "variants": [ + { + "name": "NotStarted", + "index": 0 + }, + { + "name": "InProgress", + "index": 1 + }, + { + "name": "Completed", + "index": 2 + }, + { + "name": "Failed", + "index": 3 + } + ] + } + } + } + }, + { + "id": 244, + "type": { + "path": [ + "primitive_types", + "H160" + ], + "def": { + "composite": { + "fields": [ + { + "type": 122, + "typeName": "[u8; 20]" + } + ] + } + } + } + }, + { + "id": 245, + "type": { + "def": { + "sequence": { + "type": 246 + } + } + } + }, + { + "id": 246, + "type": { + "path": [ + "pallet_multi_tokens", + "features", + "claim", + "CollectionIdPair" + ], + "params": [ + { + "name": "CollectionId", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "ethereum", + "type": 6, + "typeName": "CollectionId" + }, + { + "name": "native", + "type": 6, + "typeName": "CollectionId" + } + ] + } + } + } + }, + { + "id": 247, + "type": { + "def": { + "sequence": { + "type": 248 + } + } + } + }, + { + "id": 248, + "type": { + "path": [ + "pallet_multi_tokens", + "features", + "claim", + "AssetIdWithEth" + ], + "params": [ + { + "name": "CollectionId", + "type": 6 + }, + { + "name": "TokenId", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "ethereum_collection_id", + "type": 6, + "typeName": "CollectionId" + }, + { + "name": "collection_id", + "type": 6, + "typeName": "CollectionId" + }, + { + "name": "token_id", + "type": 6, + "typeName": "TokenId" + } + ] + } + } + } + }, + { + "id": 249, + "type": { + "path": [ + "pallet_fuel_tanks", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "FuelTankCreated", + "fields": [ + { + "name": "owner", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) that owns the [`FuelTank`]" + ] + }, + { + "name": "name", + "type": 250, + "typeName": "FuelTankNameOf", + "docs": [ + "The name of the [`FuelTank`]" + ] + }, + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account id of the [`FuelTank`]" + ] + } + ], + "index": 0, + "docs": [ + "A new [`FuelTank`] was created." + ] + }, + { + "name": "FuelTankMutated", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + }, + { + "name": "mutation", + "type": 253, + "typeName": "T::TankMutation", + "docs": [ + "The mutation that was applied" + ] + } + ], + "index": 1, + "docs": [ + "A [`FuelTank`] was mutated" + ] + }, + { + "name": "FuelTankDestroyed", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + } + ], + "index": 2, + "docs": [ + "A [`FuelTank`] was destroyed" + ] + }, + { + "name": "CallDispatched", + "fields": [ + { + "name": "caller", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) that dispatched the call" + ] + }, + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + } + ], + "index": 3, + "docs": [ + "A call was dispatched through a [`FuelTank`]." + ] + }, + { + "name": "AccountAdded", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + }, + { + "name": "user_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) that was added" + ] + }, + { + "name": "tank_deposit", + "type": 6, + "typeName": "T::Balance", + "docs": [ + "The deposit reserved by the [`FuelTank`] for this account" + ] + }, + { + "name": "user_deposit", + "type": 6, + "typeName": "T::Balance", + "docs": [ + "The deposit reserved by the user for this account" + ] + } + ], + "index": 4, + "docs": [ + "An account was added to a [`FuelTank`]" + ] + }, + { + "name": "AccountRemoved", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + }, + { + "name": "user_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) that was removed" + ] + } + ], + "index": 5, + "docs": [ + "An account was removed from a [`FuelTank`]" + ] + }, + { + "name": "AccountRuleDataRemoved", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + }, + { + "name": "user_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) that was removed" + ] + }, + { + "name": "rule_set_id", + "type": 4, + "typeName": "T::RuleSetId", + "docs": [ + "The id of the rule set that was removed" + ] + }, + { + "name": "rule_kind", + "type": 268, + "typeName": "DispatchRuleKind", + "docs": [ + "The [`DispatchRuleKind`] that was removed" + ] + } + ], + "index": 6, + "docs": [ + "Account data of [`AccountId`](frame_system::Config::AccountId) was removed from", + "[`RuleSetId`](Config::RuleSetId)" + ] + }, + { + "name": "RuleSetInserted", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + }, + { + "name": "rule_set_id", + "type": 4, + "typeName": "T::RuleSetId", + "docs": [ + "The id of the rule set that was added" + ] + } + ], + "index": 7, + "docs": [ + "A new rule set was added to [`FuelTank`]" + ] + }, + { + "name": "RuleSetRemoved", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + }, + { + "name": "rule_set_id", + "type": 4, + "typeName": "T::RuleSetId", + "docs": [ + "The id of the rule set that was removed" + ] + } + ], + "index": 8, + "docs": [ + "A rule set was removed from [`FuelTank`]" + ] + }, + { + "name": "MutateFreezeStateScheduled", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + }, + { + "name": "rule_set_id", + "type": 73, + "typeName": "Option", + "docs": [ + "The possible [`RuleSetId`](Config::RuleSetId)" + ] + }, + { + "name": "is_frozen", + "type": 37, + "typeName": "bool", + "docs": [ + "The new `is_frozen` state" + ] + } + ], + "index": 9, + "docs": [ + "The freeze state mutation for fuel tank or its rule set was scheduled" + ] + }, + { + "name": "FreezeStateMutated", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + }, + { + "name": "rule_set_id", + "type": 73, + "typeName": "Option", + "docs": [ + "The possible [`RuleSetId`](Config::RuleSetId)" + ] + }, + { + "name": "is_frozen", + "type": 37, + "typeName": "bool", + "docs": [ + "The new `is_frozen` state" + ] + } + ], + "index": 10, + "docs": [ + "The freeze state change for fuel tank or its rule set was executed in `on_finalize`" + ] + }, + { + "name": "ScheduleMutateFreezeStateFailed", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + }, + { + "name": "rule_set_id", + "type": 73, + "typeName": "Option", + "docs": [ + "The possible [`RuleSetId`](Config::RuleSetId)" + ] + }, + { + "name": "is_frozen", + "type": 37, + "typeName": "bool", + "docs": [ + "The new `is_frozen` state" + ] + }, + { + "name": "error", + "type": 25, + "typeName": "DispatchError", + "docs": [ + "The error" + ] + } + ], + "index": 11, + "docs": [ + "The freeze state change for fuel tank or its rule set failed in `on_finalize`" + ] + }, + { + "name": "DispatchFailed", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + }, + { + "name": "caller", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) that dispatched the call" + ] + }, + { + "name": "error", + "type": 25, + "typeName": "DispatchError", + "docs": [ + "The error" + ] + } + ], + "index": 12, + "docs": [ + "The dispatch of a call has failed" + ] + }, + { + "name": "ConsumptionSet", + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The [`AccountId`](frame_system::Config::AccountId) of the [`FuelTank`]" + ] + }, + { + "name": "user_id", + "type": 36, + "typeName": "Option", + "docs": [ + "The possible user [`AccountId`](frame_system::Config::AccountId) whose consumption", + "was set" + ] + }, + { + "name": "rule_set_id", + "type": 4, + "typeName": "T::RuleSetId", + "docs": [ + "The [`RuleSetId`](Config::RuleSetId)" + ] + }, + { + "name": "consumption", + "type": 269, + "typeName": "ConsumptionOf", + "docs": [ + "The new [`Consumption`](crate::Consumption)" + ] + } + ], + "index": 13, + "docs": [ + "The consumption for an account was set for a rule set on a [`FuelTank`]" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 250, + "type": { + "path": [ + "ep_core", + "frame", + "types", + "BoundedString" + ], + "params": [ + { + "name": "MaxLength", + "type": 251 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 252, + "typeName": "BoundedVec" + } + ] + } + } + } + }, + { + "id": 251, + "type": { + "path": [ + "enjin_runtime", + "MaxFuelTankNameLength" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 252, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 253, + "type": { + "path": [ + "pallet_fuel_tanks", + "impls", + "DefaultTankMutation" + ], + "params": [ + { + "name": "T", + "type": 254 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "user_account_management", + "type": 255, + "typeName": "ShouldMutate>" + }, + { + "name": "provides_deposit", + "type": 258, + "typeName": "Option" + }, + { + "name": "account_rules", + "type": 259, + "typeName": "Option>" + } + ] + } + } + } + }, + { + "id": 254, + "type": { + "path": [ + "enjin_runtime", + "Runtime" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 255, + "type": { + "path": [ + "ep_multi_tokens", + "types", + "ShouldMutate" + ], + "params": [ + { + "name": "T", + "type": 256 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NoMutation", + "index": 0 + }, + { + "name": "SomeMutation", + "fields": [ + { + "type": 256, + "typeName": "T" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 256, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 257 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 257 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 257, + "type": { + "path": [ + "pallet_fuel_tanks", + "types", + "UserAccountManagement" + ], + "def": { + "composite": { + "fields": [ + { + "name": "tank_reserves_existential_deposit", + "type": 37, + "typeName": "bool" + }, + { + "name": "tank_reserves_account_creation_deposit", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 258, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 37 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 37 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 259, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 260 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 260 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 260, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 261 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 267, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 261, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "AccountRuleDescriptor" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "WhitelistedCallers", + "fields": [ + { + "type": 262, + "typeName": "WhitelistedCallersRuleOf" + } + ], + "index": 0 + }, + { + "name": "RequireToken", + "fields": [ + { + "type": 266, + "typeName": "RequireTokenRuleOf" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 262, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "whitelisted_callers", + "WhitelistedCallersRule" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Max", + "type": 263 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 264, + "typeName": "BoundedBTreeSet" + } + ] + } + } + } + }, + { + "id": 263, + "type": { + "path": [ + "enjin_runtime", + "MaxWhitelistedCallers" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 264, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 265, + "typeName": "BTreeSet" + } + ] + } + } + } + }, + { + "id": 265, + "type": { + "path": [ + "BTreeSet" + ], + "params": [ + { + "name": "T", + "type": 0 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 78 + } + ] + } + } + } + }, + { + "id": 266, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "require_token", + "RequireTokenRule" + ], + "params": [ + { + "name": "CollectionId", + "type": 6 + }, + { + "name": "TokenId", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "collection_id", + "type": 6, + "typeName": "CollectionId" + }, + { + "name": "token_id", + "type": 6, + "typeName": "TokenId" + } + ] + } + } + } + }, + { + "id": 267, + "type": { + "def": { + "sequence": { + "type": 261 + } + } + } + }, + { + "id": 268, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "DispatchRuleKind" + ], + "def": { + "variant": { + "variants": [ + { + "name": "WhitelistedCallers", + "index": 0 + }, + { + "name": "WhitelistedCollections", + "index": 1 + }, + { + "name": "MaxFuelBurnPerTransaction", + "index": 2 + }, + { + "name": "UserFuelBudget", + "index": 3 + }, + { + "name": "TankFuelBudget", + "index": 4 + }, + { + "name": "RequireToken", + "index": 5 + }, + { + "name": "PermittedCalls", + "index": 6 + }, + { + "name": "PermittedExtrinsics", + "index": 7 + } + ] + } + } + } + }, + { + "id": 269, + "type": { + "path": [ + "pallet_fuel_tanks", + "types", + "Consumption" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "total_consumed", + "type": 63, + "typeName": "Balance" + }, + { + "name": "last_reset_block", + "type": 73, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 270, + "type": { + "path": [ + "pallet_extrinsic_pause", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "PalletPaused", + "fields": [ + { + "name": "pallet_name", + "type": 271, + "typeName": "BoundedStringOf" + } + ], + "index": 0, + "docs": [ + "All pallet extrinsics are paused." + ] + }, + { + "name": "PalletResumed", + "fields": [ + { + "name": "pallet_name", + "type": 271, + "typeName": "BoundedStringOf" + } + ], + "index": 1, + "docs": [ + "All pallet extrinsics are resumed." + ] + }, + { + "name": "ExtrinsicPaused", + "fields": [ + { + "name": "pallet_name", + "type": 271, + "typeName": "BoundedStringOf" + }, + { + "name": "extrinsic_name", + "type": 271, + "typeName": "BoundedStringOf" + } + ], + "index": 2, + "docs": [ + "Extrinsic is paused." + ] + }, + { + "name": "ExtrinsicResumed", + "fields": [ + { + "name": "pallet_name", + "type": 271, + "typeName": "BoundedStringOf" + }, + { + "name": "extrinsic_name", + "type": 271, + "typeName": "BoundedStringOf" + } + ], + "index": 3, + "docs": [ + "Extrinsic is resumed" + ] + } + ] + } + }, + "docs": [ + "The pallet's event type." + ] + } + }, + { + "id": 271, + "type": { + "path": [ + "ep_core", + "frame", + "types", + "BoundedString" + ], + "params": [ + { + "name": "MaxLength", + "type": 272 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 273, + "typeName": "BoundedVec" + } + ] + } + } + } + }, + { + "id": 272, + "type": { + "path": [ + "enjin_runtime", + "MaxNameLength" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 273, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 274, + "type": { + "path": [ + "pallet_marketplace", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ListingCreated", + "fields": [ + { + "name": "listing_id", + "type": 12, + "typeName": "ListingIdOf", + "docs": [ + "Id for the listing" + ] + }, + { + "name": "listing", + "type": 275, + "typeName": "ListingOf", + "docs": [ + "The listing" + ] + } + ], + "index": 0, + "docs": [ + "A listing was created" + ] + }, + { + "name": "ListingCancelled", + "fields": [ + { + "name": "listing_id", + "type": 12, + "typeName": "ListingIdOf", + "docs": [ + "Id for the listing" + ] + } + ], + "index": 1, + "docs": [ + "A listing was cancelled" + ] + }, + { + "name": "ListingFilled", + "fields": [ + { + "name": "listing_id", + "type": 12, + "typeName": "ListingIdOf", + "docs": [ + "ID of the listing" + ] + }, + { + "name": "buyer", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "account that filled the listing" + ] + }, + { + "name": "amount_filled", + "type": 6, + "typeName": "TokenBalanceOf", + "docs": [ + "The amount that was filled" + ] + }, + { + "name": "amount_remaining", + "type": 6, + "typeName": "TokenBalanceOf", + "docs": [ + "Amount remaining to be filled" + ] + }, + { + "name": "protocol_fee", + "type": 6, + "typeName": "TokenBalanceOf", + "docs": [ + "Amount paid as protocol fee" + ] + }, + { + "name": "royalty", + "type": 6, + "typeName": "TokenBalanceOf", + "docs": [ + "Amount that went to royalties" + ] + } + ], + "index": 2, + "docs": [ + "A listing was filled or partially filled" + ] + }, + { + "name": "BidPlaced", + "fields": [ + { + "name": "listing_id", + "type": 12, + "typeName": "ListingIdOf", + "docs": [ + "ID of the listing" + ] + }, + { + "name": "bid", + "type": 283, + "typeName": "BidOf", + "docs": [ + "The bid that was placed" + ] + } + ], + "index": 3, + "docs": [ + "A bid was placed" + ] + }, + { + "name": "AuctionFinalized", + "fields": [ + { + "name": "listing_id", + "type": 12, + "typeName": "ListingIdOf", + "docs": [ + "The listing id" + ] + }, + { + "name": "winning_bid", + "type": 282, + "typeName": "Option>", + "docs": [ + "The bid that won" + ] + }, + { + "name": "protocol_fee", + "type": 6, + "typeName": "TokenBalanceOf", + "docs": [ + "Amount paid as protocol fee" + ] + }, + { + "name": "royalty", + "type": 6, + "typeName": "TokenBalanceOf", + "docs": [ + "Amount that went to royalties" + ] + } + ], + "index": 4, + "docs": [ + "An auction was finalized" + ] + }, + { + "name": "ProtocolFeeSet", + "fields": [ + { + "name": "protocol_fee", + "type": 42, + "typeName": "Perbill", + "docs": [ + "The new protocol fee" + ] + } + ], + "index": 5, + "docs": [ + "Protocol fee was set" + ] + } + ] + } + }, + "docs": [ + "The Event for this pallet" + ] + } + }, + { + "id": 275, + "type": { + "path": [ + "pallet_marketplace", + "features", + "listing", + "Listing" + ], + "params": [ + { + "name": "CollectionId", + "type": 6 + }, + { + "name": "TokenId", + "type": 6 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "TokenBalance", + "type": 6 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Salt", + "type": 276 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "seller", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "make_asset_id", + "type": 177, + "typeName": "AssetId" + }, + { + "name": "take_asset_id", + "type": 177, + "typeName": "AssetId" + }, + { + "name": "amount", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "price", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "min_take_value", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "fee_side", + "type": 277, + "typeName": "FeeSide" + }, + { + "name": "creation_block", + "type": 119, + "typeName": "BlockNumber" + }, + { + "name": "deposit", + "type": 63, + "typeName": "Balance" + }, + { + "name": "salt", + "type": 276, + "typeName": "Salt" + }, + { + "name": "data", + "type": 278, + "typeName": "ListingData" + }, + { + "name": "state", + "type": 280, + "typeName": "ListingState" + } + ] + } + } + } + }, + { + "id": 276, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 277, + "type": { + "path": [ + "pallet_marketplace", + "features", + "listing", + "FeeSide" + ], + "def": { + "variant": { + "variants": [ + { + "name": "NoFee", + "index": 0 + }, + { + "name": "Make", + "index": 1 + }, + { + "name": "Take", + "index": 2 + } + ] + } + } + } + }, + { + "id": 278, + "type": { + "path": [ + "pallet_marketplace", + "features", + "listing", + "ListingData" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "FixedPrice", + "index": 0 + }, + { + "name": "Auction", + "fields": [ + { + "type": 279, + "typeName": "AuctionData" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 279, + "type": { + "path": [ + "pallet_marketplace", + "features", + "auction", + "AuctionData" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "start_block", + "type": 119, + "typeName": "BlockNumber" + }, + { + "name": "end_block", + "type": 119, + "typeName": "BlockNumber" + } + ] + } + } + } + }, + { + "id": 280, + "type": { + "path": [ + "pallet_marketplace", + "features", + "listing", + "ListingState" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "TokenBalance", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "FixedPrice", + "fields": [ + { + "name": "amount_filled", + "type": 63, + "typeName": "TokenBalance" + } + ], + "index": 0 + }, + { + "name": "Auction", + "fields": [ + { + "type": 281, + "typeName": "AuctionState" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 281, + "type": { + "path": [ + "pallet_marketplace", + "features", + "auction", + "AuctionState" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "TokenBalance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "high_bid", + "type": 282, + "typeName": "Option>" + } + ] + } + } + } + }, + { + "id": 282, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 283 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 283 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 283, + "type": { + "path": [ + "pallet_marketplace", + "features", + "auction", + "Bid" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "TokenBalance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "bidder", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "price", + "type": 63, + "typeName": "TokenBalance" + } + ] + } + } + } + }, + { + "id": 284, + "type": { + "path": [ + "pallet_scheduler", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Scheduled", + "fields": [ + { + "name": "when", + "type": 4, + "typeName": "T::BlockNumber" + }, + { + "name": "index", + "type": 4, + "typeName": "u32" + } + ], + "index": 0, + "docs": [ + "Scheduled some task." + ] + }, + { + "name": "Canceled", + "fields": [ + { + "name": "when", + "type": 4, + "typeName": "T::BlockNumber" + }, + { + "name": "index", + "type": 4, + "typeName": "u32" + } + ], + "index": 1, + "docs": [ + "Canceled some task." + ] + }, + { + "name": "Dispatched", + "fields": [ + { + "name": "task", + "type": 285, + "typeName": "TaskAddress" + }, + { + "name": "id", + "type": 286, + "typeName": "Option" + }, + { + "name": "result", + "type": 55, + "typeName": "DispatchResult" + } + ], + "index": 2, + "docs": [ + "Dispatched some task." + ] + }, + { + "name": "CallUnavailable", + "fields": [ + { + "name": "task", + "type": 285, + "typeName": "TaskAddress" + }, + { + "name": "id", + "type": 286, + "typeName": "Option" + } + ], + "index": 3, + "docs": [ + "The call for the provided hash was not found so the task has been aborted." + ] + }, + { + "name": "PeriodicFailed", + "fields": [ + { + "name": "task", + "type": 285, + "typeName": "TaskAddress" + }, + { + "name": "id", + "type": 286, + "typeName": "Option" + } + ], + "index": 4, + "docs": [ + "The given task was unable to be renewed since the agenda is full at that block." + ] + }, + { + "name": "PermanentlyOverweight", + "fields": [ + { + "name": "task", + "type": 285, + "typeName": "TaskAddress" + }, + { + "name": "id", + "type": 286, + "typeName": "Option" + } + ], + "index": 5, + "docs": [ + "The given task can never be executed since it is overweight." + ] + } + ] + } + }, + "docs": [ + "Events type." + ] + } + }, + { + "id": 285, + "type": { + "def": { + "tuple": [ + 4, + 4 + ] + } + } + }, + { + "id": 286, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 1 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 1 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 287, + "type": { + "path": [ + "pallet_preimage", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Noted", + "fields": [ + { + "name": "hash", + "type": 12, + "typeName": "T::Hash" + } + ], + "index": 0, + "docs": [ + "A preimage has been noted." + ] + }, + { + "name": "Requested", + "fields": [ + { + "name": "hash", + "type": 12, + "typeName": "T::Hash" + } + ], + "index": 1, + "docs": [ + "A preimage has been requested." + ] + }, + { + "name": "Cleared", + "fields": [ + { + "name": "hash", + "type": 12, + "typeName": "T::Hash" + } + ], + "index": 2, + "docs": [ + "A preimage has ben cleared." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 288, + "type": { + "path": [ + "pallet_conviction_voting", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Delegated", + "fields": [ + { + "type": 0, + "typeName": "T::AccountId" + }, + { + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 0, + "docs": [ + "An account has delegated their vote to another account. \\[who, target\\]" + ] + }, + { + "name": "Undelegated", + "fields": [ + { + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 1, + "docs": [ + "An \\[account\\] has cancelled a previous delegation operation." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 289, + "type": { + "path": [ + "pallet_referenda", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Submitted", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "track", + "type": 290, + "typeName": "TrackIdOf", + "docs": [ + "The track (and by extension proposal dispatch origin) of this referendum." + ] + }, + { + "name": "proposal", + "type": 291, + "typeName": "BoundedCallOf", + "docs": [ + "The proposal for the referendum." + ] + } + ], + "index": 0, + "docs": [ + "A referendum has been submitted." + ] + }, + { + "name": "DecisionDepositPlaced", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account who placed the deposit." + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount placed by the account." + ] + } + ], + "index": 1, + "docs": [ + "The decision deposit has been placed." + ] + }, + { + "name": "DecisionDepositRefunded", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account who placed the deposit." + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount placed by the account." + ] + } + ], + "index": 2, + "docs": [ + "The decision deposit has been refunded." + ] + }, + { + "name": "DepositSlashed", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account who placed the deposit." + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount placed by the account." + ] + } + ], + "index": 3, + "docs": [ + "A deposit has been slashaed." + ] + }, + { + "name": "DecisionStarted", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "track", + "type": 290, + "typeName": "TrackIdOf", + "docs": [ + "The track (and by extension proposal dispatch origin) of this referendum." + ] + }, + { + "name": "proposal", + "type": 291, + "typeName": "BoundedCallOf", + "docs": [ + "The proposal for the referendum." + ] + }, + { + "name": "tally", + "type": 639, + "typeName": "T::Tally", + "docs": [ + "The current tally of votes in this referendum." + ] + } + ], + "index": 4, + "docs": [ + "A referendum has moved into the deciding phase." + ] + }, + { + "name": "ConfirmStarted", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + } + ], + "index": 5 + }, + { + "name": "ConfirmAborted", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + } + ], + "index": 6 + }, + { + "name": "Confirmed", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "tally", + "type": 639, + "typeName": "T::Tally", + "docs": [ + "The final tally of votes in this referendum." + ] + } + ], + "index": 7, + "docs": [ + "A referendum has ended its confirmation phase and is ready for approval." + ] + }, + { + "name": "Approved", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + } + ], + "index": 8, + "docs": [ + "A referendum has been approved and its proposal has been scheduled." + ] + }, + { + "name": "Rejected", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "tally", + "type": 639, + "typeName": "T::Tally", + "docs": [ + "The final tally of votes in this referendum." + ] + } + ], + "index": 9, + "docs": [ + "A proposal has been rejected by referendum." + ] + }, + { + "name": "TimedOut", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "tally", + "type": 639, + "typeName": "T::Tally", + "docs": [ + "The final tally of votes in this referendum." + ] + } + ], + "index": 10, + "docs": [ + "A referendum has been timed out without being decided." + ] + }, + { + "name": "Cancelled", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "tally", + "type": 639, + "typeName": "T::Tally", + "docs": [ + "The final tally of votes in this referendum." + ] + } + ], + "index": 11, + "docs": [ + "A referendum has been cancelled." + ] + }, + { + "name": "Killed", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "tally", + "type": 639, + "typeName": "T::Tally", + "docs": [ + "The final tally of votes in this referendum." + ] + } + ], + "index": 12, + "docs": [ + "A referendum has been killed." + ] + }, + { + "name": "SubmissionDepositRefunded", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account who placed the deposit." + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount placed by the account." + ] + } + ], + "index": 13, + "docs": [ + "The submission deposit has been refunded." + ] + }, + { + "name": "MetadataSet", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "hash", + "type": 12, + "typeName": "PreimageHash", + "docs": [ + "Preimage hash." + ] + } + ], + "index": 14, + "docs": [ + "Metadata for a referendum has been set." + ] + }, + { + "name": "MetadataCleared", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "hash", + "type": 12, + "typeName": "PreimageHash", + "docs": [ + "Preimage hash." + ] + } + ], + "index": 15, + "docs": [ + "Metadata for a referendum has been cleared." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 290, + "type": { + "def": { + "primitive": "u16" + } + } + }, + { + "id": 291, + "type": { + "path": [ + "frame_support", + "traits", + "preimages", + "Bounded" + ], + "params": [ + { + "name": "T", + "type": 292 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Legacy", + "fields": [ + { + "name": "hash", + "type": 12, + "typeName": "Hash" + } + ], + "index": 0 + }, + { + "name": "Inline", + "fields": [ + { + "type": 638, + "typeName": "BoundedInline" + } + ], + "index": 1 + }, + { + "name": "Lookup", + "fields": [ + { + "name": "hash", + "type": 12, + "typeName": "Hash" + }, + { + "name": "len", + "type": 4, + "typeName": "u32" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 292, + "type": { + "path": [ + "enjin_runtime", + "RuntimeCall" + ], + "def": { + "variant": { + "variants": [ + { + "name": "System", + "fields": [ + { + "type": 293, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 0 + }, + { + "name": "Timestamp", + "fields": [ + { + "type": 297, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 2 + }, + { + "name": "Babe", + "fields": [ + { + "type": 298, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 3 + }, + { + "name": "Balances", + "fields": [ + { + "type": 308, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 6 + }, + { + "name": "ElectionProviderMultiPhase", + "fields": [ + { + "type": 311, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 8 + }, + { + "name": "Staking", + "fields": [ + { + "type": 371, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 9 + }, + { + "name": "Session", + "fields": [ + { + "type": 380, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 10 + }, + { + "name": "Grandpa", + "fields": [ + { + "type": 385, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 11 + }, + { + "name": "Treasury", + "fields": [ + { + "type": 396, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 12 + }, + { + "name": "Sudo", + "fields": [ + { + "type": 397, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 14 + }, + { + "name": "ImOnline", + "fields": [ + { + "type": 398, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 15 + }, + { + "name": "VoterList", + "fields": [ + { + "type": 405, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 17 + }, + { + "name": "NominationPools", + "fields": [ + { + "type": 406, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 18 + }, + { + "name": "StakeExchange", + "fields": [ + { + "type": 411, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 19 + }, + { + "name": "Utility", + "fields": [ + { + "type": 413, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 20 + }, + { + "name": "Multisig", + "fields": [ + { + "type": 421, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 21 + }, + { + "name": "Configuration", + "fields": [ + { + "type": 423, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 51 + }, + { + "name": "ParasShared", + "fields": [ + { + "type": 430, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 52 + }, + { + "name": "ParaInclusion", + "fields": [ + { + "type": 431, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 53 + }, + { + "name": "ParaInherent", + "fields": [ + { + "type": 432, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 54 + }, + { + "name": "Paras", + "fields": [ + { + "type": 460, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 56 + }, + { + "name": "Initializer", + "fields": [ + { + "type": 462, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 57 + }, + { + "name": "Hrmp", + "fields": [ + { + "type": 463, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 60 + }, + { + "name": "ParasDisputes", + "fields": [ + { + "type": 464, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 62 + }, + { + "name": "ParasSlashing", + "fields": [ + { + "type": 465, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 63 + }, + { + "name": "Registrar", + "fields": [ + { + "type": 469, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 70 + }, + { + "name": "Slots", + "fields": [ + { + "type": 470, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 71 + }, + { + "name": "Auctions", + "fields": [ + { + "type": 471, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 72 + }, + { + "name": "Crowdloan", + "fields": [ + { + "type": 473, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 73 + }, + { + "name": "XcmPallet", + "fields": [ + { + "type": 482, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 99 + }, + { + "name": "MessageQueue", + "fields": [ + { + "type": 503, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 110 + }, + { + "name": "ParasSudoWrapper", + "fields": [ + { + "type": 504, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 250 + }, + { + "name": "AssignedSlots", + "fields": [ + { + "type": 506, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 251 + }, + { + "name": "ValidatorManager", + "fields": [ + { + "type": 508, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 252 + }, + { + "name": "MultiTokens", + "fields": [ + { + "type": 509, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 253 + }, + { + "name": "FuelTanks", + "fields": [ + { + "type": 540, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 254 + }, + { + "name": "ExtrinsicPause", + "fields": [ + { + "type": 570, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 255 + }, + { + "name": "Marketplace", + "fields": [ + { + "type": 571, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 249 + }, + { + "name": "Beefy", + "fields": [ + { + "type": 573, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 240 + }, + { + "name": "Scheduler", + "fields": [ + { + "type": 583, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 100 + }, + { + "name": "Preimage", + "fields": [ + { + "type": 585, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 101 + }, + { + "name": "ConvictionVoting", + "fields": [ + { + "type": 586, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 102 + }, + { + "name": "Referenda", + "fields": [ + { + "type": 591, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 103 + }, + { + "name": "Whitelist", + "fields": [ + { + "type": 594, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 105 + }, + { + "name": "FellowshipCollective", + "fields": [ + { + "type": 595, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 106 + }, + { + "name": "FellowshipReferenda", + "fields": [ + { + "type": 596, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 107 + }, + { + "name": "Identity", + "fields": [ + { + "type": 597, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 108 + }, + { + "name": "VoteManager", + "fields": [ + { + "type": 636, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor" + } + ], + "index": 109 + } + ] + } + } + } + }, + { + "id": 293, + "type": { + "path": [ + "frame_system", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "remark", + "fields": [ + { + "name": "remark", + "type": 13, + "typeName": "Vec" + } + ], + "index": 0, + "docs": [ + "Make some on-chain remark.", + "", + "- `O(1)`" + ] + }, + { + "name": "set_heap_pages", + "fields": [ + { + "name": "pages", + "type": 11, + "typeName": "u64" + } + ], + "index": 1, + "docs": [ + "Set the number of pages in the WebAssembly environment's heap." + ] + }, + { + "name": "set_code", + "fields": [ + { + "name": "code", + "type": 13, + "typeName": "Vec" + } + ], + "index": 2, + "docs": [ + "Set the new runtime code." + ] + }, + { + "name": "set_code_without_checks", + "fields": [ + { + "name": "code", + "type": 13, + "typeName": "Vec" + } + ], + "index": 3, + "docs": [ + "Set the new runtime code without doing any checks of the given `code`." + ] + }, + { + "name": "set_storage", + "fields": [ + { + "name": "items", + "type": 294, + "typeName": "Vec" + } + ], + "index": 4, + "docs": [ + "Set some items of storage." + ] + }, + { + "name": "kill_storage", + "fields": [ + { + "name": "keys", + "type": 296, + "typeName": "Vec" + } + ], + "index": 5, + "docs": [ + "Kill some items from storage." + ] + }, + { + "name": "kill_prefix", + "fields": [ + { + "name": "prefix", + "type": 13, + "typeName": "Key" + }, + { + "name": "subkeys", + "type": 4, + "typeName": "u32" + } + ], + "index": 6, + "docs": [ + "Kill all storage items with a key that starts with the given prefix.", + "", + "**NOTE:** We rely on the Root origin to provide us the number of subkeys under", + "the prefix we are removing to accurately calculate the weight of this function." + ] + }, + { + "name": "remark_with_event", + "fields": [ + { + "name": "remark", + "type": 13, + "typeName": "Vec" + } + ], + "index": 7, + "docs": [ + "Make some on-chain remark and emit event." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 294, + "type": { + "def": { + "sequence": { + "type": 295 + } + } + } + }, + { + "id": 295, + "type": { + "def": { + "tuple": [ + 13, + 13 + ] + } + } + }, + { + "id": 296, + "type": { + "def": { + "sequence": { + "type": 13 + } + } + } + }, + { + "id": 297, + "type": { + "path": [ + "pallet_timestamp", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "set", + "fields": [ + { + "name": "now", + "type": 10, + "typeName": "T::Moment" + } + ], + "index": 0, + "docs": [ + "Set the current time.", + "", + "This call should be invoked exactly once per block. It will panic at the finalization", + "phase, if this call hasn't been invoked by that time.", + "", + "The timestamp should be greater than the previous one by the amount specified by", + "`MinimumPeriod`.", + "", + "The dispatch origin for this call must be `Inherent`.", + "", + "## Complexity", + "- `O(1)` (Note that implementations of `OnTimestampSet` must also be `O(1)`)", + "- 1 storage read and 1 storage mutation (codec `O(1)`). (because of `DidUpdate::take` in", + " `on_finalize`)", + "- 1 event handler `on_timestamp_set`. Must be `O(1)`." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 298, + "type": { + "path": [ + "pallet_babe", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "report_equivocation", + "fields": [ + { + "name": "equivocation_proof", + "type": 299, + "typeName": "Box>" + }, + { + "name": "key_owner_proof", + "type": 304, + "typeName": "T::KeyOwnerProof" + } + ], + "index": 0, + "docs": [ + "Report authority equivocation/misbehavior. This method will verify", + "the equivocation proof and validate the given key ownership proof", + "against the extracted offender. If both are valid, the offence will", + "be reported." + ] + }, + { + "name": "report_equivocation_unsigned", + "fields": [ + { + "name": "equivocation_proof", + "type": 299, + "typeName": "Box>" + }, + { + "name": "key_owner_proof", + "type": 304, + "typeName": "T::KeyOwnerProof" + } + ], + "index": 1, + "docs": [ + "Report authority equivocation/misbehavior. This method will verify", + "the equivocation proof and validate the given key ownership proof", + "against the extracted offender. If both are valid, the offence will", + "be reported.", + "This extrinsic must be called unsigned and it is expected that only", + "block authors will call it (validated in `ValidateUnsigned`), as such", + "if the block author is defined it will be defined as the equivocation", + "reporter." + ] + }, + { + "name": "plan_config_change", + "fields": [ + { + "name": "config", + "type": 305, + "typeName": "NextConfigDescriptor" + } + ], + "index": 2, + "docs": [ + "Plan an epoch config change. The epoch config change is recorded and will be enacted on", + "the next call to `enact_epoch_change`. The config will be activated one epoch after.", + "Multiple calls to this method will replace any existing planned config change that had", + "not been enacted yet." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 299, + "type": { + "path": [ + "sp_consensus_slots", + "EquivocationProof" + ], + "params": [ + { + "name": "Header", + "type": 300 + }, + { + "name": "Id", + "type": 302 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "offender", + "type": 302, + "typeName": "Id" + }, + { + "name": "slot", + "type": 303, + "typeName": "Slot" + }, + { + "name": "first_header", + "type": 300, + "typeName": "Header" + }, + { + "name": "second_header", + "type": 300, + "typeName": "Header" + } + ] + } + } + } + }, + { + "id": 300, + "type": { + "path": [ + "sp_runtime", + "generic", + "header", + "Header" + ], + "params": [ + { + "name": "Number", + "type": 4 + }, + { + "name": "Hash", + "type": 301 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "parent_hash", + "type": 12, + "typeName": "Hash::Output" + }, + { + "name": "number", + "type": 119, + "typeName": "Number" + }, + { + "name": "state_root", + "type": 12, + "typeName": "Hash::Output" + }, + { + "name": "extrinsics_root", + "type": 12, + "typeName": "Hash::Output" + }, + { + "name": "digest", + "type": 14, + "typeName": "Digest" + } + ] + } + } + } + }, + { + "id": 301, + "type": { + "path": [ + "sp_runtime", + "traits", + "BlakeTwo256" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 302, + "type": { + "path": [ + "sp_consensus_babe", + "app", + "Public" + ], + "def": { + "composite": { + "fields": [ + { + "type": 59, + "typeName": "sr25519::Public" + } + ] + } + } + } + }, + { + "id": 303, + "type": { + "path": [ + "sp_consensus_slots", + "Slot" + ], + "def": { + "composite": { + "fields": [ + { + "type": 11, + "typeName": "u64" + } + ] + } + } + } + }, + { + "id": 304, + "type": { + "path": [ + "sp_session", + "MembershipProof" + ], + "def": { + "composite": { + "fields": [ + { + "name": "session", + "type": 4, + "typeName": "SessionIndex" + }, + { + "name": "trie_nodes", + "type": 296, + "typeName": "Vec>" + }, + { + "name": "validator_count", + "type": 4, + "typeName": "ValidatorCount" + } + ] + } + } + } + }, + { + "id": 305, + "type": { + "path": [ + "sp_consensus_babe", + "digests", + "NextConfigDescriptor" + ], + "def": { + "variant": { + "variants": [ + { + "name": "V1", + "fields": [ + { + "name": "c", + "type": 306, + "typeName": "(u64, u64)" + }, + { + "name": "allowed_slots", + "type": 307, + "typeName": "AllowedSlots" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 306, + "type": { + "def": { + "tuple": [ + 11, + 11 + ] + } + } + }, + { + "id": 307, + "type": { + "path": [ + "sp_consensus_babe", + "AllowedSlots" + ], + "def": { + "variant": { + "variants": [ + { + "name": "PrimarySlots", + "index": 0 + }, + { + "name": "PrimaryAndSecondaryPlainSlots", + "index": 1 + }, + { + "name": "PrimaryAndSecondaryVRFSlots", + "index": 2 + } + ] + } + } + } + }, + { + "id": 308, + "type": { + "path": [ + "pallet_balances", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "transfer_allow_death", + "fields": [ + { + "name": "dest", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "value", + "type": 63, + "typeName": "T::Balance" + } + ], + "index": 0, + "docs": [ + "Transfer some liquid free balance to another account.", + "", + "`transfer_allow_death` will set the `FreeBalance` of the sender and receiver.", + "If the sender's account is below the existential deposit as a result", + "of the transfer, the account will be reaped.", + "", + "The dispatch origin for this call must be `Signed` by the transactor." + ] + }, + { + "name": "set_balance_deprecated", + "fields": [ + { + "name": "who", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "new_free", + "type": 63, + "typeName": "T::Balance" + }, + { + "name": "old_reserved", + "type": 63, + "typeName": "T::Balance" + } + ], + "index": 1, + "docs": [ + "Set the regular balance of a given account; it also takes a reserved balance but this", + "must be the same as the account's current reserved balance.", + "", + "The dispatch origin for this call is `root`.", + "", + "WARNING: This call is DEPRECATED! Use `force_set_balance` instead." + ] + }, + { + "name": "force_transfer", + "fields": [ + { + "name": "source", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "dest", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "value", + "type": 63, + "typeName": "T::Balance" + } + ], + "index": 2, + "docs": [ + "Exactly as `transfer_allow_death`, except the origin must be root and the source account", + "may be specified." + ] + }, + { + "name": "transfer_keep_alive", + "fields": [ + { + "name": "dest", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "value", + "type": 63, + "typeName": "T::Balance" + } + ], + "index": 3, + "docs": [ + "Same as the [`transfer_allow_death`] call, but with a check that the transfer will not", + "kill the origin account.", + "", + "99% of the time you want [`transfer_allow_death`] instead.", + "", + "[`transfer_allow_death`]: struct.Pallet.html#method.transfer" + ] + }, + { + "name": "transfer_all", + "fields": [ + { + "name": "dest", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "keep_alive", + "type": 37, + "typeName": "bool" + } + ], + "index": 4, + "docs": [ + "Transfer the entire transferable balance from the caller account.", + "", + "NOTE: This function only attempts to transfer _transferable_ balances. This means that", + "any locked, reserved, or existential deposits (when `keep_alive` is `true`), will not be", + "transferred by this function. To ensure that this function results in a killed account,", + "you might need to prepare the account by removing any reference counters, storage", + "deposits, etc...", + "", + "The dispatch origin of this call must be Signed.", + "", + "- `dest`: The recipient of the transfer.", + "- `keep_alive`: A boolean to determine if the `transfer_all` operation should send all", + " of the funds the account has, causing the sender account to be killed (false), or", + " transfer everything except at least the existential deposit, which will guarantee to", + " keep the sender account alive (true)." + ] + }, + { + "name": "force_unreserve", + "fields": [ + { + "name": "who", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "amount", + "type": 6, + "typeName": "T::Balance" + } + ], + "index": 5, + "docs": [ + "Unreserve some balance from a user by force.", + "", + "Can only be called by ROOT." + ] + }, + { + "name": "upgrade_accounts", + "fields": [ + { + "name": "who", + "type": 78, + "typeName": "Vec" + } + ], + "index": 6, + "docs": [ + "Upgrade a specified account.", + "", + "- `origin`: Must be `Signed`.", + "- `who`: The account to be upgraded.", + "", + "This will waive the transaction fee if at least all but 10% of the accounts needed to", + "be upgraded. (We let some not have to be upgraded just in order to allow for the", + "possibililty of churn)." + ] + }, + { + "name": "transfer", + "fields": [ + { + "name": "dest", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "value", + "type": 63, + "typeName": "T::Balance" + } + ], + "index": 7, + "docs": [ + "Alias for `transfer_allow_death`, provided only for name-wise compatibility.", + "", + "WARNING: DEPRECATED! Will be released in approximately 3 months." + ] + }, + { + "name": "force_set_balance", + "fields": [ + { + "name": "who", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "new_free", + "type": 63, + "typeName": "T::Balance" + } + ], + "index": 8, + "docs": [ + "Set the regular balance of a given account.", + "", + "The dispatch origin for this call is `root`." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 309, + "type": { + "path": [ + "sp_runtime", + "multiaddress", + "MultiAddress" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "AccountIndex", + "type": 56 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Id", + "fields": [ + { + "type": 0, + "typeName": "AccountId" + } + ], + "index": 0 + }, + { + "name": "Index", + "fields": [ + { + "type": 310, + "typeName": "AccountIndex" + } + ], + "index": 1 + }, + { + "name": "Raw", + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ], + "index": 2 + }, + { + "name": "Address32", + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 3 + }, + { + "name": "Address20", + "fields": [ + { + "type": 122, + "typeName": "[u8; 20]" + } + ], + "index": 4 + } + ] + } + } + } + }, + { + "id": 310, + "type": { + "def": { + "compact": { + "type": 56 + } + } + } + }, + { + "id": 311, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "submit_unsigned", + "fields": [ + { + "name": "raw_solution", + "type": 312, + "typeName": "Box>>" + }, + { + "name": "witness", + "type": 364, + "typeName": "SolutionOrSnapshotSize" + } + ], + "index": 0, + "docs": [ + "Submit a solution for the unsigned phase.", + "", + "The dispatch origin fo this call must be __none__.", + "", + "This submission is checked on the fly. Moreover, this unsigned solution is only", + "validated when submitted to the pool from the **local** node. Effectively, this means", + "that only active validators can submit this transaction when authoring a block (similar", + "to an inherent).", + "", + "To prevent any incorrect solution (and thus wasted time/weight), this transaction will", + "panic if the solution submitted by the validator is invalid in any way, effectively", + "putting their authoring reward at risk.", + "", + "No deposit or reward is associated with this submission." + ] + }, + { + "name": "set_minimum_untrusted_score", + "fields": [ + { + "name": "maybe_next_score", + "type": 365, + "typeName": "Option" + } + ], + "index": 1, + "docs": [ + "Set a new value for `MinimumUntrustedScore`.", + "", + "Dispatch origin must be aligned with `T::ForceOrigin`.", + "", + "This check can be turned off by setting the value to `None`." + ] + }, + { + "name": "set_emergency_election_result", + "fields": [ + { + "name": "supports", + "type": 366, + "typeName": "Supports" + } + ], + "index": 2, + "docs": [ + "Set a solution in the queue, to be handed out to the client of this pallet in the next", + "call to `ElectionProvider::elect`.", + "", + "This can only be set by `T::ForceOrigin`, and only when the phase is `Emergency`.", + "", + "The solution is not checked for any feasibility and is assumed to be trustworthy, as any", + "feasibility check itself can in principle cause the election process to fail (due to", + "memory/weight constrains)." + ] + }, + { + "name": "submit", + "fields": [ + { + "name": "raw_solution", + "type": 312, + "typeName": "Box>>" + } + ], + "index": 3, + "docs": [ + "Submit a solution for the signed phase.", + "", + "The dispatch origin fo this call must be __signed__.", + "", + "The solution is potentially queued, based on the claimed score and processed at the end", + "of the signed phase.", + "", + "A deposit is reserved and recorded for the solution. Based on the outcome, the solution", + "might be rewarded, slashed, or get all or a part of the deposit back." + ] + }, + { + "name": "governance_fallback", + "fields": [ + { + "name": "maybe_max_voters", + "type": 73, + "typeName": "Option" + }, + { + "name": "maybe_max_targets", + "type": 73, + "typeName": "Option" + } + ], + "index": 4, + "docs": [ + "Trigger the governance fallback.", + "", + "This can only be called when [`Phase::Emergency`] is enabled, as an alternative to", + "calling [`Call::set_emergency_election_result`]." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 312, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "RawSolution" + ], + "params": [ + { + "name": "S", + "type": 313 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "solution", + "type": 313, + "typeName": "S" + }, + { + "name": "score", + "type": 38, + "typeName": "ElectionScore" + }, + { + "name": "round", + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 313, + "type": { + "path": [ + "enjin_runtime", + "NposSolution16" + ], + "def": { + "composite": { + "fields": [ + { + "name": "votes1", + "type": 314 + }, + { + "name": "votes2", + "type": 317 + }, + { + "name": "votes3", + "type": 322 + }, + { + "name": "votes4", + "type": 325 + }, + { + "name": "votes5", + "type": 328 + }, + { + "name": "votes6", + "type": 331 + }, + { + "name": "votes7", + "type": 334 + }, + { + "name": "votes8", + "type": 337 + }, + { + "name": "votes9", + "type": 340 + }, + { + "name": "votes10", + "type": 343 + }, + { + "name": "votes11", + "type": 346 + }, + { + "name": "votes12", + "type": 349 + }, + { + "name": "votes13", + "type": 352 + }, + { + "name": "votes14", + "type": 355 + }, + { + "name": "votes15", + "type": 358 + }, + { + "name": "votes16", + "type": 361 + } + ] + } + } + } + }, + { + "id": 314, + "type": { + "def": { + "sequence": { + "type": 315 + } + } + } + }, + { + "id": 315, + "type": { + "def": { + "tuple": [ + 119, + 316 + ] + } + } + }, + { + "id": 316, + "type": { + "def": { + "compact": { + "type": 290 + } + } + } + }, + { + "id": 317, + "type": { + "def": { + "sequence": { + "type": 318 + } + } + } + }, + { + "id": 318, + "type": { + "def": { + "tuple": [ + 119, + 319, + 316 + ] + } + } + }, + { + "id": 319, + "type": { + "def": { + "tuple": [ + 316, + 320 + ] + } + } + }, + { + "id": 320, + "type": { + "def": { + "compact": { + "type": 321 + } + } + } + }, + { + "id": 321, + "type": { + "path": [ + "sp_arithmetic", + "per_things", + "PerU16" + ], + "def": { + "composite": { + "fields": [ + { + "type": 290, + "typeName": "u16" + } + ] + } + } + } + }, + { + "id": 322, + "type": { + "def": { + "sequence": { + "type": 323 + } + } + } + }, + { + "id": 323, + "type": { + "def": { + "tuple": [ + 119, + 324, + 316 + ] + } + } + }, + { + "id": 324, + "type": { + "def": { + "array": { + "len": 2, + "type": 319 + } + } + } + }, + { + "id": 325, + "type": { + "def": { + "sequence": { + "type": 326 + } + } + } + }, + { + "id": 326, + "type": { + "def": { + "tuple": [ + 119, + 327, + 316 + ] + } + } + }, + { + "id": 327, + "type": { + "def": { + "array": { + "len": 3, + "type": 319 + } + } + } + }, + { + "id": 328, + "type": { + "def": { + "sequence": { + "type": 329 + } + } + } + }, + { + "id": 329, + "type": { + "def": { + "tuple": [ + 119, + 330, + 316 + ] + } + } + }, + { + "id": 330, + "type": { + "def": { + "array": { + "len": 4, + "type": 319 + } + } + } + }, + { + "id": 331, + "type": { + "def": { + "sequence": { + "type": 332 + } + } + } + }, + { + "id": 332, + "type": { + "def": { + "tuple": [ + 119, + 333, + 316 + ] + } + } + }, + { + "id": 333, + "type": { + "def": { + "array": { + "len": 5, + "type": 319 + } + } + } + }, + { + "id": 334, + "type": { + "def": { + "sequence": { + "type": 335 + } + } + } + }, + { + "id": 335, + "type": { + "def": { + "tuple": [ + 119, + 336, + 316 + ] + } + } + }, + { + "id": 336, + "type": { + "def": { + "array": { + "len": 6, + "type": 319 + } + } + } + }, + { + "id": 337, + "type": { + "def": { + "sequence": { + "type": 338 + } + } + } + }, + { + "id": 338, + "type": { + "def": { + "tuple": [ + 119, + 339, + 316 + ] + } + } + }, + { + "id": 339, + "type": { + "def": { + "array": { + "len": 7, + "type": 319 + } + } + } + }, + { + "id": 340, + "type": { + "def": { + "sequence": { + "type": 341 + } + } + } + }, + { + "id": 341, + "type": { + "def": { + "tuple": [ + 119, + 342, + 316 + ] + } + } + }, + { + "id": 342, + "type": { + "def": { + "array": { + "len": 8, + "type": 319 + } + } + } + }, + { + "id": 343, + "type": { + "def": { + "sequence": { + "type": 344 + } + } + } + }, + { + "id": 344, + "type": { + "def": { + "tuple": [ + 119, + 345, + 316 + ] + } + } + }, + { + "id": 345, + "type": { + "def": { + "array": { + "len": 9, + "type": 319 + } + } + } + }, + { + "id": 346, + "type": { + "def": { + "sequence": { + "type": 347 + } + } + } + }, + { + "id": 347, + "type": { + "def": { + "tuple": [ + 119, + 348, + 316 + ] + } + } + }, + { + "id": 348, + "type": { + "def": { + "array": { + "len": 10, + "type": 319 + } + } + } + }, + { + "id": 349, + "type": { + "def": { + "sequence": { + "type": 350 + } + } + } + }, + { + "id": 350, + "type": { + "def": { + "tuple": [ + 119, + 351, + 316 + ] + } + } + }, + { + "id": 351, + "type": { + "def": { + "array": { + "len": 11, + "type": 319 + } + } + } + }, + { + "id": 352, + "type": { + "def": { + "sequence": { + "type": 353 + } + } + } + }, + { + "id": 353, + "type": { + "def": { + "tuple": [ + 119, + 354, + 316 + ] + } + } + }, + { + "id": 354, + "type": { + "def": { + "array": { + "len": 12, + "type": 319 + } + } + } + }, + { + "id": 355, + "type": { + "def": { + "sequence": { + "type": 356 + } + } + } + }, + { + "id": 356, + "type": { + "def": { + "tuple": [ + 119, + 357, + 316 + ] + } + } + }, + { + "id": 357, + "type": { + "def": { + "array": { + "len": 13, + "type": 319 + } + } + } + }, + { + "id": 358, + "type": { + "def": { + "sequence": { + "type": 359 + } + } + } + }, + { + "id": 359, + "type": { + "def": { + "tuple": [ + 119, + 360, + 316 + ] + } + } + }, + { + "id": 360, + "type": { + "def": { + "array": { + "len": 14, + "type": 319 + } + } + } + }, + { + "id": 361, + "type": { + "def": { + "sequence": { + "type": 362 + } + } + } + }, + { + "id": 362, + "type": { + "def": { + "tuple": [ + 119, + 363, + 316 + ] + } + } + }, + { + "id": 363, + "type": { + "def": { + "array": { + "len": 15, + "type": 319 + } + } + } + }, + { + "id": 364, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "SolutionOrSnapshotSize" + ], + "def": { + "composite": { + "fields": [ + { + "name": "voters", + "type": 119, + "typeName": "u32" + }, + { + "name": "targets", + "type": 119, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 365, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 38 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 38 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 366, + "type": { + "def": { + "sequence": { + "type": 367 + } + } + } + }, + { + "id": 367, + "type": { + "def": { + "tuple": [ + 0, + 368 + ] + } + } + }, + { + "id": 368, + "type": { + "path": [ + "sp_npos_elections", + "Support" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "total", + "type": 6, + "typeName": "ExtendedBalance" + }, + { + "name": "voters", + "type": 369, + "typeName": "Vec<(AccountId, ExtendedBalance)>" + } + ] + } + } + } + }, + { + "id": 369, + "type": { + "def": { + "sequence": { + "type": 370 + } + } + } + }, + { + "id": 370, + "type": { + "def": { + "tuple": [ + 0, + 6 + ] + } + } + }, + { + "id": 371, + "type": { + "path": [ + "pallet_staking", + "pallet", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "bond", + "fields": [ + { + "name": "value", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "payee", + "type": 372, + "typeName": "RewardDestination" + } + ], + "index": 0, + "docs": [ + "Take the origin account as a stash and lock up `value` of its balance. `controller` will", + "be the account that controls it.", + "", + "`value` must be more than the `minimum_balance` specified by `T::Currency`.", + "", + "The dispatch origin for this call must be _Signed_ by the stash account.", + "", + "Emits `Bonded`.", + "## Complexity", + "- Independent of the arguments. Moderate complexity.", + "- O(1).", + "- Three extra DB entries.", + "", + "NOTE: Two of the storage writes (`Self::bonded`, `Self::payee`) are _never_ cleaned", + "unless the `origin` falls below _existential deposit_ and gets removed as dust." + ] + }, + { + "name": "bond_extra", + "fields": [ + { + "name": "max_additional", + "type": 63, + "typeName": "BalanceOf" + } + ], + "index": 1, + "docs": [ + "Add some extra amount that have appeared in the stash `free_balance` into the balance up", + "for staking.", + "", + "The dispatch origin for this call must be _Signed_ by the stash, not the controller.", + "", + "Use this if there are additional funds in your stash account that you wish to bond.", + "Unlike [`bond`](Self::bond) or [`unbond`](Self::unbond) this function does not impose", + "any limitation on the amount that can be added.", + "", + "Emits `Bonded`.", + "", + "## Complexity", + "- Independent of the arguments. Insignificant complexity.", + "- O(1)." + ] + }, + { + "name": "unbond", + "fields": [ + { + "name": "value", + "type": 63, + "typeName": "BalanceOf" + } + ], + "index": 2, + "docs": [ + "Schedule a portion of the stash to be unlocked ready for transfer out after the bond", + "period ends. If this leaves an amount actively bonded less than", + "T::Currency::minimum_balance(), then it is increased to the full amount.", + "", + "The dispatch origin for this call must be _Signed_ by the controller, not the stash.", + "", + "Once the unlock period is done, you can call `withdraw_unbonded` to actually move", + "the funds out of management ready for transfer.", + "", + "No more than a limited number of unlocking chunks (see `MaxUnlockingChunks`)", + "can co-exists at the same time. If there are no unlocking chunks slots available", + "[`Call::withdraw_unbonded`] is called to remove some of the chunks (if possible).", + "", + "If a user encounters the `InsufficientBond` error when calling this extrinsic,", + "they should call `chill` first in order to free up their bonded funds.", + "", + "Emits `Unbonded`.", + "", + "See also [`Call::withdraw_unbonded`]." + ] + }, + { + "name": "withdraw_unbonded", + "fields": [ + { + "name": "num_slashing_spans", + "type": 4, + "typeName": "u32" + } + ], + "index": 3, + "docs": [ + "Remove any unlocked chunks from the `unlocking` queue from our management.", + "", + "This essentially frees up that balance to be used by the stash account to do", + "whatever it wants.", + "", + "The dispatch origin for this call must be _Signed_ by the controller.", + "", + "Emits `Withdrawn`.", + "", + "See also [`Call::unbond`].", + "", + "## Complexity", + "O(S) where S is the number of slashing spans to remove", + "NOTE: Weight annotation is the kill scenario, we refund otherwise." + ] + }, + { + "name": "validate", + "fields": [ + { + "name": "prefs", + "type": 43, + "typeName": "ValidatorPrefs" + } + ], + "index": 4, + "docs": [ + "Declare the desire to validate for the origin controller.", + "", + "Effects will be felt at the beginning of the next era.", + "", + "The dispatch origin for this call must be _Signed_ by the controller, not the stash." + ] + }, + { + "name": "nominate", + "fields": [ + { + "name": "targets", + "type": 373, + "typeName": "Vec>" + } + ], + "index": 5, + "docs": [ + "Declare the desire to nominate `targets` for the origin controller.", + "", + "Effects will be felt at the beginning of the next era.", + "", + "The dispatch origin for this call must be _Signed_ by the controller, not the stash.", + "", + "## Complexity", + "- The transaction's complexity is proportional to the size of `targets` (N)", + "which is capped at CompactAssignments::LIMIT (T::MaxNominations).", + "- Both the reads and writes follow a similar pattern." + ] + }, + { + "name": "chill", + "index": 6, + "docs": [ + "Declare no desire to either validate or nominate.", + "", + "Effects will be felt at the beginning of the next era.", + "", + "The dispatch origin for this call must be _Signed_ by the controller, not the stash.", + "", + "## Complexity", + "- Independent of the arguments. Insignificant complexity.", + "- Contains one read.", + "- Writes are limited to the `origin` account key." + ] + }, + { + "name": "set_payee", + "fields": [ + { + "name": "payee", + "type": 372, + "typeName": "RewardDestination" + } + ], + "index": 7, + "docs": [ + "(Re-)set the payment target for a controller.", + "", + "Effects will be felt instantly (as soon as this function is completed successfully).", + "", + "The dispatch origin for this call must be _Signed_ by the controller, not the stash.", + "", + "## Complexity", + "- O(1)", + "- Independent of the arguments. Insignificant complexity.", + "- Contains a limited number of reads.", + "- Writes are limited to the `origin` account key.", + "---------" + ] + }, + { + "name": "set_controller", + "index": 8, + "docs": [ + "(Re-)sets the controller of a stash to the stash itself. This function previously", + "accepted a `controller` argument to set the controller to an account other than the", + "stash itself. This functionality has now been removed, now only setting the controller", + "to the stash, if it is not already.", + "", + "Effects will be felt instantly (as soon as this function is completed successfully).", + "", + "The dispatch origin for this call must be _Signed_ by the stash, not the controller.", + "", + "## Complexity", + "O(1)", + "- Independent of the arguments. Insignificant complexity.", + "- Contains a limited number of reads.", + "- Writes are limited to the `origin` account key." + ] + }, + { + "name": "set_validator_count", + "fields": [ + { + "name": "new", + "type": 119, + "typeName": "u32" + } + ], + "index": 9, + "docs": [ + "Sets the ideal number of validators.", + "", + "The dispatch origin must be Root.", + "", + "## Complexity", + "O(1)" + ] + }, + { + "name": "increase_validator_count", + "fields": [ + { + "name": "additional", + "type": 119, + "typeName": "u32" + } + ], + "index": 10, + "docs": [ + "Increments the ideal number of validators upto maximum of", + "`ElectionProviderBase::MaxWinners`.", + "", + "The dispatch origin must be Root.", + "", + "## Complexity", + "Same as [`Self::set_validator_count`]." + ] + }, + { + "name": "scale_validator_count", + "fields": [ + { + "name": "factor", + "type": 374, + "typeName": "Percent" + } + ], + "index": 11, + "docs": [ + "Scale up the ideal number of validators by a factor upto maximum of", + "`ElectionProviderBase::MaxWinners`.", + "", + "The dispatch origin must be Root.", + "", + "## Complexity", + "Same as [`Self::set_validator_count`]." + ] + }, + { + "name": "force_no_eras", + "index": 12, + "docs": [ + "Force there to be no new eras indefinitely.", + "", + "The dispatch origin must be Root.", + "", + "# Warning", + "", + "The election process starts multiple blocks before the end of the era.", + "Thus the election process may be ongoing when this is called. In this case the", + "election will continue until the next era is triggered.", + "", + "## Complexity", + "- No arguments.", + "- Weight: O(1)" + ] + }, + { + "name": "force_new_era", + "index": 13, + "docs": [ + "Force there to be a new era at the end of the next session. After this, it will be", + "reset to normal (non-forced) behaviour.", + "", + "The dispatch origin must be Root.", + "", + "# Warning", + "", + "The election process starts multiple blocks before the end of the era.", + "If this is called just before a new era is triggered, the election process may not", + "have enough blocks to get a result.", + "", + "## Complexity", + "- No arguments.", + "- Weight: O(1)" + ] + }, + { + "name": "set_invulnerables", + "fields": [ + { + "name": "invulnerables", + "type": 78, + "typeName": "Vec" + } + ], + "index": 14, + "docs": [ + "Set the validators who cannot be slashed (if any).", + "", + "The dispatch origin must be Root." + ] + }, + { + "name": "force_unstake", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "num_slashing_spans", + "type": 4, + "typeName": "u32" + } + ], + "index": 15, + "docs": [ + "Force a current staker to become completely unstaked, immediately.", + "", + "The dispatch origin must be Root." + ] + }, + { + "name": "force_new_era_always", + "index": 16, + "docs": [ + "Force there to be a new era at the end of sessions indefinitely.", + "", + "The dispatch origin must be Root.", + "", + "# Warning", + "", + "The election process starts multiple blocks before the end of the era.", + "If this is called just before a new era is triggered, the election process may not", + "have enough blocks to get a result." + ] + }, + { + "name": "cancel_deferred_slash", + "fields": [ + { + "name": "era", + "type": 4, + "typeName": "EraIndex" + }, + { + "name": "slash_indices", + "type": 375, + "typeName": "Vec" + } + ], + "index": 17, + "docs": [ + "Cancel enactment of a deferred slash.", + "", + "Can be called by the `T::AdminOrigin`.", + "", + "Parameters: era and indices of the slashes for that era to kill." + ] + }, + { + "name": "payout_stakers", + "fields": [ + { + "name": "validator_stash", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "era", + "type": 4, + "typeName": "EraIndex" + } + ], + "index": 18, + "docs": [ + "Pay out all the stakers behind a single validator for a single era.", + "", + "- `validator_stash` is the stash account of the validator. Their nominators, up to", + " `T::MaxNominatorRewardedPerValidator`, will also receive their rewards.", + "- `era` may be any era between `[current_era - history_depth; current_era]`.", + "", + "The origin of this call must be _Signed_. Any account can call this function, even if", + "it is not one of the stakers.", + "", + "## Complexity", + "- At most O(MaxNominatorRewardedPerValidator)." + ] + }, + { + "name": "rebond", + "fields": [ + { + "name": "value", + "type": 63, + "typeName": "BalanceOf" + } + ], + "index": 19, + "docs": [ + "Rebond a portion of the stash scheduled to be unlocked.", + "", + "The dispatch origin must be signed by the controller.", + "", + "## Complexity", + "- Time complexity: O(L), where L is unlocking chunks", + "- Bounded by `MaxUnlockingChunks`." + ] + }, + { + "name": "reap_stash", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "num_slashing_spans", + "type": 4, + "typeName": "u32" + } + ], + "index": 20, + "docs": [ + "Remove all data structures concerning a staker/stash once it is at a state where it can", + "be considered `dust` in the staking system. The requirements are:", + "", + "1. the `total_balance` of the stash is below existential deposit.", + "2. or, the `ledger.total` of the stash is below existential deposit.", + "", + "The former can happen in cases like a slash; the latter when a fully unbonded account", + "is still receiving staking rewards in `RewardDestination::Staked`.", + "", + "It can be called by anyone, as long as `stash` meets the above requirements.", + "", + "Refunds the transaction fees upon successful execution." + ] + }, + { + "name": "kick", + "fields": [ + { + "name": "who", + "type": 373, + "typeName": "Vec>" + } + ], + "index": 21, + "docs": [ + "Remove the given nominations from the calling validator.", + "", + "Effects will be felt at the beginning of the next era.", + "", + "The dispatch origin for this call must be _Signed_ by the controller, not the stash.", + "", + "- `who`: A list of nominator stash accounts who are nominating this validator which", + " should no longer be nominating this validator.", + "", + "Note: Making this call only makes sense if you first set the validator preferences to", + "block any further nominations." + ] + }, + { + "name": "set_staking_configs", + "fields": [ + { + "name": "min_nominator_bond", + "type": 376, + "typeName": "ConfigOp>" + }, + { + "name": "min_validator_bond", + "type": 376, + "typeName": "ConfigOp>" + }, + { + "name": "max_nominator_count", + "type": 377, + "typeName": "ConfigOp" + }, + { + "name": "max_validator_count", + "type": 377, + "typeName": "ConfigOp" + }, + { + "name": "chill_threshold", + "type": 378, + "typeName": "ConfigOp" + }, + { + "name": "min_commission", + "type": 379, + "typeName": "ConfigOp" + } + ], + "index": 22, + "docs": [ + "Update the various staking configurations .", + "", + "* `min_nominator_bond`: The minimum active bond needed to be a nominator.", + "* `min_validator_bond`: The minimum active bond needed to be a validator.", + "* `max_nominator_count`: The max number of users who can be a nominator at once. When", + " set to `None`, no limit is enforced.", + "* `max_validator_count`: The max number of users who can be a validator at once. When", + " set to `None`, no limit is enforced.", + "* `chill_threshold`: The ratio of `max_nominator_count` or `max_validator_count` which", + " should be filled in order for the `chill_other` transaction to work.", + "* `min_commission`: The minimum amount of commission that each validators must maintain.", + " This is checked only upon calling `validate`. Existing validators are not affected.", + "", + "RuntimeOrigin must be Root to call this function.", + "", + "NOTE: Existing nominators and validators will not be affected by this update.", + "to kick people under the new limits, `chill_other` should be called." + ] + }, + { + "name": "chill_other", + "fields": [ + { + "name": "controller", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 23, + "docs": [ + "Declare a `controller` to stop participating as either a validator or nominator.", + "", + "Effects will be felt at the beginning of the next era.", + "", + "The dispatch origin for this call must be _Signed_, but can be called by anyone.", + "", + "If the caller is the same as the controller being targeted, then no further checks are", + "enforced, and this function behaves just like `chill`.", + "", + "If the caller is different than the controller being targeted, the following conditions", + "must be met:", + "", + "* `controller` must belong to a nominator who has become non-decodable,", + "", + "Or:", + "", + "* A `ChillThreshold` must be set and checked which defines how close to the max", + " nominators or validators we must reach before users can start chilling one-another.", + "* A `MaxNominatorCount` and `MaxValidatorCount` must be set which is used to determine", + " how close we are to the threshold.", + "* A `MinNominatorBond` and `MinValidatorBond` must be set and checked, which determines", + " if this is a person that should be chilled because they have not met the threshold", + " bond required.", + "", + "This can be helpful if bond requirements are updated, and we need to remove old users", + "who do not satisfy these requirements." + ] + }, + { + "name": "force_apply_min_commission", + "fields": [ + { + "name": "validator_stash", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 24, + "docs": [ + "Force a validator to have at least the minimum commission. This will not affect a", + "validator who already has a commission greater than or equal to the minimum. Any account", + "can call this." + ] + }, + { + "name": "set_min_commission", + "fields": [ + { + "name": "new", + "type": 42, + "typeName": "Perbill" + } + ], + "index": 25, + "docs": [ + "Sets the minimum amount of commission that each validators must maintain.", + "", + "This call has lower privilege requirements than `set_staking_config` and can be called", + "by the `T::AdminOrigin`. Root can always call this." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 372, + "type": { + "path": [ + "pallet_staking", + "RewardDestination" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Staked", + "index": 0 + }, + { + "name": "Stash", + "index": 1 + }, + { + "name": "Controller", + "index": 2 + }, + { + "name": "Account", + "fields": [ + { + "type": 0, + "typeName": "AccountId" + } + ], + "index": 3 + }, + { + "name": "None", + "index": 4 + } + ] + } + } + } + }, + { + "id": 373, + "type": { + "def": { + "sequence": { + "type": 309 + } + } + } + }, + { + "id": 374, + "type": { + "path": [ + "sp_arithmetic", + "per_things", + "Percent" + ], + "def": { + "composite": { + "fields": [ + { + "type": 2, + "typeName": "u8" + } + ] + } + } + } + }, + { + "id": 375, + "type": { + "def": { + "sequence": { + "type": 4 + } + } + } + }, + { + "id": 376, + "type": { + "path": [ + "pallet_staking", + "pallet", + "pallet", + "ConfigOp" + ], + "params": [ + { + "name": "T", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Noop", + "index": 0 + }, + { + "name": "Set", + "fields": [ + { + "type": 6, + "typeName": "T" + } + ], + "index": 1 + }, + { + "name": "Remove", + "index": 2 + } + ] + } + } + } + }, + { + "id": 377, + "type": { + "path": [ + "pallet_staking", + "pallet", + "pallet", + "ConfigOp" + ], + "params": [ + { + "name": "T", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Noop", + "index": 0 + }, + { + "name": "Set", + "fields": [ + { + "type": 4, + "typeName": "T" + } + ], + "index": 1 + }, + { + "name": "Remove", + "index": 2 + } + ] + } + } + } + }, + { + "id": 378, + "type": { + "path": [ + "pallet_staking", + "pallet", + "pallet", + "ConfigOp" + ], + "params": [ + { + "name": "T", + "type": 374 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Noop", + "index": 0 + }, + { + "name": "Set", + "fields": [ + { + "type": 374, + "typeName": "T" + } + ], + "index": 1 + }, + { + "name": "Remove", + "index": 2 + } + ] + } + } + } + }, + { + "id": 379, + "type": { + "path": [ + "pallet_staking", + "pallet", + "pallet", + "ConfigOp" + ], + "params": [ + { + "name": "T", + "type": 42 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Noop", + "index": 0 + }, + { + "name": "Set", + "fields": [ + { + "type": 42, + "typeName": "T" + } + ], + "index": 1 + }, + { + "name": "Remove", + "index": 2 + } + ] + } + } + } + }, + { + "id": 380, + "type": { + "path": [ + "pallet_session", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "set_keys", + "fields": [ + { + "name": "keys", + "type": 381, + "typeName": "T::Keys" + }, + { + "name": "proof", + "type": 13, + "typeName": "Vec" + } + ], + "index": 0, + "docs": [ + "Sets the session key(s) of the function caller to `keys`.", + "Allows an account to set its session key prior to becoming a validator.", + "This doesn't take effect until the next session.", + "", + "The dispatch origin of this function must be signed.", + "", + "## Complexity", + "- `O(1)`. Actual cost depends on the number of length of `T::Keys::key_ids()` which is", + " fixed." + ] + }, + { + "name": "purge_keys", + "index": 1, + "docs": [ + "Removes any session key(s) of the function caller.", + "", + "This doesn't take effect until the next session.", + "", + "The dispatch origin of this function must be Signed and the account must be either be", + "convertible to a validator ID using the chain's typical addressing system (this usually", + "means being a controller account) or directly convertible into a validator ID (which", + "usually means being a stash account).", + "", + "## Complexity", + "- `O(1)` in number of key types. Actual cost depends on the number of length of", + " `T::Keys::key_ids()` which is fixed." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 381, + "type": { + "path": [ + "enjin_runtime", + "opaque", + "SessionKeys" + ], + "def": { + "composite": { + "fields": [ + { + "name": "grandpa", + "type": 50, + "typeName": "::Public" + }, + { + "name": "babe", + "type": 302, + "typeName": "::Public" + }, + { + "name": "im_online", + "type": 58, + "typeName": "::Public" + }, + { + "name": "para_validator", + "type": 382, + "typeName": "::Public" + }, + { + "name": "para_assignment", + "type": 383, + "typeName": "::Public" + }, + { + "name": "authority_discovery", + "type": 384, + "typeName": "::Public" + } + ] + } + } + } + }, + { + "id": 382, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "validator_app", + "Public" + ], + "def": { + "composite": { + "fields": [ + { + "type": 59, + "typeName": "sr25519::Public" + } + ] + } + } + } + }, + { + "id": 383, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "assignment_app", + "Public" + ], + "def": { + "composite": { + "fields": [ + { + "type": 59, + "typeName": "sr25519::Public" + } + ] + } + } + } + }, + { + "id": 384, + "type": { + "path": [ + "sp_authority_discovery", + "app", + "Public" + ], + "def": { + "composite": { + "fields": [ + { + "type": 59, + "typeName": "sr25519::Public" + } + ] + } + } + } + }, + { + "id": 385, + "type": { + "path": [ + "pallet_grandpa", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "report_equivocation", + "fields": [ + { + "name": "equivocation_proof", + "type": 386, + "typeName": "Box>" + }, + { + "name": "key_owner_proof", + "type": 304, + "typeName": "T::KeyOwnerProof" + } + ], + "index": 0, + "docs": [ + "Report voter equivocation/misbehavior. This method will verify the", + "equivocation proof and validate the given key ownership proof", + "against the extracted offender. If both are valid, the offence", + "will be reported." + ] + }, + { + "name": "report_equivocation_unsigned", + "fields": [ + { + "name": "equivocation_proof", + "type": 386, + "typeName": "Box>" + }, + { + "name": "key_owner_proof", + "type": 304, + "typeName": "T::KeyOwnerProof" + } + ], + "index": 1, + "docs": [ + "Report voter equivocation/misbehavior. This method will verify the", + "equivocation proof and validate the given key ownership proof", + "against the extracted offender. If both are valid, the offence", + "will be reported.", + "", + "This extrinsic must be called unsigned and it is expected that only", + "block authors will call it (validated in `ValidateUnsigned`), as such", + "if the block author is defined it will be defined as the equivocation", + "reporter." + ] + }, + { + "name": "note_stalled", + "fields": [ + { + "name": "delay", + "type": 4, + "typeName": "T::BlockNumber" + }, + { + "name": "best_finalized_block_number", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 2, + "docs": [ + "Note that the current authority set of the GRANDPA finality gadget has stalled.", + "", + "This will trigger a forced authority set change at the beginning of the next session, to", + "be enacted `delay` blocks after that. The `delay` should be high enough to safely assume", + "that the block signalling the forced change will not be re-orged e.g. 1000 blocks.", + "The block production rate (which may be slowed down because of finality lagging) should", + "be taken into account when choosing the `delay`. The GRANDPA voters based on the new", + "authority will start voting on top of `best_finalized_block_number` for new finalized", + "blocks. `best_finalized_block_number` should be the highest of the latest finalized", + "block of all validators of the new authority set.", + "", + "Only callable by root." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 386, + "type": { + "path": [ + "sp_consensus_grandpa", + "EquivocationProof" + ], + "params": [ + { + "name": "H", + "type": 12 + }, + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "set_id", + "type": 11, + "typeName": "SetId" + }, + { + "name": "equivocation", + "type": 387, + "typeName": "Equivocation" + } + ] + } + } + } + }, + { + "id": 387, + "type": { + "path": [ + "sp_consensus_grandpa", + "Equivocation" + ], + "params": [ + { + "name": "H", + "type": 12 + }, + { + "name": "N", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Prevote", + "fields": [ + { + "type": 388, + "typeName": "grandpa::Equivocation,\nAuthoritySignature>" + } + ], + "index": 0 + }, + { + "name": "Precommit", + "fields": [ + { + "type": 393, + "typeName": "grandpa::Equivocation,\nAuthoritySignature>" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 388, + "type": { + "path": [ + "finality_grandpa", + "Equivocation" + ], + "params": [ + { + "name": "Id", + "type": 50 + }, + { + "name": "V", + "type": 389 + }, + { + "name": "S", + "type": 390 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "round_number", + "type": 11, + "typeName": "u64" + }, + { + "name": "identity", + "type": 50, + "typeName": "Id" + }, + { + "name": "first", + "type": 392, + "typeName": "(V, S)" + }, + { + "name": "second", + "type": 392, + "typeName": "(V, S)" + } + ] + } + } + } + }, + { + "id": 389, + "type": { + "path": [ + "finality_grandpa", + "Prevote" + ], + "params": [ + { + "name": "H", + "type": 12 + }, + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "target_hash", + "type": 12, + "typeName": "H" + }, + { + "name": "target_number", + "type": 4, + "typeName": "N" + } + ] + } + } + } + }, + { + "id": 390, + "type": { + "path": [ + "sp_consensus_grandpa", + "app", + "Signature" + ], + "def": { + "composite": { + "fields": [ + { + "type": 391, + "typeName": "ed25519::Signature" + } + ] + } + } + } + }, + { + "id": 391, + "type": { + "path": [ + "sp_core", + "ed25519", + "Signature" + ], + "def": { + "composite": { + "fields": [ + { + "type": 97, + "typeName": "[u8; 64]" + } + ] + } + } + } + }, + { + "id": 392, + "type": { + "def": { + "tuple": [ + 389, + 390 + ] + } + } + }, + { + "id": 393, + "type": { + "path": [ + "finality_grandpa", + "Equivocation" + ], + "params": [ + { + "name": "Id", + "type": 50 + }, + { + "name": "V", + "type": 394 + }, + { + "name": "S", + "type": 390 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "round_number", + "type": 11, + "typeName": "u64" + }, + { + "name": "identity", + "type": 50, + "typeName": "Id" + }, + { + "name": "first", + "type": 395, + "typeName": "(V, S)" + }, + { + "name": "second", + "type": 395, + "typeName": "(V, S)" + } + ] + } + } + } + }, + { + "id": 394, + "type": { + "path": [ + "finality_grandpa", + "Precommit" + ], + "params": [ + { + "name": "H", + "type": 12 + }, + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "target_hash", + "type": 12, + "typeName": "H" + }, + { + "name": "target_number", + "type": 4, + "typeName": "N" + } + ] + } + } + } + }, + { + "id": 395, + "type": { + "def": { + "tuple": [ + 394, + 390 + ] + } + } + }, + { + "id": 396, + "type": { + "path": [ + "pallet_treasury", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "propose_spend", + "fields": [ + { + "name": "value", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "beneficiary", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 0, + "docs": [ + "Put forward a suggestion for spending. A deposit proportional to the value", + "is reserved and slashed if the proposal is rejected. It is returned once the", + "proposal is awarded.", + "", + "## Complexity", + "- O(1)" + ] + }, + { + "name": "reject_proposal", + "fields": [ + { + "name": "proposal_id", + "type": 119, + "typeName": "ProposalIndex" + } + ], + "index": 1, + "docs": [ + "Reject a proposed spend. The original deposit will be slashed.", + "", + "May only be called from `T::RejectOrigin`.", + "", + "## Complexity", + "- O(1)" + ] + }, + { + "name": "approve_proposal", + "fields": [ + { + "name": "proposal_id", + "type": 119, + "typeName": "ProposalIndex" + } + ], + "index": 2, + "docs": [ + "Approve a proposal. At a later time, the proposal will be allocated to the beneficiary", + "and the original deposit will be returned.", + "", + "May only be called from `T::ApproveOrigin`.", + "", + "## Complexity", + " - O(1)." + ] + }, + { + "name": "spend", + "fields": [ + { + "name": "amount", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "beneficiary", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 3, + "docs": [ + "Propose and approve a spend of treasury funds.", + "", + "- `origin`: Must be `SpendOrigin` with the `Success` value being at least `amount`.", + "- `amount`: The amount to be transferred from the treasury to the `beneficiary`.", + "- `beneficiary`: The destination account for the transfer.", + "", + "NOTE: For record-keeping purposes, the proposer is deemed to be equivalent to the", + "beneficiary." + ] + }, + { + "name": "remove_approval", + "fields": [ + { + "name": "proposal_id", + "type": 119, + "typeName": "ProposalIndex" + } + ], + "index": 4, + "docs": [ + "Force a previously approved proposal to be removed from the approval queue.", + "The original deposit will no longer be returned.", + "", + "May only be called from `T::RejectOrigin`.", + "- `proposal_id`: The index of a proposal", + "", + "## Complexity", + "- O(A) where `A` is the number of approvals", + "", + "Errors:", + "- `ProposalNotApproved`: The `proposal_id` supplied was not found in the approval queue,", + "i.e., the proposal has not been approved. This could also mean the proposal does not", + "exist altogether, thus there is no way it would have been approved in the first place." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 397, + "type": { + "path": [ + "pallet_sudo", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "sudo", + "fields": [ + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + } + ], + "index": 0, + "docs": [ + "Authenticates the sudo key and dispatches a function call with `Root` origin.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "## Complexity", + "- O(1)." + ] + }, + { + "name": "sudo_unchecked_weight", + "fields": [ + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + }, + { + "name": "weight", + "type": 9, + "typeName": "Weight" + } + ], + "index": 1, + "docs": [ + "Authenticates the sudo key and dispatches a function call with `Root` origin.", + "This function does not check the weight of the call, and instead allows the", + "Sudo user to specify the weight of the call.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "## Complexity", + "- O(1)." + ] + }, + { + "name": "set_key", + "fields": [ + { + "name": "new", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 2, + "docs": [ + "Authenticates the current sudo key and sets the given AccountId (`new`) as the new sudo", + "key.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "## Complexity", + "- O(1)." + ] + }, + { + "name": "sudo_as", + "fields": [ + { + "name": "who", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + } + ], + "index": 3, + "docs": [ + "Authenticates the sudo key and dispatches a function call with `Signed` origin from", + "a given account.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "## Complexity", + "- O(1)." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 398, + "type": { + "path": [ + "pallet_im_online", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "heartbeat", + "fields": [ + { + "name": "heartbeat", + "type": 399, + "typeName": "Heartbeat" + }, + { + "name": "signature", + "type": 404, + "typeName": "::Signature" + } + ], + "index": 0, + "docs": [ + "## Complexity:", + "- `O(K + E)` where K is length of `Keys` (heartbeat.validators_len) and E is length of", + " `heartbeat.network_state.external_address`", + " - `O(K)`: decoding of length `K`", + " - `O(E)`: decoding/encoding of length `E`" + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 399, + "type": { + "path": [ + "pallet_im_online", + "Heartbeat" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "block_number", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "network_state", + "type": 400, + "typeName": "OpaqueNetworkState" + }, + { + "name": "session_index", + "type": 4, + "typeName": "SessionIndex" + }, + { + "name": "authority_index", + "type": 4, + "typeName": "AuthIndex" + }, + { + "name": "validators_len", + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 400, + "type": { + "path": [ + "sp_core", + "offchain", + "OpaqueNetworkState" + ], + "def": { + "composite": { + "fields": [ + { + "name": "peer_id", + "type": 401, + "typeName": "OpaquePeerId" + }, + { + "name": "external_addresses", + "type": 402, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 401, + "type": { + "path": [ + "sp_core", + "OpaquePeerId" + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 402, + "type": { + "def": { + "sequence": { + "type": 403 + } + } + } + }, + { + "id": 403, + "type": { + "path": [ + "sp_core", + "offchain", + "OpaqueMultiaddr" + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 404, + "type": { + "path": [ + "pallet_im_online", + "sr25519", + "app_sr25519", + "Signature" + ], + "def": { + "composite": { + "fields": [ + { + "type": 96, + "typeName": "sr25519::Signature" + } + ] + } + } + } + }, + { + "id": 405, + "type": { + "path": [ + "pallet_bags_list", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "rebag", + "fields": [ + { + "name": "dislocated", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 0, + "docs": [ + "Declare that some `dislocated` account has, through rewards or penalties, sufficiently", + "changed its score that it should properly fall into a different bag than its current", + "one.", + "", + "Anyone can call this function about any potentially dislocated account.", + "", + "Will always update the stored score of `dislocated` to the correct score, based on", + "`ScoreProvider`.", + "", + "If `dislocated` does not exists, it returns an error." + ] + }, + { + "name": "put_in_front_of", + "fields": [ + { + "name": "lighter", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 1, + "docs": [ + "Move the caller's Id directly in front of `lighter`.", + "", + "The dispatch origin for this call must be _Signed_ and can only be called by the Id of", + "the account going in front of `lighter`.", + "", + "Only works if", + "- both nodes are within the same bag,", + "- and `origin` has a greater `Score` than `lighter`." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 406, + "type": { + "path": [ + "pallet_nomination_pools", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "bond", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "amount", + "type": 407, + "typeName": "BondValueOf" + } + ], + "index": 0, + "docs": [ + "Stake funds with a pool. The amount to bond is transferred from the member to the", + "pools account and immediately increases the pools bond. The sENJ token will be minted", + "and transferred to `origin`.", + "", + "# Parameters", + "- `origin`: the caller", + "- `pool_id`: the pool id to bond", + "- `amount`: the amount of tokens deposited into the pool", + "", + "# Note", + "", + "* An account can only be a member of a single pool.", + "* An account cannot join the same pool multiple times.", + "* This call will *not* dust the member account, so the member must have at least", + " `existential deposit + amount` in their account.", + "* Only a pool with [`PoolState::Open`] can be joined" + ] + }, + { + "name": "unbond", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "member_account", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "unbonding_points", + "type": 63, + "typeName": "BalanceOf" + } + ], + "index": 3, + "docs": [ + "Unbond up to `unbonding_points` of the `member_account`'s funds from the pool by burning", + "sENJ.", + "", + "Under certain conditions, this call can be dispatched permissionlessly (i.e. by any", + "account).", + "", + "# Conditions for a permissionless dispatch.", + "", + "* The pool is blocked and the caller is holding the pool's token. This is refereed to as", + " a kick.", + "* The pool is destroying.", + "* The pool is destroying and no other members are in the pool.", + "", + "## Conditions for permissioned dispatch (i.e. the caller is also the", + "`member_account`):", + "", + "* The caller is not the last member.", + "* The caller is the last member and the pool is destroying.", + "", + "# Note", + "", + "If there are too many unlocking chunks to unbond with the pool account,", + "[`Call::pool_withdraw_unbonded`] can be called to try and minimize unlocking chunks.", + "The [`StakingInterface::unbond`] will implicitly call [`Call::pool_withdraw_unbonded`]", + "to try to free chunks if necessary (ie. if unbound was called and no unlocking chunks", + "are available). However, it may not be possible to release the current unlocking chunks,", + "in which case, the result of this call will likely be the `NoMoreChunks` error from the", + "staking system." + ] + }, + { + "name": "pool_withdraw_unbonded", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "num_slashing_spans", + "type": 4, + "typeName": "u32" + } + ], + "index": 4, + "docs": [ + "Call `withdraw_unbonded` for the pools account. This call can be made by any account.", + "", + "This is useful if their are too many unlocking chunks to call `unbond`, and some", + "can be cleared by withdrawing. In the case there are too many unlocking chunks, the user", + "would probably see an error like `NoMoreChunks` emitted from the staking system when", + "they attempt to unbond." + ] + }, + { + "name": "withdraw_unbonded", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "member_account", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "num_slashing_spans", + "type": 4, + "typeName": "u32" + } + ], + "index": 5, + "docs": [ + "Withdraw unbonded funds from `member_account`. If no bonded funds can be unbonded, an", + "error is returned.", + "", + "Under certain conditions, this call can be dispatched permissionlessly (i.e. by any", + "account).", + "", + "# Conditions for a permissionless dispatch", + "", + "* The pool is in destroy mode.", + "* The target is the only member in the sub pools.", + "* The pool is blocked and the caller is either the admin or state-toggler.", + "", + "# Conditions for permissioned dispatch", + "", + "* The caller is the target and they are not the last member.", + "", + "# Note", + "", + "If the target is the last member, the pool will be destroyed." + ] + }, + { + "name": "create", + "fields": [ + { + "name": "token_id", + "type": 6, + "typeName": "TokenIdOf" + }, + { + "name": "deposit", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "capacity", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "duration", + "type": 119, + "typeName": "EraIndex" + } + ], + "index": 6, + "docs": [ + "Create a new nomination pool.", + "", + "# Arguments", + "", + "* `token_id` - Token that that will control the pool. This token must be from the", + " [`Config::PoolCollectionId`] collection and it must be held by the caller.", + "* `deposit` - The amount of funds to delegate to the pool. This also acts as a deposit", + " because the pool's creator cannot fully unbond funds until the pool is destroyed.", + "* `capacity` - The maximum total balance allowed in the pool. This is measured in sENJ.", + " It must be below the pool's capacity. See `Capacity` section in crate level docs.", + "* `duration` - The duration in blocks of the pool's bonus cycle", + "", + "# Note", + "", + "In addition to `deposit`, the caller will transfer the existential deposit for the", + "pool's accounts; so the caller needs at have at least `deposit + existential_deposit *", + "2` transferable." + ] + }, + { + "name": "nominate", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "validators", + "type": 78, + "typeName": "Vec" + } + ], + "index": 8, + "docs": [ + "Nominate on behalf of the pool.", + "", + "The dispatch origin of this call must be signed by the holder of the pool token.", + "", + "This directly forward the call to the staking pallet, on behalf of the pool bonded", + "account." + ] + }, + { + "name": "set_configs", + "fields": [ + { + "name": "min_join_bond", + "type": 408, + "typeName": "ConfigOp>" + }, + { + "name": "min_create_bond", + "type": 408, + "typeName": "ConfigOp>" + }, + { + "name": "global_max_commission", + "type": 409, + "typeName": "ConfigOp" + }, + { + "name": "required_payout_count", + "type": 409, + "typeName": "ConfigOp" + } + ], + "index": 11, + "docs": [ + "Update configurations for the nomination pools. Callable only by", + "[`Config::ForceOrigin`].", + "", + "# Arguments", + "", + "* `min_join_bond` - Set [`MinJoinBond`].", + "* `min_create_bond` - Set [`MinCreateBond`].", + "* `global_max_commission` - Set [`GlobalMaxCommission`]." + ] + }, + { + "name": "chill", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + } + ], + "index": 13, + "docs": [ + "Chill on behalf of the pool.", + "", + "The dispatch origin of this call must be signed by the pool token holder, same as", + "[`Pallet::nominate`].", + "", + "This directly forward the call to the staking pallet, on behalf of the pool bonded", + "account." + ] + }, + { + "name": "destroy", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + } + ], + "index": 14, + "docs": [ + "Destroy the pool.", + "", + "The dispatch origin of this call must be signed by the account holding the pool token", + "of the given pool_id." + ] + }, + { + "name": "payout_rewards", + "fields": [ + { + "name": "validator_stash", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "era", + "type": 4, + "typeName": "EraIndex" + } + ], + "index": 18, + "docs": [ + "Pays rewards to `validator_stash` and also distributes rewards to the reward accounts of", + "the pools nominating it. The appropriate bonus is also calculated and stored in the", + "bonus account.", + "", + "This should be called once per era per validator. It is a permissionless call. It also", + "processes rewards for the previous era if [`Self::process_payouts`] was not called.", + "", + "## Bonus Calculation", + "", + "1. Minimum duration and max duration are found for all pools nominating", + " `validator_stash`", + "2. [`Config::BonusPercentage`] is set aside from rewards for bonus", + "3. Normalized weight is calculated and then scaled according to the total bonus. See", + " `functions::calculate_real_weight`.", + "4. The scaled weight is offset according to [`Config::BaseBonusRewardPercentage`] so", + " that all pools at least get the minimum weight", + "5. Final calculation is done in [`traits::Bonus::calculate_bonus`] and then transferred", + " to the bonus account" + ] + }, + { + "name": "process_payouts", + "fields": [ + { + "name": "pool_count", + "type": 4, + "typeName": "u32" + } + ], + "index": 25, + "docs": [ + "Processes the rewards for all pools that were distributed in [`Self::payout_rewards`].", + "It will only succeed if it is called on the same era that payouts were made. It uses the", + "[`EraPayoutInfo`] storage to verify this. This extrinsic is permissionless.", + "", + "The following is done for each pool:", + "1. If the pool has reached the end of its cycle, it cycles the pool.", + "2. Sends bonus for the current era from the bonus account to the rewards account.", + "3. Sends reward commission to the depositor.", + "4. It bonds the pool's reward balance.", + "", + "It is not required to call this extrinsic. If it is not called, the rewards will be", + "processed when `payout_rewards` is called in the next era." + ] + }, + { + "name": "mutate", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "mutation", + "type": 72, + "typeName": "PoolMutationOf" + } + ], + "index": 19, + "docs": [ + "Mutate the nomination pool data.", + "", + "The dispatch origin of this call must be signed by the account holding the pool token", + "of the given pool_id." + ] + }, + { + "name": "unbond_deposit", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + } + ], + "index": 20, + "docs": [ + "Unbonds the deposit", + "", + "This call is permissionless but certain conditions must be met before the deposit can", + "be unbonded:", + "", + "- Pool must be in [`PoolState::Destroying`] mode", + "- Deposit points must be the only points in the pool", + "- [`UnbondingMembers`] must be empty", + "", + "This will unbond the deposit from the pool." + ] + }, + { + "name": "withdraw_deposit", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + } + ], + "index": 21, + "docs": [ + "Withdraws the deposit", + "", + "This call is permissionless and should be called after the deposit has been unbonded." + ] + }, + { + "name": "withdraw_free_balance", + "fields": [ + { + "name": "pool_id", + "type": 4, + "typeName": "PoolId" + }, + { + "name": "destination", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 26, + "docs": [ + "Transfers `amount` from the pool's free balance to `destination`. Only callable by", + "[`Config::ForceOrigin`]." + ] + }, + { + "name": "set_staking_info", + "fields": [ + { + "name": "info", + "type": 410, + "typeName": "StakingInfo" + } + ], + "index": 22, + "docs": [ + "Set the annual inflation rate and collator payout cut", + "", + "Callable only by [`Config::ForceOrigin`]" + ] + }, + { + "name": "queue_early_bird_bonus", + "fields": [ + { + "name": "pool_count", + "type": 4, + "typeName": "u32" + } + ], + "index": 23, + "docs": [ + "Calculate and prepare early bird bonus if it is ready to be queued.", + "", + "Callable by any signed origin after [`Config::EarlyBirdBonusDistributionBlock`].", + "", + "## Details", + "", + "1. Calculates the normalized weights for each pool by calling", + " [`Pallet::early_bird_normalized_weight`]. Factors for the weight are each pool's", + " total points and the creation date.", + "2. Each pool's weight is multiplied by the total reward to determine each pool's reward.", + "3. The rewards are stored in [`EarlyBirdBonusInfo`] and can be distributed by calling", + " [`Self::distribute_early_bird_bonus`]." + ] + }, + { + "name": "distribute_early_bird_bonus", + "fields": [ + { + "name": "transfer_count", + "type": 4, + "typeName": "u32" + } + ], + "index": 24, + "docs": [ + "Distribute early bird bonus to pools. The `transfer_count` parameter is the max number", + "of transfers to be made in this call. If there are less items in the queue, it will end", + "early.", + "", + "Callable by any signed origin after the bonus has been queued." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 407, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "BondValue" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Amount", + "fields": [ + { + "type": 63, + "typeName": "Balance" + } + ], + "index": 0 + }, + { + "name": "Fill", + "index": 1 + } + ] + } + } + } + }, + { + "id": 408, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "ConfigOp" + ], + "params": [ + { + "name": "T", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Noop", + "index": 0 + }, + { + "name": "Set", + "fields": [ + { + "type": 6, + "typeName": "T" + } + ], + "index": 1 + }, + { + "name": "Remove", + "index": 2 + } + ] + } + } + } + }, + { + "id": 409, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "ConfigOp" + ], + "params": [ + { + "name": "T", + "type": 42 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Noop", + "index": 0 + }, + { + "name": "Set", + "fields": [ + { + "type": 42, + "typeName": "T" + } + ], + "index": 1 + }, + { + "name": "Remove", + "index": 2 + } + ] + } + } + } + }, + { + "id": 410, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "StakingInfo" + ], + "def": { + "composite": { + "fields": [ + { + "name": "annual_inflation_rate", + "type": 42, + "typeName": "Perbill" + }, + { + "name": "collator_payout_cut", + "type": 42, + "typeName": "Perbill" + } + ] + } + } + } + }, + { + "id": 411, + "type": { + "path": [ + "pallet_stake_exchange", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "create_offer", + "fields": [ + { + "name": "offer", + "type": 412, + "typeName": "CreateOfferOf" + } + ], + "index": 0, + "docs": [ + "Place a new offer with the given parameters", + "", + "# Errors", + "- [`Error::CallerNotOfferCreator`] if the caller account does not match offer account.", + "- [`Error::ZeroOffer`] if offer amount is zero.", + "- [`Error::ZeroRate`] if rate amount is zero.", + "- [`Error::Overflow`] if arithmetic overflow occurs" + ] + }, + { + "name": "cancel_offer", + "fields": [ + { + "name": "offer_id", + "type": 63, + "typeName": "T::OfferId" + } + ], + "index": 1, + "docs": [ + "Cancel an existing offer with `offer_id`", + "", + "# Errors", + "- [`Error::CallerNotOfferCreator`] if the caller account does not match offer account.", + "- [`Error::OfferNotFound`] if the `offer_id` does not exist" + ] + }, + { + "name": "configure_liquidity_account", + "fields": [ + { + "name": "config", + "type": 81, + "typeName": "LiquidityAccountConfigOf" + } + ], + "index": 2, + "docs": [ + "Set the liquidity config for the caller account" + ] + }, + { + "name": "withdraw_liquidity", + "fields": [ + { + "name": "offer_id", + "type": 63, + "typeName": "T::OfferId" + }, + { + "name": "amount", + "type": 63, + "typeName": "BalanceOf" + } + ], + "index": 3, + "docs": [ + "Withdraw liquidity from a current active offer", + "", + "# Errors", + "- [`Error::CallerNotOfferCreator`] if the caller account does not match offer account.", + "- [`Error::OfferNotFound`] if the offerId does not exist" + ] + }, + { + "name": "add_liquidity", + "fields": [ + { + "name": "offer_id", + "type": 63, + "typeName": "T::OfferId" + }, + { + "name": "amount", + "type": 63, + "typeName": "BalanceOf" + } + ], + "index": 4, + "docs": [ + "Add liquidity to a current active offer", + "", + "# Errors", + "- [`Error::CallerNotOfferCreator`] if the caller account does not match bidding account.", + "- [`Error::OfferNotFound`] if the offerId does not exist" + ] + }, + { + "name": "buy", + "fields": [ + { + "name": "offer_id", + "type": 63, + "typeName": "T::OfferId" + }, + { + "name": "amount", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "token_id", + "type": 63, + "typeName": "TokenIdOf" + } + ], + "index": 5, + "docs": [ + "Buy from a current active offer, returning the native currency by exchanging the staked", + "tokens", + "", + "# Errors", + "- [`Error::CallerNotOfferCreator`] if the caller account does not match bidding account.", + "- [`Error::TokenRestriction`] if the tokenId is restricted by the LP", + "- [`Error::NotEnoughLiquidity`] if the offer cannot cover the amount requested", + "- [`Error::TransferParamCreationFailed`] if the multitokens transfer failed" + ] + } + ] + } + }, + "docs": [ + "The pallet's extrinsics." + ] + } + }, + { + "id": 412, + "type": { + "path": [ + "pallet_stake_exchange", + "types", + "CreateOffer" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "account", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "total", + "type": 63, + "typeName": "Balance" + }, + { + "name": "rate", + "type": 44, + "typeName": "Rate" + }, + { + "name": "min_average_reward_rate", + "type": 42, + "typeName": "Rate" + } + ] + } + } + } + }, + { + "id": 413, + "type": { + "path": [ + "pallet_utility", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "batch", + "fields": [ + { + "name": "calls", + "type": 414, + "typeName": "Vec<::RuntimeCall>" + } + ], + "index": 0, + "docs": [ + "Send a batch of dispatch calls.", + "", + "May be called from any origin except `None`.", + "", + "- `calls`: The calls to be dispatched from the same origin. The number of call must not", + " exceed the constant: `batched_calls_limit` (available in constant metadata).", + "", + "If origin is root then the calls are dispatched without checking origin filter. (This", + "includes bypassing `frame_system::Config::BaseCallFilter`).", + "", + "## Complexity", + "- O(C) where C is the number of calls to be batched.", + "", + "This will return `Ok` in all circumstances. To determine the success of the batch, an", + "event is deposited. If a call failed and the batch was interrupted, then the", + "`BatchInterrupted` event is deposited, along with the number of successful calls made", + "and the error of the failed call. If all were successful, then the `BatchCompleted`", + "event is deposited." + ] + }, + { + "name": "as_derivative", + "fields": [ + { + "name": "index", + "type": 290, + "typeName": "u16" + }, + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + } + ], + "index": 1, + "docs": [ + "Send a call through an indexed pseudonym of the sender.", + "", + "Filter from origin are passed along. The call will be dispatched with an origin which", + "use the same filter as the origin of this call.", + "", + "NOTE: If you need to ensure that any account-based filtering is not honored (i.e.", + "because you expect `proxy` to have been used prior in the call stack and you do not want", + "the call restrictions to apply to any sub-accounts), then use `as_multi_threshold_1`", + "in the Multisig pallet instead.", + "", + "NOTE: Prior to version *12, this was called `as_limited_sub`.", + "", + "The dispatch origin for this call must be _Signed_." + ] + }, + { + "name": "batch_all", + "fields": [ + { + "name": "calls", + "type": 414, + "typeName": "Vec<::RuntimeCall>" + } + ], + "index": 2, + "docs": [ + "Send a batch of dispatch calls and atomically execute them.", + "The whole transaction will rollback and fail if any of the calls failed.", + "", + "May be called from any origin except `None`.", + "", + "- `calls`: The calls to be dispatched from the same origin. The number of call must not", + " exceed the constant: `batched_calls_limit` (available in constant metadata).", + "", + "If origin is root then the calls are dispatched without checking origin filter. (This", + "includes bypassing `frame_system::Config::BaseCallFilter`).", + "", + "## Complexity", + "- O(C) where C is the number of calls to be batched." + ] + }, + { + "name": "dispatch_as", + "fields": [ + { + "name": "as_origin", + "type": 415, + "typeName": "Box" + }, + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + } + ], + "index": 3, + "docs": [ + "Dispatches a function call with a provided origin.", + "", + "The dispatch origin for this call must be _Root_.", + "", + "## Complexity", + "- O(1)." + ] + }, + { + "name": "force_batch", + "fields": [ + { + "name": "calls", + "type": 414, + "typeName": "Vec<::RuntimeCall>" + } + ], + "index": 4, + "docs": [ + "Send a batch of dispatch calls.", + "Unlike `batch`, it allows errors and won't interrupt.", + "", + "May be called from any origin except `None`.", + "", + "- `calls`: The calls to be dispatched from the same origin. The number of call must not", + " exceed the constant: `batched_calls_limit` (available in constant metadata).", + "", + "If origin is root then the calls are dispatch without checking origin filter. (This", + "includes bypassing `frame_system::Config::BaseCallFilter`).", + "", + "## Complexity", + "- O(C) where C is the number of calls to be batched." + ] + }, + { + "name": "with_weight", + "fields": [ + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + }, + { + "name": "weight", + "type": 9, + "typeName": "Weight" + } + ], + "index": 5, + "docs": [ + "Dispatch a function call with a specified weight.", + "", + "This function does not check the weight of the call, and instead allows the", + "Root origin to specify the weight of the call.", + "", + "The dispatch origin for this call must be _Root_." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 414, + "type": { + "def": { + "sequence": { + "type": 292 + } + } + } + }, + { + "id": 415, + "type": { + "path": [ + "enjin_runtime", + "OriginCaller" + ], + "def": { + "variant": { + "variants": [ + { + "name": "system", + "fields": [ + { + "type": 416, + "typeName": "frame_system::Origin" + } + ], + "index": 0 + }, + { + "name": "ParachainsOrigin", + "fields": [ + { + "type": 417, + "typeName": "parachains_origin::Origin" + } + ], + "index": 50 + }, + { + "name": "XcmPallet", + "fields": [ + { + "type": 418, + "typeName": "pallet_xcm::Origin" + } + ], + "index": 99 + }, + { + "name": "Origins", + "fields": [ + { + "type": 419, + "typeName": "pallet_custom_origins::Origin" + } + ], + "index": 104 + }, + { + "name": "Void", + "fields": [ + { + "type": 420, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::Void" + } + ], + "index": 4 + } + ] + } + } + } + }, + { + "id": 416, + "type": { + "path": [ + "frame_support", + "dispatch", + "RawOrigin" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Root", + "index": 0 + }, + { + "name": "Signed", + "fields": [ + { + "type": 0, + "typeName": "AccountId" + } + ], + "index": 1 + }, + { + "name": "None", + "index": 2 + } + ] + } + } + } + }, + { + "id": 417, + "type": { + "path": [ + "polkadot_runtime_parachains", + "origin", + "pallet", + "Origin" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Parachain", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 0 + } + ] + } + } + } + }, + { + "id": 418, + "type": { + "path": [ + "pallet_xcm", + "pallet", + "Origin" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Xcm", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 0 + }, + { + "name": "Response", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 419, + "type": { + "path": [ + "enjin_runtime_common", + "governance", + "origins", + "pallet_custom_origins", + "Origin" + ], + "def": { + "variant": { + "variants": [ + { + "name": "StakingAdmin", + "index": 0 + }, + { + "name": "TreasuryAdmin", + "index": 1 + }, + { + "name": "FellowshipAdmin", + "index": 2 + }, + { + "name": "GeneralAdmin", + "index": 3 + }, + { + "name": "AuctionAdmin", + "index": 4 + }, + { + "name": "LeaseAdmin", + "index": 5 + }, + { + "name": "MultiTokensAdmin", + "index": 6 + }, + { + "name": "FuelTanksAdmin", + "index": 7 + }, + { + "name": "ClaimsAdmin", + "index": 8 + }, + { + "name": "ExtrinsicPauseAdmin", + "index": 9 + }, + { + "name": "PreimageAdmin", + "index": 10 + }, + { + "name": "WhitelistAdmin", + "index": 11 + }, + { + "name": "ParachainsAdmin", + "index": 12 + }, + { + "name": "ReferendumCanceller", + "index": 13 + }, + { + "name": "ReferendumKiller", + "index": 14 + }, + { + "name": "SmallTipper", + "index": 15 + }, + { + "name": "BigTipper", + "index": 16 + }, + { + "name": "SmallSpender", + "index": 17 + }, + { + "name": "MediumSpender", + "index": 18 + }, + { + "name": "BigSpender", + "index": 19 + }, + { + "name": "WhitelistedCaller", + "index": 20 + }, + { + "name": "FellowshipInitiates", + "index": 21 + }, + { + "name": "Fellows", + "index": 22 + }, + { + "name": "FellowshipExperts", + "index": 23 + }, + { + "name": "FellowshipMasters", + "index": 24 + }, + { + "name": "Fellowship1Dan", + "index": 25 + }, + { + "name": "Fellowship2Dan", + "index": 26 + }, + { + "name": "Fellowship3Dan", + "index": 27 + }, + { + "name": "Fellowship4Dan", + "index": 28 + }, + { + "name": "Fellowship5Dan", + "index": 29 + }, + { + "name": "Fellowship6Dan", + "index": 30 + }, + { + "name": "Fellowship7Dan", + "index": 31 + }, + { + "name": "Fellowship8Dan", + "index": 32 + }, + { + "name": "Fellowship9Dan", + "index": 33 + } + ] + } + } + } + }, + { + "id": 420, + "type": { + "path": [ + "sp_core", + "Void" + ], + "def": { + "variant": {} + } + } + }, + { + "id": 421, + "type": { + "path": [ + "pallet_multisig", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "as_multi_threshold_1", + "fields": [ + { + "name": "other_signatories", + "type": 78, + "typeName": "Vec" + }, + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + } + ], + "index": 0, + "docs": [ + "Immediately dispatch a multi-signature call using a single approval from the caller.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "- `other_signatories`: The accounts (other than the sender) who are part of the", + "multi-signature, but do not participate in the approval process.", + "- `call`: The call to be executed.", + "", + "Result is equivalent to the dispatched result.", + "", + "## Complexity", + "O(Z + C) where Z is the length of the call and C its execution weight." + ] + }, + { + "name": "as_multi", + "fields": [ + { + "name": "threshold", + "type": 290, + "typeName": "u16" + }, + { + "name": "other_signatories", + "type": 78, + "typeName": "Vec" + }, + { + "name": "maybe_timepoint", + "type": 422, + "typeName": "Option>" + }, + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + }, + { + "name": "max_weight", + "type": 9, + "typeName": "Weight" + } + ], + "index": 1, + "docs": [ + "Register approval for a dispatch to be made from a deterministic composite account if", + "approved by a total of `threshold - 1` of `other_signatories`.", + "", + "If there are enough, then dispatch the call.", + "", + "Payment: `DepositBase` will be reserved if this is the first approval, plus", + "`threshold` times `DepositFactor`. It is returned once this dispatch happens or", + "is cancelled.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "- `threshold`: The total number of approvals for this dispatch before it is executed.", + "- `other_signatories`: The accounts (other than the sender) who can approve this", + "dispatch. May not be empty.", + "- `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is", + "not the first approval, then it must be `Some`, with the timepoint (block number and", + "transaction index) of the first approval transaction.", + "- `call`: The call to be executed.", + "", + "NOTE: Unless this is the final approval, you will generally want to use", + "`approve_as_multi` instead, since it only requires a hash of the call.", + "", + "Result is equivalent to the dispatched result if `threshold` is exactly `1`. Otherwise", + "on success, result is `Ok` and the result from the interior call, if it was executed,", + "may be found in the deposited `MultisigExecuted` event.", + "", + "## Complexity", + "- `O(S + Z + Call)`.", + "- Up to one balance-reserve or unreserve operation.", + "- One passthrough operation, one insert, both `O(S)` where `S` is the number of", + " signatories. `S` is capped by `MaxSignatories`, with weight being proportional.", + "- One call encode & hash, both of complexity `O(Z)` where `Z` is tx-len.", + "- One encode & hash, both of complexity `O(S)`.", + "- Up to one binary search and insert (`O(logS + S)`).", + "- I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove.", + "- One event.", + "- The weight of the `call`.", + "- Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit", + " taken for its lifetime of `DepositBase + threshold * DepositFactor`." + ] + }, + { + "name": "approve_as_multi", + "fields": [ + { + "name": "threshold", + "type": 290, + "typeName": "u16" + }, + { + "name": "other_signatories", + "type": 78, + "typeName": "Vec" + }, + { + "name": "maybe_timepoint", + "type": 422, + "typeName": "Option>" + }, + { + "name": "call_hash", + "type": 1, + "typeName": "[u8; 32]" + }, + { + "name": "max_weight", + "type": 9, + "typeName": "Weight" + } + ], + "index": 2, + "docs": [ + "Register approval for a dispatch to be made from a deterministic composite account if", + "approved by a total of `threshold - 1` of `other_signatories`.", + "", + "Payment: `DepositBase` will be reserved if this is the first approval, plus", + "`threshold` times `DepositFactor`. It is returned once this dispatch happens or", + "is cancelled.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "- `threshold`: The total number of approvals for this dispatch before it is executed.", + "- `other_signatories`: The accounts (other than the sender) who can approve this", + "dispatch. May not be empty.", + "- `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is", + "not the first approval, then it must be `Some`, with the timepoint (block number and", + "transaction index) of the first approval transaction.", + "- `call_hash`: The hash of the call to be executed.", + "", + "NOTE: If this is the final approval, you will want to use `as_multi` instead.", + "", + "## Complexity", + "- `O(S)`.", + "- Up to one balance-reserve or unreserve operation.", + "- One passthrough operation, one insert, both `O(S)` where `S` is the number of", + " signatories. `S` is capped by `MaxSignatories`, with weight being proportional.", + "- One encode & hash, both of complexity `O(S)`.", + "- Up to one binary search and insert (`O(logS + S)`).", + "- I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove.", + "- One event.", + "- Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit", + " taken for its lifetime of `DepositBase + threshold * DepositFactor`." + ] + }, + { + "name": "cancel_as_multi", + "fields": [ + { + "name": "threshold", + "type": 290, + "typeName": "u16" + }, + { + "name": "other_signatories", + "type": 78, + "typeName": "Vec" + }, + { + "name": "timepoint", + "type": 89, + "typeName": "Timepoint" + }, + { + "name": "call_hash", + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 3, + "docs": [ + "Cancel a pre-existing, on-going multisig transaction. Any deposit reserved previously", + "for this operation will be unreserved on success.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "- `threshold`: The total number of approvals for this dispatch before it is executed.", + "- `other_signatories`: The accounts (other than the sender) who can approve this", + "dispatch. May not be empty.", + "- `timepoint`: The timepoint (block number and transaction index) of the first approval", + "transaction for this dispatch.", + "- `call_hash`: The hash of the call to be executed.", + "", + "## Complexity", + "- `O(S)`.", + "- Up to one balance-reserve or unreserve operation.", + "- One passthrough operation, one insert, both `O(S)` where `S` is the number of", + " signatories. `S` is capped by `MaxSignatories`, with weight being proportional.", + "- One encode & hash, both of complexity `O(S)`.", + "- One event.", + "- I/O: 1 read `O(S)`, one remove.", + "- Storage: removes one item." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 422, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 89 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 89 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 423, + "type": { + "path": [ + "polkadot_runtime_parachains", + "configuration", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "set_validation_upgrade_cooldown", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 0, + "docs": [ + "Set the validation upgrade cooldown." + ] + }, + { + "name": "set_validation_upgrade_delay", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 1, + "docs": [ + "Set the validation upgrade delay." + ] + }, + { + "name": "set_code_retention_period", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 2, + "docs": [ + "Set the acceptance period for an included candidate." + ] + }, + { + "name": "set_max_code_size", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 3, + "docs": [ + "Set the max validation code size for incoming upgrades." + ] + }, + { + "name": "set_max_pov_size", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 4, + "docs": [ + "Set the max POV block size for incoming upgrades." + ] + }, + { + "name": "set_max_head_data_size", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 5, + "docs": [ + "Set the max head data size for paras." + ] + }, + { + "name": "set_parathread_cores", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 6, + "docs": [ + "Set the number of parathread execution cores." + ] + }, + { + "name": "set_parathread_retries", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 7, + "docs": [ + "Set the number of retries for a particular parathread." + ] + }, + { + "name": "set_group_rotation_frequency", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 8, + "docs": [ + "Set the parachain validator-group rotation frequency" + ] + }, + { + "name": "set_chain_availability_period", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 9, + "docs": [ + "Set the availability period for parachains." + ] + }, + { + "name": "set_thread_availability_period", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 10, + "docs": [ + "Set the availability period for parathreads." + ] + }, + { + "name": "set_scheduling_lookahead", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 11, + "docs": [ + "Set the scheduling lookahead, in expected number of blocks at peak throughput." + ] + }, + { + "name": "set_max_validators_per_core", + "fields": [ + { + "name": "new", + "type": 73, + "typeName": "Option" + } + ], + "index": 12, + "docs": [ + "Set the maximum number of validators to assign to any core." + ] + }, + { + "name": "set_max_validators", + "fields": [ + { + "name": "new", + "type": 73, + "typeName": "Option" + } + ], + "index": 13, + "docs": [ + "Set the maximum number of validators to use in parachain consensus." + ] + }, + { + "name": "set_dispute_period", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "SessionIndex" + } + ], + "index": 14, + "docs": [ + "Set the dispute period, in number of sessions to keep for disputes." + ] + }, + { + "name": "set_dispute_post_conclusion_acceptance_period", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 15, + "docs": [ + "Set the dispute post conclusion acceptance period." + ] + }, + { + "name": "set_no_show_slots", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 18, + "docs": [ + "Set the no show slots, in number of number of consensus slots.", + "Must be at least 1." + ] + }, + { + "name": "set_n_delay_tranches", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 19, + "docs": [ + "Set the total number of delay tranches." + ] + }, + { + "name": "set_zeroth_delay_tranche_width", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 20, + "docs": [ + "Set the zeroth delay tranche width." + ] + }, + { + "name": "set_needed_approvals", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 21, + "docs": [ + "Set the number of validators needed to approve a block." + ] + }, + { + "name": "set_relay_vrf_modulo_samples", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 22, + "docs": [ + "Set the number of samples to do of the `RelayVRFModulo` approval assignment criterion." + ] + }, + { + "name": "set_max_upward_queue_count", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 23, + "docs": [ + "Sets the maximum items that can present in a upward dispatch queue at once." + ] + }, + { + "name": "set_max_upward_queue_size", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 24, + "docs": [ + "Sets the maximum total size of items that can present in a upward dispatch queue at once." + ] + }, + { + "name": "set_max_downward_message_size", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 25, + "docs": [ + "Set the critical downward message size." + ] + }, + { + "name": "set_max_upward_message_size", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 27, + "docs": [ + "Sets the maximum size of an upward message that can be sent by a candidate." + ] + }, + { + "name": "set_max_upward_message_num_per_candidate", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 28, + "docs": [ + "Sets the maximum number of messages that a candidate can contain." + ] + }, + { + "name": "set_hrmp_open_request_ttl", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 29, + "docs": [ + "Sets the number of sessions after which an HRMP open channel request expires." + ] + }, + { + "name": "set_hrmp_sender_deposit", + "fields": [ + { + "name": "new", + "type": 6, + "typeName": "Balance" + } + ], + "index": 30, + "docs": [ + "Sets the amount of funds that the sender should provide for opening an HRMP channel." + ] + }, + { + "name": "set_hrmp_recipient_deposit", + "fields": [ + { + "name": "new", + "type": 6, + "typeName": "Balance" + } + ], + "index": 31, + "docs": [ + "Sets the amount of funds that the recipient should provide for accepting opening an HRMP", + "channel." + ] + }, + { + "name": "set_hrmp_channel_max_capacity", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 32, + "docs": [ + "Sets the maximum number of messages allowed in an HRMP channel at once." + ] + }, + { + "name": "set_hrmp_channel_max_total_size", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 33, + "docs": [ + "Sets the maximum total size of messages in bytes allowed in an HRMP channel at once." + ] + }, + { + "name": "set_hrmp_max_parachain_inbound_channels", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 34, + "docs": [ + "Sets the maximum number of inbound HRMP channels a parachain is allowed to accept." + ] + }, + { + "name": "set_hrmp_max_parathread_inbound_channels", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 35, + "docs": [ + "Sets the maximum number of inbound HRMP channels a parathread is allowed to accept." + ] + }, + { + "name": "set_hrmp_channel_max_message_size", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 36, + "docs": [ + "Sets the maximum size of a message that could ever be put into an HRMP channel." + ] + }, + { + "name": "set_hrmp_max_parachain_outbound_channels", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 37, + "docs": [ + "Sets the maximum number of outbound HRMP channels a parachain is allowed to open." + ] + }, + { + "name": "set_hrmp_max_parathread_outbound_channels", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 38, + "docs": [ + "Sets the maximum number of outbound HRMP channels a parathread is allowed to open." + ] + }, + { + "name": "set_hrmp_max_message_num_per_candidate", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "u32" + } + ], + "index": 39, + "docs": [ + "Sets the maximum number of outbound HRMP messages can be sent by a candidate." + ] + }, + { + "name": "set_pvf_checking_enabled", + "fields": [ + { + "name": "new", + "type": 37, + "typeName": "bool" + } + ], + "index": 41, + "docs": [ + "Enable or disable PVF pre-checking. Consult the field documentation prior executing." + ] + }, + { + "name": "set_pvf_voting_ttl", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "SessionIndex" + } + ], + "index": 42, + "docs": [ + "Set the number of session changes after which a PVF pre-checking voting is rejected." + ] + }, + { + "name": "set_minimum_validation_upgrade_delay", + "fields": [ + { + "name": "new", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 43, + "docs": [ + "Sets the minimum delay between announcing the upgrade block for a parachain until the", + "upgrade taking place.", + "", + "See the field documentation for information and constraints for the new value." + ] + }, + { + "name": "set_bypass_consistency_check", + "fields": [ + { + "name": "new", + "type": 37, + "typeName": "bool" + } + ], + "index": 44, + "docs": [ + "Setting this to true will disable consistency checks for the configuration setters.", + "Use with caution." + ] + }, + { + "name": "set_async_backing_params", + "fields": [ + { + "name": "new", + "type": 424, + "typeName": "AsyncBackingParams" + } + ], + "index": 45, + "docs": [ + "Set the asynchronous backing parameters." + ] + }, + { + "name": "set_executor_params", + "fields": [ + { + "name": "new", + "type": 425, + "typeName": "ExecutorParams" + } + ], + "index": 46, + "docs": [ + "Set PVF executor parameters." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 424, + "type": { + "path": [ + "polkadot_primitives", + "vstaging", + "AsyncBackingParams" + ], + "def": { + "composite": { + "fields": [ + { + "name": "max_candidate_depth", + "type": 4, + "typeName": "u32" + }, + { + "name": "allowed_ancestry_len", + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 425, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "executor_params", + "ExecutorParams" + ], + "def": { + "composite": { + "fields": [ + { + "type": 426, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 426, + "type": { + "def": { + "sequence": { + "type": 427 + } + } + } + }, + { + "id": 427, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "executor_params", + "ExecutorParam" + ], + "def": { + "variant": { + "variants": [ + { + "name": "MaxMemoryPages", + "fields": [ + { + "type": 4, + "typeName": "u32" + } + ], + "index": 1 + }, + { + "name": "StackLogicalMax", + "fields": [ + { + "type": 4, + "typeName": "u32" + } + ], + "index": 2 + }, + { + "name": "StackNativeMax", + "fields": [ + { + "type": 4, + "typeName": "u32" + } + ], + "index": 3 + }, + { + "name": "PrecheckingMaxMemory", + "fields": [ + { + "type": 11, + "typeName": "u64" + } + ], + "index": 4 + }, + { + "name": "PvfPrepTimeout", + "fields": [ + { + "type": 428, + "typeName": "PvfPrepTimeoutKind" + }, + { + "type": 11, + "typeName": "u64" + } + ], + "index": 5 + }, + { + "name": "PvfExecTimeout", + "fields": [ + { + "type": 429, + "typeName": "PvfExecTimeoutKind" + }, + { + "type": 11, + "typeName": "u64" + } + ], + "index": 6 + }, + { + "name": "WasmExtBulkMemory", + "index": 7 + } + ] + } + } + } + }, + { + "id": 428, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "PvfPrepTimeoutKind" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Precheck", + "index": 0 + }, + { + "name": "Lenient", + "index": 1 + } + ] + } + } + } + }, + { + "id": 429, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "PvfExecTimeoutKind" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Backing", + "index": 0 + }, + { + "name": "Approval", + "index": 1 + } + ] + } + } + } + }, + { + "id": 430, + "type": { + "path": [ + "polkadot_runtime_parachains", + "shared", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": {} + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 431, + "type": { + "path": [ + "polkadot_runtime_parachains", + "inclusion", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": {} + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 432, + "type": { + "path": [ + "polkadot_runtime_parachains", + "paras_inherent", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "enter", + "fields": [ + { + "name": "data", + "type": 433, + "typeName": "ParachainsInherentData" + } + ], + "index": 0, + "docs": [ + "Enter the paras inherent. This will process bitfields and backed candidates." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 433, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "InherentData" + ], + "params": [ + { + "name": "HDR", + "type": 300 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "bitfields", + "type": 434, + "typeName": "UncheckedSignedAvailabilityBitfields" + }, + { + "name": "backed_candidates", + "type": 441, + "typeName": "Vec>" + }, + { + "name": "disputes", + "type": 453, + "typeName": "MultiDisputeStatementSet" + }, + { + "name": "parent_header", + "type": 300, + "typeName": "HDR" + } + ] + } + } + } + }, + { + "id": 434, + "type": { + "def": { + "sequence": { + "type": 435 + } + } + } + }, + { + "id": 435, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "signed", + "UncheckedSigned" + ], + "params": [ + { + "name": "Payload", + "type": 436 + }, + { + "name": "RealPayload", + "type": 436 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "payload", + "type": 436, + "typeName": "Payload" + }, + { + "name": "validator_index", + "type": 439, + "typeName": "ValidatorIndex" + }, + { + "name": "signature", + "type": 440, + "typeName": "ValidatorSignature" + } + ] + } + } + } + }, + { + "id": 436, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "AvailabilityBitfield" + ], + "def": { + "composite": { + "fields": [ + { + "type": 437, + "typeName": "BitVec" + } + ] + } + } + } + }, + { + "id": 437, + "type": { + "def": { + "bitsequence": { + "bit_store_type": 2, + "bit_order_type": 438 + } + } + } + }, + { + "id": 438, + "type": { + "path": [ + "bitvec", + "order", + "Lsb0" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 439, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "ValidatorIndex" + ], + "def": { + "composite": { + "fields": [ + { + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 440, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "validator_app", + "Signature" + ], + "def": { + "composite": { + "fields": [ + { + "type": 96, + "typeName": "sr25519::Signature" + } + ] + } + } + } + }, + { + "id": 441, + "type": { + "def": { + "sequence": { + "type": 442 + } + } + } + }, + { + "id": 442, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "BackedCandidate" + ], + "params": [ + { + "name": "H", + "type": 12 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "candidate", + "type": 443, + "typeName": "CommittedCandidateReceipt" + }, + { + "name": "validity_votes", + "type": 451, + "typeName": "Vec" + }, + { + "name": "validator_indices", + "type": 437, + "typeName": "BitVec" + } + ] + } + } + } + }, + { + "id": 443, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "CommittedCandidateReceipt" + ], + "params": [ + { + "name": "H", + "type": 12 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "descriptor", + "type": 92, + "typeName": "CandidateDescriptor" + }, + { + "name": "commitments", + "type": 444, + "typeName": "CandidateCommitments" + } + ] + } + } + } + }, + { + "id": 444, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "CandidateCommitments" + ], + "params": [ + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "upward_messages", + "type": 445, + "typeName": "UpwardMessages" + }, + { + "name": "horizontal_messages", + "type": 446, + "typeName": "HorizontalMessages" + }, + { + "name": "new_validation_code", + "type": 449, + "typeName": "Option" + }, + { + "name": "head_data", + "type": 99, + "typeName": "HeadData" + }, + { + "name": "processed_downward_messages", + "type": 4, + "typeName": "u32" + }, + { + "name": "hrmp_watermark", + "type": 4, + "typeName": "N" + } + ] + } + } + } + }, + { + "id": 445, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 13 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 296, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 446, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 447 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 448, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 447, + "type": { + "path": [ + "polkadot_core_primitives", + "OutboundHrmpMessage" + ], + "params": [ + { + "name": "Id", + "type": 93 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "recipient", + "type": 93, + "typeName": "Id" + }, + { + "name": "data", + "type": 13, + "typeName": "sp_std::vec::Vec" + } + ] + } + } + } + }, + { + "id": 448, + "type": { + "def": { + "sequence": { + "type": 447 + } + } + } + }, + { + "id": 449, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 450 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 450 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 450, + "type": { + "path": [ + "polkadot_parachain", + "primitives", + "ValidationCode" + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 451, + "type": { + "def": { + "sequence": { + "type": 452 + } + } + } + }, + { + "id": 452, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "ValidityAttestation" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Implicit", + "fields": [ + { + "type": 440, + "typeName": "ValidatorSignature" + } + ], + "index": 1 + }, + { + "name": "Explicit", + "fields": [ + { + "type": 440, + "typeName": "ValidatorSignature" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 453, + "type": { + "def": { + "sequence": { + "type": 454 + } + } + } + }, + { + "id": 454, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "DisputeStatementSet" + ], + "def": { + "composite": { + "fields": [ + { + "name": "candidate_hash", + "type": 106, + "typeName": "CandidateHash" + }, + { + "name": "session", + "type": 4, + "typeName": "SessionIndex" + }, + { + "name": "statements", + "type": 455, + "typeName": "Vec<(DisputeStatement, ValidatorIndex, ValidatorSignature)>" + } + ] + } + } + } + }, + { + "id": 455, + "type": { + "def": { + "sequence": { + "type": 456 + } + } + } + }, + { + "id": 456, + "type": { + "def": { + "tuple": [ + 457, + 439, + 440 + ] + } + } + }, + { + "id": 457, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "DisputeStatement" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Valid", + "fields": [ + { + "type": 458, + "typeName": "ValidDisputeStatementKind" + } + ], + "index": 0 + }, + { + "name": "Invalid", + "fields": [ + { + "type": 459, + "typeName": "InvalidDisputeStatementKind" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 458, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "ValidDisputeStatementKind" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Explicit", + "index": 0 + }, + { + "name": "BackingSeconded", + "fields": [ + { + "type": 12, + "typeName": "Hash" + } + ], + "index": 1 + }, + { + "name": "BackingValid", + "fields": [ + { + "type": 12, + "typeName": "Hash" + } + ], + "index": 2 + }, + { + "name": "ApprovalChecking", + "index": 3 + } + ] + } + } + } + }, + { + "id": 459, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "InvalidDisputeStatementKind" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Explicit", + "index": 0 + } + ] + } + } + } + }, + { + "id": 460, + "type": { + "path": [ + "polkadot_runtime_parachains", + "paras", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "force_set_current_code", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "new_code", + "type": 450, + "typeName": "ValidationCode" + } + ], + "index": 0, + "docs": [ + "Set the storage for the parachain validation code immediately." + ] + }, + { + "name": "force_set_current_head", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "new_head", + "type": 99, + "typeName": "HeadData" + } + ], + "index": 1, + "docs": [ + "Set the storage for the current parachain head data immediately." + ] + }, + { + "name": "force_schedule_code_upgrade", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "new_code", + "type": 450, + "typeName": "ValidationCode" + }, + { + "name": "relay_parent_number", + "type": 4, + "typeName": "T::BlockNumber" + } + ], + "index": 2, + "docs": [ + "Schedule an upgrade as if it was scheduled in the given relay parent block." + ] + }, + { + "name": "force_note_new_head", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "new_head", + "type": 99, + "typeName": "HeadData" + } + ], + "index": 3, + "docs": [ + "Note a new block head for para within the context of the current block." + ] + }, + { + "name": "force_queue_action", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 4, + "docs": [ + "Put a parachain directly into the next session's action queue.", + "We can't queue it any sooner than this without going into the", + "initializer..." + ] + }, + { + "name": "add_trusted_validation_code", + "fields": [ + { + "name": "validation_code", + "type": 450, + "typeName": "ValidationCode" + } + ], + "index": 5, + "docs": [ + "Adds the validation code to the storage.", + "", + "The code will not be added if it is already present. Additionally, if PVF pre-checking", + "is running for that code, it will be instantly accepted.", + "", + "Otherwise, the code will be added into the storage. Note that the code will be added", + "into storage with reference count 0. This is to account the fact that there are no users", + "for this code yet. The caller will have to make sure that this code eventually gets", + "used by some parachain or removed from the storage to avoid storage leaks. For the latter", + "prefer to use the `poke_unused_validation_code` dispatchable to raw storage manipulation.", + "", + "This function is mainly meant to be used for upgrading parachains that do not follow", + "the go-ahead signal while the PVF pre-checking feature is enabled." + ] + }, + { + "name": "poke_unused_validation_code", + "fields": [ + { + "name": "validation_code_hash", + "type": 98, + "typeName": "ValidationCodeHash" + } + ], + "index": 6, + "docs": [ + "Remove the validation code from the storage iff the reference count is 0.", + "", + "This is better than removing the storage directly, because it will not remove the code", + "that was suddenly got used by some parachain while this dispatchable was pending", + "dispatching." + ] + }, + { + "name": "include_pvf_check_statement", + "fields": [ + { + "name": "stmt", + "type": 461, + "typeName": "PvfCheckStatement" + }, + { + "name": "signature", + "type": 440, + "typeName": "ValidatorSignature" + } + ], + "index": 7, + "docs": [ + "Includes a statement for a PVF pre-checking vote. Potentially, finalizes the vote and", + "enacts the results if that was the last vote before achieving the supermajority." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 461, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "PvfCheckStatement" + ], + "def": { + "composite": { + "fields": [ + { + "name": "accept", + "type": 37, + "typeName": "bool" + }, + { + "name": "subject", + "type": 98, + "typeName": "ValidationCodeHash" + }, + { + "name": "session_index", + "type": 4, + "typeName": "SessionIndex" + }, + { + "name": "validator_index", + "type": 439, + "typeName": "ValidatorIndex" + } + ] + } + } + } + }, + { + "id": 462, + "type": { + "path": [ + "polkadot_runtime_parachains", + "initializer", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "force_approve", + "fields": [ + { + "name": "up_to", + "type": 4, + "typeName": "BlockNumber" + } + ], + "index": 0, + "docs": [ + "Issue a signal to the consensus engine to forcibly act as though all parachain", + "blocks in all relay chain blocks up to and including the given number in the current", + "chain are valid and should be finalized." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 463, + "type": { + "path": [ + "polkadot_runtime_parachains", + "hrmp", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "hrmp_init_open_channel", + "fields": [ + { + "name": "recipient", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "proposed_max_capacity", + "type": 4, + "typeName": "u32" + }, + { + "name": "proposed_max_message_size", + "type": 4, + "typeName": "u32" + } + ], + "index": 0, + "docs": [ + "Initiate opening a channel from a parachain to a given recipient with given channel", + "parameters.", + "", + "- `proposed_max_capacity` - specifies how many messages can be in the channel at once.", + "- `proposed_max_message_size` - specifies the maximum size of the messages.", + "", + "These numbers are a subject to the relay-chain configuration limits.", + "", + "The channel can be opened only after the recipient confirms it and only on a session", + "change." + ] + }, + { + "name": "hrmp_accept_open_channel", + "fields": [ + { + "name": "sender", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 1, + "docs": [ + "Accept a pending open channel request from the given sender.", + "", + "The channel will be opened only on the next session boundary." + ] + }, + { + "name": "hrmp_close_channel", + "fields": [ + { + "name": "channel_id", + "type": 104, + "typeName": "HrmpChannelId" + } + ], + "index": 2, + "docs": [ + "Initiate unilateral closing of a channel. The origin must be either the sender or the", + "recipient in the channel being closed.", + "", + "The closure can only happen on a session change." + ] + }, + { + "name": "force_clean_hrmp", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "inbound", + "type": 4, + "typeName": "u32" + }, + { + "name": "outbound", + "type": 4, + "typeName": "u32" + } + ], + "index": 3, + "docs": [ + "This extrinsic triggers the cleanup of all the HRMP storage items that", + "a para may have. Normally this happens once per session, but this allows", + "you to trigger the cleanup immediately for a specific parachain.", + "", + "Origin must be Root.", + "", + "Number of inbound and outbound channels for `para` must be provided as witness data of weighing." + ] + }, + { + "name": "force_process_hrmp_open", + "fields": [ + { + "name": "channels", + "type": 4, + "typeName": "u32" + } + ], + "index": 4, + "docs": [ + "Force process HRMP open channel requests.", + "", + "If there are pending HRMP open channel requests, you can use this", + "function process all of those requests immediately.", + "", + "Total number of opening channels must be provided as witness data of weighing." + ] + }, + { + "name": "force_process_hrmp_close", + "fields": [ + { + "name": "channels", + "type": 4, + "typeName": "u32" + } + ], + "index": 5, + "docs": [ + "Force process HRMP close channel requests.", + "", + "If there are pending HRMP close channel requests, you can use this", + "function process all of those requests immediately.", + "", + "Total number of closing channels must be provided as witness data of weighing." + ] + }, + { + "name": "hrmp_cancel_open_request", + "fields": [ + { + "name": "channel_id", + "type": 104, + "typeName": "HrmpChannelId" + }, + { + "name": "open_requests", + "type": 4, + "typeName": "u32" + } + ], + "index": 6, + "docs": [ + "This cancels a pending open channel request. It can be canceled by either of the sender", + "or the recipient for that request. The origin must be either of those.", + "", + "The cancellation happens immediately. It is not possible to cancel the request if it is", + "already accepted.", + "", + "Total number of open requests (i.e. `HrmpOpenChannelRequestsList`) must be provided as", + "witness data." + ] + }, + { + "name": "force_open_hrmp_channel", + "fields": [ + { + "name": "sender", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "recipient", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "max_capacity", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_message_size", + "type": 4, + "typeName": "u32" + } + ], + "index": 7, + "docs": [ + "Open a channel from a `sender` to a `recipient` `ParaId` using the Root origin. Although", + "opened by Root, the `max_capacity` and `max_message_size` are still subject to the Relay", + "Chain's configured limits.", + "", + "Expected use is when one of the `ParaId`s involved in the channel is governed by the", + "Relay Chain, e.g. a common good parachain." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 464, + "type": { + "path": [ + "polkadot_runtime_parachains", + "disputes", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "force_unfreeze", + "index": 0 + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 465, + "type": { + "path": [ + "polkadot_runtime_parachains", + "disputes", + "slashing", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "report_dispute_lost_unsigned", + "fields": [ + { + "name": "dispute_proof", + "type": 466, + "typeName": "Box" + }, + { + "name": "key_owner_proof", + "type": 304, + "typeName": "T::KeyOwnerProof" + } + ], + "index": 0 + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 466, + "type": { + "path": [ + "polkadot_runtime_parachains", + "disputes", + "slashing", + "DisputeProof" + ], + "def": { + "composite": { + "fields": [ + { + "name": "time_slot", + "type": 467, + "typeName": "DisputesTimeSlot" + }, + { + "name": "kind", + "type": 468, + "typeName": "SlashingOffenceKind" + }, + { + "name": "validator_index", + "type": 439, + "typeName": "ValidatorIndex" + }, + { + "name": "validator_id", + "type": 382, + "typeName": "ValidatorId" + } + ] + } + } + } + }, + { + "id": 467, + "type": { + "path": [ + "polkadot_runtime_parachains", + "disputes", + "slashing", + "DisputesTimeSlot" + ], + "def": { + "composite": { + "fields": [ + { + "name": "session_index", + "type": 4, + "typeName": "SessionIndex" + }, + { + "name": "candidate_hash", + "type": 106, + "typeName": "CandidateHash" + } + ] + } + } + } + }, + { + "id": 468, + "type": { + "path": [ + "polkadot_runtime_parachains", + "disputes", + "slashing", + "SlashingOffenceKind" + ], + "def": { + "variant": { + "variants": [ + { + "name": "ForInvalid", + "index": 0 + }, + { + "name": "AgainstValid", + "index": 1 + } + ] + } + } + } + }, + { + "id": 469, + "type": { + "path": [ + "polkadot_runtime_common", + "paras_registrar", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "register", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "genesis_head", + "type": 99, + "typeName": "HeadData" + }, + { + "name": "validation_code", + "type": 450, + "typeName": "ValidationCode" + } + ], + "index": 0, + "docs": [ + "Register head data and validation code for a reserved Para Id.", + "", + "## Arguments", + "- `origin`: Must be called by a `Signed` origin.", + "- `id`: The para ID. Must be owned/managed by the `origin` signing account.", + "- `genesis_head`: The genesis head data of the parachain/thread.", + "- `validation_code`: The initial validation code of the parachain/thread.", + "", + "## Deposits/Fees", + "The origin signed account must reserve a corresponding deposit for the registration. Anything already", + "reserved previously for this para ID is accounted for.", + "", + "## Events", + "The `Registered` event is emitted in case of success." + ] + }, + { + "name": "force_register", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "deposit", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "genesis_head", + "type": 99, + "typeName": "HeadData" + }, + { + "name": "validation_code", + "type": 450, + "typeName": "ValidationCode" + } + ], + "index": 1, + "docs": [ + "Force the registration of a Para Id on the relay chain.", + "", + "This function must be called by a Root origin.", + "", + "The deposit taken can be specified for this registration. Any `ParaId`", + "can be registered, including sub-1000 IDs which are System Parachains." + ] + }, + { + "name": "deregister", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 2, + "docs": [ + "Deregister a Para Id, freeing all data and returning any deposit.", + "", + "The caller must be Root, the `para` owner, or the `para` itself. The para must be a parathread." + ] + }, + { + "name": "swap", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "other", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 3, + "docs": [ + "Swap a parachain with another parachain or parathread.", + "", + "The origin must be Root, the `para` owner, or the `para` itself.", + "", + "The swap will happen only if there is already an opposite swap pending. If there is not,", + "the swap will be stored in the pending swaps map, ready for a later confirmatory swap.", + "", + "The `ParaId`s remain mapped to the same head data and code so external code can rely on", + "`ParaId` to be a long-term identifier of a notional \"parachain\". However, their", + "scheduling info (i.e. whether they're a parathread or parachain), auction information", + "and the auction deposit are switched." + ] + }, + { + "name": "remove_lock", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 4, + "docs": [ + "Remove a manager lock from a para. This will allow the manager of a", + "previously locked para to deregister or swap a para without using governance.", + "", + "Can only be called by the Root origin or the parachain." + ] + }, + { + "name": "reserve", + "index": 5, + "docs": [ + "Reserve a Para Id on the relay chain.", + "", + "This function will reserve a new Para Id to be owned/managed by the origin account.", + "The origin account is able to register head data and validation code using `register` to create", + "a parathread. Using the Slots pallet, a parathread can then be upgraded to get a parachain slot.", + "", + "## Arguments", + "- `origin`: Must be called by a `Signed` origin. Becomes the manager/owner of the new para ID.", + "", + "## Deposits/Fees", + "The origin must reserve a deposit of `ParaDeposit` for the registration.", + "", + "## Events", + "The `Reserved` event is emitted in case of success, which provides the ID reserved for use." + ] + }, + { + "name": "add_lock", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 6, + "docs": [ + "Add a manager lock from a para. This will prevent the manager of a", + "para to deregister or swap a para.", + "", + "Can be called by Root, the parachain, or the parachain manager if the parachain is unlocked." + ] + }, + { + "name": "schedule_code_upgrade", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "new_code", + "type": 450, + "typeName": "ValidationCode" + } + ], + "index": 7, + "docs": [ + "Schedule a parachain upgrade.", + "", + "Can be called by Root, the parachain, or the parachain manager if the parachain is unlocked." + ] + }, + { + "name": "set_current_head", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "new_head", + "type": 99, + "typeName": "HeadData" + } + ], + "index": 8, + "docs": [ + "Set the parachain's current head.", + "", + "Can be called by Root, the parachain, or the parachain manager if the parachain is unlocked." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 470, + "type": { + "path": [ + "polkadot_runtime_common", + "slots", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "force_lease", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "leaser", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "period_begin", + "type": 4, + "typeName": "LeasePeriodOf" + }, + { + "name": "period_count", + "type": 4, + "typeName": "LeasePeriodOf" + } + ], + "index": 0, + "docs": [ + "Just a connect into the `lease_out` call, in case Root wants to force some lease to happen", + "independently of any other on-chain mechanism to use it.", + "", + "The dispatch origin for this call must match `T::ForceOrigin`." + ] + }, + { + "name": "clear_all_leases", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 1, + "docs": [ + "Clear all leases for a Para Id, refunding any deposits back to the original owners.", + "", + "The dispatch origin for this call must match `T::ForceOrigin`." + ] + }, + { + "name": "trigger_onboard", + "fields": [ + { + "name": "para", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 2, + "docs": [ + "Try to onboard a parachain that has a lease for the current lease period.", + "", + "This function can be useful if there was some state issue with a para that should", + "have onboarded, but was unable to. As long as they have a lease period, we can", + "let them onboard from here.", + "", + "Origin must be signed, but can be called by anyone." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 471, + "type": { + "path": [ + "polkadot_runtime_common", + "auctions", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "new_auction", + "fields": [ + { + "name": "duration", + "type": 119, + "typeName": "T::BlockNumber" + }, + { + "name": "lease_period_index", + "type": 119, + "typeName": "LeasePeriodOf" + } + ], + "index": 0, + "docs": [ + "Create a new auction.", + "", + "This can only happen when there isn't already an auction in progress and may only be", + "called by the root origin. Accepts the `duration` of this auction and the", + "`lease_period_index` of the initial lease period of the four that are to be auctioned." + ] + }, + { + "name": "bid", + "fields": [ + { + "name": "para", + "type": 472, + "typeName": "ParaId" + }, + { + "name": "auction_index", + "type": 119, + "typeName": "AuctionIndex" + }, + { + "name": "first_slot", + "type": 119, + "typeName": "LeasePeriodOf" + }, + { + "name": "last_slot", + "type": 119, + "typeName": "LeasePeriodOf" + }, + { + "name": "amount", + "type": 63, + "typeName": "BalanceOf" + } + ], + "index": 1, + "docs": [ + "Make a new bid from an account (including a parachain account) for deploying a new", + "parachain.", + "", + "Multiple simultaneous bids from the same bidder are allowed only as long as all active", + "bids overlap each other (i.e. are mutually exclusive). Bids cannot be redacted.", + "", + "- `sub` is the sub-bidder ID, allowing for multiple competing bids to be made by (and", + "funded by) the same account.", + "- `auction_index` is the index of the auction to bid on. Should just be the present", + "value of `AuctionCounter`.", + "- `first_slot` is the first lease period index of the range to bid on. This is the", + "absolute lease period index value, not an auction-specific offset.", + "- `last_slot` is the last lease period index of the range to bid on. This is the", + "absolute lease period index value, not an auction-specific offset.", + "- `amount` is the amount to bid to be held as deposit for the parachain should the", + "bid win. This amount is held throughout the range." + ] + }, + { + "name": "cancel_auction", + "index": 2, + "docs": [ + "Cancel an in-progress auction.", + "", + "Can only be called by Root origin." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 472, + "type": { + "def": { + "compact": { + "type": 93 + } + } + } + }, + { + "id": 473, + "type": { + "path": [ + "polkadot_runtime_common", + "crowdloan", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "create", + "fields": [ + { + "name": "index", + "type": 472, + "typeName": "ParaId" + }, + { + "name": "cap", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "first_period", + "type": 119, + "typeName": "LeasePeriodOf" + }, + { + "name": "last_period", + "type": 119, + "typeName": "LeasePeriodOf" + }, + { + "name": "end", + "type": 119, + "typeName": "T::BlockNumber" + }, + { + "name": "verifier", + "type": 474, + "typeName": "Option" + } + ], + "index": 0, + "docs": [ + "Create a new crowdloaning campaign for a parachain slot with the given lease period range.", + "", + "This applies a lock to your parachain configuration, ensuring that it cannot be changed", + "by the parachain manager." + ] + }, + { + "name": "contribute", + "fields": [ + { + "name": "index", + "type": 472, + "typeName": "ParaId" + }, + { + "name": "value", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "signature", + "type": 478, + "typeName": "Option" + } + ], + "index": 1, + "docs": [ + "Contribute to a crowd sale. This will transfer some balance over to fund a parachain", + "slot. It will be withdrawable when the crowdloan has ended and the funds are unused." + ] + }, + { + "name": "withdraw", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "index", + "type": 472, + "typeName": "ParaId" + } + ], + "index": 2, + "docs": [ + "Withdraw full balance of a specific contributor.", + "", + "Origin must be signed, but can come from anyone.", + "", + "The fund must be either in, or ready for, retirement. For a fund to be *in* retirement, then the retirement", + "flag must be set. For a fund to be ready for retirement, then:", + "- it must not already be in retirement;", + "- the amount of raised funds must be bigger than the _free_ balance of the account;", + "- and either:", + " - the block number must be at least `end`; or", + " - the current lease period must be greater than the fund's `last_period`.", + "", + "In this case, the fund's retirement flag is set and its `end` is reset to the current block", + "number.", + "", + "- `who`: The account whose contribution should be withdrawn.", + "- `index`: The parachain to whose crowdloan the contribution was made." + ] + }, + { + "name": "refund", + "fields": [ + { + "name": "index", + "type": 472, + "typeName": "ParaId" + } + ], + "index": 3, + "docs": [ + "Automatically refund contributors of an ended crowdloan.", + "Due to weight restrictions, this function may need to be called multiple", + "times to fully refund all users. We will refund `RemoveKeysLimit` users at a time.", + "", + "Origin must be signed, but can come from anyone." + ] + }, + { + "name": "dissolve", + "fields": [ + { + "name": "index", + "type": 472, + "typeName": "ParaId" + } + ], + "index": 4, + "docs": [ + "Remove a fund after the retirement period has ended and all funds have been returned." + ] + }, + { + "name": "edit", + "fields": [ + { + "name": "index", + "type": 472, + "typeName": "ParaId" + }, + { + "name": "cap", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "first_period", + "type": 119, + "typeName": "LeasePeriodOf" + }, + { + "name": "last_period", + "type": 119, + "typeName": "LeasePeriodOf" + }, + { + "name": "end", + "type": 119, + "typeName": "T::BlockNumber" + }, + { + "name": "verifier", + "type": 474, + "typeName": "Option" + } + ], + "index": 5, + "docs": [ + "Edit the configuration for an in-progress crowdloan.", + "", + "Can only be called by Root origin." + ] + }, + { + "name": "add_memo", + "fields": [ + { + "name": "index", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "memo", + "type": 13, + "typeName": "Vec" + } + ], + "index": 6, + "docs": [ + "Add an optional memo to an existing crowdloan contribution.", + "", + "Origin must be Signed, and the user must have contributed to the crowdloan." + ] + }, + { + "name": "poke", + "fields": [ + { + "name": "index", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 7, + "docs": [ + "Poke the fund into `NewRaise`", + "", + "Origin must be Signed, and the fund has non-zero raise." + ] + }, + { + "name": "contribute_all", + "fields": [ + { + "name": "index", + "type": 472, + "typeName": "ParaId" + }, + { + "name": "signature", + "type": 478, + "typeName": "Option" + } + ], + "index": 8, + "docs": [ + "Contribute your entire balance to a crowd sale. This will transfer the entire balance of a user over to fund a parachain", + "slot. It will be withdrawable when the crowdloan has ended and the funds are unused." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 474, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 475 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 475 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 475, + "type": { + "path": [ + "sp_runtime", + "MultiSigner" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Ed25519", + "fields": [ + { + "type": 51, + "typeName": "ed25519::Public" + } + ], + "index": 0 + }, + { + "name": "Sr25519", + "fields": [ + { + "type": 59, + "typeName": "sr25519::Public" + } + ], + "index": 1 + }, + { + "name": "Ecdsa", + "fields": [ + { + "type": 476, + "typeName": "ecdsa::Public" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 476, + "type": { + "path": [ + "sp_core", + "ecdsa", + "Public" + ], + "def": { + "composite": { + "fields": [ + { + "type": 477, + "typeName": "[u8; 33]" + } + ] + } + } + } + }, + { + "id": 477, + "type": { + "def": { + "array": { + "len": 33, + "type": 2 + } + } + } + }, + { + "id": 478, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 479 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 479 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 479, + "type": { + "path": [ + "sp_runtime", + "MultiSignature" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Ed25519", + "fields": [ + { + "type": 391, + "typeName": "ed25519::Signature" + } + ], + "index": 0 + }, + { + "name": "Sr25519", + "fields": [ + { + "type": 96, + "typeName": "sr25519::Signature" + } + ], + "index": 1 + }, + { + "name": "Ecdsa", + "fields": [ + { + "type": 480, + "typeName": "ecdsa::Signature" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 480, + "type": { + "path": [ + "sp_core", + "ecdsa", + "Signature" + ], + "def": { + "composite": { + "fields": [ + { + "type": 481, + "typeName": "[u8; 65]" + } + ] + } + } + } + }, + { + "id": 481, + "type": { + "def": { + "array": { + "len": 65, + "type": 2 + } + } + } + }, + { + "id": 482, + "type": { + "path": [ + "pallet_xcm", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "send", + "fields": [ + { + "name": "dest", + "type": 166, + "typeName": "Box" + }, + { + "name": "message", + "type": 483, + "typeName": "Box>" + } + ], + "index": 0 + }, + { + "name": "teleport_assets", + "fields": [ + { + "name": "dest", + "type": 166, + "typeName": "Box" + }, + { + "name": "beneficiary", + "type": 166, + "typeName": "Box" + }, + { + "name": "assets", + "type": 152, + "typeName": "Box" + }, + { + "name": "fee_asset_item", + "type": 4, + "typeName": "u32" + } + ], + "index": 1, + "docs": [ + "Teleport some assets from the local chain to some destination chain.", + "", + "Fee payment on the destination side is made from the asset in the `assets` vector of", + "index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,", + "with all fees taken as needed from the asset.", + "", + "- `origin`: Must be capable of withdrawing the `assets` and executing XCM.", + "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send", + " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.", + "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be", + " an `AccountId32` value.", + "- `assets`: The assets to be withdrawn. The first item should be the currency used to to pay the fee on the", + " `dest` side. May not be empty.", + "- `fee_asset_item`: The index into `assets` of the item which should be used to pay", + " fees." + ] + }, + { + "name": "reserve_transfer_assets", + "fields": [ + { + "name": "dest", + "type": 166, + "typeName": "Box" + }, + { + "name": "beneficiary", + "type": 166, + "typeName": "Box" + }, + { + "name": "assets", + "type": 152, + "typeName": "Box" + }, + { + "name": "fee_asset_item", + "type": 4, + "typeName": "u32" + } + ], + "index": 2, + "docs": [ + "Transfer some assets from the local chain to the sovereign account of a destination", + "chain and forward a notification XCM.", + "", + "Fee payment on the destination side is made from the asset in the `assets` vector of", + "index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,", + "with all fees taken as needed from the asset.", + "", + "- `origin`: Must be capable of withdrawing the `assets` and executing XCM.", + "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send", + " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.", + "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be", + " an `AccountId32` value.", + "- `assets`: The assets to be withdrawn. This should include the assets used to pay the fee on the", + " `dest` side.", + "- `fee_asset_item`: The index into `assets` of the item which should be used to pay", + " fees." + ] + }, + { + "name": "execute", + "fields": [ + { + "name": "message", + "type": 495, + "typeName": "Box::RuntimeCall>>" + }, + { + "name": "max_weight", + "type": 9, + "typeName": "Weight" + } + ], + "index": 3, + "docs": [ + "Execute an XCM message from a local, signed, origin.", + "", + "An event is deposited indicating whether `msg` could be executed completely or only", + "partially.", + "", + "No more than `max_weight` will be used in its attempted execution. If this is less than the", + "maximum amount of weight that the message could take to be executed, then no execution", + "attempt will be made.", + "", + "NOTE: A successful return to this does *not* imply that the `msg` was executed successfully", + "to completion; only that *some* of it was executed." + ] + }, + { + "name": "force_xcm_version", + "fields": [ + { + "name": "location", + "type": 116, + "typeName": "Box" + }, + { + "name": "xcm_version", + "type": 4, + "typeName": "XcmVersion" + } + ], + "index": 4, + "docs": [ + "Extoll that a particular destination can be communicated with through a particular", + "version of XCM.", + "", + "- `origin`: Must be an origin specified by AdminOrigin.", + "- `location`: The destination that is being described.", + "- `xcm_version`: The latest version of XCM that `location` supports." + ] + }, + { + "name": "force_default_xcm_version", + "fields": [ + { + "name": "maybe_xcm_version", + "type": 73, + "typeName": "Option" + } + ], + "index": 5, + "docs": [ + "Set a safe XCM version (the version that XCM should be encoded with if the most recent", + "version a destination can accept is unknown).", + "", + "- `origin`: Must be an origin specified by AdminOrigin.", + "- `maybe_xcm_version`: The default XCM encoding version, or `None` to disable." + ] + }, + { + "name": "force_subscribe_version_notify", + "fields": [ + { + "name": "location", + "type": 166, + "typeName": "Box" + } + ], + "index": 6, + "docs": [ + "Ask a location to notify us regarding their XCM version and any changes to it.", + "", + "- `origin`: Must be an origin specified by AdminOrigin.", + "- `location`: The location to which we should subscribe for XCM version notifications." + ] + }, + { + "name": "force_unsubscribe_version_notify", + "fields": [ + { + "name": "location", + "type": 166, + "typeName": "Box" + } + ], + "index": 7, + "docs": [ + "Require that a particular destination should no longer notify us regarding any XCM", + "version changes.", + "", + "- `origin`: Must be an origin specified by AdminOrigin.", + "- `location`: The location to which we are currently subscribed for XCM version", + " notifications which we no longer desire." + ] + }, + { + "name": "limited_reserve_transfer_assets", + "fields": [ + { + "name": "dest", + "type": 166, + "typeName": "Box" + }, + { + "name": "beneficiary", + "type": 166, + "typeName": "Box" + }, + { + "name": "assets", + "type": 152, + "typeName": "Box" + }, + { + "name": "fee_asset_item", + "type": 4, + "typeName": "u32" + }, + { + "name": "weight_limit", + "type": 151, + "typeName": "WeightLimit" + } + ], + "index": 8, + "docs": [ + "Transfer some assets from the local chain to the sovereign account of a destination", + "chain and forward a notification XCM.", + "", + "Fee payment on the destination side is made from the asset in the `assets` vector of", + "index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight", + "is needed than `weight_limit`, then the operation will fail and the assets send may be", + "at risk.", + "", + "- `origin`: Must be capable of withdrawing the `assets` and executing XCM.", + "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send", + " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.", + "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be", + " an `AccountId32` value.", + "- `assets`: The assets to be withdrawn. This should include the assets used to pay the fee on the", + " `dest` side.", + "- `fee_asset_item`: The index into `assets` of the item which should be used to pay", + " fees.", + "- `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase." + ] + }, + { + "name": "limited_teleport_assets", + "fields": [ + { + "name": "dest", + "type": 166, + "typeName": "Box" + }, + { + "name": "beneficiary", + "type": 166, + "typeName": "Box" + }, + { + "name": "assets", + "type": 152, + "typeName": "Box" + }, + { + "name": "fee_asset_item", + "type": 4, + "typeName": "u32" + }, + { + "name": "weight_limit", + "type": 151, + "typeName": "WeightLimit" + } + ], + "index": 9, + "docs": [ + "Teleport some assets from the local chain to some destination chain.", + "", + "Fee payment on the destination side is made from the asset in the `assets` vector of", + "index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight", + "is needed than `weight_limit`, then the operation will fail and the assets send may be", + "at risk.", + "", + "- `origin`: Must be capable of withdrawing the `assets` and executing XCM.", + "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send", + " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.", + "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be", + " an `AccountId32` value.", + "- `assets`: The assets to be withdrawn. The first item should be the currency used to to pay the fee on the", + " `dest` side. May not be empty.", + "- `fee_asset_item`: The index into `assets` of the item which should be used to pay", + " fees.", + "- `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase." + ] + }, + { + "name": "force_suspension", + "fields": [ + { + "name": "suspended", + "type": 37, + "typeName": "bool" + } + ], + "index": 10, + "docs": [ + "Set or unset the global suspension state of the XCM executor.", + "", + "- `origin`: Must be an origin specified by AdminOrigin.", + "- `suspended`: `true` to suspend, `false` to resume." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 483, + "type": { + "path": [ + "xcm", + "VersionedXcm" + ], + "params": [ + { + "name": "RuntimeCall", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "V2", + "fields": [ + { + "type": 484, + "typeName": "v2::Xcm" + } + ], + "index": 2 + }, + { + "name": "V3", + "fields": [ + { + "type": 125, + "typeName": "v3::Xcm" + } + ], + "index": 3 + } + ] + } + } + } + }, + { + "id": 484, + "type": { + "path": [ + "xcm", + "v2", + "Xcm" + ], + "params": [ + { + "name": "RuntimeCall", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 485, + "typeName": "Vec>" + } + ] + } + } + } + }, + { + "id": 485, + "type": { + "def": { + "sequence": { + "type": 486 + } + } + } + }, + { + "id": 486, + "type": { + "path": [ + "xcm", + "v2", + "Instruction" + ], + "params": [ + { + "name": "RuntimeCall", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "WithdrawAsset", + "fields": [ + { + "type": 153, + "typeName": "MultiAssets" + } + ], + "index": 0 + }, + { + "name": "ReserveAssetDeposited", + "fields": [ + { + "type": 153, + "typeName": "MultiAssets" + } + ], + "index": 1 + }, + { + "name": "ReceiveTeleportedAsset", + "fields": [ + { + "type": 153, + "typeName": "MultiAssets" + } + ], + "index": 2 + }, + { + "name": "QueryResponse", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "response", + "type": 487, + "typeName": "Response" + }, + { + "name": "max_weight", + "type": 10, + "typeName": "u64" + } + ], + "index": 3 + }, + { + "name": "TransferAsset", + "fields": [ + { + "name": "assets", + "type": 153, + "typeName": "MultiAssets" + }, + { + "name": "beneficiary", + "type": 157, + "typeName": "MultiLocation" + } + ], + "index": 4 + }, + { + "name": "TransferReserveAsset", + "fields": [ + { + "name": "assets", + "type": 153, + "typeName": "MultiAssets" + }, + { + "name": "dest", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 484, + "typeName": "Xcm<()>" + } + ], + "index": 5 + }, + { + "name": "Transact", + "fields": [ + { + "name": "origin_type", + "type": 145, + "typeName": "OriginKind" + }, + { + "name": "require_weight_at_most", + "type": 10, + "typeName": "u64" + }, + { + "name": "call", + "type": 146, + "typeName": "DoubleEncoded" + } + ], + "index": 6 + }, + { + "name": "HrmpNewChannelOpenRequest", + "fields": [ + { + "name": "sender", + "type": 119, + "typeName": "u32" + }, + { + "name": "max_message_size", + "type": 119, + "typeName": "u32" + }, + { + "name": "max_capacity", + "type": 119, + "typeName": "u32" + } + ], + "index": 7 + }, + { + "name": "HrmpChannelAccepted", + "fields": [ + { + "name": "recipient", + "type": 119, + "typeName": "u32" + } + ], + "index": 8 + }, + { + "name": "HrmpChannelClosing", + "fields": [ + { + "name": "initiator", + "type": 119, + "typeName": "u32" + }, + { + "name": "sender", + "type": 119, + "typeName": "u32" + }, + { + "name": "recipient", + "type": 119, + "typeName": "u32" + } + ], + "index": 9 + }, + { + "name": "ClearOrigin", + "index": 10 + }, + { + "name": "DescendOrigin", + "fields": [ + { + "type": 158, + "typeName": "InteriorMultiLocation" + } + ], + "index": 11 + }, + { + "name": "ReportError", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "dest", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "max_response_weight", + "type": 10, + "typeName": "u64" + } + ], + "index": 12 + }, + { + "name": "DepositAsset", + "fields": [ + { + "name": "assets", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "max_assets", + "type": 119, + "typeName": "u32" + }, + { + "name": "beneficiary", + "type": 157, + "typeName": "MultiLocation" + } + ], + "index": 13 + }, + { + "name": "DepositReserveAsset", + "fields": [ + { + "name": "assets", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "max_assets", + "type": 119, + "typeName": "u32" + }, + { + "name": "dest", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 484, + "typeName": "Xcm<()>" + } + ], + "index": 14 + }, + { + "name": "ExchangeAsset", + "fields": [ + { + "name": "give", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "receive", + "type": 153, + "typeName": "MultiAssets" + } + ], + "index": 15 + }, + { + "name": "InitiateReserveWithdraw", + "fields": [ + { + "name": "assets", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "reserve", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 484, + "typeName": "Xcm<()>" + } + ], + "index": 16 + }, + { + "name": "InitiateTeleport", + "fields": [ + { + "name": "assets", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "dest", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 484, + "typeName": "Xcm<()>" + } + ], + "index": 17 + }, + { + "name": "QueryHolding", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "dest", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "assets", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "max_response_weight", + "type": 10, + "typeName": "u64" + } + ], + "index": 18 + }, + { + "name": "BuyExecution", + "fields": [ + { + "name": "fees", + "type": 155, + "typeName": "MultiAsset" + }, + { + "name": "weight_limit", + "type": 494, + "typeName": "WeightLimit" + } + ], + "index": 19 + }, + { + "name": "RefundSurplus", + "index": 20 + }, + { + "name": "SetErrorHandler", + "fields": [ + { + "type": 484, + "typeName": "Xcm" + } + ], + "index": 21 + }, + { + "name": "SetAppendix", + "fields": [ + { + "type": 484, + "typeName": "Xcm" + } + ], + "index": 22 + }, + { + "name": "ClearError", + "index": 23 + }, + { + "name": "ClaimAsset", + "fields": [ + { + "name": "assets", + "type": 153, + "typeName": "MultiAssets" + }, + { + "name": "ticket", + "type": 157, + "typeName": "MultiLocation" + } + ], + "index": 24 + }, + { + "name": "Trap", + "fields": [ + { + "type": 10, + "typeName": "u64" + } + ], + "index": 25 + }, + { + "name": "SubscribeVersion", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "max_response_weight", + "type": 10, + "typeName": "u64" + } + ], + "index": 26 + }, + { + "name": "UnsubscribeVersion", + "index": 27 + } + ] + } + } + } + }, + { + "id": 487, + "type": { + "path": [ + "xcm", + "v2", + "Response" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Null", + "index": 0 + }, + { + "name": "Assets", + "fields": [ + { + "type": 153, + "typeName": "MultiAssets" + } + ], + "index": 1 + }, + { + "name": "ExecutionResult", + "fields": [ + { + "type": 488, + "typeName": "Option<(u32, Error)>" + } + ], + "index": 2 + }, + { + "name": "Version", + "fields": [ + { + "type": 4, + "typeName": "super::Version" + } + ], + "index": 3 + } + ] + } + } + } + }, + { + "id": 488, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 489 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 489 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 489, + "type": { + "def": { + "tuple": [ + 4, + 490 + ] + } + } + }, + { + "id": 490, + "type": { + "path": [ + "xcm", + "v2", + "traits", + "Error" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Overflow", + "index": 0 + }, + { + "name": "Unimplemented", + "index": 1 + }, + { + "name": "UntrustedReserveLocation", + "index": 2 + }, + { + "name": "UntrustedTeleportLocation", + "index": 3 + }, + { + "name": "MultiLocationFull", + "index": 4 + }, + { + "name": "MultiLocationNotInvertible", + "index": 5 + }, + { + "name": "BadOrigin", + "index": 6 + }, + { + "name": "InvalidLocation", + "index": 7 + }, + { + "name": "AssetNotFound", + "index": 8 + }, + { + "name": "FailedToTransactAsset", + "index": 9 + }, + { + "name": "NotWithdrawable", + "index": 10 + }, + { + "name": "LocationCannotHold", + "index": 11 + }, + { + "name": "ExceedsMaxMessageSize", + "index": 12 + }, + { + "name": "DestinationUnsupported", + "index": 13 + }, + { + "name": "Transport", + "index": 14 + }, + { + "name": "Unroutable", + "index": 15 + }, + { + "name": "UnknownClaim", + "index": 16 + }, + { + "name": "FailedToDecode", + "index": 17 + }, + { + "name": "MaxWeightInvalid", + "index": 18 + }, + { + "name": "NotHoldingFees", + "index": 19 + }, + { + "name": "TooExpensive", + "index": 20 + }, + { + "name": "Trap", + "fields": [ + { + "type": 11, + "typeName": "u64" + } + ], + "index": 21 + }, + { + "name": "UnhandledXcmVersion", + "index": 22 + }, + { + "name": "WeightLimitReached", + "fields": [ + { + "type": 11, + "typeName": "Weight" + } + ], + "index": 23 + }, + { + "name": "Barrier", + "index": 24 + }, + { + "name": "WeightNotComputable", + "index": 25 + } + ] + } + } + } + }, + { + "id": 491, + "type": { + "path": [ + "xcm", + "v2", + "multiasset", + "MultiAssetFilter" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Definite", + "fields": [ + { + "type": 153, + "typeName": "MultiAssets" + } + ], + "index": 0 + }, + { + "name": "Wild", + "fields": [ + { + "type": 492, + "typeName": "WildMultiAsset" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 492, + "type": { + "path": [ + "xcm", + "v2", + "multiasset", + "WildMultiAsset" + ], + "def": { + "variant": { + "variants": [ + { + "name": "All", + "index": 0 + }, + { + "name": "AllOf", + "fields": [ + { + "name": "id", + "type": 156, + "typeName": "AssetId" + }, + { + "name": "fun", + "type": 493, + "typeName": "WildFungibility" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 493, + "type": { + "path": [ + "xcm", + "v2", + "multiasset", + "WildFungibility" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Fungible", + "index": 0 + }, + { + "name": "NonFungible", + "index": 1 + } + ] + } + } + } + }, + { + "id": 494, + "type": { + "path": [ + "xcm", + "v2", + "WeightLimit" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Unlimited", + "index": 0 + }, + { + "name": "Limited", + "fields": [ + { + "type": 10, + "typeName": "u64" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 495, + "type": { + "path": [ + "xcm", + "VersionedXcm" + ], + "params": [ + { + "name": "RuntimeCall", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "V2", + "fields": [ + { + "type": 496, + "typeName": "v2::Xcm" + } + ], + "index": 2 + }, + { + "name": "V3", + "fields": [ + { + "type": 500, + "typeName": "v3::Xcm" + } + ], + "index": 3 + } + ] + } + } + } + }, + { + "id": 496, + "type": { + "path": [ + "xcm", + "v2", + "Xcm" + ], + "params": [ + { + "name": "RuntimeCall", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 497, + "typeName": "Vec>" + } + ] + } + } + } + }, + { + "id": 497, + "type": { + "def": { + "sequence": { + "type": 498 + } + } + } + }, + { + "id": 498, + "type": { + "path": [ + "xcm", + "v2", + "Instruction" + ], + "params": [ + { + "name": "RuntimeCall", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "WithdrawAsset", + "fields": [ + { + "type": 153, + "typeName": "MultiAssets" + } + ], + "index": 0 + }, + { + "name": "ReserveAssetDeposited", + "fields": [ + { + "type": 153, + "typeName": "MultiAssets" + } + ], + "index": 1 + }, + { + "name": "ReceiveTeleportedAsset", + "fields": [ + { + "type": 153, + "typeName": "MultiAssets" + } + ], + "index": 2 + }, + { + "name": "QueryResponse", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "response", + "type": 487, + "typeName": "Response" + }, + { + "name": "max_weight", + "type": 10, + "typeName": "u64" + } + ], + "index": 3 + }, + { + "name": "TransferAsset", + "fields": [ + { + "name": "assets", + "type": 153, + "typeName": "MultiAssets" + }, + { + "name": "beneficiary", + "type": 157, + "typeName": "MultiLocation" + } + ], + "index": 4 + }, + { + "name": "TransferReserveAsset", + "fields": [ + { + "name": "assets", + "type": 153, + "typeName": "MultiAssets" + }, + { + "name": "dest", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 484, + "typeName": "Xcm<()>" + } + ], + "index": 5 + }, + { + "name": "Transact", + "fields": [ + { + "name": "origin_type", + "type": 145, + "typeName": "OriginKind" + }, + { + "name": "require_weight_at_most", + "type": 10, + "typeName": "u64" + }, + { + "name": "call", + "type": 499, + "typeName": "DoubleEncoded" + } + ], + "index": 6 + }, + { + "name": "HrmpNewChannelOpenRequest", + "fields": [ + { + "name": "sender", + "type": 119, + "typeName": "u32" + }, + { + "name": "max_message_size", + "type": 119, + "typeName": "u32" + }, + { + "name": "max_capacity", + "type": 119, + "typeName": "u32" + } + ], + "index": 7 + }, + { + "name": "HrmpChannelAccepted", + "fields": [ + { + "name": "recipient", + "type": 119, + "typeName": "u32" + } + ], + "index": 8 + }, + { + "name": "HrmpChannelClosing", + "fields": [ + { + "name": "initiator", + "type": 119, + "typeName": "u32" + }, + { + "name": "sender", + "type": 119, + "typeName": "u32" + }, + { + "name": "recipient", + "type": 119, + "typeName": "u32" + } + ], + "index": 9 + }, + { + "name": "ClearOrigin", + "index": 10 + }, + { + "name": "DescendOrigin", + "fields": [ + { + "type": 158, + "typeName": "InteriorMultiLocation" + } + ], + "index": 11 + }, + { + "name": "ReportError", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "dest", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "max_response_weight", + "type": 10, + "typeName": "u64" + } + ], + "index": 12 + }, + { + "name": "DepositAsset", + "fields": [ + { + "name": "assets", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "max_assets", + "type": 119, + "typeName": "u32" + }, + { + "name": "beneficiary", + "type": 157, + "typeName": "MultiLocation" + } + ], + "index": 13 + }, + { + "name": "DepositReserveAsset", + "fields": [ + { + "name": "assets", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "max_assets", + "type": 119, + "typeName": "u32" + }, + { + "name": "dest", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 484, + "typeName": "Xcm<()>" + } + ], + "index": 14 + }, + { + "name": "ExchangeAsset", + "fields": [ + { + "name": "give", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "receive", + "type": 153, + "typeName": "MultiAssets" + } + ], + "index": 15 + }, + { + "name": "InitiateReserveWithdraw", + "fields": [ + { + "name": "assets", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "reserve", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 484, + "typeName": "Xcm<()>" + } + ], + "index": 16 + }, + { + "name": "InitiateTeleport", + "fields": [ + { + "name": "assets", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "dest", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 484, + "typeName": "Xcm<()>" + } + ], + "index": 17 + }, + { + "name": "QueryHolding", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "dest", + "type": 157, + "typeName": "MultiLocation" + }, + { + "name": "assets", + "type": 491, + "typeName": "MultiAssetFilter" + }, + { + "name": "max_response_weight", + "type": 10, + "typeName": "u64" + } + ], + "index": 18 + }, + { + "name": "BuyExecution", + "fields": [ + { + "name": "fees", + "type": 155, + "typeName": "MultiAsset" + }, + { + "name": "weight_limit", + "type": 494, + "typeName": "WeightLimit" + } + ], + "index": 19 + }, + { + "name": "RefundSurplus", + "index": 20 + }, + { + "name": "SetErrorHandler", + "fields": [ + { + "type": 496, + "typeName": "Xcm" + } + ], + "index": 21 + }, + { + "name": "SetAppendix", + "fields": [ + { + "type": 496, + "typeName": "Xcm" + } + ], + "index": 22 + }, + { + "name": "ClearError", + "index": 23 + }, + { + "name": "ClaimAsset", + "fields": [ + { + "name": "assets", + "type": 153, + "typeName": "MultiAssets" + }, + { + "name": "ticket", + "type": 157, + "typeName": "MultiLocation" + } + ], + "index": 24 + }, + { + "name": "Trap", + "fields": [ + { + "type": 10, + "typeName": "u64" + } + ], + "index": 25 + }, + { + "name": "SubscribeVersion", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "max_response_weight", + "type": 10, + "typeName": "u64" + } + ], + "index": 26 + }, + { + "name": "UnsubscribeVersion", + "index": 27 + } + ] + } + } + } + }, + { + "id": 499, + "type": { + "path": [ + "xcm", + "double_encoded", + "DoubleEncoded" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "encoded", + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 500, + "type": { + "path": [ + "xcm", + "v3", + "Xcm" + ], + "params": [ + { + "name": "Call", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 501, + "typeName": "Vec>" + } + ] + } + } + } + }, + { + "id": 501, + "type": { + "def": { + "sequence": { + "type": 502 + } + } + } + }, + { + "id": 502, + "type": { + "path": [ + "xcm", + "v3", + "Instruction" + ], + "params": [ + { + "name": "Call", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "WithdrawAsset", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 0 + }, + { + "name": "ReserveAssetDeposited", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 1 + }, + { + "name": "ReceiveTeleportedAsset", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 2 + }, + { + "name": "QueryResponse", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "response", + "type": 135, + "typeName": "Response" + }, + { + "name": "max_weight", + "type": 9, + "typeName": "Weight" + }, + { + "name": "querier", + "type": 144, + "typeName": "Option" + } + ], + "index": 3 + }, + { + "name": "TransferAsset", + "fields": [ + { + "name": "assets", + "type": 128, + "typeName": "MultiAssets" + }, + { + "name": "beneficiary", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 4 + }, + { + "name": "TransferReserveAsset", + "fields": [ + { + "name": "assets", + "type": 128, + "typeName": "MultiAssets" + }, + { + "name": "dest", + "type": 116, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 125, + "typeName": "Xcm<()>" + } + ], + "index": 5 + }, + { + "name": "Transact", + "fields": [ + { + "name": "origin_kind", + "type": 145, + "typeName": "OriginKind" + }, + { + "name": "require_weight_at_most", + "type": 9, + "typeName": "Weight" + }, + { + "name": "call", + "type": 499, + "typeName": "DoubleEncoded" + } + ], + "index": 6 + }, + { + "name": "HrmpNewChannelOpenRequest", + "fields": [ + { + "name": "sender", + "type": 119, + "typeName": "u32" + }, + { + "name": "max_message_size", + "type": 119, + "typeName": "u32" + }, + { + "name": "max_capacity", + "type": 119, + "typeName": "u32" + } + ], + "index": 7 + }, + { + "name": "HrmpChannelAccepted", + "fields": [ + { + "name": "recipient", + "type": 119, + "typeName": "u32" + } + ], + "index": 8 + }, + { + "name": "HrmpChannelClosing", + "fields": [ + { + "name": "initiator", + "type": 119, + "typeName": "u32" + }, + { + "name": "sender", + "type": 119, + "typeName": "u32" + }, + { + "name": "recipient", + "type": 119, + "typeName": "u32" + } + ], + "index": 9 + }, + { + "name": "ClearOrigin", + "index": 10 + }, + { + "name": "DescendOrigin", + "fields": [ + { + "type": 117, + "typeName": "InteriorMultiLocation" + } + ], + "index": 11 + }, + { + "name": "ReportError", + "fields": [ + { + "type": 147, + "typeName": "QueryResponseInfo" + } + ], + "index": 12 + }, + { + "name": "DepositAsset", + "fields": [ + { + "name": "assets", + "type": 148, + "typeName": "MultiAssetFilter" + }, + { + "name": "beneficiary", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 13 + }, + { + "name": "DepositReserveAsset", + "fields": [ + { + "name": "assets", + "type": 148, + "typeName": "MultiAssetFilter" + }, + { + "name": "dest", + "type": 116, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 125, + "typeName": "Xcm<()>" + } + ], + "index": 14 + }, + { + "name": "ExchangeAsset", + "fields": [ + { + "name": "give", + "type": 148, + "typeName": "MultiAssetFilter" + }, + { + "name": "want", + "type": 128, + "typeName": "MultiAssets" + }, + { + "name": "maximal", + "type": 37, + "typeName": "bool" + } + ], + "index": 15 + }, + { + "name": "InitiateReserveWithdraw", + "fields": [ + { + "name": "assets", + "type": 148, + "typeName": "MultiAssetFilter" + }, + { + "name": "reserve", + "type": 116, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 125, + "typeName": "Xcm<()>" + } + ], + "index": 16 + }, + { + "name": "InitiateTeleport", + "fields": [ + { + "name": "assets", + "type": 148, + "typeName": "MultiAssetFilter" + }, + { + "name": "dest", + "type": 116, + "typeName": "MultiLocation" + }, + { + "name": "xcm", + "type": 125, + "typeName": "Xcm<()>" + } + ], + "index": 17 + }, + { + "name": "ReportHolding", + "fields": [ + { + "name": "response_info", + "type": 147, + "typeName": "QueryResponseInfo" + }, + { + "name": "assets", + "type": 148, + "typeName": "MultiAssetFilter" + } + ], + "index": 18 + }, + { + "name": "BuyExecution", + "fields": [ + { + "name": "fees", + "type": 130, + "typeName": "MultiAsset" + }, + { + "name": "weight_limit", + "type": 151, + "typeName": "WeightLimit" + } + ], + "index": 19 + }, + { + "name": "RefundSurplus", + "index": 20 + }, + { + "name": "SetErrorHandler", + "fields": [ + { + "type": 500, + "typeName": "Xcm" + } + ], + "index": 21 + }, + { + "name": "SetAppendix", + "fields": [ + { + "type": 500, + "typeName": "Xcm" + } + ], + "index": 22 + }, + { + "name": "ClearError", + "index": 23 + }, + { + "name": "ClaimAsset", + "fields": [ + { + "name": "assets", + "type": 128, + "typeName": "MultiAssets" + }, + { + "name": "ticket", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 24 + }, + { + "name": "Trap", + "fields": [ + { + "type": 10, + "typeName": "u64" + } + ], + "index": 25 + }, + { + "name": "SubscribeVersion", + "fields": [ + { + "name": "query_id", + "type": 10, + "typeName": "QueryId" + }, + { + "name": "max_response_weight", + "type": 9, + "typeName": "Weight" + } + ], + "index": 26 + }, + { + "name": "UnsubscribeVersion", + "index": 27 + }, + { + "name": "BurnAsset", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 28 + }, + { + "name": "ExpectAsset", + "fields": [ + { + "type": 128, + "typeName": "MultiAssets" + } + ], + "index": 29 + }, + { + "name": "ExpectOrigin", + "fields": [ + { + "type": 144, + "typeName": "Option" + } + ], + "index": 30 + }, + { + "name": "ExpectError", + "fields": [ + { + "type": 136, + "typeName": "Option<(u32, Error)>" + } + ], + "index": 31 + }, + { + "name": "ExpectTransactStatus", + "fields": [ + { + "type": 142, + "typeName": "MaybeErrorCode" + } + ], + "index": 32 + }, + { + "name": "QueryPallet", + "fields": [ + { + "name": "module_name", + "type": 13, + "typeName": "Vec" + }, + { + "name": "response_info", + "type": 147, + "typeName": "QueryResponseInfo" + } + ], + "index": 33 + }, + { + "name": "ExpectPallet", + "fields": [ + { + "name": "index", + "type": 119, + "typeName": "u32" + }, + { + "name": "name", + "type": 13, + "typeName": "Vec" + }, + { + "name": "module_name", + "type": 13, + "typeName": "Vec" + }, + { + "name": "crate_major", + "type": 119, + "typeName": "u32" + }, + { + "name": "min_crate_minor", + "type": 119, + "typeName": "u32" + } + ], + "index": 34 + }, + { + "name": "ReportTransactStatus", + "fields": [ + { + "type": 147, + "typeName": "QueryResponseInfo" + } + ], + "index": 35 + }, + { + "name": "ClearTransactStatus", + "index": 36 + }, + { + "name": "UniversalOrigin", + "fields": [ + { + "type": 118, + "typeName": "Junction" + } + ], + "index": 37 + }, + { + "name": "ExportMessage", + "fields": [ + { + "name": "network", + "type": 121, + "typeName": "NetworkId" + }, + { + "name": "destination", + "type": 117, + "typeName": "InteriorMultiLocation" + }, + { + "name": "xcm", + "type": 125, + "typeName": "Xcm<()>" + } + ], + "index": 38 + }, + { + "name": "LockAsset", + "fields": [ + { + "name": "asset", + "type": 130, + "typeName": "MultiAsset" + }, + { + "name": "unlocker", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 39 + }, + { + "name": "UnlockAsset", + "fields": [ + { + "name": "asset", + "type": 130, + "typeName": "MultiAsset" + }, + { + "name": "target", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 40 + }, + { + "name": "NoteUnlockable", + "fields": [ + { + "name": "asset", + "type": 130, + "typeName": "MultiAsset" + }, + { + "name": "owner", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 41 + }, + { + "name": "RequestUnlock", + "fields": [ + { + "name": "asset", + "type": 130, + "typeName": "MultiAsset" + }, + { + "name": "locker", + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 42 + }, + { + "name": "SetFeesMode", + "fields": [ + { + "name": "jit_withdraw", + "type": 37, + "typeName": "bool" + } + ], + "index": 43 + }, + { + "name": "SetTopic", + "fields": [ + { + "type": 1, + "typeName": "[u8; 32]" + } + ], + "index": 44 + }, + { + "name": "ClearTopic", + "index": 45 + }, + { + "name": "AliasOrigin", + "fields": [ + { + "type": 116, + "typeName": "MultiLocation" + } + ], + "index": 46 + }, + { + "name": "UnpaidExecution", + "fields": [ + { + "name": "weight_limit", + "type": 151, + "typeName": "WeightLimit" + }, + { + "name": "check_origin", + "type": 144, + "typeName": "Option" + } + ], + "index": 47 + } + ] + } + } + } + }, + { + "id": 503, + "type": { + "path": [ + "pallet_message_queue", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "reap_page", + "fields": [ + { + "name": "message_origin", + "type": 168, + "typeName": "MessageOriginOf" + }, + { + "name": "page_index", + "type": 4, + "typeName": "PageIndex" + } + ], + "index": 0, + "docs": [ + "Remove a page which has no more messages remaining to be processed or is stale." + ] + }, + { + "name": "execute_overweight", + "fields": [ + { + "name": "message_origin", + "type": 168, + "typeName": "MessageOriginOf" + }, + { + "name": "page", + "type": 4, + "typeName": "PageIndex" + }, + { + "name": "index", + "type": 4, + "typeName": "T::Size" + }, + { + "name": "weight_limit", + "type": 9, + "typeName": "Weight" + } + ], + "index": 1, + "docs": [ + "Execute an overweight message.", + "", + "Temporary processing errors will be propagated whereas permanent errors are treated", + "as success condition.", + "", + "- `origin`: Must be `Signed`.", + "- `message_origin`: The origin from which the message to be executed arrived.", + "- `page`: The page in the queue in which the message to be executed is sitting.", + "- `index`: The index into the queue of the message to be executed.", + "- `weight_limit`: The maximum amount of weight allowed to be consumed in the execution", + " of the message.", + "", + "Benchmark complexity considerations: O(index + weight_limit)." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 504, + "type": { + "path": [ + "polkadot_runtime_common", + "paras_sudo_wrapper", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "sudo_schedule_para_initialize", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "genesis", + "type": 505, + "typeName": "ParaGenesisArgs" + } + ], + "index": 0, + "docs": [ + "Schedule a para to be initialized at the start of the next session." + ] + }, + { + "name": "sudo_schedule_para_cleanup", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 1, + "docs": [ + "Schedule a para to be cleaned up at the start of the next session." + ] + }, + { + "name": "sudo_schedule_parathread_upgrade", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 2, + "docs": [ + "Upgrade a parathread to a parachain" + ] + }, + { + "name": "sudo_schedule_parachain_downgrade", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 3, + "docs": [ + "Downgrade a parachain to a parathread" + ] + }, + { + "name": "sudo_queue_downward_xcm", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "xcm", + "type": 483, + "typeName": "Box" + } + ], + "index": 4, + "docs": [ + "Send a downward XCM to the given para.", + "", + "The given parachain should exist and the payload should not exceed the preconfigured size", + "`config.max_downward_message_size`." + ] + }, + { + "name": "sudo_establish_hrmp_channel", + "fields": [ + { + "name": "sender", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "recipient", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "max_capacity", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_message_size", + "type": 4, + "typeName": "u32" + } + ], + "index": 5, + "docs": [ + "Forcefully establish a channel from the sender to the recipient.", + "", + "This is equivalent to sending an `Hrmp::hrmp_init_open_channel` extrinsic followed by", + "`Hrmp::hrmp_accept_open_channel`." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 505, + "type": { + "path": [ + "polkadot_runtime_parachains", + "paras", + "ParaGenesisArgs" + ], + "def": { + "composite": { + "fields": [ + { + "name": "genesis_head", + "type": 99, + "typeName": "HeadData" + }, + { + "name": "validation_code", + "type": 450, + "typeName": "ValidationCode" + }, + { + "name": "para_kind", + "type": 37, + "typeName": "ParaKind" + } + ] + } + } + } + }, + { + "id": 506, + "type": { + "path": [ + "polkadot_runtime_common", + "assigned_slots", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "assign_perm_parachain_slot", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 0, + "docs": [ + "Assign a permanent parachain slot and immediately create a lease for it." + ] + }, + { + "name": "assign_temp_parachain_slot", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "lease_period_start", + "type": 507, + "typeName": "SlotLeasePeriodStart" + } + ], + "index": 1, + "docs": [ + "Assign a temporary parachain slot. The function tries to create a lease for it", + "immediately if `SlotLeasePeriodStart::Current` is specified, and if the number", + "of currently active temporary slots is below `MaxTemporarySlotPerLeasePeriod`." + ] + }, + { + "name": "unassign_parachain_slot", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + } + ], + "index": 2, + "docs": [ + "Unassign a permanent or temporary parachain slot" + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 507, + "type": { + "path": [ + "polkadot_runtime_common", + "assigned_slots", + "SlotLeasePeriodStart" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Current", + "index": 0 + }, + { + "name": "Next", + "index": 1 + } + ] + } + } + } + }, + { + "id": 508, + "type": { + "path": [ + "pallet_validator_manager", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "register_validators", + "fields": [ + { + "name": "validators", + "type": 78, + "typeName": "Vec" + } + ], + "index": 0, + "docs": [ + "Add new validators to the set.", + "", + "The new validators will be active from current session + 2." + ] + }, + { + "name": "deregister_validators", + "fields": [ + { + "name": "validators", + "type": 78, + "typeName": "Vec" + } + ], + "index": 1, + "docs": [ + "Remove validators from the set.", + "", + "The removed validators will be deactivated from current session + 2." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 509, + "type": { + "path": [ + "pallet_multi_tokens", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "create_collection", + "fields": [ + { + "name": "descriptor", + "type": 510, + "typeName": "Box<::CollectionDescriptor>" + } + ], + "index": 0, + "docs": [ + "Creates a new [`Collection`](ep_multi_tokens::Collection) from `descriptor`", + "", + "# Errors", + "", + "- [`Error::DepositReserveFailed`] if the deposit cannot be reserved" + ] + }, + { + "name": "destroy_collection", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + } + ], + "index": 1, + "docs": [ + "Destroys [`Collection`](ep_multi_tokens::Collection) with `id`. `origin` must be the", + "owner of the [`Collection`](ep_multi_tokens::Collection).", + "", + "# Errors", + "", + "- [`Error::NoPermission`] if `origin` is not the owner of the collection.", + "- [`Error::CollectionNotFound`] if `Collection` with `id` does not exist.", + "- [`Error::DestroyForbiddenByCollectionEvent`] if another pallet is blocking the", + " collection's destruction", + "- [`Error::DestroyForbiddenByRemainingTokens`] if collection still has tokens when", + " destroying", + "- [`Error::DestroyForbiddenByAttributeCount`] if collection still has attributes when", + " destroying", + "current number of collection attributes." + ] + }, + { + "name": "mutate_collection", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "mutation", + "type": 174, + "typeName": "Box<::CollectionMutation>" + } + ], + "index": 2, + "docs": [ + "Modify [`Collection`](ep_multi_tokens::Collection) with `id` by applying `mutation`", + "", + "# Errors", + "", + "- [`Error::CollectionNotFound`] if `collection_id` does not exist.", + "- [`Error::NoPermission`] if `origin` is not the owner of `collection`." + ] + }, + { + "name": "mutate_token", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "token_id", + "type": 63, + "typeName": "T::TokenId" + }, + { + "name": "mutation", + "type": 183, + "typeName": "Box<::TokenMutation>" + } + ], + "index": 3, + "docs": [ + "Modify [`Token`](ep_multi_tokens::Token) with `token_id` from", + "[`Collection`](ep_multi_tokens::Collection) with `collection_id` by applying `mutation`", + "", + "# Errors", + "", + "- [`Error::CurrencyIncompatibleWithCollectionRoyalty`] if token has already been", + " assigned a royalty", + "- [`Error::NoPermission`] if not the collection owner", + "- [`Error::TokenNotFound`] if Token does not exist", + "- [`Error::ConflictingLocation`] if the new location is already occupied" + ] + }, + { + "name": "mint", + "fields": [ + { + "name": "recipient", + "type": 309, + "typeName": "::Source" + }, + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "params", + "type": 520, + "typeName": "Box>" + } + ], + "index": 4, + "docs": [ + "`origin` mints to `recipient` for `collection_id` with `params` using the pallet's", + "[`MintPolicy`](traits::CollectionPolicy::Mint).", + "", + "# Errors", + "", + "- [`Error::AmountZero`] if `amount == 0`.", + "- [`Error::CollectionNotFound`] if `Collection` does not exist.", + "- [`Error::TokenNotFound`] if `Token` does not exist.", + "- [`Error::TokenAlreadyExists`] if attempting to create a token that already exists", + "- [`Error::NoPermission`] if `caller` is not allowed to mint the `collection`.", + "- [`Error::TokenMintCapExceeded`] if the mint policy TokenCap does not allow minting", + "- `MaxTokenCountExceeded` if the mint policy max_token_count is exceeded", + "- [`Error::DepositReserveFailed`] if the issuer does not have sufficient balance for", + " token deposit", + "- [`Error::ConflictingLocation`] if the token is foreign and the location is already", + " mapped to another asset in `AssetIdsByLocation`" + ] + }, + { + "name": "burn", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "params", + "type": 524, + "typeName": "BurnParamsOf" + } + ], + "index": 5, + "docs": [ + "Reduces the balance of `owner` by `amount` of `token_id` from `collection_id`.", + "It also updates the total supply of `collection_id`.", + "", + "# Errors", + "- [`Error::CollectionNotFound`] if `collection` does not exist.", + "- [`Error::BalanceLow`] if `owner` account does not has enough amount of any token in", + " `tokens` of `collection`.", + "- [`Error::DepositUnreserveFailed`] if caller does not have enough reserved balance to", + " unreserve", + "- [`Error::DestroyForbiddenByAttributeCount`] if removing token from storage but the", + " attribute count is greater than zero" + ] + }, + { + "name": "transfer", + "fields": [ + { + "name": "recipient", + "type": 309, + "typeName": "::Source" + }, + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "params", + "type": 525, + "typeName": "TransferParamsOf" + } + ], + "index": 6, + "docs": [ + "`operator` transfers to `recipient` for `collection_id` with `params`", + "", + "# Errors", + "", + "- [`Error::AmountZero`] if `amount == 0`.", + "- [`Error::BalanceLow`] if `source` does not own enough amount of `collection`." + ] + }, + { + "name": "freeze", + "fields": [ + { + "name": "info", + "type": 197, + "typeName": "FreezeOf" + } + ], + "index": 7, + "docs": [ + "Freeze collection, token or account" + ] + }, + { + "name": "thaw", + "fields": [ + { + "name": "info", + "type": 197, + "typeName": "FreezeOf" + } + ], + "index": 8, + "docs": [ + "Thaw collection, token or account" + ] + }, + { + "name": "set_attribute", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "token_id", + "type": 77, + "typeName": "Option" + }, + { + "name": "key", + "type": 201, + "typeName": "T::AttributeKey" + }, + { + "name": "value", + "type": 202, + "typeName": "T::AttributeValue" + } + ], + "index": 9, + "docs": [ + "Sets the attribute `key` to `value` for `collection_id`.", + "If `token_id` is [`None`], the attribute is added to the collection. If it is [`Some`],", + "the attribute is added to the token.", + "", + "# Errors", + "- [`Error::InvalidAttributeKey`] if `key.len() == 0`", + "- [`Error::CollectionNotFound`] if `collection_id` does not exist.", + "- [`Error::TokenNotFound`] if `token_id` is `Some` and does not exist.", + "- [`Error::NoPermission`] if `source` account is not the owner of the collection.", + "- [`Error::DepositReserveFailed`] if unable to reserve the deposit for the attribute", + " storage." + ] + }, + { + "name": "remove_attribute", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "token_id", + "type": 77, + "typeName": "Option" + }, + { + "name": "key", + "type": 201, + "typeName": "T::AttributeKey" + } + ], + "index": 10, + "docs": [ + "Removes the `key` attribute from the given `collection_id` or `token_id`.", + "", + "# Errors", + "- [`Error::InvalidAttributeKey`] if `key.len() == 0`", + "- [`Error::CollectionNotFound`] if `collection_id` does not exist.", + "- [`Error::TokenNotFound`] if `token_id` is `Some` and does not exist.", + "- [`Error::NoPermission`] if `caller` is not the owner of the collection.", + "- `Underflow` if an attribute counter underflows" + ] + }, + { + "name": "remove_all_attributes", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "token_id", + "type": 77, + "typeName": "Option" + }, + { + "name": "attribute_count", + "type": 4, + "typeName": "u32" + } + ], + "index": 11, + "docs": [ + "Removes all attributes from the given `collection_id` or `token_id`.", + "", + "# Errors", + "- `InvalidAttributeCount` if `attribute_count` doesn't match the number of attributes", + "- [`Error::CollectionNotFound`] if Collection with `collection_id` does not exist.", + "- [`Error::TokenNotFound`] if Token with `token_id` does not exist.", + "- [`Error::NoPermission`] if `origin` account is not the owner of the Collection or", + " Token", + "- other errors from `remove_attribute`" + ] + }, + { + "name": "batch_transfer", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "recipients", + "type": 526, + "typeName": "TransferRecipientsOf" + } + ], + "index": 12, + "docs": [ + "Transfers the specific amount of tokens of `collection` to `recipients` from `origin`", + "account. A single failure will fail all transfers.", + "", + "# Errors", + "", + "- [`Error::AmountZero`] if `amount == 0`.", + "- [`Error::BalanceLow`] if `source` does not own enough amount of `collection`." + ] + }, + { + "name": "batch_mint", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "recipients", + "type": 529, + "typeName": "MintRecipientsOf" + } + ], + "index": 13, + "docs": [ + "Collection owner mints tokens of `collection_id` to `recipients` consisting of an", + "[`AccountId`](frame_system::Config::AccountId) and [`MintParams`]. A single mint failure", + "will fail all of them in the batch.", + "", + "# Errors", + "- [`Error::AmountZero`] if `amount == 0`.", + "- [`Error::CollectionNotFound`] if `collection` does **not** exist.", + "- [`Error::NoPermission`] if `caller` is not allowed to mint the `collection`.", + "- [`Error::TokenMintCapExceeded`] if the mint policy TokenCap does not allow minting", + "- [`Error::MaxTokenCountExceeded`] if the mint policy max_token_count is exceeded", + "- [`Error::DepositReserveFailed`] if the issuer does not have sufficient balance for", + " token deposit" + ] + }, + { + "name": "batch_set_attribute", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "token_id", + "type": 77, + "typeName": "Option" + }, + { + "name": "attributes", + "type": 511, + "typeName": "AttributesOf" + } + ], + "index": 14, + "docs": [ + "Collection owner sets `attributes` to `collection_id`", + "", + "If `token_id` is [`None`], the attribute is added to the collection. If it is [`Some`],", + "the attribute is added to the token.", + "", + "# Errors", + "", + "- [`Error::InvalidAttributeKey`] if `key.len() == 0`", + "- [`Error::CollectionNotFound`] if `collection_id` does not exist.", + "- [`Error::TokenNotFound`] if `token_id` is `Some` and does not exist.", + "- [`Error::NoPermission`] if `source` account is not the owner of the collection.", + "- [`Error::DepositReserveFailed`] if unable to reserve the deposit for the attribute", + " storage." + ] + }, + { + "name": "approve_collection", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "operator", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "expiration", + "type": 73, + "typeName": "T::Expiration" + } + ], + "index": 15, + "docs": [ + "Approve the `operator` to manage all of `origin`'s tokens belonging to `collection_id`.", + "If an `expiration` is provided, the approval will end when it expires.", + "", + "# Errors", + "", + "- [`Error::CannotApproveSelf`] if `origin == operator`", + "- [`Error::AlreadyExpired`] if `expiration` is earlier than now", + "- [`Error::CollectionAccountNotFound`] if the collection account does not exist", + "- [`Error::MaxApprovalsExceeded`] if approval count has exceeded the maximum" + ] + }, + { + "name": "unapprove_collection", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "operator", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 16, + "docs": [ + "Unapprove the `operator` to manage all of `origin`'s tokens belonging to `collection`", + "", + "# Errors", + "", + "- [`Error::CollectionAccountNotFound`] if the collection account cannot be found" + ] + }, + { + "name": "approve_token", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "token_id", + "type": 63, + "typeName": "T::TokenId" + }, + { + "name": "operator", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "amount", + "type": 63, + "typeName": "T::TokenBalance" + }, + { + "name": "expiration", + "type": 73, + "typeName": "T::Expiration" + }, + { + "name": "current_amount", + "type": 63, + "typeName": "T::TokenBalance" + } + ], + "index": 17, + "docs": [ + "Approve `operator` to transfer up to `amount` of `caller`'s balance for `token_id` of", + "`collection_id`. An `expiration` can be provided. `current_amount` must match the", + "current approved amount.", + "", + "# Errors", + "- [`Error::CannotApproveSelf`] if `origin == operator`", + "- [`Error::CollectionAlreadyApproved`] if `collection_id` is already approved", + "- [`Error::AlreadyExpired`] if `expiration` is earlier than now", + "- [`Error::TokenAccountNotFound`] if the token account does not exist", + "- [`Error::MaxApprovalsExceeded`] if approval count has exceeded the maximum", + "- [`Error::WrongCurrentApprovedAmount`] if `current_amount` does not match the current", + " approval amount" + ] + }, + { + "name": "unapprove_token", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "token_id", + "type": 63, + "typeName": "T::TokenId" + }, + { + "name": "operator", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 18, + "docs": [ + "Unapprove `operator` to transfer `origin`'s `token_id` of `collection_id`", + "", + "# Errors", + "", + "- [`Error::TokenAccountNotFound`] if the token account does not exist" + ] + }, + { + "name": "claim_collections", + "fields": [ + { + "name": "destination", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "ethereum_signature", + "type": 480, + "typeName": "Signature" + }, + { + "name": "ethereum_address", + "type": 244, + "typeName": "EthereumAddress" + } + ], + "index": 32, + "docs": [ + "Transfers ownership of collections to `destination` if the signature matches.", + "", + "The dispatch origin for this call must be _None_.", + "", + "Unsigned Validation:", + "A call to claim is deemed valid if the signature provided matches", + "the expected signed message of:", + "", + "> Ethereum Signed Message:", + "> (configured prefix string)(address)", + "", + "and `address` matches the `destination` account.", + "", + "This will always execute with weight of [`Config::MaxClaimableCollectionsPerAccount`]", + "and it will reimburse weight for collections under that number.", + "", + "### Parameters:", + "- `destination`: The account that will receive ownership of the collections", + "- `ethereum_signature`: The signature of an ethereum signed message matching the format", + " described above.", + "- `ethereum_address` : The Ethereum address from which the message is signed." + ] + }, + { + "name": "claim_tokens", + "fields": [ + { + "name": "destination", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "ethereum_signature", + "type": 480, + "typeName": "Signature" + }, + { + "name": "ethereum_address", + "type": 244, + "typeName": "EthereumAddress" + } + ], + "index": 33, + "docs": [ + "Transfers balances of tokens to `destination` if the signature matches. Mints tokens if", + "needed.", + "", + "The dispatch origin for this call must be _None_.", + "", + "Unsigned Validation:", + "A call to claim is deemed valid if the signature provided matches", + "the expected signed message of:", + "", + "> Ethereum Signed Message:", + "> (configured prefix string)(address)", + "", + "and `address` matches the `destination` account.", + "", + "This will always execute with weight of [`Config::MaxClaimableTokensPerCall`]", + "and it will reimburse weight for tokens under that number.", + "", + "### Parameters:", + "- `destination`: The account that will receive token balances", + "- `ethereum_signature`: The signature of an ethereum signed message matching the format", + " described above.", + "- `ethereum_address` : The Ethereum address from which the message is signed." + ] + }, + { + "name": "force_mutate_collection", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "mutation", + "type": 174, + "typeName": "Box<::CollectionMutation>" + } + ], + "index": 19, + "docs": [ + "Exactly as [`mutate_collection`](Self::mutate_collection), except the origin must be", + "root and the `caller` account should be specified.", + "", + "# Errors", + "", + "Same as [`mutate_collection`](Self::mutate_collection)" + ] + }, + { + "name": "force_transfer", + "fields": [ + { + "name": "source", + "type": 309, + "typeName": "::Source" + }, + { + "name": "destination", + "type": 309, + "typeName": "::Source" + }, + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "params", + "type": 525, + "typeName": "TransferParamsOf" + } + ], + "index": 20, + "docs": [ + "Exactly as [`transfer`](Self::transfer), except the origin must be root and the source", + "account should be specified.", + "", + "# Errors", + "", + "Same as [`transfer`](Self::transfer)" + ] + }, + { + "name": "force_set_collection", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "value", + "type": 204, + "typeName": "Box>>" + } + ], + "index": 21, + "docs": [ + "Set the Collections storage to the given `value`, origin must be root" + ] + }, + { + "name": "force_set_token", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "token_id", + "type": 63, + "typeName": "T::TokenId" + }, + { + "name": "value", + "type": 532, + "typeName": "Option>>" + } + ], + "index": 22, + "docs": [ + "Set the Tokens storage to the given `value`, origin must be root" + ] + }, + { + "name": "force_set_attribute", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "token_id", + "type": 77, + "typeName": "Option" + }, + { + "name": "key", + "type": 201, + "typeName": "T::AttributeKey" + }, + { + "name": "value", + "type": 533, + "typeName": "Option>" + } + ], + "index": 23, + "docs": [ + "Set the Tokens storage to the given `value`, origin must be root" + ] + }, + { + "name": "force_set_collection_account", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "account_id", + "type": 309, + "typeName": "::Source" + }, + { + "name": "value", + "type": 222, + "typeName": "Option>" + } + ], + "index": 24, + "docs": [ + "Set the CollectionAccounts storage to the given `value`, origin must be root" + ] + }, + { + "name": "force_set_token_account", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "token_id", + "type": 63, + "typeName": "T::TokenId" + }, + { + "name": "account_id", + "type": 309, + "typeName": "::Source" + }, + { + "name": "value", + "type": 229, + "typeName": "Option>" + } + ], + "index": 25, + "docs": [ + "Set the TokenAccounts storage to the given `value`, origin must be root" + ] + }, + { + "name": "force_create_collection", + "fields": [ + { + "name": "owner", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "descriptor", + "type": 510, + "typeName": "Box<::CollectionDescriptor>" + } + ], + "index": 26, + "docs": [ + "Creates a new collection from `descriptor` at `collection_id`, origin must be root", + "", + "# Errors", + "- [`Error::DepositReserveFailed`] if the deposit cannot be reserved", + "- [`Error::CollectionIdAlreadyInUse`] if the collection id is already in use" + ] + }, + { + "name": "force_mint", + "fields": [ + { + "name": "caller", + "type": 309, + "typeName": "::Source" + }, + { + "name": "recipient", + "type": 309, + "typeName": "::Source" + }, + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "params", + "type": 520, + "typeName": "Box>" + }, + { + "name": "deposit_backer", + "type": 535, + "typeName": "Option<::Source>" + } + ], + "index": 27, + "docs": [ + "Same as [`mint`](Self::mint), but it is callable by", + "[`Config::ForceOrigin`]." + ] + }, + { + "name": "force_burn", + "fields": [ + { + "name": "caller", + "type": 309, + "typeName": "::Source" + }, + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "params", + "type": 524, + "typeName": "BurnParamsOf" + } + ], + "index": 28, + "docs": [ + "Same as [`burn`](Self::burn), but it is only callable by", + "[`Config::ForceOrigin`]. Executes the burn by `caller`." + ] + }, + { + "name": "force_approve_collection", + "fields": [ + { + "name": "caller", + "type": 309, + "typeName": "::Source" + }, + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "operator", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "expiration", + "type": 73, + "typeName": "T::Expiration" + } + ], + "index": 29, + "docs": [ + "Same as [`approve_collection`](Self::approve_collection), but it is callable by", + "[`Config::ForceOrigin`]." + ] + }, + { + "name": "force_freeze", + "fields": [ + { + "name": "info", + "type": 197, + "typeName": "FreezeOf" + } + ], + "index": 30, + "docs": [ + "Same as [`freeze`](Self::freeze), but it is callable by [`Config::ForceOrigin`]" + ] + }, + { + "name": "force_set_next_collection_id", + "fields": [ + { + "name": "value", + "type": 63, + "typeName": "T::CollectionId" + } + ], + "index": 31, + "docs": [ + "Sets [`NextCollectionId`] to `value`. Only callable by [`Config::ForceOrigin`]." + ] + }, + { + "name": "force_set_ethereum_account", + "fields": [ + { + "name": "address", + "type": 244, + "typeName": "EthereumAddress" + }, + { + "name": "value", + "type": 536, + "typeName": "Option>" + } + ], + "index": 34, + "docs": [ + "Sets [`ClaimableCollectionIds`] to `value`. Only callable by [`Config::ForceOrigin`]." + ] + }, + { + "name": "force_set_ethereum_collection_id", + "fields": [ + { + "name": "ethereum_collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "native_collection_id", + "type": 77, + "typeName": "Option" + } + ], + "index": 35, + "docs": [ + "Sets [`NativeCollectionIds`] to `native_collection_id`. Only callable by", + "[`Config::ForceOrigin`]." + ] + }, + { + "name": "force_set_unmintable_token_ids", + "fields": [ + { + "name": "collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "value", + "type": 538, + "typeName": "Option>" + } + ], + "index": 38, + "docs": [ + "Sets [`UnmintableTokenIds`] to `value`. Only callable by [`Config::ForceOrigin`]." + ] + }, + { + "name": "force_create_ethereum_collection", + "fields": [ + { + "name": "owner", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "native_collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "ethereum_collection_id", + "type": 63, + "typeName": "T::CollectionId" + }, + { + "name": "token_range", + "type": 539, + "typeName": "RangeInclusiveOf" + }, + { + "name": "descriptor", + "type": 510, + "typeName": "Box<::CollectionDescriptor>" + } + ], + "index": 39, + "docs": [ + "Creates a new collection from `descriptor` at `collection_id`, origin must be root", + "It differes from `force_create_collection` since it writes to NativeCollectionId and", + "UnmintableTokenIds", + "", + "# Errors", + "- [`Error::DepositReserveFailed`] if the deposit cannot be reserved", + "- [`Error::CollectionIdAlreadyInUse`] if the collection id is already in use" + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 510, + "type": { + "path": [ + "ep_multi_tokens", + "collection", + "DefaultCollectionDescriptor" + ], + "params": [ + { + "name": "TokenBalance", + "type": 6 + }, + { + "name": "Royalty", + "type": 175 + }, + { + "name": "ExplicitRoyaltyCurrenciesVec", + "type": 176 + }, + { + "name": "Attributes", + "type": 511 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "policy", + "type": 514, + "typeName": "DefaultCollectionPolicyDescriptor" + }, + { + "name": "explicit_royalty_currencies", + "type": 176, + "typeName": "ExplicitRoyaltyCurrenciesVec" + }, + { + "name": "attributes", + "type": 511, + "typeName": "Attributes" + } + ] + } + } + } + }, + { + "id": 511, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 512 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 513, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 512, + "type": { + "path": [ + "ep_multi_tokens", + "batch", + "AttributeKeyValuePair" + ], + "params": [ + { + "name": "Key", + "type": 201 + }, + { + "name": "Value", + "type": 202 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "key", + "type": 201, + "typeName": "Key" + }, + { + "name": "value", + "type": 202, + "typeName": "Value" + } + ] + } + } + } + }, + { + "id": 513, + "type": { + "def": { + "sequence": { + "type": 512 + } + } + } + }, + { + "id": 514, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "DefaultCollectionPolicyDescriptor" + ], + "params": [ + { + "name": "TokenBalance", + "type": 6 + }, + { + "name": "Royalty", + "type": 175 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "mint", + "type": 515, + "typeName": "DefaultMintPolicyDescriptor" + }, + { + "name": "burn", + "type": 516, + "typeName": "DefaultBurnPolicyDescriptor" + }, + { + "name": "transfer", + "type": 517, + "typeName": "DefaultTransferPolicyDescriptor" + }, + { + "name": "attribute", + "type": 518, + "typeName": "DefaultAttributePolicyDescriptor" + }, + { + "name": "market", + "type": 519, + "typeName": "DefaultMarketPolicyDescriptor" + } + ] + } + } + } + }, + { + "id": 515, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "mint", + "DefaultMintPolicyDescriptor" + ], + "params": [ + { + "name": "TokenBalance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "max_token_count", + "type": 208, + "typeName": "Option" + }, + { + "name": "max_token_supply", + "type": 77, + "typeName": "Option" + }, + { + "name": "force_single_mint", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 516, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "burn", + "DefaultBurnPolicyDescriptor" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 517, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "transfer", + "DefaultTransferPolicyDescriptor" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 518, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "attribute", + "DefaultAttributePolicyDescriptor" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 519, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "market", + "DefaultMarketPolicyDescriptor" + ], + "params": [ + { + "name": "Royalty", + "type": 175 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "royalty", + "type": 180, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 520, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "mint", + "DefaultMintParams" + ], + "params": [ + { + "name": "TokenId", + "type": 6 + }, + { + "name": "TokenBalance", + "type": 6 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Royalty", + "type": 175 + }, + { + "name": "Attributes", + "type": 511 + }, + { + "name": "ForeignName", + "type": 186 + }, + { + "name": "ForeignSymbol", + "type": 189 + }, + { + "name": "Location", + "type": 116 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "CreateToken", + "fields": [ + { + "name": "token_id", + "type": 63, + "typeName": "TokenId" + }, + { + "name": "initial_supply", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "sufficiency", + "type": 521, + "typeName": "SufficiencyParam" + }, + { + "name": "cap", + "type": 219, + "typeName": "Option>" + }, + { + "name": "behavior", + "type": 193, + "typeName": "Option>" + }, + { + "name": "listing_forbidden", + "type": 37, + "typeName": "bool" + }, + { + "name": "freeze_state", + "type": 199, + "typeName": "Option" + }, + { + "name": "attributes", + "type": 511, + "typeName": "Attributes" + }, + { + "name": "foreign_params", + "type": 522, + "typeName": "Option>" + } + ], + "index": 0 + }, + { + "name": "Mint", + "fields": [ + { + "name": "token_id", + "type": 63, + "typeName": "TokenId" + }, + { + "name": "amount", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "unit_price", + "type": 77, + "typeName": "Option" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 521, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "mint", + "SufficiencyParam" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "TokenBalance", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Insufficient", + "fields": [ + { + "name": "unit_price", + "type": 77, + "typeName": "Option" + } + ], + "index": 0 + }, + { + "name": "Sufficient", + "fields": [ + { + "name": "minimum_balance", + "type": 6, + "typeName": "TokenBalance" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 522, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 523 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 523 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 523, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "mint", + "ForeignTokenCreationParams" + ], + "params": [ + { + "name": "Name", + "type": 186 + }, + { + "name": "Symbol", + "type": 189 + }, + { + "name": "Location", + "type": 116 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "decimal_count", + "type": 119, + "typeName": "u32" + }, + { + "name": "name", + "type": 186, + "typeName": "Name" + }, + { + "name": "symbol", + "type": 189, + "typeName": "Symbol" + }, + { + "name": "location", + "type": 144, + "typeName": "Option" + }, + { + "name": "units_per_second", + "type": 77, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 524, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "burn", + "DefaultBurnParams" + ], + "params": [ + { + "name": "TokenId", + "type": 6 + }, + { + "name": "TokenBalance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "token_id", + "type": 63, + "typeName": "TokenId" + }, + { + "name": "amount", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "keep_alive", + "type": 37, + "typeName": "bool" + }, + { + "name": "remove_token_storage", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 525, + "type": { + "path": [ + "ep_multi_tokens", + "policy", + "transfer", + "DefaultTransferParams" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "TokenId", + "type": 6 + }, + { + "name": "TokenBalance", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Simple", + "fields": [ + { + "name": "token_id", + "type": 63, + "typeName": "TokenId" + }, + { + "name": "amount", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "keep_alive", + "type": 37, + "typeName": "bool" + } + ], + "index": 0 + }, + { + "name": "Operator", + "fields": [ + { + "name": "token_id", + "type": 63, + "typeName": "TokenId" + }, + { + "name": "source", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "amount", + "type": 63, + "typeName": "TokenBalance" + }, + { + "name": "keep_alive", + "type": 37, + "typeName": "bool" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 526, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 527 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 528, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 527, + "type": { + "path": [ + "ep_multi_tokens", + "batch", + "Recipient" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Params", + "type": 525 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "params", + "type": 525, + "typeName": "Params" + } + ] + } + } + } + }, + { + "id": 528, + "type": { + "def": { + "sequence": { + "type": 527 + } + } + } + }, + { + "id": 529, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 530 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 531, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 530, + "type": { + "path": [ + "ep_multi_tokens", + "batch", + "Recipient" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Params", + "type": 520 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "params", + "type": 520, + "typeName": "Params" + } + ] + } + } + } + }, + { + "id": 531, + "type": { + "def": { + "sequence": { + "type": 530 + } + } + } + }, + { + "id": 532, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 218 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 218 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 533, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 534 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 534 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 534, + "type": { + "path": [ + "ep_multi_tokens", + "attribute", + "Attribute" + ], + "params": [ + { + "name": "AttributeValue", + "type": 202 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "value", + "type": 202, + "typeName": "AttributeValue" + }, + { + "name": "deposit", + "type": 63, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 535, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 309 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 309 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 536, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 537 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 537 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 537, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 6 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 86, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 538, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 539 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 539 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 539, + "type": { + "path": [ + "pallet_multi_tokens", + "features", + "ethereum", + "RangeInclusive" + ], + "params": [ + { + "name": "TokenId", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "start", + "type": 63, + "typeName": "TokenId" + }, + { + "name": "end", + "type": 63, + "typeName": "TokenId" + } + ] + } + } + } + }, + { + "id": 540, + "type": { + "path": [ + "pallet_fuel_tanks", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "create_fuel_tank", + "fields": [ + { + "name": "descriptor", + "type": 541, + "typeName": "FuelTankDescriptorOf" + } + ], + "index": 0, + "docs": [ + "Creates a fuel tank, given a descriptor", + "", + "# Errors", + "", + "- [`Error::FuelTankAlreadyExists`] if `tank_id` already exists", + "- [`Error::DuplicateRuleKinds`] if a rule set has multiple rules of the same kind" + ] + }, + { + "name": "mutate_fuel_tank", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "::Source" + }, + { + "name": "mutation", + "type": 253, + "typeName": "T::TankMutation" + } + ], + "index": 1, + "docs": [ + "Apply `mutation` to fuel tank with `tank_id`.", + "", + "# Errors", + "", + "- [`Error::FuelTankNotFound`] if `tank_id` does not exist.", + "- [`Error::NoPermission`] if `origin` is not the fuel tank owner" + ] + }, + { + "name": "add_account", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "LookupSourceOf" + }, + { + "name": "user_id", + "type": 309, + "typeName": "LookupSourceOf" + } + ], + "index": 2, + "docs": [ + "Adds new account for `user_id` to fuel tank at `tank_id`. An account is", + "required to dispatch calls. A deposit is required, and may be paid by", + "the user or the fuel tank, depending on the settings.", + "", + "### Errors", + "", + "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist", + "- [`Error::NoPermission`] if `origin` does not have permission to add an account", + "- [`Error::AccountAlreadyExists`] if account at `user_id` already exists" + ] + }, + { + "name": "remove_account", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "LookupSourceOf" + }, + { + "name": "user_id", + "type": 309, + "typeName": "LookupSourceOf" + } + ], + "index": 3, + "docs": [ + "Removes account for `user_id` from fuel tank at `tank_id`. Any deposits", + "are returned.", + "", + "### Errors", + "", + "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist", + "- [`Error::NoPermission`] if `origin` does not have permission to add an account", + "- [`Error::AccountNotFound`] if account at `user_id` does not exist" + ] + }, + { + "name": "remove_account_rule_data", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "LookupSourceOf" + }, + { + "name": "user_id", + "type": 309, + "typeName": "LookupSourceOf" + }, + { + "name": "rule_set_id", + "type": 4, + "typeName": "T::RuleSetId" + }, + { + "name": "rule_kind", + "type": 268, + "typeName": "DispatchRuleKind" + } + ], + "index": 4, + "docs": [ + "Remove account rule data if it exists. Only callable by the fuel tank's owner. Requires", + "the fuel tank or the rule set to be frozen.", + "", + "### Errors", + "", + "- [`Error::FuelTankNotFound`] if fuel tank for `tank_id` doesn't exist", + "- [`Error::NoPermission`] if called by non-owner", + "- [`Error::AccountNotFound`] if account does not exist for `user_id`", + "- [`Error::RuleSetNotFound`] if rule set does not exist for `rule_set_id`", + "- [`Error::RequiresFrozenTankOrRuleset`] if tank or rule set is not frozen", + "- [`Error::RuleNotFound`] if rule does not exist for `rule_kind`" + ] + }, + { + "name": "dispatch", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "::Source" + }, + { + "name": "rule_set_id", + "type": 4, + "typeName": "T::RuleSetId" + }, + { + "name": "call", + "type": 292, + "typeName": "Box<::Call>" + }, + { + "name": "settings", + "type": 567, + "typeName": "Option" + } + ], + "index": 5, + "docs": [ + "Dispatch a call using the `tank_id` subject to the rules of `rule_set_id`", + "", + "# Errors", + "- [`Error::FuelTankNotFound`] if `tank_id` does not exist.", + "- [`Error::UsageRestricted`] if caller is not part of ruleset whitelist", + "- [`Error::CallerDoesNotHaveRuleSetTokenBalance`] if caller does not own the tokens to", + " use the ruleset for remaining_fee when `pays_remaining_fee` is true", + "- [`Error::FuelTankOutOfFunds`] if the fuel tank account cannot pay fees" + ] + }, + { + "name": "dispatch_and_touch", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "::Source" + }, + { + "name": "rule_set_id", + "type": 4, + "typeName": "T::RuleSetId" + }, + { + "name": "call", + "type": 292, + "typeName": "Box<::Call>" + }, + { + "name": "settings", + "type": 567, + "typeName": "Option" + } + ], + "index": 6, + "docs": [ + "Same as [dispatch](Self::dispatch), but creates an account for `origin` if it does not", + "exist and is allowed by the fuel tank's `user_account_management` settings.", + "", + "# Errors", + "", + "Returns the same errors as [dispatch](Self::dispatch) and", + "[add_account](Self::add_account)" + ] + }, + { + "name": "schedule_mutate_freeze_state", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "::Source" + }, + { + "name": "rule_set_id", + "type": 73, + "typeName": "Option" + }, + { + "name": "is_frozen", + "type": 37, + "typeName": "bool" + } + ], + "index": 7, + "docs": [ + "Schedule mutating of `is_frozen` state that determines if fuel tank or rule set can be", + "used", + "", + "Additional 1 read and 1 write are added to account for `on_finalize` storage operations", + "", + "# Errors", + "- [`Error::FuelTankNotFound`] if `tank_id` does not exist.", + "- [`Error::NoPermission`] if caller is not a fuel tank owner", + "- [`Error::FreezeQueueFull`] if the queue is full" + ] + }, + { + "name": "insert_rule_set", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "LookupSourceOf" + }, + { + "name": "rule_set_id", + "type": 4, + "typeName": "T::RuleSetId" + }, + { + "name": "rules", + "type": 562, + "typeName": "RuleDescriptorsOf" + } + ], + "index": 8, + "docs": [ + "Insert a new rule set for `tank_id` and `rule_set_id`. It can be a new rule set", + "or it can replace an existing one. If it is replacing a rule set, a rule that is storing", + "data on any accounts cannot be removed. Use [Self::remove_account_rule_data] to remove", + "the data first. If a rule is being replaced, it will be mutated with the new parameters,", + "and it will maintain any persistent data it already has.", + "", + "This is only callable by the fuel tank's owner.", + "### Errors", + "- [`Error::FuelTankNotFound`] if `tank_id` does not exist.", + "- [`Error::NoPermission`] if caller is not the fuel tank owner", + "- [`Error::RequiresFrozenTankOrRuleset`] if tank or rule set is not frozen", + "- [`Error::CannotRemoveRuleThatIsStoringAccountData`] if removing a rule that is storing", + " account data", + "- [`Error::MaxRuleSetsExceeded`] if max number of rule sets was exceeded", + "- [`Error::DuplicateRuleKinds`] if adding a rule set with multiple rules of the same", + " kind" + ] + }, + { + "name": "remove_rule_set", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "LookupSourceOf" + }, + { + "name": "rule_set_id", + "type": 4, + "typeName": "T::RuleSetId" + } + ], + "index": 9, + "docs": [ + "Remove rule set for `tank_id` and `rule_set_id`. A rule that is storing data on", + "any accounts cannot be removed. Use [Self::remove_account_rule_data] to remove the", + "data first. This is only callable by the fuel tank's owner.", + "# Errors", + "", + "- [`Error::FuelTankNotFound`] if `tank_id` does not exist.", + "- [`Error::NoPermission`] if caller is not the fuel tank owner", + "- [`Error::RequiresFrozenTankOrRuleset`] if tank or rule set is not frozen", + "- [`Error::CannotRemoveRuleThatIsStoringAccountData`] if removing a rule that is storing", + " account data" + ] + }, + { + "name": "batch_add_account", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "LookupSourceOf" + }, + { + "name": "user_ids", + "type": 569, + "typeName": "BatchUserAccountsOf" + } + ], + "index": 10, + "docs": [ + "Similar to add_account but takes a list of", + "[`AccountId`](frame_system::Config::AccountId)s to insert into a fuel tank.", + "### Errors", + "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist", + "- [`Error::NoPermission`] if `origin` does not have permission to add an account", + "- [`Error::AccountAlreadyExists`] if account at `user_id` already exists" + ] + }, + { + "name": "batch_remove_account", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "LookupSourceOf" + }, + { + "name": "user_ids", + "type": 569, + "typeName": "BatchUserAccountsOf" + } + ], + "index": 11, + "docs": [ + "Similar to remove_account but takes a list of", + "[`AccountId`](frame_system::Config::AccountId)s to remove from a fuel tank.", + "### Errors", + "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist", + "- [`Error::NoPermission`] if `origin` does not have permission to add an account", + "- [`Error::AccountNotFound`] if account at `user_id` does not exist" + ] + }, + { + "name": "force_set_consumption", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "LookupSourceOf" + }, + { + "name": "user_id", + "type": 535, + "typeName": "Option>" + }, + { + "name": "rule_set_id", + "type": 4, + "typeName": "T::RuleSetId" + }, + { + "name": "consumption", + "type": 269, + "typeName": "ConsumptionOf" + } + ], + "index": 12, + "docs": [ + "Force set the fuel tank consumption", + "If `user_id` is [`Some`], it sets the consumption for that account.", + "If it is [`None`], it sets the consumption on the fuel tank directly.", + "", + "# Errors", + "", + "- [`Error::AccountNotFound`] if `user_id` is `Some` and account does not exist", + "- [`Error::FuelTankNotFound`] if tank_id does not exist", + "- [`Error::NoPermission`] if caller is not ForceOrigin or fuel tank owner", + "- [`Error::InvalidRuleSet`] if `rule_set_id` does not exist", + "- [`Error::MissingRequiredRule`] if `rule_set_id` does not have the required role" + ] + }, + { + "name": "destroy_fuel_tank", + "fields": [ + { + "name": "tank_id", + "type": 309, + "typeName": "LookupSourceOf" + } + ], + "index": 13, + "docs": [ + "Destroy the fuel tank by scheduling the deletion for `on_finalize` to execute", + "Only callable by owner", + "The fuel tank must be frozen", + "Can only be destroyed if all accounts are removed", + "", + "# Errors", + "", + "- [`Error::FuelTankNotFound`] if tank_id does not exist", + "- [`Error::NoPermission`] if caller is not owner", + "- [`Error::DestroyUnfrozenTank`] if tank is not frozen", + "- [`Error::DestroyWithExistingAccounts`] if there are still accounts on the tank" + ] + }, + { + "name": "force_create_fuel_tank", + "fields": [ + { + "name": "owner", + "type": 309, + "typeName": "::Source" + }, + { + "name": "descriptor", + "type": 541, + "typeName": "FuelTankDescriptorOf" + } + ], + "index": 14, + "docs": [ + "Force creates a fuel tank", + "", + "# Errors", + "", + "- [`Error::FuelTankAlreadyExists`] if `tank_id` already exists" + ] + }, + { + "name": "force_batch_add_account", + "fields": [ + { + "name": "owner", + "type": 309, + "typeName": "::Source" + }, + { + "name": "tank_id", + "type": 309, + "typeName": "LookupSourceOf" + }, + { + "name": "user_ids", + "type": 569, + "typeName": "BatchUserAccountsOf" + } + ], + "index": 15, + "docs": [ + "Sets the account storage for give tank_id and account" + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 541, + "type": { + "path": [ + "pallet_fuel_tanks", + "types", + "FuelTankDescriptor" + ], + "params": [ + { + "name": "Name", + "type": 250 + }, + { + "name": "RuleSetDescriptors", + "type": 542 + }, + { + "name": "AccountRuleSetDescriptors", + "type": 260 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "name", + "type": 250, + "typeName": "Name" + }, + { + "name": "user_account_management", + "type": 256, + "typeName": "Option" + }, + { + "name": "rule_sets", + "type": 542, + "typeName": "RuleSetDescriptors" + }, + { + "name": "provides_deposit", + "type": 37, + "typeName": "bool" + }, + { + "name": "account_rules", + "type": 260, + "typeName": "AccountRuleSetDescriptors" + } + ] + } + } + } + }, + { + "id": 542, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 4 + }, + { + "name": "V", + "type": 543 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 564, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 543, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "RuleSetDescriptor" + ], + "params": [ + { + "name": "DispatchRuleDescriptor", + "type": 544 + }, + { + "name": "MaxRules", + "type": 561 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 562, + "typeName": "BoundedVec" + } + ] + } + } + } + }, + { + "id": 544, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "DispatchRuleDescriptor" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "WhitelistedCallers", + "fields": [ + { + "type": 262, + "typeName": "WhitelistedCallersRuleOf" + } + ], + "index": 0 + }, + { + "name": "WhitelistedCollections", + "fields": [ + { + "type": 545, + "typeName": "WhitelistedCollectionsRuleOf" + } + ], + "index": 1 + }, + { + "name": "MaxFuelBurnPerTransaction", + "fields": [ + { + "type": 548, + "typeName": "MaxFuelBurnPerTransactionRuleOf" + } + ], + "index": 2 + }, + { + "name": "UserFuelBudget", + "fields": [ + { + "type": 549, + "typeName": "UserFuelBudgetRuleDescriptorOf" + } + ], + "index": 3 + }, + { + "name": "TankFuelBudget", + "fields": [ + { + "type": 551, + "typeName": "TankFuelBudgetRuleDescriptorOf" + } + ], + "index": 4 + }, + { + "name": "RequireToken", + "fields": [ + { + "type": 266, + "typeName": "RequireTokenRuleOf" + } + ], + "index": 5 + }, + { + "name": "PermittedCalls", + "fields": [ + { + "type": 552, + "typeName": "PermittedCallsRuleOf" + } + ], + "index": 6 + }, + { + "name": "PermittedExtrinsics", + "fields": [ + { + "type": 558, + "typeName": "PermittedExtrinsicsDescriptorOf" + } + ], + "index": 7 + } + ] + } + } + } + }, + { + "id": 545, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "whitelisted_collections", + "WhitelistedCollectionsRule" + ], + "params": [ + { + "name": "CollectionId", + "type": 6 + }, + { + "name": "Max", + "type": 546 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 547, + "typeName": "BoundedBTreeSet" + } + ] + } + } + } + }, + { + "id": 546, + "type": { + "path": [ + "enjin_runtime", + "MaxCollectionIds" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 547, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 6 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 85, + "typeName": "BTreeSet" + } + ] + } + } + } + }, + { + "id": 548, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "max_fuel_burn_per_tx", + "MaxFuelBurnPerTransactionRule" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 549, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "user_fuel_budget", + "UserFuelBudgetRuleDescriptor" + ], + "params": [ + { + "name": "Budget", + "type": 550 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 550, + "typeName": "Budget" + } + ] + } + } + } + }, + { + "id": 550, + "type": { + "path": [ + "pallet_fuel_tanks", + "types", + "Budget" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "amount", + "type": 63, + "typeName": "Balance" + }, + { + "name": "reset_period", + "type": 4, + "typeName": "BlockNumber" + } + ] + } + } + } + }, + { + "id": 551, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "tank_fuel_budget", + "TankFuelBudgetRuleDescriptor" + ], + "params": [ + { + "name": "Budget", + "type": 550 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 550, + "typeName": "Budget" + } + ] + } + } + } + }, + { + "id": 552, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "permitted_calls", + "PermittedCallsRule" + ], + "params": [ + { + "name": "EncodedCall", + "type": 553 + }, + { + "name": "Max", + "type": 554 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 555, + "typeName": "BoundedBTreeSet" + } + ] + } + } + } + }, + { + "id": 553, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 554, + "type": { + "path": [ + "enjin_runtime", + "MaxCallFilters" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 555, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 553 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 556, + "typeName": "BTreeSet" + } + ] + } + } + } + }, + { + "id": 556, + "type": { + "path": [ + "BTreeSet" + ], + "params": [ + { + "name": "T", + "type": 553 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 557 + } + ] + } + } + } + }, + { + "id": 557, + "type": { + "def": { + "sequence": { + "type": 553 + } + } + } + }, + { + "id": 558, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "permitted_extrinsics", + "PermittedExtrinsicsDescriptor" + ], + "params": [ + { + "name": "Call", + "type": 292 + }, + { + "name": "Max", + "type": 559 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 560, + "typeName": "BoundedVec" + } + ] + } + } + } + }, + { + "id": 559, + "type": { + "path": [ + "enjin_runtime", + "MaxPermittedExtrinsicLength" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 560, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 292 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 414, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 561, + "type": { + "path": [ + "enjin_runtime", + "MaxRulesPerSet" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 562, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 544 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 563, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 563, + "type": { + "def": { + "sequence": { + "type": 544 + } + } + } + }, + { + "id": 564, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 4 + }, + { + "name": "V", + "type": 543 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 565 + } + ] + } + } + } + }, + { + "id": 565, + "type": { + "def": { + "sequence": { + "type": 566 + } + } + } + }, + { + "id": 566, + "type": { + "def": { + "tuple": [ + 4, + 543 + ] + } + } + }, + { + "id": 567, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 568 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 568 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 568, + "type": { + "path": [ + "pallet_fuel_tanks", + "types", + "DispatchSettings" + ], + "def": { + "composite": { + "fields": [ + { + "name": "use_none_origin", + "type": 37, + "typeName": "bool" + }, + { + "name": "pays_remaining_fee", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 569, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 309 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 373, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 570, + "type": { + "path": [ + "pallet_extrinsic_pause", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "pause_extrinsic", + "fields": [ + { + "name": "call", + "type": 292, + "typeName": "Box<::Call>" + }, + { + "name": "pause_only_extrinsic", + "type": 37, + "typeName": "bool" + } + ], + "index": 0, + "docs": [ + "Pause execution of extrinsic(s)", + "", + "The values of pallet_name and extrinsic_name are extracted from the `call` parameter.", + "Ex : To pause the multi_tokens pallet, the `call` parameter should be of the type", + "`pallet_multi_tokens::Call` If `pause_only_extrinsic` is true, then only the extrinsic", + "is paused, else the entire pallet is paused.", + "", + "# Errors", + "", + "- [`Error::CannotProcessInput`] if the pallet name or extrinsic name is faulty.", + "- [`Error::CannotPauseSelf`] if the pallet name is the same as the name of this pallet." + ] + }, + { + "name": "resume_extrinsic", + "fields": [ + { + "name": "call", + "type": 292, + "typeName": "Box<::Call>" + }, + { + "name": "resume_only_extrinsic", + "type": 37, + "typeName": "bool" + } + ], + "index": 1, + "docs": [ + "Resume execution of extrinsic(s)", + "", + "The values of pallet_name and extrinsic_name are extracted from the `call` parameter.", + "Ex : To resume the multi_tokens pallet, the `call` parameter should be of the type", + "`pallet_multi_tokens::Call` If `pause_only_extrinsic` is true, then only the extrinsic", + "is resumed, else the entire pallet is resumed.", + "", + "# Errors", + "", + "- [`Error::CannotProcessInput`] if the pallet name or extrinsic name is faulty." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 571, + "type": { + "path": [ + "pallet_marketplace", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "create_listing", + "fields": [ + { + "name": "make_asset_id", + "type": 177, + "typeName": "AssetIdOf" + }, + { + "name": "take_asset_id", + "type": 177, + "typeName": "AssetIdOf" + }, + { + "name": "amount", + "type": 63, + "typeName": "TokenBalanceOf" + }, + { + "name": "price", + "type": 63, + "typeName": "TokenBalanceOf" + }, + { + "name": "salt", + "type": 276, + "typeName": "Salt" + }, + { + "name": "auction_data", + "type": 572, + "typeName": "Option>" + } + ], + "index": 0, + "docs": [ + "Places a sell order. Requires `make_asset_id` or `take_asset_id` to be a currency.", + "The id for the listing is generated by hashing the encoded bytes of the listing.", + "", + "# Parameters", + "", + "- `make_asset_id`: The id of the asset being sold", + "- `take_asset_id`: The id of the asset being requested", + "- `amount`: The number of units being sold", + "- `price`: The requested price for each unit. If it's an auction, this is the minimum", + " bid", + "- `salt`: Can be used to differentiate listings", + "- `auction_data`: Including this makes the listing an auction", + "", + "# Errors", + "", + "- [`Error::InvalidAuctionStart`] if the start is less than the current block +", + " `T::ListingActiveDelay`", + "- [`Error::NoCurrency`] Neither the make or take side is considered a currency", + "- [`Error::ListingForbidden`] if make or take side tokens are not allowed to be listed", + "- [`Error::CurrencyNotAllowedAsRoyalty`] if currency cannot be used as a royalty", + "- [`Error::LowBaseCurrencyBalance`] if base currency balance is too low", + "- [`Error::LowTokenBalance`] token balance is too low for reserve", + "- [`Error::ListingAlreadyExists`] if a listing with the same ID already exists" + ] + }, + { + "name": "cancel_listing", + "fields": [ + { + "name": "listing_id", + "type": 12, + "typeName": "ListingIdOf" + } + ], + "index": 1, + "docs": [ + "Cancels the listing with `listing_id`. Only callable by the seller.", + "", + "# Parameters", + "", + "- `listing_id`: The ID of the listing to cancel", + "", + "# Errors", + "", + "- [`Error::ListingNotFound`] if the listing under `listing_id` does not exist", + "- [`Error::NoPermission`] if the listing seller is not the caller, `origin`" + ] + }, + { + "name": "fill_listing", + "fields": [ + { + "name": "listing_id", + "type": 12, + "typeName": "ListingIdOf" + }, + { + "name": "amount", + "type": 63, + "typeName": "TokenBalanceOf" + } + ], + "index": 2, + "docs": [ + "Fills a fixed price listing. This will execute immediately.", + "# Parameters", + "", + "- `listing_id`: The id for the listing to buy from", + "- `amount`: The number of units purchased", + "", + "# Errors", + "", + "- [`Error::ListingNotFound`] if the listing under `listing_id` does not exist", + "- [`Error::BuyerIsSeller`] if the buyer is the seller of the listing", + "- [`Error::ListingIsWrongType`] if the listing is not under auction", + "- [`Error::InvalidAmount`] if the amount that still needs to be filled is greater than", + " `amount`", + "- [`Error::ListingNotActive`] if the listing has not passed the `ListingActiveDelay` yet", + "- [`Error::TakeValueUnderMinimum`] if the listings `take` value is under the minimum", + " required", + "- [`Error::LowTokenBalance`] if the buyer does not have enough tokens for reserve" + ] + }, + { + "name": "place_bid", + "fields": [ + { + "name": "listing_id", + "type": 12, + "typeName": "ListingIdOf" + }, + { + "name": "price", + "type": 63, + "typeName": "TokenBalanceOf" + } + ], + "index": 3, + "docs": [ + "Places a bid on a listing. The listing must be an auction, and it must be currently", + "active.", + "", + "# Parameters", + "", + "- `listing_id`: The id for the listing to buy from", + "- `price`: The price for a single unit", + "", + "# Errors", + "", + "- [`Error::ListingNotFound`] if listing under `listing_id` does not exist", + "- [`Error::BuyerIsSeller`] if the bidder is the seller of the listing", + "- [`Error::InactiveAuction`] if listing operates outside of specified start and end", + " block", + "- [`Error::InvalidPrice`] if price is less than minimum_price for a bid" + ] + }, + { + "name": "finalize_auction", + "fields": [ + { + "name": "listing_id", + "type": 12, + "typeName": "ListingIdOf" + } + ], + "index": 4, + "docs": [ + "Finalize the auction with id: `listing_id`. This will end the auction and transfer", + "funds. It fails if the auction is not over.", + "", + "# Parameters", + "", + "- `listing_id`: The ID for the listing to finalize", + "", + "# Errors", + "", + "- [`Error::ListingNotFound`] if listing under `listing_id` does not exist", + "- [`Error::ListingIsWrongType`] if listing is not an auction", + "- [`Error::AuctionNotOver`] if the auction has not finished yet", + "- [`Error::TakeValueUnderMinimum`] if the take value is less than the minimum required" + ] + }, + { + "name": "set_protocol_fee", + "fields": [ + { + "name": "protocol_fee", + "type": 42, + "typeName": "Perbill" + } + ], + "index": 5, + "docs": [ + "Change the protocol fee to `protocol_fee`. Fails if `origin` is invalid.", + "", + "#Parameters", + "", + "- `protocol_fee`: Percentage of fee to set" + ] + }, + { + "name": "force_create_listing", + "fields": [ + { + "name": "seller", + "type": 309, + "typeName": "::Source" + }, + { + "name": "make_asset_id", + "type": 177, + "typeName": "AssetIdOf" + }, + { + "name": "take_asset_id", + "type": 177, + "typeName": "AssetIdOf" + }, + { + "name": "amount", + "type": 63, + "typeName": "TokenBalanceOf" + }, + { + "name": "price", + "type": 63, + "typeName": "TokenBalanceOf" + }, + { + "name": "salt", + "type": 276, + "typeName": "Salt" + }, + { + "name": "auction_data", + "type": 572, + "typeName": "Option>" + }, + { + "name": "deposit_backer", + "type": 535, + "typeName": "Option<::Source>" + } + ], + "index": 6, + "docs": [ + "Force create a listing. This is only callable by the [`Config::ForceOrigin`].", + "", + "# Parameters", + "", + "Mostly the same as [`Self::create_listing`], but `deposit_backer` can be included to pay", + "a deposit if `seller` does not have enough.", + "", + "# Errors", + "", + "Same as [`Self::create_listing`], except `BadOrigin` if the origin is not", + "[`Config::ForceOrigin`]" + ] + }, + { + "name": "force_place_bid", + "fields": [ + { + "name": "bidder", + "type": 309, + "typeName": "::Source" + }, + { + "name": "listing_id", + "type": 12, + "typeName": "ListingIdOf" + }, + { + "name": "price", + "type": 63, + "typeName": "TokenBalanceOf" + }, + { + "name": "funds_backer", + "type": 535, + "typeName": "Option<::Source>" + } + ], + "index": 7, + "docs": [ + "Same as [create_listing](Self::place_bid), but allows specifying the `bidder` and can", + "place a bid in an inactive auction. Only callable by [`Config::ForceOrigin`]. If", + "`funds_backer` is `Some`, it will transfer balance if `bidder` does not have enough." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 572, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 279 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 279 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 573, + "type": { + "path": [ + "pallet_beefy", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "report_equivocation", + "fields": [ + { + "name": "equivocation_proof", + "type": 574, + "typeName": "Box, T::BeefyId,::Signature,>,>" + }, + { + "name": "key_owner_proof", + "type": 304, + "typeName": "T::KeyOwnerProof" + } + ], + "index": 0, + "docs": [ + "Report voter equivocation/misbehavior. This method will verify the", + "equivocation proof and validate the given key ownership proof", + "against the extracted offender. If both are valid, the offence", + "will be reported." + ] + }, + { + "name": "report_equivocation_unsigned", + "fields": [ + { + "name": "equivocation_proof", + "type": 574, + "typeName": "Box, T::BeefyId,::Signature,>,>" + }, + { + "name": "key_owner_proof", + "type": 304, + "typeName": "T::KeyOwnerProof" + } + ], + "index": 1, + "docs": [ + "Report voter equivocation/misbehavior. This method will verify the", + "equivocation proof and validate the given key ownership proof", + "against the extracted offender. If both are valid, the offence", + "will be reported.", + "", + "This extrinsic must be called unsigned and it is expected that only", + "block authors will call it (validated in `ValidateUnsigned`), as such", + "if the block author is defined it will be defined as the equivocation", + "reporter." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 574, + "type": { + "path": [ + "sp_consensus_beefy", + "EquivocationProof" + ], + "params": [ + { + "name": "Number", + "type": 4 + }, + { + "name": "Id", + "type": 575 + }, + { + "name": "Signature", + "type": 576 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "first", + "type": 577, + "typeName": "VoteMessage" + }, + { + "name": "second", + "type": 577, + "typeName": "VoteMessage" + } + ] + } + } + } + }, + { + "id": 575, + "type": { + "path": [ + "sp_consensus_beefy", + "crypto", + "Public" + ], + "def": { + "composite": { + "fields": [ + { + "type": 476, + "typeName": "ecdsa::Public" + } + ] + } + } + } + }, + { + "id": 576, + "type": { + "path": [ + "sp_consensus_beefy", + "crypto", + "Signature" + ], + "def": { + "composite": { + "fields": [ + { + "type": 480, + "typeName": "ecdsa::Signature" + } + ] + } + } + } + }, + { + "id": 577, + "type": { + "path": [ + "sp_consensus_beefy", + "VoteMessage" + ], + "params": [ + { + "name": "Number", + "type": 4 + }, + { + "name": "Id", + "type": 575 + }, + { + "name": "Signature", + "type": 576 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "commitment", + "type": 578, + "typeName": "Commitment" + }, + { + "name": "id", + "type": 575, + "typeName": "Id" + }, + { + "name": "signature", + "type": 576, + "typeName": "Signature" + } + ] + } + } + } + }, + { + "id": 578, + "type": { + "path": [ + "sp_consensus_beefy", + "commitment", + "Commitment" + ], + "params": [ + { + "name": "TBlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "payload", + "type": 579, + "typeName": "Payload" + }, + { + "name": "block_number", + "type": 4, + "typeName": "TBlockNumber" + }, + { + "name": "validator_set_id", + "type": 11, + "typeName": "ValidatorSetId" + } + ] + } + } + } + }, + { + "id": 579, + "type": { + "path": [ + "sp_consensus_beefy", + "payload", + "Payload" + ], + "def": { + "composite": { + "fields": [ + { + "type": 580, + "typeName": "Vec<(BeefyPayloadId, Vec)>" + } + ] + } + } + } + }, + { + "id": 580, + "type": { + "def": { + "sequence": { + "type": 581 + } + } + } + }, + { + "id": 581, + "type": { + "def": { + "tuple": [ + 582, + 13 + ] + } + } + }, + { + "id": 582, + "type": { + "def": { + "array": { + "len": 2, + "type": 2 + } + } + } + }, + { + "id": 583, + "type": { + "path": [ + "pallet_scheduler", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "schedule", + "fields": [ + { + "name": "when", + "type": 4, + "typeName": "T::BlockNumber" + }, + { + "name": "maybe_periodic", + "type": 584, + "typeName": "Option>" + }, + { + "name": "priority", + "type": 2, + "typeName": "schedule::Priority" + }, + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + } + ], + "index": 0, + "docs": [ + "Anonymously schedule a task." + ] + }, + { + "name": "cancel", + "fields": [ + { + "name": "when", + "type": 4, + "typeName": "T::BlockNumber" + }, + { + "name": "index", + "type": 4, + "typeName": "u32" + } + ], + "index": 1, + "docs": [ + "Cancel an anonymously scheduled task." + ] + }, + { + "name": "schedule_named", + "fields": [ + { + "name": "id", + "type": 1, + "typeName": "TaskName" + }, + { + "name": "when", + "type": 4, + "typeName": "T::BlockNumber" + }, + { + "name": "maybe_periodic", + "type": 584, + "typeName": "Option>" + }, + { + "name": "priority", + "type": 2, + "typeName": "schedule::Priority" + }, + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + } + ], + "index": 2, + "docs": [ + "Schedule a named task." + ] + }, + { + "name": "cancel_named", + "fields": [ + { + "name": "id", + "type": 1, + "typeName": "TaskName" + } + ], + "index": 3, + "docs": [ + "Cancel a named scheduled task." + ] + }, + { + "name": "schedule_after", + "fields": [ + { + "name": "after", + "type": 4, + "typeName": "T::BlockNumber" + }, + { + "name": "maybe_periodic", + "type": 584, + "typeName": "Option>" + }, + { + "name": "priority", + "type": 2, + "typeName": "schedule::Priority" + }, + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + } + ], + "index": 4, + "docs": [ + "Anonymously schedule a task after a delay." + ] + }, + { + "name": "schedule_named_after", + "fields": [ + { + "name": "id", + "type": 1, + "typeName": "TaskName" + }, + { + "name": "after", + "type": 4, + "typeName": "T::BlockNumber" + }, + { + "name": "maybe_periodic", + "type": 584, + "typeName": "Option>" + }, + { + "name": "priority", + "type": 2, + "typeName": "schedule::Priority" + }, + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + } + ], + "index": 5, + "docs": [ + "Schedule a named task after a delay." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 584, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 285 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 285 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 585, + "type": { + "path": [ + "pallet_preimage", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "note_preimage", + "fields": [ + { + "name": "bytes", + "type": 13, + "typeName": "Vec" + } + ], + "index": 0, + "docs": [ + "Register a preimage on-chain.", + "", + "If the preimage was previously requested, no fees or deposits are taken for providing", + "the preimage. Otherwise, a deposit is taken proportional to the size of the preimage." + ] + }, + { + "name": "unnote_preimage", + "fields": [ + { + "name": "hash", + "type": 12, + "typeName": "T::Hash" + } + ], + "index": 1, + "docs": [ + "Clear an unrequested preimage from the runtime storage.", + "", + "If `len` is provided, then it will be a much cheaper operation.", + "", + "- `hash`: The hash of the preimage to be removed from the store.", + "- `len`: The length of the preimage of `hash`." + ] + }, + { + "name": "request_preimage", + "fields": [ + { + "name": "hash", + "type": 12, + "typeName": "T::Hash" + } + ], + "index": 2, + "docs": [ + "Request a preimage be uploaded to the chain without paying any fees or deposits.", + "", + "If the preimage requests has already been provided on-chain, we unreserve any deposit", + "a user may have paid, and take the control of the preimage out of their hands." + ] + }, + { + "name": "unrequest_preimage", + "fields": [ + { + "name": "hash", + "type": 12, + "typeName": "T::Hash" + } + ], + "index": 3, + "docs": [ + "Clear a previously made request for a preimage.", + "", + "NOTE: THIS MUST NOT BE CALLED ON `hash` MORE TIMES THAN `request_preimage`." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 586, + "type": { + "path": [ + "pallet_conviction_voting", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "vote", + "fields": [ + { + "name": "poll_index", + "type": 119, + "typeName": "PollIndexOf" + }, + { + "name": "vote", + "type": 587, + "typeName": "AccountVote>" + } + ], + "index": 0, + "docs": [ + "Vote in a poll. If `vote.is_aye()`, the vote is to enact the proposal;", + "otherwise it is a vote to keep the status quo.", + "", + "The dispatch origin of this call must be _Signed_.", + "", + "- `poll_index`: The index of the poll to vote for.", + "- `vote`: The vote configuration.", + "", + "Weight: `O(R)` where R is the number of polls the voter has voted on." + ] + }, + { + "name": "delegate", + "fields": [ + { + "name": "class", + "type": 290, + "typeName": "ClassOf" + }, + { + "name": "to", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "conviction", + "type": 589, + "typeName": "Conviction" + }, + { + "name": "balance", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 1, + "docs": [ + "Delegate the voting power (with some given conviction) of the sending account for a", + "particular class of polls.", + "", + "The balance delegated is locked for as long as it's delegated, and thereafter for the", + "time appropriate for the conviction's lock period.", + "", + "The dispatch origin of this call must be _Signed_, and the signing account must either:", + " - be delegating already; or", + " - have no voting activity (if there is, then it will need to be removed/consolidated", + " through `reap_vote` or `unvote`).", + "", + "- `to`: The account whose voting the `target` account's voting power will follow.", + "- `class`: The class of polls to delegate. To delegate multiple classes, multiple calls", + " to this function are required.", + "- `conviction`: The conviction that will be attached to the delegated votes. When the", + " account is undelegated, the funds will be locked for the corresponding period.", + "- `balance`: The amount of the account's balance to be used in delegating. This must not", + " be more than the account's current balance.", + "", + "Emits `Delegated`.", + "", + "Weight: `O(R)` where R is the number of polls the voter delegating to has", + " voted on. Weight is initially charged as if maximum votes, but is refunded later." + ] + }, + { + "name": "undelegate", + "fields": [ + { + "name": "class", + "type": 290, + "typeName": "ClassOf" + } + ], + "index": 2, + "docs": [ + "Undelegate the voting power of the sending account for a particular class of polls.", + "", + "Tokens may be unlocked following once an amount of time consistent with the lock period", + "of the conviction with which the delegation was issued has passed.", + "", + "The dispatch origin of this call must be _Signed_ and the signing account must be", + "currently delegating.", + "", + "- `class`: The class of polls to remove the delegation from.", + "", + "Emits `Undelegated`.", + "", + "Weight: `O(R)` where R is the number of polls the voter delegating to has", + " voted on. Weight is initially charged as if maximum votes, but is refunded later." + ] + }, + { + "name": "unlock", + "fields": [ + { + "name": "class", + "type": 290, + "typeName": "ClassOf" + }, + { + "name": "target", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 3, + "docs": [ + "Remove the lock caused by prior voting/delegating which has expired within a particular", + "class.", + "", + "The dispatch origin of this call must be _Signed_.", + "", + "- `class`: The class of polls to unlock.", + "- `target`: The account to remove the lock on.", + "", + "Weight: `O(R)` with R number of vote of target." + ] + }, + { + "name": "remove_vote", + "fields": [ + { + "name": "class", + "type": 590, + "typeName": "Option>" + }, + { + "name": "index", + "type": 4, + "typeName": "PollIndexOf" + } + ], + "index": 4, + "docs": [ + "Remove a vote for a poll.", + "", + "If:", + "- the poll was cancelled, or", + "- the poll is ongoing, or", + "- the poll has ended such that", + " - the vote of the account was in opposition to the result; or", + " - there was no conviction to the account's vote; or", + " - the account made a split vote", + "...then the vote is removed cleanly and a following call to `unlock` may result in more", + "funds being available.", + "", + "If, however, the poll has ended and:", + "- it finished corresponding to the vote of the account, and", + "- the account made a standard vote with conviction, and", + "- the lock period of the conviction is not over", + "...then the lock will be aggregated into the overall account's lock, which may involve", + "*overlocking* (where the two locks are combined into a single lock that is the maximum", + "of both the amount locked and the time is it locked for).", + "", + "The dispatch origin of this call must be _Signed_, and the signer must have a vote", + "registered for poll `index`.", + "", + "- `index`: The index of poll of the vote to be removed.", + "- `class`: Optional parameter, if given it indicates the class of the poll. For polls", + " which have finished or are cancelled, this must be `Some`.", + "", + "Weight: `O(R + log R)` where R is the number of polls that `target` has voted on.", + " Weight is calculated for the maximum number of vote." + ] + }, + { + "name": "remove_other_vote", + "fields": [ + { + "name": "target", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "class", + "type": 290, + "typeName": "ClassOf" + }, + { + "name": "index", + "type": 4, + "typeName": "PollIndexOf" + } + ], + "index": 5, + "docs": [ + "Remove a vote for a poll.", + "", + "If the `target` is equal to the signer, then this function is exactly equivalent to", + "`remove_vote`. If not equal to the signer, then the vote must have expired,", + "either because the poll was cancelled, because the voter lost the poll or", + "because the conviction period is over.", + "", + "The dispatch origin of this call must be _Signed_.", + "", + "- `target`: The account of the vote to be removed; this account must have voted for poll", + " `index`.", + "- `index`: The index of poll of the vote to be removed.", + "- `class`: The class of the poll.", + "", + "Weight: `O(R + log R)` where R is the number of polls that `target` has voted on.", + " Weight is calculated for the maximum number of vote." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 587, + "type": { + "path": [ + "pallet_conviction_voting", + "vote", + "AccountVote" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Standard", + "fields": [ + { + "name": "vote", + "type": 588, + "typeName": "Vote" + }, + { + "name": "balance", + "type": 6, + "typeName": "Balance" + } + ], + "index": 0 + }, + { + "name": "Split", + "fields": [ + { + "name": "aye", + "type": 6, + "typeName": "Balance" + }, + { + "name": "nay", + "type": 6, + "typeName": "Balance" + } + ], + "index": 1 + }, + { + "name": "SplitAbstain", + "fields": [ + { + "name": "aye", + "type": 6, + "typeName": "Balance" + }, + { + "name": "nay", + "type": 6, + "typeName": "Balance" + }, + { + "name": "abstain", + "type": 6, + "typeName": "Balance" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 588, + "type": { + "path": [ + "pallet_conviction_voting", + "vote", + "Vote" + ], + "def": { + "composite": { + "fields": [ + { + "type": 2 + } + ] + } + } + } + }, + { + "id": 589, + "type": { + "path": [ + "pallet_conviction_voting", + "conviction", + "Conviction" + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Locked1x", + "index": 1 + }, + { + "name": "Locked2x", + "index": 2 + }, + { + "name": "Locked3x", + "index": 3 + }, + { + "name": "Locked4x", + "index": 4 + }, + { + "name": "Locked5x", + "index": 5 + }, + { + "name": "Locked6x", + "index": 6 + } + ] + } + } + } + }, + { + "id": 590, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 290 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 290 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 591, + "type": { + "path": [ + "pallet_referenda", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "submit", + "fields": [ + { + "name": "proposal_origin", + "type": 415, + "typeName": "Box>" + }, + { + "name": "proposal", + "type": 291, + "typeName": "BoundedCallOf" + }, + { + "name": "enactment_moment", + "type": 592, + "typeName": "DispatchTime" + } + ], + "index": 0, + "docs": [ + "Propose a referendum on a privileged action.", + "", + "- `origin`: must be `SubmitOrigin` and the account must have `SubmissionDeposit` funds", + " available.", + "- `proposal_origin`: The origin from which the proposal should be executed.", + "- `proposal`: The proposal.", + "- `enactment_moment`: The moment that the proposal should be enacted.", + "", + "Emits `Submitted`." + ] + }, + { + "name": "place_decision_deposit", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 1, + "docs": [ + "Post the Decision Deposit for a referendum.", + "", + "- `origin`: must be `Signed` and the account must have funds available for the", + " referendum's track's Decision Deposit.", + "- `index`: The index of the submitted referendum whose Decision Deposit is yet to be", + " posted.", + "", + "Emits `DecisionDepositPlaced`." + ] + }, + { + "name": "refund_decision_deposit", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 2, + "docs": [ + "Refund the Decision Deposit for a closed referendum back to the depositor.", + "", + "- `origin`: must be `Signed` or `Root`.", + "- `index`: The index of a closed referendum whose Decision Deposit has not yet been", + " refunded.", + "", + "Emits `DecisionDepositRefunded`." + ] + }, + { + "name": "cancel", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 3, + "docs": [ + "Cancel an ongoing referendum.", + "", + "- `origin`: must be the `CancelOrigin`.", + "- `index`: The index of the referendum to be cancelled.", + "", + "Emits `Cancelled`." + ] + }, + { + "name": "kill", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 4, + "docs": [ + "Cancel an ongoing referendum and slash the deposits.", + "", + "- `origin`: must be the `KillOrigin`.", + "- `index`: The index of the referendum to be cancelled.", + "", + "Emits `Killed` and `DepositSlashed`." + ] + }, + { + "name": "nudge_referendum", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 5, + "docs": [ + "Advance a referendum onto its next logical state. Only used internally.", + "", + "- `origin`: must be `Root`.", + "- `index`: the referendum to be advanced." + ] + }, + { + "name": "one_fewer_deciding", + "fields": [ + { + "name": "track", + "type": 290, + "typeName": "TrackIdOf" + } + ], + "index": 6, + "docs": [ + "Advance a track onto its next logical state. Only used internally.", + "", + "- `origin`: must be `Root`.", + "- `track`: the track to be advanced.", + "", + "Action item for when there is now one fewer referendum in the deciding phase and the", + "`DecidingCount` is not yet updated. This means that we should either:", + "- begin deciding another referendum (and leave `DecidingCount` alone); or", + "- decrement `DecidingCount`." + ] + }, + { + "name": "refund_submission_deposit", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 7, + "docs": [ + "Refund the Submission Deposit for a closed referendum back to the depositor.", + "", + "- `origin`: must be `Signed` or `Root`.", + "- `index`: The index of a closed referendum whose Submission Deposit has not yet been", + " refunded.", + "", + "Emits `SubmissionDepositRefunded`." + ] + }, + { + "name": "set_metadata", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + }, + { + "name": "maybe_hash", + "type": 593, + "typeName": "Option" + } + ], + "index": 8, + "docs": [ + "Set or clear metadata of a referendum.", + "", + "Parameters:", + "- `origin`: Must be `Signed` by a creator of a referendum or by anyone to clear a", + " metadata of a finished referendum.", + "- `index`: The index of a referendum to set or clear metadata for.", + "- `maybe_hash`: The hash of an on-chain stored preimage. `None` to clear a metadata." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 592, + "type": { + "path": [ + "frame_support", + "traits", + "schedule", + "DispatchTime" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "At", + "fields": [ + { + "type": 4, + "typeName": "BlockNumber" + } + ], + "index": 0 + }, + { + "name": "After", + "fields": [ + { + "type": 4, + "typeName": "BlockNumber" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 593, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 12 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 12 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 594, + "type": { + "path": [ + "pallet_whitelist", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "whitelist_call", + "fields": [ + { + "name": "call_hash", + "type": 12, + "typeName": "PreimageHash" + } + ], + "index": 0 + }, + { + "name": "remove_whitelisted_call", + "fields": [ + { + "name": "call_hash", + "type": 12, + "typeName": "PreimageHash" + } + ], + "index": 1 + }, + { + "name": "dispatch_whitelisted_call", + "fields": [ + { + "name": "call_hash", + "type": 12, + "typeName": "PreimageHash" + }, + { + "name": "call_encoded_len", + "type": 4, + "typeName": "u32" + }, + { + "name": "call_weight_witness", + "type": 9, + "typeName": "Weight" + } + ], + "index": 2 + }, + { + "name": "dispatch_whitelisted_call_with_preimage", + "fields": [ + { + "name": "call", + "type": 292, + "typeName": "Box<::RuntimeCall>" + } + ], + "index": 3 + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 595, + "type": { + "path": [ + "pallet_ranked_collective", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "add_member", + "fields": [ + { + "name": "who", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 0, + "docs": [ + "Introduce a new member.", + "", + "- `origin`: Must be the `AdminOrigin`.", + "- `who`: Account of non-member which will become a member.", + "- `rank`: The rank to give the new member.", + "", + "Weight: `O(1)`" + ] + }, + { + "name": "promote_member", + "fields": [ + { + "name": "who", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 1, + "docs": [ + "Increment the rank of an existing member by one.", + "", + "- `origin`: Must be the `AdminOrigin`.", + "- `who`: Account of existing member.", + "", + "Weight: `O(1)`" + ] + }, + { + "name": "demote_member", + "fields": [ + { + "name": "who", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 2, + "docs": [ + "Decrement the rank of an existing member by one. If the member is already at rank zero,", + "then they are removed entirely.", + "", + "- `origin`: Must be the `AdminOrigin`.", + "- `who`: Account of existing member of rank greater than zero.", + "", + "Weight: `O(1)`, less if the member's index is highest in its rank." + ] + }, + { + "name": "remove_member", + "fields": [ + { + "name": "who", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "min_rank", + "type": 290, + "typeName": "Rank" + } + ], + "index": 3, + "docs": [ + "Remove the member entirely.", + "", + "- `origin`: Must be the `AdminOrigin`.", + "- `who`: Account of existing member of rank greater than zero.", + "- `min_rank`: The rank of the member or greater.", + "", + "Weight: `O(min_rank)`." + ] + }, + { + "name": "vote", + "fields": [ + { + "name": "poll", + "type": 4, + "typeName": "PollIndexOf" + }, + { + "name": "aye", + "type": 37, + "typeName": "bool" + } + ], + "index": 4, + "docs": [ + "Add an aye or nay vote for the sender to the given proposal.", + "", + "- `origin`: Must be `Signed` by a member account.", + "- `poll`: Index of a poll which is ongoing.", + "- `aye`: `true` if the vote is to approve the proposal, `false` otherwise.", + "", + "Transaction fees are be waived if the member is voting on any particular proposal", + "for the first time and the call is successful. Subsequent vote changes will charge a", + "fee.", + "", + "Weight: `O(1)`, less if there was no previous vote on the poll by the member." + ] + }, + { + "name": "cleanup_poll", + "fields": [ + { + "name": "poll_index", + "type": 4, + "typeName": "PollIndexOf" + }, + { + "name": "max", + "type": 4, + "typeName": "u32" + } + ], + "index": 5, + "docs": [ + "Remove votes from the given poll. It must have ended.", + "", + "- `origin`: Must be `Signed` by any account.", + "- `poll_index`: Index of a poll which is completed and for which votes continue to", + " exist.", + "- `max`: Maximum number of vote items from remove in this call.", + "", + "Transaction fees are waived if the operation is successful.", + "", + "Weight `O(max)` (less if there are fewer items to remove than `max`)." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 596, + "type": { + "path": [ + "pallet_referenda", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "submit", + "fields": [ + { + "name": "proposal_origin", + "type": 415, + "typeName": "Box>" + }, + { + "name": "proposal", + "type": 291, + "typeName": "BoundedCallOf" + }, + { + "name": "enactment_moment", + "type": 592, + "typeName": "DispatchTime" + } + ], + "index": 0, + "docs": [ + "Propose a referendum on a privileged action.", + "", + "- `origin`: must be `SubmitOrigin` and the account must have `SubmissionDeposit` funds", + " available.", + "- `proposal_origin`: The origin from which the proposal should be executed.", + "- `proposal`: The proposal.", + "- `enactment_moment`: The moment that the proposal should be enacted.", + "", + "Emits `Submitted`." + ] + }, + { + "name": "place_decision_deposit", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 1, + "docs": [ + "Post the Decision Deposit for a referendum.", + "", + "- `origin`: must be `Signed` and the account must have funds available for the", + " referendum's track's Decision Deposit.", + "- `index`: The index of the submitted referendum whose Decision Deposit is yet to be", + " posted.", + "", + "Emits `DecisionDepositPlaced`." + ] + }, + { + "name": "refund_decision_deposit", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 2, + "docs": [ + "Refund the Decision Deposit for a closed referendum back to the depositor.", + "", + "- `origin`: must be `Signed` or `Root`.", + "- `index`: The index of a closed referendum whose Decision Deposit has not yet been", + " refunded.", + "", + "Emits `DecisionDepositRefunded`." + ] + }, + { + "name": "cancel", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 3, + "docs": [ + "Cancel an ongoing referendum.", + "", + "- `origin`: must be the `CancelOrigin`.", + "- `index`: The index of the referendum to be cancelled.", + "", + "Emits `Cancelled`." + ] + }, + { + "name": "kill", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 4, + "docs": [ + "Cancel an ongoing referendum and slash the deposits.", + "", + "- `origin`: must be the `KillOrigin`.", + "- `index`: The index of the referendum to be cancelled.", + "", + "Emits `Killed` and `DepositSlashed`." + ] + }, + { + "name": "nudge_referendum", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 5, + "docs": [ + "Advance a referendum onto its next logical state. Only used internally.", + "", + "- `origin`: must be `Root`.", + "- `index`: the referendum to be advanced." + ] + }, + { + "name": "one_fewer_deciding", + "fields": [ + { + "name": "track", + "type": 290, + "typeName": "TrackIdOf" + } + ], + "index": 6, + "docs": [ + "Advance a track onto its next logical state. Only used internally.", + "", + "- `origin`: must be `Root`.", + "- `track`: the track to be advanced.", + "", + "Action item for when there is now one fewer referendum in the deciding phase and the", + "`DecidingCount` is not yet updated. This means that we should either:", + "- begin deciding another referendum (and leave `DecidingCount` alone); or", + "- decrement `DecidingCount`." + ] + }, + { + "name": "refund_submission_deposit", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + } + ], + "index": 7, + "docs": [ + "Refund the Submission Deposit for a closed referendum back to the depositor.", + "", + "- `origin`: must be `Signed` or `Root`.", + "- `index`: The index of a closed referendum whose Submission Deposit has not yet been", + " refunded.", + "", + "Emits `SubmissionDepositRefunded`." + ] + }, + { + "name": "set_metadata", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex" + }, + { + "name": "maybe_hash", + "type": 593, + "typeName": "Option" + } + ], + "index": 8, + "docs": [ + "Set or clear metadata of a referendum.", + "", + "Parameters:", + "- `origin`: Must be `Signed` by a creator of a referendum or by anyone to clear a", + " metadata of a finished referendum.", + "- `index`: The index of a referendum to set or clear metadata for.", + "- `maybe_hash`: The hash of an on-chain stored preimage. `None` to clear a metadata." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 597, + "type": { + "path": [ + "pallet_identity", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "add_registrar", + "fields": [ + { + "name": "account", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 0, + "docs": [ + "Add a registrar to the system.", + "", + "The dispatch origin for this call must be `T::RegistrarOrigin`.", + "", + "- `account`: the account of the registrar.", + "", + "Emits `RegistrarAdded` if successful.", + "", + "## Complexity", + "- `O(R)` where `R` registrar-count (governance-bounded and code-bounded)." + ] + }, + { + "name": "set_identity", + "fields": [ + { + "name": "info", + "type": 598, + "typeName": "Box>" + } + ], + "index": 1, + "docs": [ + "Set an account's identity information and reserve the appropriate deposit.", + "", + "If the account already has identity information, the deposit is taken as part payment", + "for the new deposit.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "- `info`: The identity information.", + "", + "Emits `IdentitySet` if successful.", + "", + "## Complexity", + "- `O(X + X' + R)`", + " - where `X` additional-field-count (deposit-bounded and code-bounded)", + " - where `R` judgements-count (registrar-count-bounded)" + ] + }, + { + "name": "set_subs", + "fields": [ + { + "name": "subs", + "type": 631, + "typeName": "Vec<(T::AccountId, Data)>" + } + ], + "index": 2, + "docs": [ + "Set the sub-accounts of the sender.", + "", + "Payment: Any aggregate balance reserved by previous `set_subs` calls will be returned", + "and an amount `SubAccountDeposit` will be reserved for each item in `subs`.", + "", + "The dispatch origin for this call must be _Signed_ and the sender must have a registered", + "identity.", + "", + "- `subs`: The identity's (new) sub-accounts.", + "", + "## Complexity", + "- `O(P + S)`", + " - where `P` old-subs-count (hard- and deposit-bounded).", + " - where `S` subs-count (hard- and deposit-bounded)." + ] + }, + { + "name": "clear_identity", + "index": 3, + "docs": [ + "Clear an account's identity info and all sub-accounts and return all deposits.", + "", + "Payment: All reserved balances on the account are returned.", + "", + "The dispatch origin for this call must be _Signed_ and the sender must have a registered", + "identity.", + "", + "Emits `IdentityCleared` if successful.", + "", + "## Complexity", + "- `O(R + S + X)`", + " - where `R` registrar-count (governance-bounded).", + " - where `S` subs-count (hard- and deposit-bounded).", + " - where `X` additional-field-count (deposit-bounded and code-bounded)." + ] + }, + { + "name": "request_judgement", + "fields": [ + { + "name": "reg_index", + "type": 119, + "typeName": "RegistrarIndex" + }, + { + "name": "max_fee", + "type": 63, + "typeName": "BalanceOf" + } + ], + "index": 4, + "docs": [ + "Request a judgement from a registrar.", + "", + "Payment: At most `max_fee` will be reserved for payment to the registrar if judgement", + "given.", + "", + "The dispatch origin for this call must be _Signed_ and the sender must have a", + "registered identity.", + "", + "- `reg_index`: The index of the registrar whose judgement is requested.", + "- `max_fee`: The maximum fee that may be paid. This should just be auto-populated as:", + "", + "```nocompile", + "Self::registrars().get(reg_index).unwrap().fee", + "```", + "", + "Emits `JudgementRequested` if successful.", + "", + "## Complexity", + "- `O(R + X)`.", + " - where `R` registrar-count (governance-bounded).", + " - where `X` additional-field-count (deposit-bounded and code-bounded)." + ] + }, + { + "name": "cancel_request", + "fields": [ + { + "name": "reg_index", + "type": 4, + "typeName": "RegistrarIndex" + } + ], + "index": 5, + "docs": [ + "Cancel a previous request.", + "", + "Payment: A previously reserved deposit is returned on success.", + "", + "The dispatch origin for this call must be _Signed_ and the sender must have a", + "registered identity.", + "", + "- `reg_index`: The index of the registrar whose judgement is no longer requested.", + "", + "Emits `JudgementUnrequested` if successful.", + "", + "## Complexity", + "- `O(R + X)`.", + " - where `R` registrar-count (governance-bounded).", + " - where `X` additional-field-count (deposit-bounded and code-bounded)." + ] + }, + { + "name": "set_fee", + "fields": [ + { + "name": "index", + "type": 119, + "typeName": "RegistrarIndex" + }, + { + "name": "fee", + "type": 63, + "typeName": "BalanceOf" + } + ], + "index": 6, + "docs": [ + "Set the fee required for a judgement to be requested from a registrar.", + "", + "The dispatch origin for this call must be _Signed_ and the sender must be the account", + "of the registrar whose index is `index`.", + "", + "- `index`: the index of the registrar whose fee is to be set.", + "- `fee`: the new fee.", + "", + "## Complexity", + "- `O(R)`.", + " - where `R` registrar-count (governance-bounded)." + ] + }, + { + "name": "set_account_id", + "fields": [ + { + "name": "index", + "type": 119, + "typeName": "RegistrarIndex" + }, + { + "name": "new", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 7, + "docs": [ + "Change the account associated with a registrar.", + "", + "The dispatch origin for this call must be _Signed_ and the sender must be the account", + "of the registrar whose index is `index`.", + "", + "- `index`: the index of the registrar whose fee is to be set.", + "- `new`: the new account ID.", + "", + "## Complexity", + "- `O(R)`.", + " - where `R` registrar-count (governance-bounded)." + ] + }, + { + "name": "set_fields", + "fields": [ + { + "name": "index", + "type": 119, + "typeName": "RegistrarIndex" + }, + { + "name": "fields", + "type": 633, + "typeName": "IdentityFields" + } + ], + "index": 8, + "docs": [ + "Set the field information for a registrar.", + "", + "The dispatch origin for this call must be _Signed_ and the sender must be the account", + "of the registrar whose index is `index`.", + "", + "- `index`: the index of the registrar whose fee is to be set.", + "- `fields`: the fields that the registrar concerns themselves with.", + "", + "## Complexity", + "- `O(R)`.", + " - where `R` registrar-count (governance-bounded)." + ] + }, + { + "name": "provide_judgement", + "fields": [ + { + "name": "reg_index", + "type": 119, + "typeName": "RegistrarIndex" + }, + { + "name": "target", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "judgement", + "type": 635, + "typeName": "Judgement>" + }, + { + "name": "identity", + "type": 12, + "typeName": "T::Hash" + } + ], + "index": 9, + "docs": [ + "Provide a judgement for an account's identity.", + "", + "The dispatch origin for this call must be _Signed_ and the sender must be the account", + "of the registrar whose index is `reg_index`.", + "", + "- `reg_index`: the index of the registrar whose judgement is being made.", + "- `target`: the account whose identity the judgement is upon. This must be an account", + " with a registered identity.", + "- `judgement`: the judgement of the registrar of index `reg_index` about `target`.", + "- `identity`: The hash of the [`IdentityInfo`] for that the judgement is provided.", + "", + "Emits `JudgementGiven` if successful.", + "", + "## Complexity", + "- `O(R + X)`.", + " - where `R` registrar-count (governance-bounded).", + " - where `X` additional-field-count (deposit-bounded and code-bounded)." + ] + }, + { + "name": "kill_identity", + "fields": [ + { + "name": "target", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 10, + "docs": [ + "Remove an account's identity and sub-account information and slash the deposits.", + "", + "Payment: Reserved balances from `set_subs` and `set_identity` are slashed and handled by", + "`Slash`. Verification request deposits are not returned; they should be cancelled", + "manually using `cancel_request`.", + "", + "The dispatch origin for this call must match `T::ForceOrigin`.", + "", + "- `target`: the account whose identity the judgement is upon. This must be an account", + " with a registered identity.", + "", + "Emits `IdentityKilled` if successful.", + "", + "## Complexity", + "- `O(R + S + X)`", + " - where `R` registrar-count (governance-bounded).", + " - where `S` subs-count (hard- and deposit-bounded).", + " - where `X` additional-field-count (deposit-bounded and code-bounded)." + ] + }, + { + "name": "add_sub", + "fields": [ + { + "name": "sub", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "data", + "type": 601, + "typeName": "Data" + } + ], + "index": 11, + "docs": [ + "Add the given account to the sender's subs.", + "", + "Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated", + "to the sender.", + "", + "The dispatch origin for this call must be _Signed_ and the sender must have a registered", + "sub identity of `sub`." + ] + }, + { + "name": "rename_sub", + "fields": [ + { + "name": "sub", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "data", + "type": 601, + "typeName": "Data" + } + ], + "index": 12, + "docs": [ + "Alter the associated name of the given sub-account.", + "", + "The dispatch origin for this call must be _Signed_ and the sender must have a registered", + "sub identity of `sub`." + ] + }, + { + "name": "remove_sub", + "fields": [ + { + "name": "sub", + "type": 309, + "typeName": "AccountIdLookupOf" + } + ], + "index": 13, + "docs": [ + "Remove the given account from the sender's subs.", + "", + "Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated", + "to the sender.", + "", + "The dispatch origin for this call must be _Signed_ and the sender must have a registered", + "sub identity of `sub`." + ] + }, + { + "name": "quit_sub", + "index": 14, + "docs": [ + "Remove the sender as a sub-account.", + "", + "Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated", + "to the sender (*not* the original depositor).", + "", + "The dispatch origin for this call must be _Signed_ and the sender must have a registered", + "super-identity.", + "", + "NOTE: This should not normally be used, but is provided in the case that the non-", + "controller of an account is maliciously registered as a sub-account." + ] + } + ] + } + }, + "docs": [ + "Identity pallet declaration." + ] + } + }, + { + "id": 598, + "type": { + "path": [ + "pallet_identity", + "types", + "IdentityInfo" + ], + "params": [ + { + "name": "FieldLimit", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "additional", + "type": 599, + "typeName": "BoundedVec<(Data, Data), FieldLimit>" + }, + { + "name": "display", + "type": 601, + "typeName": "Data" + }, + { + "name": "legal", + "type": 601, + "typeName": "Data" + }, + { + "name": "web", + "type": 601, + "typeName": "Data" + }, + { + "name": "riot", + "type": 601, + "typeName": "Data" + }, + { + "name": "email", + "type": 601, + "typeName": "Data" + }, + { + "name": "pgp_fingerprint", + "type": 630, + "typeName": "Option<[u8; 20]>" + }, + { + "name": "image", + "type": 601, + "typeName": "Data" + }, + { + "name": "twitter", + "type": 601, + "typeName": "Data" + } + ] + } + } + } + }, + { + "id": 599, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 600 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 629, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 600, + "type": { + "def": { + "tuple": [ + 601, + 601 + ] + } + } + }, + { + "id": 601, + "type": { + "path": [ + "pallet_identity", + "types", + "Data" + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Raw0", + "fields": [ + { + "type": 602 + } + ], + "index": 1 + }, + { + "name": "Raw1", + "fields": [ + { + "type": 603 + } + ], + "index": 2 + }, + { + "name": "Raw2", + "fields": [ + { + "type": 582 + } + ], + "index": 3 + }, + { + "name": "Raw3", + "fields": [ + { + "type": 604 + } + ], + "index": 4 + }, + { + "name": "Raw4", + "fields": [ + { + "type": 17 + } + ], + "index": 5 + }, + { + "name": "Raw5", + "fields": [ + { + "type": 605 + } + ], + "index": 6 + }, + { + "name": "Raw6", + "fields": [ + { + "type": 606 + } + ], + "index": 7 + }, + { + "name": "Raw7", + "fields": [ + { + "type": 607 + } + ], + "index": 8 + }, + { + "name": "Raw8", + "fields": [ + { + "type": 134 + } + ], + "index": 9 + }, + { + "name": "Raw9", + "fields": [ + { + "type": 608 + } + ], + "index": 10 + }, + { + "name": "Raw10", + "fields": [ + { + "type": 609 + } + ], + "index": 11 + }, + { + "name": "Raw11", + "fields": [ + { + "type": 610 + } + ], + "index": 12 + }, + { + "name": "Raw12", + "fields": [ + { + "type": 611 + } + ], + "index": 13 + }, + { + "name": "Raw13", + "fields": [ + { + "type": 612 + } + ], + "index": 14 + }, + { + "name": "Raw14", + "fields": [ + { + "type": 613 + } + ], + "index": 15 + }, + { + "name": "Raw15", + "fields": [ + { + "type": 614 + } + ], + "index": 16 + }, + { + "name": "Raw16", + "fields": [ + { + "type": 33 + } + ], + "index": 17 + }, + { + "name": "Raw17", + "fields": [ + { + "type": 615 + } + ], + "index": 18 + }, + { + "name": "Raw18", + "fields": [ + { + "type": 616 + } + ], + "index": 19 + }, + { + "name": "Raw19", + "fields": [ + { + "type": 617 + } + ], + "index": 20 + }, + { + "name": "Raw20", + "fields": [ + { + "type": 122 + } + ], + "index": 21 + }, + { + "name": "Raw21", + "fields": [ + { + "type": 618 + } + ], + "index": 22 + }, + { + "name": "Raw22", + "fields": [ + { + "type": 619 + } + ], + "index": 23 + }, + { + "name": "Raw23", + "fields": [ + { + "type": 620 + } + ], + "index": 24 + }, + { + "name": "Raw24", + "fields": [ + { + "type": 621 + } + ], + "index": 25 + }, + { + "name": "Raw25", + "fields": [ + { + "type": 622 + } + ], + "index": 26 + }, + { + "name": "Raw26", + "fields": [ + { + "type": 623 + } + ], + "index": 27 + }, + { + "name": "Raw27", + "fields": [ + { + "type": 624 + } + ], + "index": 28 + }, + { + "name": "Raw28", + "fields": [ + { + "type": 625 + } + ], + "index": 29 + }, + { + "name": "Raw29", + "fields": [ + { + "type": 626 + } + ], + "index": 30 + }, + { + "name": "Raw30", + "fields": [ + { + "type": 627 + } + ], + "index": 31 + }, + { + "name": "Raw31", + "fields": [ + { + "type": 628 + } + ], + "index": 32 + }, + { + "name": "Raw32", + "fields": [ + { + "type": 1 + } + ], + "index": 33 + }, + { + "name": "BlakeTwo256", + "fields": [ + { + "type": 1 + } + ], + "index": 34 + }, + { + "name": "Sha256", + "fields": [ + { + "type": 1 + } + ], + "index": 35 + }, + { + "name": "Keccak256", + "fields": [ + { + "type": 1 + } + ], + "index": 36 + }, + { + "name": "ShaThree256", + "fields": [ + { + "type": 1 + } + ], + "index": 37 + } + ] + } + } + } + }, + { + "id": 602, + "type": { + "def": { + "array": { + "len": 0, + "type": 2 + } + } + } + }, + { + "id": 603, + "type": { + "def": { + "array": { + "len": 1, + "type": 2 + } + } + } + }, + { + "id": 604, + "type": { + "def": { + "array": { + "len": 3, + "type": 2 + } + } + } + }, + { + "id": 605, + "type": { + "def": { + "array": { + "len": 5, + "type": 2 + } + } + } + }, + { + "id": 606, + "type": { + "def": { + "array": { + "len": 6, + "type": 2 + } + } + } + }, + { + "id": 607, + "type": { + "def": { + "array": { + "len": 7, + "type": 2 + } + } + } + }, + { + "id": 608, + "type": { + "def": { + "array": { + "len": 9, + "type": 2 + } + } + } + }, + { + "id": 609, + "type": { + "def": { + "array": { + "len": 10, + "type": 2 + } + } + } + }, + { + "id": 610, + "type": { + "def": { + "array": { + "len": 11, + "type": 2 + } + } + } + }, + { + "id": 611, + "type": { + "def": { + "array": { + "len": 12, + "type": 2 + } + } + } + }, + { + "id": 612, + "type": { + "def": { + "array": { + "len": 13, + "type": 2 + } + } + } + }, + { + "id": 613, + "type": { + "def": { + "array": { + "len": 14, + "type": 2 + } + } + } + }, + { + "id": 614, + "type": { + "def": { + "array": { + "len": 15, + "type": 2 + } + } + } + }, + { + "id": 615, + "type": { + "def": { + "array": { + "len": 17, + "type": 2 + } + } + } + }, + { + "id": 616, + "type": { + "def": { + "array": { + "len": 18, + "type": 2 + } + } + } + }, + { + "id": 617, + "type": { + "def": { + "array": { + "len": 19, + "type": 2 + } + } + } + }, + { + "id": 618, + "type": { + "def": { + "array": { + "len": 21, + "type": 2 + } + } + } + }, + { + "id": 619, + "type": { + "def": { + "array": { + "len": 22, + "type": 2 + } + } + } + }, + { + "id": 620, + "type": { + "def": { + "array": { + "len": 23, + "type": 2 + } + } + } + }, + { + "id": 621, + "type": { + "def": { + "array": { + "len": 24, + "type": 2 + } + } + } + }, + { + "id": 622, + "type": { + "def": { + "array": { + "len": 25, + "type": 2 + } + } + } + }, + { + "id": 623, + "type": { + "def": { + "array": { + "len": 26, + "type": 2 + } + } + } + }, + { + "id": 624, + "type": { + "def": { + "array": { + "len": 27, + "type": 2 + } + } + } + }, + { + "id": 625, + "type": { + "def": { + "array": { + "len": 28, + "type": 2 + } + } + } + }, + { + "id": 626, + "type": { + "def": { + "array": { + "len": 29, + "type": 2 + } + } + } + }, + { + "id": 627, + "type": { + "def": { + "array": { + "len": 30, + "type": 2 + } + } + } + }, + { + "id": 628, + "type": { + "def": { + "array": { + "len": 31, + "type": 2 + } + } + } + }, + { + "id": 629, + "type": { + "def": { + "sequence": { + "type": 600 + } + } + } + }, + { + "id": 630, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 122 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 122 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 631, + "type": { + "def": { + "sequence": { + "type": 632 + } + } + } + }, + { + "id": 632, + "type": { + "def": { + "tuple": [ + 0, + 601 + ] + } + } + }, + { + "id": 633, + "type": { + "path": [ + "pallet_identity", + "types", + "BitFlags" + ], + "params": [ + { + "name": "T", + "type": 634 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 11, + "typeName": "IdentityField" + } + ] + } + } + } + }, + { + "id": 634, + "type": { + "path": [ + "pallet_identity", + "types", + "IdentityField" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Display", + "index": 1 + }, + { + "name": "Legal", + "index": 2 + }, + { + "name": "Web", + "index": 4 + }, + { + "name": "Riot", + "index": 8 + }, + { + "name": "Email", + "index": 16 + }, + { + "name": "PgpFingerprint", + "index": 32 + }, + { + "name": "Image", + "index": 64 + }, + { + "name": "Twitter", + "index": 128 + } + ] + } + } + } + }, + { + "id": 635, + "type": { + "path": [ + "pallet_identity", + "types", + "Judgement" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Unknown", + "index": 0 + }, + { + "name": "FeePaid", + "fields": [ + { + "type": 6, + "typeName": "Balance" + } + ], + "index": 1 + }, + { + "name": "Reasonable", + "index": 2 + }, + { + "name": "KnownGood", + "index": 3 + }, + { + "name": "OutOfDate", + "index": 4 + }, + { + "name": "LowQuality", + "index": 5 + }, + { + "name": "Erroneous", + "index": 6 + } + ] + } + } + } + }, + { + "id": 636, + "type": { + "path": [ + "pallet_vote_manager", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "vote", + "fields": [ + { + "name": "poll_index", + "type": 119, + "typeName": "PollIndexOf" + }, + { + "name": "vote", + "type": 587, + "typeName": "AccountVote>" + }, + { + "name": "currency", + "type": 637, + "typeName": "VoteCurrency>" + } + ], + "index": 0, + "docs": [ + "Vote in a poll. If `vote.is_aye()`, the vote is to enact the proposal;", + "otherwise it is a vote to keep the status quo.", + "", + "The dispatch origin of this call must be _Signed_.", + "", + "- `poll_index`: The index of the poll to vote for.", + "- `vote`: The vote configuration.", + "", + "Weight: `O(R)` where R is the number of polls the voter has voted on." + ] + }, + { + "name": "remove_vote", + "fields": [ + { + "name": "class", + "type": 590, + "typeName": "Option>" + }, + { + "name": "index", + "type": 4, + "typeName": "PollIndexOf" + } + ], + "index": 1, + "docs": [ + "Remove a vote for a poll.", + "", + "If:", + "- the poll was cancelled, or", + "- the poll is ongoing, or", + "- the poll has ended such that", + " - the vote of the account was in opposition to the result; or", + " - there was no conviction to the account's vote; or", + " - the account made a split vote", + "...then the vote is removed cleanly and a following call to `unlock` may result in more", + "funds being available.", + "", + "If, however, the poll has ended and:", + "- it finished corresponding to the vote of the account, and", + "- the account made a standard vote with conviction, and", + "- the lock period of the conviction is not over", + "...then the lock will be aggregated into the overall account's lock, which may involve", + "*overlocking* (where the two locks are combined into a single lock that is the maximum", + "of both the amount locked and the time is it locked for).", + "", + "The dispatch origin of this call must be _Signed_, and the signer must have a vote", + "registered for poll `index`.", + "", + "- `index`: The index of poll of the vote to be removed.", + "- `class`: Optional parameter, if given it indicates the class of the poll. For polls", + " which have finished or are cancelled, this must be `Some`.", + "", + "Weight: `O(R + log R)` where R is the number of polls that `target` has voted on.", + " Weight is calculated for the maximum number of vote." + ] + }, + { + "name": "remove_other_vote", + "fields": [ + { + "name": "target", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "class", + "type": 290, + "typeName": "ClassOf" + }, + { + "name": "index", + "type": 4, + "typeName": "PollIndexOf" + } + ], + "index": 2, + "docs": [ + "Remove a vote for a poll.", + "", + "If the `target` is equal to the signer, then this function is exactly equivalent to", + "`remove_vote`. If not equal to the signer, then the vote must have expired,", + "either because the poll was cancelled, because the voter lost the poll or", + "because the conviction period is over.", + "", + "The dispatch origin of this call must be _Signed_.", + "", + "- `target`: The account of the vote to be removed; this account must have voted for poll", + " `index`.", + "- `index`: The index of poll of the vote to be removed.", + "- `class`: The class of the poll.", + "", + "Weight: `O(R + log R)` where R is the number of polls that `target` has voted on.", + " Weight is calculated for the maximum number of vote." + ] + }, + { + "name": "unlock", + "fields": [ + { + "name": "class", + "type": 290, + "typeName": "ClassOf" + }, + { + "name": "target", + "type": 309, + "typeName": "AccountIdLookupOf" + }, + { + "name": "index", + "type": 4, + "typeName": "PollIndexOf" + } + ], + "index": 3, + "docs": [ + "Remove the lock caused by prior voting/delegating which has expired within a particular", + "class.", + "", + "The dispatch origin of this call must be _Signed_.", + "", + "- `class`: The class of polls to unlock.", + "- `target`: The account to remove the lock on.", + "", + "Weight: `O(R)` with R number of vote of target." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 637, + "type": { + "path": [ + "pallet_vote_manager", + "types", + "VoteCurrency" + ], + "params": [ + { + "name": "TokenId", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Enj", + "index": 0 + }, + { + "name": "SEnj", + "fields": [ + { + "type": 6, + "typeName": "TokenId" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 638, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 639, + "type": { + "path": [ + "pallet_conviction_voting", + "types", + "Tally" + ], + "params": [ + { + "name": "Votes", + "type": 6 + }, + { + "name": "Total", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "ayes", + "type": 6, + "typeName": "Votes" + }, + { + "name": "nays", + "type": 6, + "typeName": "Votes" + }, + { + "name": "support", + "type": 6, + "typeName": "Votes" + } + ] + } + } + } + }, + { + "id": 640, + "type": { + "path": [ + "pallet_whitelist", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "CallWhitelisted", + "fields": [ + { + "name": "call_hash", + "type": 12, + "typeName": "PreimageHash" + } + ], + "index": 0 + }, + { + "name": "WhitelistedCallRemoved", + "fields": [ + { + "name": "call_hash", + "type": 12, + "typeName": "PreimageHash" + } + ], + "index": 1 + }, + { + "name": "WhitelistedCallDispatched", + "fields": [ + { + "name": "call_hash", + "type": 12, + "typeName": "PreimageHash" + }, + { + "name": "result", + "type": 641, + "typeName": "DispatchResultWithPostInfo" + } + ], + "index": 2 + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 641, + "type": { + "path": [ + "Result" + ], + "params": [ + { + "name": "T", + "type": 642 + }, + { + "name": "E", + "type": 644 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Ok", + "fields": [ + { + "type": 642 + } + ], + "index": 0 + }, + { + "name": "Err", + "fields": [ + { + "type": 644 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 642, + "type": { + "path": [ + "frame_support", + "dispatch", + "PostDispatchInfo" + ], + "def": { + "composite": { + "fields": [ + { + "name": "actual_weight", + "type": 643, + "typeName": "Option" + }, + { + "name": "pays_fee", + "type": 24, + "typeName": "Pays" + } + ] + } + } + } + }, + { + "id": 643, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 9 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 9 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 644, + "type": { + "path": [ + "sp_runtime", + "DispatchErrorWithPostInfo" + ], + "params": [ + { + "name": "Info", + "type": 642 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "post_info", + "type": 642, + "typeName": "Info" + }, + { + "name": "error", + "type": 25, + "typeName": "DispatchError" + } + ] + } + } + } + }, + { + "id": 645, + "type": { + "path": [ + "pallet_ranked_collective", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "MemberAdded", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 0, + "docs": [ + "A member `who` has been added." + ] + }, + { + "name": "RankChanged", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "rank", + "type": 290, + "typeName": "Rank" + } + ], + "index": 1, + "docs": [ + "The member `who`se rank has been changed to the given `rank`." + ] + }, + { + "name": "MemberRemoved", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "rank", + "type": 290, + "typeName": "Rank" + } + ], + "index": 2, + "docs": [ + "The member `who` of given `rank` has been removed from the collective." + ] + }, + { + "name": "Voted", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "poll", + "type": 4, + "typeName": "PollIndexOf" + }, + { + "name": "vote", + "type": 646, + "typeName": "VoteRecord" + }, + { + "name": "tally", + "type": 647, + "typeName": "TallyOf" + } + ], + "index": 3, + "docs": [ + "The member `who` has voted for the `poll` with the given `vote` leading to an updated", + "`tally`." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 646, + "type": { + "path": [ + "pallet_ranked_collective", + "VoteRecord" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Aye", + "fields": [ + { + "type": 4, + "typeName": "Votes" + } + ], + "index": 0 + }, + { + "name": "Nay", + "fields": [ + { + "type": 4, + "typeName": "Votes" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 647, + "type": { + "path": [ + "pallet_ranked_collective", + "Tally" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + }, + { + "name": "M", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "bare_ayes", + "type": 4, + "typeName": "MemberIndex" + }, + { + "name": "ayes", + "type": 4, + "typeName": "Votes" + }, + { + "name": "nays", + "type": 4, + "typeName": "Votes" + } + ] + } + } + } + }, + { + "id": 648, + "type": { + "path": [ + "pallet_referenda", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Submitted", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "track", + "type": 290, + "typeName": "TrackIdOf", + "docs": [ + "The track (and by extension proposal dispatch origin) of this referendum." + ] + }, + { + "name": "proposal", + "type": 291, + "typeName": "BoundedCallOf", + "docs": [ + "The proposal for the referendum." + ] + } + ], + "index": 0, + "docs": [ + "A referendum has been submitted." + ] + }, + { + "name": "DecisionDepositPlaced", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account who placed the deposit." + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount placed by the account." + ] + } + ], + "index": 1, + "docs": [ + "The decision deposit has been placed." + ] + }, + { + "name": "DecisionDepositRefunded", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account who placed the deposit." + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount placed by the account." + ] + } + ], + "index": 2, + "docs": [ + "The decision deposit has been refunded." + ] + }, + { + "name": "DepositSlashed", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account who placed the deposit." + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount placed by the account." + ] + } + ], + "index": 3, + "docs": [ + "A deposit has been slashaed." + ] + }, + { + "name": "DecisionStarted", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "track", + "type": 290, + "typeName": "TrackIdOf", + "docs": [ + "The track (and by extension proposal dispatch origin) of this referendum." + ] + }, + { + "name": "proposal", + "type": 291, + "typeName": "BoundedCallOf", + "docs": [ + "The proposal for the referendum." + ] + }, + { + "name": "tally", + "type": 647, + "typeName": "T::Tally", + "docs": [ + "The current tally of votes in this referendum." + ] + } + ], + "index": 4, + "docs": [ + "A referendum has moved into the deciding phase." + ] + }, + { + "name": "ConfirmStarted", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + } + ], + "index": 5 + }, + { + "name": "ConfirmAborted", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + } + ], + "index": 6 + }, + { + "name": "Confirmed", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "tally", + "type": 647, + "typeName": "T::Tally", + "docs": [ + "The final tally of votes in this referendum." + ] + } + ], + "index": 7, + "docs": [ + "A referendum has ended its confirmation phase and is ready for approval." + ] + }, + { + "name": "Approved", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + } + ], + "index": 8, + "docs": [ + "A referendum has been approved and its proposal has been scheduled." + ] + }, + { + "name": "Rejected", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "tally", + "type": 647, + "typeName": "T::Tally", + "docs": [ + "The final tally of votes in this referendum." + ] + } + ], + "index": 9, + "docs": [ + "A proposal has been rejected by referendum." + ] + }, + { + "name": "TimedOut", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "tally", + "type": 647, + "typeName": "T::Tally", + "docs": [ + "The final tally of votes in this referendum." + ] + } + ], + "index": 10, + "docs": [ + "A referendum has been timed out without being decided." + ] + }, + { + "name": "Cancelled", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "tally", + "type": 647, + "typeName": "T::Tally", + "docs": [ + "The final tally of votes in this referendum." + ] + } + ], + "index": 11, + "docs": [ + "A referendum has been cancelled." + ] + }, + { + "name": "Killed", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "tally", + "type": 647, + "typeName": "T::Tally", + "docs": [ + "The final tally of votes in this referendum." + ] + } + ], + "index": 12, + "docs": [ + "A referendum has been killed." + ] + }, + { + "name": "SubmissionDepositRefunded", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [ + "The account who placed the deposit." + ] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [ + "The amount placed by the account." + ] + } + ], + "index": 13, + "docs": [ + "The submission deposit has been refunded." + ] + }, + { + "name": "MetadataSet", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "hash", + "type": 12, + "typeName": "PreimageHash", + "docs": [ + "Preimage hash." + ] + } + ], + "index": 14, + "docs": [ + "Metadata for a referendum has been set." + ] + }, + { + "name": "MetadataCleared", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "ReferendumIndex", + "docs": [ + "Index of the referendum." + ] + }, + { + "name": "hash", + "type": 12, + "typeName": "PreimageHash", + "docs": [ + "Preimage hash." + ] + } + ], + "index": 15, + "docs": [ + "Metadata for a referendum has been cleared." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 649, + "type": { + "path": [ + "pallet_identity", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "IdentitySet", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + } + ], + "index": 0, + "docs": [ + "A name was set or reset (which will remove all judgements)." + ] + }, + { + "name": "IdentityCleared", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "deposit", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 1, + "docs": [ + "A name was cleared, and the given balance returned." + ] + }, + { + "name": "IdentityKilled", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "deposit", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 2, + "docs": [ + "A name was removed and the given balance slashed." + ] + }, + { + "name": "JudgementRequested", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "registrar_index", + "type": 4, + "typeName": "RegistrarIndex" + } + ], + "index": 3, + "docs": [ + "A judgement was asked from a registrar." + ] + }, + { + "name": "JudgementUnrequested", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "registrar_index", + "type": 4, + "typeName": "RegistrarIndex" + } + ], + "index": 4, + "docs": [ + "A judgement request was retracted." + ] + }, + { + "name": "JudgementGiven", + "fields": [ + { + "name": "target", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "registrar_index", + "type": 4, + "typeName": "RegistrarIndex" + } + ], + "index": 5, + "docs": [ + "A judgement was given by a registrar." + ] + }, + { + "name": "RegistrarAdded", + "fields": [ + { + "name": "registrar_index", + "type": 4, + "typeName": "RegistrarIndex" + } + ], + "index": 6, + "docs": [ + "A registrar was added." + ] + }, + { + "name": "SubIdentityAdded", + "fields": [ + { + "name": "sub", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "main", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "deposit", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 7, + "docs": [ + "A sub-identity was added to an identity and the deposit paid." + ] + }, + { + "name": "SubIdentityRemoved", + "fields": [ + { + "name": "sub", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "main", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "deposit", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 8, + "docs": [ + "A sub-identity was removed from an identity and the deposit freed." + ] + }, + { + "name": "SubIdentityRevoked", + "fields": [ + { + "name": "sub", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "main", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "deposit", + "type": 6, + "typeName": "BalanceOf" + } + ], + "index": 9, + "docs": [ + "A sub-identity was cleared, and the given deposit repatriated from the", + "main identity account to the sub-identity account." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 650, + "type": { + "path": [ + "pallet_vote_manager", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Voted", + "fields": [ + { + "name": "voter", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "poll_index", + "type": 4, + "typeName": "PollIndexOf" + }, + { + "name": "vote", + "type": 587, + "typeName": "AccountVote>" + } + ], + "index": 0, + "docs": [ + "An account has voted in a referendum" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 651, + "type": { + "path": [ + "frame_system", + "Phase" + ], + "def": { + "variant": { + "variants": [ + { + "name": "ApplyExtrinsic", + "fields": [ + { + "type": 4, + "typeName": "u32" + } + ], + "index": 0 + }, + { + "name": "Finalization", + "index": 1 + }, + { + "name": "Initialization", + "index": 2 + } + ] + } + } + } + }, + { + "id": 652, + "type": { + "def": { + "sequence": { + "type": 12 + } + } + } + }, + { + "id": 653, + "type": { + "def": { + "sequence": { + "type": 285 + } + } + } + }, + { + "id": 654, + "type": { + "path": [ + "frame_system", + "LastRuntimeUpgradeInfo" + ], + "def": { + "composite": { + "fields": [ + { + "name": "spec_version", + "type": 119, + "typeName": "codec::Compact" + }, + { + "name": "spec_name", + "type": 655, + "typeName": "sp_runtime::RuntimeString" + } + ] + } + } + } + }, + { + "id": 655, + "type": { + "def": { + "primitive": "str" + } + } + }, + { + "id": 656, + "type": { + "path": [ + "frame_system", + "limits", + "BlockWeights" + ], + "def": { + "composite": { + "fields": [ + { + "name": "base_block", + "type": 9, + "typeName": "Weight" + }, + { + "name": "max_block", + "type": 9, + "typeName": "Weight" + }, + { + "name": "per_class", + "type": 657, + "typeName": "PerDispatchClass" + } + ] + } + } + } + }, + { + "id": 657, + "type": { + "path": [ + "frame_support", + "dispatch", + "PerDispatchClass" + ], + "params": [ + { + "name": "T", + "type": 658 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "normal", + "type": 658, + "typeName": "T" + }, + { + "name": "operational", + "type": 658, + "typeName": "T" + }, + { + "name": "mandatory", + "type": 658, + "typeName": "T" + } + ] + } + } + } + }, + { + "id": 658, + "type": { + "path": [ + "frame_system", + "limits", + "WeightsPerClass" + ], + "def": { + "composite": { + "fields": [ + { + "name": "base_extrinsic", + "type": 9, + "typeName": "Weight" + }, + { + "name": "max_extrinsic", + "type": 643, + "typeName": "Option" + }, + { + "name": "max_total", + "type": 643, + "typeName": "Option" + }, + { + "name": "reserved", + "type": 643, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 659, + "type": { + "path": [ + "frame_system", + "limits", + "BlockLength" + ], + "def": { + "composite": { + "fields": [ + { + "name": "max", + "type": 660, + "typeName": "PerDispatchClass" + } + ] + } + } + } + }, + { + "id": 660, + "type": { + "path": [ + "frame_support", + "dispatch", + "PerDispatchClass" + ], + "params": [ + { + "name": "T", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "normal", + "type": 4, + "typeName": "T" + }, + { + "name": "operational", + "type": 4, + "typeName": "T" + }, + { + "name": "mandatory", + "type": 4, + "typeName": "T" + } + ] + } + } + } + }, + { + "id": 661, + "type": { + "path": [ + "sp_weights", + "RuntimeDbWeight" + ], + "def": { + "composite": { + "fields": [ + { + "name": "read", + "type": 11, + "typeName": "u64" + }, + { + "name": "write", + "type": 11, + "typeName": "u64" + } + ] + } + } + } + }, + { + "id": 662, + "type": { + "path": [ + "sp_version", + "RuntimeVersion" + ], + "def": { + "composite": { + "fields": [ + { + "name": "spec_name", + "type": 655, + "typeName": "RuntimeString" + }, + { + "name": "impl_name", + "type": 655, + "typeName": "RuntimeString" + }, + { + "name": "authoring_version", + "type": 4, + "typeName": "u32" + }, + { + "name": "spec_version", + "type": 4, + "typeName": "u32" + }, + { + "name": "impl_version", + "type": 4, + "typeName": "u32" + }, + { + "name": "apis", + "type": 663, + "typeName": "ApisVec" + }, + { + "name": "transaction_version", + "type": 4, + "typeName": "u32" + }, + { + "name": "state_version", + "type": 2, + "typeName": "u8" + } + ] + } + } + } + }, + { + "id": 663, + "type": { + "path": [ + "Cow" + ], + "params": [ + { + "name": "T", + "type": 664 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 664 + } + ] + } + } + } + }, + { + "id": 664, + "type": { + "def": { + "sequence": { + "type": 665 + } + } + } + }, + { + "id": 665, + "type": { + "def": { + "tuple": [ + 134, + 4 + ] + } + } + }, + { + "id": 666, + "type": { + "path": [ + "frame_system", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "InvalidSpecName", + "index": 0, + "docs": [ + "The name of specification does not match between the current runtime", + "and the new runtime." + ] + }, + { + "name": "SpecVersionNeedsToIncrease", + "index": 1, + "docs": [ + "The specification version is not allowed to decrease between the current runtime", + "and the new runtime." + ] + }, + { + "name": "FailedToExtractRuntimeVersion", + "index": 2, + "docs": [ + "Failed to extract the runtime version from the new runtime.", + "", + "Either calling `Core_version` or decoding `RuntimeVersion` failed." + ] + }, + { + "name": "NonDefaultComposite", + "index": 3, + "docs": [ + "Suicide called when the account has non-default composite data." + ] + }, + { + "name": "NonZeroRefCount", + "index": 4, + "docs": [ + "There is a non-zero reference count preventing the account from being purged." + ] + }, + { + "name": "CallFiltered", + "index": 5, + "docs": [ + "The origin filter prevent the call to be dispatched." + ] + } + ] + } + }, + "docs": [ + "Error for the System pallet" + ] + } + }, + { + "id": 667, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 12 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 652, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 668, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 669 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 670, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 669, + "type": { + "def": { + "tuple": [ + 302, + 11 + ] + } + } + }, + { + "id": 670, + "type": { + "def": { + "sequence": { + "type": 669 + } + } + } + }, + { + "id": 671, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 1 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 672, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 672, + "type": { + "def": { + "sequence": { + "type": 1 + } + } + } + }, + { + "id": 673, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 674 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 674 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 674, + "type": { + "path": [ + "sp_consensus_babe", + "digests", + "PreDigest" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Primary", + "fields": [ + { + "type": 675, + "typeName": "PrimaryPreDigest" + } + ], + "index": 1 + }, + { + "name": "SecondaryPlain", + "fields": [ + { + "type": 677, + "typeName": "SecondaryPlainPreDigest" + } + ], + "index": 2 + }, + { + "name": "SecondaryVRF", + "fields": [ + { + "type": 678, + "typeName": "SecondaryVRFPreDigest" + } + ], + "index": 3 + } + ] + } + } + } + }, + { + "id": 675, + "type": { + "path": [ + "sp_consensus_babe", + "digests", + "PrimaryPreDigest" + ], + "def": { + "composite": { + "fields": [ + { + "name": "authority_index", + "type": 4, + "typeName": "super::AuthorityIndex" + }, + { + "name": "slot", + "type": 303, + "typeName": "Slot" + }, + { + "name": "vrf_signature", + "type": 676, + "typeName": "VrfSignature" + } + ] + } + } + } + }, + { + "id": 676, + "type": { + "path": [ + "sp_core", + "sr25519", + "vrf", + "VrfSignature" + ], + "def": { + "composite": { + "fields": [ + { + "name": "output", + "type": 1, + "typeName": "VrfOutput" + }, + { + "name": "proof", + "type": 97, + "typeName": "VrfProof" + } + ] + } + } + } + }, + { + "id": 677, + "type": { + "path": [ + "sp_consensus_babe", + "digests", + "SecondaryPlainPreDigest" + ], + "def": { + "composite": { + "fields": [ + { + "name": "authority_index", + "type": 4, + "typeName": "super::AuthorityIndex" + }, + { + "name": "slot", + "type": 303, + "typeName": "Slot" + } + ] + } + } + } + }, + { + "id": 678, + "type": { + "path": [ + "sp_consensus_babe", + "digests", + "SecondaryVRFPreDigest" + ], + "def": { + "composite": { + "fields": [ + { + "name": "authority_index", + "type": 4, + "typeName": "super::AuthorityIndex" + }, + { + "name": "slot", + "type": 303, + "typeName": "Slot" + }, + { + "name": "vrf_signature", + "type": 676, + "typeName": "VrfSignature" + } + ] + } + } + } + }, + { + "id": 679, + "type": { + "path": [ + "sp_consensus_babe", + "BabeEpochConfiguration" + ], + "def": { + "composite": { + "fields": [ + { + "name": "c", + "type": 306, + "typeName": "(u64, u64)" + }, + { + "name": "allowed_slots", + "type": 307, + "typeName": "AllowedSlots" + } + ] + } + } + } + }, + { + "id": 680, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 681 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 682, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 681, + "type": { + "def": { + "tuple": [ + 11, + 4 + ] + } + } + }, + { + "id": 682, + "type": { + "def": { + "sequence": { + "type": 681 + } + } + } + }, + { + "id": 683, + "type": { + "path": [ + "pallet_babe", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "InvalidEquivocationProof", + "index": 0, + "docs": [ + "An equivocation proof provided as part of an equivocation report is invalid." + ] + }, + { + "name": "InvalidKeyOwnershipProof", + "index": 1, + "docs": [ + "A key ownership proof provided as part of an equivocation report is invalid." + ] + }, + { + "name": "DuplicateOffenceReport", + "index": 2, + "docs": [ + "A given equivocation report is valid but already previously reported." + ] + }, + { + "name": "InvalidConfiguration", + "index": 3, + "docs": [ + "Submitted configuration is invalid." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 684, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 685 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 687, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 685, + "type": { + "path": [ + "pallet_balances", + "types", + "BalanceLock" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "id", + "type": 134, + "typeName": "LockIdentifier" + }, + { + "name": "amount", + "type": 6, + "typeName": "Balance" + }, + { + "name": "reasons", + "type": 686, + "typeName": "Reasons" + } + ] + } + } + } + }, + { + "id": 686, + "type": { + "path": [ + "pallet_balances", + "types", + "Reasons" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Fee", + "index": 0 + }, + { + "name": "Misc", + "index": 1 + }, + { + "name": "All", + "index": 2 + } + ] + } + } + } + }, + { + "id": 687, + "type": { + "def": { + "sequence": { + "type": 685 + } + } + } + }, + { + "id": 688, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 689 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 690, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 689, + "type": { + "path": [ + "pallet_balances", + "types", + "ReserveData" + ], + "params": [ + { + "name": "ReserveIdentifier", + "type": 134 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "id", + "type": 134, + "typeName": "ReserveIdentifier" + }, + { + "name": "amount", + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 690, + "type": { + "def": { + "sequence": { + "type": 689 + } + } + } + }, + { + "id": 691, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 692 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 693, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 692, + "type": { + "path": [ + "pallet_balances", + "types", + "IdAmount" + ], + "params": [ + { + "name": "Id", + "type": 56 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "id", + "type": 56, + "typeName": "Id" + }, + { + "name": "amount", + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 693, + "type": { + "def": { + "sequence": { + "type": 692 + } + } + } + }, + { + "id": 694, + "type": { + "path": [ + "pallet_balances", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "VestingBalance", + "index": 0, + "docs": [ + "Vesting balance too high to send value." + ] + }, + { + "name": "LiquidityRestrictions", + "index": 1, + "docs": [ + "Account liquidity restrictions prevent withdrawal." + ] + }, + { + "name": "InsufficientBalance", + "index": 2, + "docs": [ + "Balance too low to send value." + ] + }, + { + "name": "ExistentialDeposit", + "index": 3, + "docs": [ + "Value too low to create account due to existential deposit." + ] + }, + { + "name": "Expendability", + "index": 4, + "docs": [ + "Transfer/payment would kill account." + ] + }, + { + "name": "ExistingVestingSchedule", + "index": 5, + "docs": [ + "A vesting schedule already exists for this account." + ] + }, + { + "name": "DeadAccount", + "index": 6, + "docs": [ + "Beneficiary account must pre-exist." + ] + }, + { + "name": "TooManyReserves", + "index": 7, + "docs": [ + "Number of named reserves exceed `MaxReserves`." + ] + }, + { + "name": "TooManyHolds", + "index": 8, + "docs": [ + "Number of holds exceed `MaxHolds`." + ] + }, + { + "name": "TooManyFreezes", + "index": 9, + "docs": [ + "Number of freezes exceed `MaxFreezes`." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 695, + "type": { + "path": [ + "sp_staking", + "offence", + "OffenceDetails" + ], + "params": [ + { + "name": "Reporter", + "type": 0 + }, + { + "name": "Offender", + "type": 61 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "offender", + "type": 61, + "typeName": "Offender" + }, + { + "name": "reporters", + "type": 78, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 696, + "type": { + "def": { + "tuple": [ + 33, + 13 + ] + } + } + }, + { + "id": 697, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "ReadySolution" + ], + "params": [ + { + "name": "AccountId", + "type": null + }, + { + "name": "MaxWinners", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "supports", + "type": 698, + "typeName": "BoundedSupports" + }, + { + "name": "score", + "type": 38, + "typeName": "ElectionScore" + }, + { + "name": "compute", + "type": 35, + "typeName": "ElectionCompute" + } + ] + } + } + } + }, + { + "id": 698, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 367 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 366, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 699, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "RoundSnapshot" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "DataProvider", + "type": 700 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "voters", + "type": 702, + "typeName": "Vec" + }, + { + "name": "targets", + "type": 78, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 700, + "type": { + "def": { + "tuple": [ + 0, + 11, + 701 + ] + } + } + }, + { + "id": 701, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 78, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 702, + "type": { + "def": { + "sequence": { + "type": 700 + } + } + } + }, + { + "id": 703, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 704 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 705, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 704, + "type": { + "def": { + "tuple": [ + 38, + 4, + 4 + ] + } + } + }, + { + "id": 705, + "type": { + "def": { + "sequence": { + "type": 704 + } + } + } + }, + { + "id": 706, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "signed", + "SignedSubmission" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Solution", + "type": 313 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "deposit", + "type": 6, + "typeName": "Balance" + }, + { + "name": "raw_solution", + "type": 312, + "typeName": "RawSolution" + }, + { + "name": "call_fee", + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 707, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "PreDispatchEarlySubmission", + "index": 0, + "docs": [ + "Submission was too early." + ] + }, + { + "name": "PreDispatchWrongWinnerCount", + "index": 1, + "docs": [ + "Wrong number of winners presented." + ] + }, + { + "name": "PreDispatchWeakSubmission", + "index": 2, + "docs": [ + "Submission was too weak, score-wise." + ] + }, + { + "name": "SignedQueueFull", + "index": 3, + "docs": [ + "The queue was full, and the solution was not better than any of the existing ones." + ] + }, + { + "name": "SignedCannotPayDeposit", + "index": 4, + "docs": [ + "The origin failed to pay the deposit." + ] + }, + { + "name": "SignedInvalidWitness", + "index": 5, + "docs": [ + "Witness data to dispatchable is invalid." + ] + }, + { + "name": "SignedTooMuchWeight", + "index": 6, + "docs": [ + "The signed submission consumes too much weight" + ] + }, + { + "name": "OcwCallWrongEra", + "index": 7, + "docs": [ + "OCW submitted solution for wrong round" + ] + }, + { + "name": "MissingSnapshotMetadata", + "index": 8, + "docs": [ + "Snapshot metadata should exist but didn't." + ] + }, + { + "name": "InvalidSubmissionIndex", + "index": 9, + "docs": [ + "`Self::insert_submission` returned an invalid index." + ] + }, + { + "name": "CallNotAllowed", + "index": 10, + "docs": [ + "The call is not allowed at this point." + ] + }, + { + "name": "FallbackFailed", + "index": 11, + "docs": [ + "The fallback failed" + ] + }, + { + "name": "BoundNotMet", + "index": 12, + "docs": [ + "Some bound not met" + ] + }, + { + "name": "TooManyWinners", + "index": 13, + "docs": [ + "Submitted solution has too many winners" + ] + } + ] + } + }, + "docs": [ + "Error of the pallet that can be returned in response to dispatches." + ] + } + }, + { + "id": 708, + "type": { + "path": [ + "pallet_staking", + "StakingLedger" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "total", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "active", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "unlocking", + "type": 709, + "typeName": "BoundedVec>, T::MaxUnlockingChunks>" + }, + { + "name": "claimed_rewards", + "type": 712, + "typeName": "BoundedVec" + } + ] + } + } + } + }, + { + "id": 709, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 710 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 711, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 710, + "type": { + "path": [ + "pallet_staking", + "UnlockChunk" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "value", + "type": 63, + "typeName": "Balance" + }, + { + "name": "era", + "type": 119, + "typeName": "EraIndex" + } + ] + } + } + } + }, + { + "id": 711, + "type": { + "def": { + "sequence": { + "type": 710 + } + } + } + }, + { + "id": 712, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 375, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 713, + "type": { + "path": [ + "pallet_staking", + "Nominations" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "targets", + "type": 701, + "typeName": "BoundedVec" + }, + { + "name": "submitted_in", + "type": 4, + "typeName": "EraIndex" + }, + { + "name": "suppressed", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 714, + "type": { + "path": [ + "pallet_staking", + "ActiveEraInfo" + ], + "def": { + "composite": { + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "EraIndex" + }, + { + "name": "start", + "type": 208, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 715, + "type": { + "def": { + "tuple": [ + 4, + 0 + ] + } + } + }, + { + "id": 716, + "type": { + "path": [ + "pallet_staking", + "EraRewardPoints" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "total", + "type": 4, + "typeName": "RewardPoint" + }, + { + "name": "individual", + "type": 717, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 717, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 718 + } + ] + } + } + } + }, + { + "id": 718, + "type": { + "def": { + "sequence": { + "type": 719 + } + } + } + }, + { + "id": 719, + "type": { + "def": { + "tuple": [ + 0, + 4 + ] + } + } + }, + { + "id": 720, + "type": { + "def": { + "sequence": { + "type": 721 + } + } + } + }, + { + "id": 721, + "type": { + "path": [ + "pallet_staking", + "UnappliedSlash" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "validator", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "own", + "type": 6, + "typeName": "Balance" + }, + { + "name": "others", + "type": 369, + "typeName": "Vec<(AccountId, Balance)>" + }, + { + "name": "reporters", + "type": 78, + "typeName": "Vec" + }, + { + "name": "payout", + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 722, + "type": { + "def": { + "tuple": [ + 42, + 6 + ] + } + } + }, + { + "id": 723, + "type": { + "path": [ + "pallet_staking", + "slashing", + "SlashingSpans" + ], + "def": { + "composite": { + "fields": [ + { + "name": "span_index", + "type": 4, + "typeName": "SpanIndex" + }, + { + "name": "last_start", + "type": 4, + "typeName": "EraIndex" + }, + { + "name": "last_nonzero_slash", + "type": 4, + "typeName": "EraIndex" + }, + { + "name": "prior", + "type": 375, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 724, + "type": { + "path": [ + "pallet_staking", + "slashing", + "SpanRecord" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "slashed", + "type": 6, + "typeName": "Balance" + }, + { + "name": "paid_out", + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 725, + "type": { + "def": { + "sequence": { + "type": 726 + } + } + } + }, + { + "id": 726, + "type": { + "def": { + "tuple": [ + 4, + 37 + ] + } + } + }, + { + "id": 727, + "type": { + "path": [ + "pallet_staking", + "pallet", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NotController", + "index": 0, + "docs": [ + "Not a controller account." + ] + }, + { + "name": "NotStash", + "index": 1, + "docs": [ + "Not a stash account." + ] + }, + { + "name": "AlreadyBonded", + "index": 2, + "docs": [ + "Stash is already bonded." + ] + }, + { + "name": "AlreadyPaired", + "index": 3, + "docs": [ + "Controller is already paired." + ] + }, + { + "name": "EmptyTargets", + "index": 4, + "docs": [ + "Targets cannot be empty." + ] + }, + { + "name": "DuplicateIndex", + "index": 5, + "docs": [ + "Duplicate index." + ] + }, + { + "name": "InvalidSlashIndex", + "index": 6, + "docs": [ + "Slash record index out of bounds." + ] + }, + { + "name": "InsufficientBond", + "index": 7, + "docs": [ + "Cannot have a validator or nominator role, with value less than the minimum defined by", + "governance (see `MinValidatorBond` and `MinNominatorBond`). If unbonding is the", + "intention, `chill` first to remove one's role as validator/nominator." + ] + }, + { + "name": "NoMoreChunks", + "index": 8, + "docs": [ + "Can not schedule more unlock chunks." + ] + }, + { + "name": "NoUnlockChunk", + "index": 9, + "docs": [ + "Can not rebond without unlocking chunks." + ] + }, + { + "name": "FundedTarget", + "index": 10, + "docs": [ + "Attempting to target a stash that still has funds." + ] + }, + { + "name": "InvalidEraToReward", + "index": 11, + "docs": [ + "Invalid era to reward." + ] + }, + { + "name": "InvalidNumberOfNominations", + "index": 12, + "docs": [ + "Invalid number of nominations." + ] + }, + { + "name": "NotSortedAndUnique", + "index": 13, + "docs": [ + "Items are not sorted and unique." + ] + }, + { + "name": "AlreadyClaimed", + "index": 14, + "docs": [ + "Rewards for this era have already been claimed for this validator." + ] + }, + { + "name": "IncorrectHistoryDepth", + "index": 15, + "docs": [ + "Incorrect previous history depth input provided." + ] + }, + { + "name": "IncorrectSlashingSpans", + "index": 16, + "docs": [ + "Incorrect number of slashing spans provided." + ] + }, + { + "name": "BadState", + "index": 17, + "docs": [ + "Internal state has become somehow corrupted and the operation cannot continue." + ] + }, + { + "name": "TooManyTargets", + "index": 18, + "docs": [ + "Too many nomination targets supplied." + ] + }, + { + "name": "BadTarget", + "index": 19, + "docs": [ + "A nomination target was supplied that was blocked or otherwise not a validator." + ] + }, + { + "name": "CannotChillOther", + "index": 20, + "docs": [ + "The user has enough bond and thus cannot be chilled forcefully by an external person." + ] + }, + { + "name": "TooManyNominators", + "index": 21, + "docs": [ + "There are too many nominators in the system. Governance needs to adjust the staking", + "settings to keep things safe for the runtime." + ] + }, + { + "name": "TooManyValidators", + "index": 22, + "docs": [ + "There are too many validator candidates in the system. Governance needs to adjust the", + "staking settings to keep things safe for the runtime." + ] + }, + { + "name": "CommissionTooLow", + "index": 23, + "docs": [ + "Commission is too low. Must be at least `MinCommission`." + ] + }, + { + "name": "BoundNotMet", + "index": 24, + "docs": [ + "Some bound is not met." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 728, + "type": { + "def": { + "sequence": { + "type": 729 + } + } + } + }, + { + "id": 729, + "type": { + "def": { + "tuple": [ + 0, + 381 + ] + } + } + }, + { + "id": 730, + "type": { + "def": { + "tuple": [ + 731, + 13 + ] + } + } + }, + { + "id": 731, + "type": { + "path": [ + "sp_core", + "crypto", + "KeyTypeId" + ], + "def": { + "composite": { + "fields": [ + { + "type": 17, + "typeName": "[u8; 4]" + } + ] + } + } + } + }, + { + "id": 732, + "type": { + "path": [ + "pallet_session", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "InvalidProof", + "index": 0, + "docs": [ + "Invalid ownership proof." + ] + }, + { + "name": "NoAssociatedValidatorId", + "index": 1, + "docs": [ + "No associated validator ID for account." + ] + }, + { + "name": "DuplicatedKey", + "index": 2, + "docs": [ + "Registered duplicate key." + ] + }, + { + "name": "NoKeys", + "index": 3, + "docs": [ + "No keys are associated with this account." + ] + }, + { + "name": "NoAccount", + "index": 4, + "docs": [ + "Key setting account is not live, so it's impossible to associate keys." + ] + } + ] + } + }, + "docs": [ + "Error for the session pallet." + ] + } + }, + { + "id": 733, + "type": { + "path": [ + "pallet_grandpa", + "StoredState" + ], + "params": [ + { + "name": "N", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Live", + "index": 0 + }, + { + "name": "PendingPause", + "fields": [ + { + "name": "scheduled_at", + "type": 4, + "typeName": "N" + }, + { + "name": "delay", + "type": 4, + "typeName": "N" + } + ], + "index": 1 + }, + { + "name": "Paused", + "index": 2 + }, + { + "name": "PendingResume", + "fields": [ + { + "name": "scheduled_at", + "type": 4, + "typeName": "N" + }, + { + "name": "delay", + "type": 4, + "typeName": "N" + } + ], + "index": 3 + } + ] + } + } + } + }, + { + "id": 734, + "type": { + "path": [ + "pallet_grandpa", + "StoredPendingChange" + ], + "params": [ + { + "name": "N", + "type": 4 + }, + { + "name": "Limit", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "scheduled_at", + "type": 4, + "typeName": "N" + }, + { + "name": "delay", + "type": 4, + "typeName": "N" + }, + { + "name": "next_authorities", + "type": 735, + "typeName": "BoundedAuthorityList" + }, + { + "name": "forced", + "type": 73, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 735, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 49 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 48, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 736, + "type": { + "path": [ + "pallet_grandpa", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "PauseFailed", + "index": 0, + "docs": [ + "Attempt to signal GRANDPA pause when the authority set isn't live", + "(either paused or already pending pause)." + ] + }, + { + "name": "ResumeFailed", + "index": 1, + "docs": [ + "Attempt to signal GRANDPA resume when the authority set isn't paused", + "(either live or already pending resume)." + ] + }, + { + "name": "ChangePending", + "index": 2, + "docs": [ + "Attempt to signal GRANDPA change with one already pending." + ] + }, + { + "name": "TooSoon", + "index": 3, + "docs": [ + "Cannot signal forced change so soon after last." + ] + }, + { + "name": "InvalidKeyOwnershipProof", + "index": 4, + "docs": [ + "A key ownership proof provided as part of an equivocation report is invalid." + ] + }, + { + "name": "InvalidEquivocationProof", + "index": 5, + "docs": [ + "An equivocation proof provided as part of an equivocation report is invalid." + ] + }, + { + "name": "DuplicateOffenceReport", + "index": 6, + "docs": [ + "A given equivocation report is valid but already previously reported." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 737, + "type": { + "path": [ + "pallet_treasury", + "Proposal" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "proposer", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "value", + "type": 6, + "typeName": "Balance" + }, + { + "name": "beneficiary", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "bond", + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 738, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 375, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 739, + "type": { + "path": [ + "sp_arithmetic", + "per_things", + "Permill" + ], + "def": { + "composite": { + "fields": [ + { + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 740, + "type": { + "path": [ + "frame_support", + "PalletId" + ], + "def": { + "composite": { + "fields": [ + { + "type": 134, + "typeName": "[u8; 8]" + } + ] + } + } + } + }, + { + "id": 741, + "type": { + "path": [ + "pallet_treasury", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "InsufficientProposersBalance", + "index": 0, + "docs": [ + "Proposer's balance is too low." + ] + }, + { + "name": "InvalidIndex", + "index": 1, + "docs": [ + "No proposal or bounty at that index." + ] + }, + { + "name": "TooManyApprovals", + "index": 2, + "docs": [ + "Too many approvals in the queue." + ] + }, + { + "name": "InsufficientPermission", + "index": 3, + "docs": [ + "The spend origin is valid but the amount it is allowed to spend is lower than the", + "amount to be spent." + ] + }, + { + "name": "ProposalNotApproved", + "index": 4, + "docs": [ + "Proposal has not been approved." + ] + } + ] + } + }, + "docs": [ + "Error for the treasury pallet." + ] + } + }, + { + "id": 742, + "type": { + "path": [ + "sp_arithmetic", + "fixed_point", + "FixedU128" + ], + "def": { + "composite": { + "fields": [ + { + "type": 6, + "typeName": "u128" + } + ] + } + } + } + }, + { + "id": 743, + "type": { + "path": [ + "pallet_transaction_payment", + "Releases" + ], + "def": { + "variant": { + "variants": [ + { + "name": "V1Ancient", + "index": 0 + }, + { + "name": "V2", + "index": 1 + } + ] + } + } + } + }, + { + "id": 744, + "type": { + "path": [ + "pallet_sudo", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "RequireSudo", + "index": 0, + "docs": [ + "Sender must be the Sudo account" + ] + } + ] + } + }, + "docs": [ + "Error for the Sudo pallet" + ] + } + }, + { + "id": 745, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 58 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 746, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 746, + "type": { + "def": { + "sequence": { + "type": 58 + } + } + } + }, + { + "id": 747, + "type": { + "path": [ + "frame_support", + "traits", + "misc", + "WrapperOpaque" + ], + "params": [ + { + "name": "T", + "type": 748 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 119 + }, + { + "type": 748, + "typeName": "T" + } + ] + } + } + } + }, + { + "id": 748, + "type": { + "path": [ + "pallet_im_online", + "BoundedOpaqueNetworkState" + ], + "params": [ + { + "name": "PeerIdEncodingLimit", + "type": null + }, + { + "name": "MultiAddrEncodingLimit", + "type": null + }, + { + "name": "AddressesLimit", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "peer_id", + "type": 749, + "typeName": "WeakBoundedVec" + }, + { + "name": "external_addresses", + "type": 750, + "typeName": "WeakBoundedVec, AddressesLimit\n>" + } + ] + } + } + } + }, + { + "id": 749, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 750, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 749 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 751, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 751, + "type": { + "def": { + "sequence": { + "type": 749 + } + } + } + }, + { + "id": 752, + "type": { + "path": [ + "pallet_im_online", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "InvalidKey", + "index": 0, + "docs": [ + "Non existent public key." + ] + }, + { + "name": "DuplicatedHeartbeat", + "index": 1, + "docs": [ + "Duplicated heartbeat." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 753, + "type": { + "path": [ + "pallet_bags_list", + "list", + "Node" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "id", + "type": 0, + "typeName": "T::AccountId" + }, + { + "name": "prev", + "type": 36, + "typeName": "Option" + }, + { + "name": "next", + "type": 36, + "typeName": "Option" + }, + { + "name": "bag_upper", + "type": 11, + "typeName": "T::Score" + }, + { + "name": "score", + "type": 11, + "typeName": "T::Score" + } + ] + } + } + } + }, + { + "id": 754, + "type": { + "path": [ + "pallet_bags_list", + "list", + "Bag" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "head", + "type": 36, + "typeName": "Option" + }, + { + "name": "tail", + "type": 36, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 755, + "type": { + "def": { + "sequence": { + "type": 11 + } + } + } + }, + { + "id": 756, + "type": { + "path": [ + "pallet_bags_list", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "List", + "fields": [ + { + "type": 757, + "typeName": "ListError" + } + ], + "index": 0, + "docs": [ + "A error in the list interface implementation." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 757, + "type": { + "path": [ + "pallet_bags_list", + "list", + "ListError" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Duplicate", + "index": 0 + }, + { + "name": "NotHeavier", + "index": 1 + }, + { + "name": "NotInSameBag", + "index": 2 + }, + { + "name": "NodeNotFound", + "index": 3 + } + ] + } + } + } + }, + { + "id": 758, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "PoolMember" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "unbonding_eras", + "type": 759, + "typeName": "BoundedBTreeMap, T::MaxUnbonding>" + } + ] + } + } + } + }, + { + "id": 759, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 4 + }, + { + "name": "V", + "type": 6 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 760, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 760, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 4 + }, + { + "name": "V", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 761 + } + ] + } + } + } + }, + { + "id": 761, + "type": { + "def": { + "sequence": { + "type": 762 + } + } + } + }, + { + "id": 762, + "type": { + "def": { + "tuple": [ + 4, + 6 + ] + } + } + }, + { + "id": 763, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "BondedPoolInner" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "state", + "type": 68, + "typeName": "PoolState" + }, + { + "name": "commission", + "type": 764, + "typeName": "Commission" + }, + { + "name": "token_id", + "type": 63, + "typeName": "TokenIdOf" + }, + { + "name": "capacity", + "type": 63, + "typeName": "BalanceOf" + }, + { + "name": "bonus_cycle", + "type": 765, + "typeName": "BonusCycle" + }, + { + "name": "creation_block", + "type": 119, + "typeName": "T::BlockNumber" + }, + { + "name": "bonuses_paid", + "type": 712, + "typeName": "BoundedVec" + } + ] + } + } + } + }, + { + "id": 764, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "Commission" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "current", + "type": 69, + "typeName": "Option" + }, + { + "name": "max", + "type": 69, + "typeName": "Option" + }, + { + "name": "change_rate", + "type": 75, + "typeName": "Option>" + }, + { + "name": "throttle_from", + "type": 73, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 765, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "BonusCycle" + ], + "def": { + "composite": { + "fields": [ + { + "name": "previous_start", + "type": 73, + "typeName": "Option" + }, + { + "name": "start", + "type": 119, + "typeName": "EraIndex" + }, + { + "name": "end", + "type": 119, + "typeName": "EraIndex" + }, + { + "name": "pending_duration", + "type": 73, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 766, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "SubPools" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "no_era", + "type": 767, + "typeName": "UnbondPool" + }, + { + "name": "with_era", + "type": 768, + "typeName": "BoundedBTreeMap, TotalUnbondingPools>" + } + ] + } + } + } + }, + { + "id": 767, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "UnbondPool" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "points", + "type": 6, + "typeName": "BalanceOf" + }, + { + "name": "balance", + "type": 6, + "typeName": "BalanceOf" + } + ] + } + } + } + }, + { + "id": 768, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 4 + }, + { + "name": "V", + "type": 767 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 769, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 769, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 4 + }, + { + "name": "V", + "type": 767 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 770 + } + ] + } + } + } + }, + { + "id": 770, + "type": { + "def": { + "sequence": { + "type": 771 + } + } + } + }, + { + "id": 771, + "type": { + "def": { + "tuple": [ + 4, + 767 + ] + } + } + }, + { + "id": 772, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "EarlyBirdInfo" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "MaxItems", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "has_been_queued", + "type": 37, + "typeName": "bool" + }, + { + "name": "queued_items", + "type": 773, + "typeName": "BoundedVec<(PoolId, Balance), MaxItems>" + } + ] + } + } + } + }, + { + "id": 773, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 762 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 761, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 774, + "type": { + "path": [ + "pallet_nomination_pools", + "types", + "EraPayout" + ], + "def": { + "composite": { + "fields": [ + { + "name": "era", + "type": 119, + "typeName": "EraIndex" + }, + { + "name": "payout_count", + "type": 119, + "typeName": "u32" + }, + { + "name": "payouts_processed", + "type": 37, + "typeName": "bool" + }, + { + "name": "required_payments_percent", + "type": 42, + "typeName": "Perbill" + } + ] + } + } + } + }, + { + "id": 775, + "type": { + "path": [ + "pallet_nomination_pools", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "PoolNotFound", + "index": 0, + "docs": [ + "A (bonded) pool id does not exist." + ] + }, + { + "name": "PoolTokenAlreadyInUse", + "index": 1, + "docs": [ + "Pool already exists for the given token_id" + ] + }, + { + "name": "PoolMemberNotFound", + "index": 2, + "docs": [ + "An account is not a member." + ] + }, + { + "name": "RewardPoolNotFound", + "index": 3, + "docs": [ + "A reward pool does not exist. In all cases this is a system logic error." + ] + }, + { + "name": "SubPoolsNotFound", + "index": 4, + "docs": [ + "A sub pool does not exist." + ] + }, + { + "name": "AccountBelongsToOtherPool", + "index": 5, + "docs": [ + "An account is already delegating in another pool. An account may only belong to one", + "pool at a time." + ] + }, + { + "name": "FullyUnbonding", + "index": 6, + "docs": [ + "The member is fully unbonded (and thus cannot access the bonded and reward pool", + "anymore to, for example, collect rewards)." + ] + }, + { + "name": "MaxUnbondingLimit", + "index": 7, + "docs": [ + "The member cannot unbond further chunks due to reaching the limit." + ] + }, + { + "name": "CannotWithdrawAny", + "index": 8, + "docs": [ + "None of the funds can be withdrawn yet because the bonding duration has not passed." + ] + }, + { + "name": "MinimumBondNotMet", + "index": 9, + "docs": [ + "The amount does not meet the minimum bond to either join or create a pool.", + "", + "If the chain is not being destroyed no member can unbond to a value less than", + "`Pallet::depositor_min_bond`. The caller does not have nominating", + "permissions for the pool. Members can never unbond to a value below `MinJoinBond`." + ] + }, + { + "name": "OverflowRisk", + "index": 10, + "docs": [ + "The transaction could not be executed due to overflow risk for the pool." + ] + }, + { + "name": "NotDestroying", + "index": 11, + "docs": [ + "A pool must be in [`PoolState::Destroying`] in order for", + "other members to be permissionlessly unbonded." + ] + }, + { + "name": "NotNominator", + "index": 12, + "docs": [ + "The caller does not have nominating permissions for the pool." + ] + }, + { + "name": "NotKickerOrDestroying", + "index": 13, + "docs": [ + "Either a) the caller cannot make a valid kick or b) the pool is not destroying." + ] + }, + { + "name": "NotOpen", + "index": 14, + "docs": [ + "The pool is not open to join" + ] + }, + { + "name": "CanNotChangeState", + "index": 15, + "docs": [ + "The pools state cannot be changed." + ] + }, + { + "name": "DoesNotHavePermission", + "index": 16, + "docs": [ + "The caller does not have adequate permissions." + ] + }, + { + "name": "Defensive", + "fields": [ + { + "type": 776, + "typeName": "DefensiveError" + } + ], + "index": 17, + "docs": [ + "Some error occurred that should never happen. This should be reported to the", + "maintainers." + ] + }, + { + "name": "PartialUnbondNotAllowedPermissionlessly", + "index": 18, + "docs": [ + "Partial unbonding now allowed permissionlessly." + ] + }, + { + "name": "PoolIdInUse", + "index": 19, + "docs": [ + "Pool id currently in use." + ] + }, + { + "name": "InvalidPoolId", + "index": 20, + "docs": [ + "Pool id provided is not correct/usable." + ] + }, + { + "name": "MintParamsCreationFailed", + "index": 21, + "docs": [ + "Mint parameters are invalid." + ] + }, + { + "name": "BurnParamsCreationFailed", + "index": 22, + "docs": [ + "Burn parameters are invalid." + ] + }, + { + "name": "TransferParamsCreationFailed", + "index": 23, + "docs": [ + "Transfer parameters are invalid." + ] + }, + { + "name": "CapacityExceeded", + "index": 24, + "docs": [ + "The capacity of the pool is exceeded by the amount" + ] + }, + { + "name": "CapacityMutationRestricted", + "index": 25, + "docs": [ + "The capacity can only be mutated for the first 14 eras of a cycle" + ] + }, + { + "name": "DurationOutOfBounds", + "index": 26, + "docs": [ + "The duration is out of bounds" + ] + }, + { + "name": "TokenRequired", + "index": 27, + "docs": [ + "The required token is not owned by the caller" + ] + }, + { + "name": "DepositNotReadyForUnbonding", + "index": 28, + "docs": [ + "Deposit should be the last supply of pool's sENJ token to be unbonded" + ] + }, + { + "name": "MaxCommissionRestricted", + "index": 29, + "docs": [ + "The pool's max commission cannot be set higher than the existing value." + ] + }, + { + "name": "CommissionExceedsMaximum", + "index": 30, + "docs": [ + "The supplied commission exceeds the max allowed commission." + ] + }, + { + "name": "CommissionChangeThrottled", + "index": 31, + "docs": [ + "Not enough blocks have surpassed since the last commission update." + ] + }, + { + "name": "CommissionChangeRateNotAllowed", + "index": 32, + "docs": [ + "The submitted changes to commission change rate are not allowed." + ] + }, + { + "name": "NoPendingCommission", + "index": 33, + "docs": [ + "There is no pending commission to claim." + ] + }, + { + "name": "NoCommissionCurrentSet", + "index": 34, + "docs": [ + "No commission current has been set." + ] + }, + { + "name": "NoopMutation", + "index": 35, + "docs": [ + "The mutation does not change anything" + ] + }, + { + "name": "PoolMembersRemaining", + "index": 36, + "docs": [ + "The pool is not empty" + ] + }, + { + "name": "EarlyBirdBonusNotReady", + "index": 37, + "docs": [ + "The early bird bonus is not yet ready to claim" + ] + }, + { + "name": "EarlyBirdTotalRewardsIsZero", + "index": 38, + "docs": [ + "Total Weighted Rewards is 0" + ] + }, + { + "name": "TooManyEarlyBirdPoolRewards", + "index": 39, + "docs": [ + "There are more [`Config::MaxEarlyBirdBonusQueueItems`] than the storage item,", + "[`EarlyBirdBonusInfo`] can handle." + ] + }, + { + "name": "EarlyBirdBonusAlreadyQueued", + "index": 40, + "docs": [ + "EarlyBirdReward has already been queued." + ] + }, + { + "name": "MissingPayouts", + "index": 41, + "docs": [ + "Not all payouts have been made" + ] + }, + { + "name": "WrongPoolCount", + "index": 42, + "docs": [ + "The pool count does not match the number of pools" + ] + }, + { + "name": "PayoutsAlreadyProcessed", + "index": 43, + "docs": [ + "Payouts were already processed for this era" + ] + }, + { + "name": "AttributeKeyExceedsLength", + "index": 44, + "docs": [ + "Attribute key exceeds max length" + ] + }, + { + "name": "AttributeValueDecodeFailed", + "index": 45, + "docs": [ + "Unable to decode the attribute value" + ] + }, + { + "name": "AttributeCapacityExceedsGlobalCapacity", + "index": 46, + "docs": [ + "Attribute capacity exceeds the global max capacity" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 776, + "type": { + "path": [ + "pallet_nomination_pools", + "pallet", + "DefensiveError" + ], + "def": { + "variant": { + "variants": [ + { + "name": "NotEnoughSpaceInUnbondPool", + "index": 0 + }, + { + "name": "PoolNotFound", + "index": 1 + }, + { + "name": "RewardPoolNotFound", + "index": 2 + }, + { + "name": "SubPoolsNotFound", + "index": 3 + }, + { + "name": "BondedStashKilledPrematurely", + "index": 4 + }, + { + "name": "DivisionError", + "index": 5 + } + ] + } + } + } + }, + { + "id": 777, + "type": { + "path": [ + "pallet_stake_exchange", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "CallerNotOfferCreator", + "index": 0, + "docs": [ + "Caller is not the account of" + ] + }, + { + "name": "ZeroOffer", + "index": 1, + "docs": [ + "Cannot create a offer with zero amount" + ] + }, + { + "name": "ZeroRate", + "index": 2, + "docs": [ + "Cannot create a offer with zero rate" + ] + }, + { + "name": "Overflow", + "index": 3, + "docs": [ + "Arithmetic overflow" + ] + }, + { + "name": "OfferNotFound", + "index": 4, + "docs": [ + "A offer was not found" + ] + }, + { + "name": "NotEnoughLiquidity", + "index": 5, + "docs": [ + "The offer does not have liquidity to perform the operation" + ] + }, + { + "name": "TransferParamCreationFailed", + "index": 6, + "docs": [ + "Cannot perform multi tokens transfer" + ] + }, + { + "name": "TokenRestriction", + "index": 7, + "docs": [ + "LP does not support this tokenId" + ] + }, + { + "name": "ZeroAmount", + "index": 8, + "docs": [ + "Zero amount buy not supported" + ] + }, + { + "name": "RewardRateOutOfRange", + "index": 9, + "docs": [ + "Pool rewards outside acceptable range" + ] + } + ] + } + }, + "docs": [ + "Pallet's error type." + ] + } + }, + { + "id": 778, + "type": { + "path": [ + "pallet_utility", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "TooManyCalls", + "index": 0, + "docs": [ + "Too many calls batched." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 779, + "type": { + "def": { + "tuple": [ + 0, + 1 + ] + } + } + }, + { + "id": 780, + "type": { + "path": [ + "pallet_multisig", + "Multisig" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "MaxApprovals", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "when", + "type": 89, + "typeName": "Timepoint" + }, + { + "name": "deposit", + "type": 6, + "typeName": "Balance" + }, + { + "name": "depositor", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "approvals", + "type": 781, + "typeName": "BoundedVec" + } + ] + } + } + } + }, + { + "id": 781, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 78, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 782, + "type": { + "path": [ + "pallet_multisig", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "MinimumThreshold", + "index": 0, + "docs": [ + "Threshold must be 2 or greater." + ] + }, + { + "name": "AlreadyApproved", + "index": 1, + "docs": [ + "Call is already approved by this signatory." + ] + }, + { + "name": "NoApprovalsNeeded", + "index": 2, + "docs": [ + "Call doesn't need any (more) approvals." + ] + }, + { + "name": "TooFewSignatories", + "index": 3, + "docs": [ + "There are too few signatories in the list." + ] + }, + { + "name": "TooManySignatories", + "index": 4, + "docs": [ + "There are too many signatories in the list." + ] + }, + { + "name": "SignatoriesOutOfOrder", + "index": 5, + "docs": [ + "The signatories were provided out of order; they should be ordered." + ] + }, + { + "name": "SenderInSignatories", + "index": 6, + "docs": [ + "The sender was contained in the other signatories; it shouldn't be." + ] + }, + { + "name": "NotFound", + "index": 7, + "docs": [ + "Multisig operation not found when attempting to cancel." + ] + }, + { + "name": "NotOwner", + "index": 8, + "docs": [ + "Only the account that originally created the multisig is able to cancel it." + ] + }, + { + "name": "NoTimepoint", + "index": 9, + "docs": [ + "No timepoint was given, yet the multisig operation is already underway." + ] + }, + { + "name": "WrongTimepoint", + "index": 10, + "docs": [ + "A different timepoint was given to the multisig operation that is underway." + ] + }, + { + "name": "UnexpectedTimepoint", + "index": 11, + "docs": [ + "A timepoint was given, yet no multisig operation is underway." + ] + }, + { + "name": "MaxWeightTooLow", + "index": 12, + "docs": [ + "The maximum weight information provided was too low." + ] + }, + { + "name": "AlreadyStored", + "index": 13, + "docs": [ + "The data to be stored is already stored." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 783, + "type": { + "path": [ + "polkadot_runtime_parachains", + "configuration", + "HostConfiguration" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "max_code_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_head_data_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_upward_queue_count", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_upward_queue_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_upward_message_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_upward_message_num_per_candidate", + "type": 4, + "typeName": "u32" + }, + { + "name": "hrmp_max_message_num_per_candidate", + "type": 4, + "typeName": "u32" + }, + { + "name": "validation_upgrade_cooldown", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "validation_upgrade_delay", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "async_backing_params", + "type": 424, + "typeName": "AsyncBackingParams" + }, + { + "name": "max_pov_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_downward_message_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "hrmp_max_parachain_outbound_channels", + "type": 4, + "typeName": "u32" + }, + { + "name": "hrmp_max_parathread_outbound_channels", + "type": 4, + "typeName": "u32" + }, + { + "name": "hrmp_sender_deposit", + "type": 6, + "typeName": "Balance" + }, + { + "name": "hrmp_recipient_deposit", + "type": 6, + "typeName": "Balance" + }, + { + "name": "hrmp_channel_max_capacity", + "type": 4, + "typeName": "u32" + }, + { + "name": "hrmp_channel_max_total_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "hrmp_max_parachain_inbound_channels", + "type": 4, + "typeName": "u32" + }, + { + "name": "hrmp_max_parathread_inbound_channels", + "type": 4, + "typeName": "u32" + }, + { + "name": "hrmp_channel_max_message_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "executor_params", + "type": 425, + "typeName": "ExecutorParams" + }, + { + "name": "code_retention_period", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "parathread_cores", + "type": 4, + "typeName": "u32" + }, + { + "name": "parathread_retries", + "type": 4, + "typeName": "u32" + }, + { + "name": "group_rotation_frequency", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "chain_availability_period", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "thread_availability_period", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "scheduling_lookahead", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_validators_per_core", + "type": 73, + "typeName": "Option" + }, + { + "name": "max_validators", + "type": 73, + "typeName": "Option" + }, + { + "name": "dispute_period", + "type": 4, + "typeName": "SessionIndex" + }, + { + "name": "dispute_post_conclusion_acceptance_period", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "no_show_slots", + "type": 4, + "typeName": "u32" + }, + { + "name": "n_delay_tranches", + "type": 4, + "typeName": "u32" + }, + { + "name": "zeroth_delay_tranche_width", + "type": 4, + "typeName": "u32" + }, + { + "name": "needed_approvals", + "type": 4, + "typeName": "u32" + }, + { + "name": "relay_vrf_modulo_samples", + "type": 4, + "typeName": "u32" + }, + { + "name": "pvf_checking_enabled", + "type": 37, + "typeName": "bool" + }, + { + "name": "pvf_voting_ttl", + "type": 4, + "typeName": "SessionIndex" + }, + { + "name": "minimum_validation_upgrade_delay", + "type": 4, + "typeName": "BlockNumber" + } + ] + } + } + } + }, + { + "id": 784, + "type": { + "def": { + "sequence": { + "type": 785 + } + } + } + }, + { + "id": 785, + "type": { + "def": { + "tuple": [ + 4, + 783 + ] + } + } + }, + { + "id": 786, + "type": { + "path": [ + "polkadot_runtime_parachains", + "configuration", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "InvalidNewValue", + "index": 0, + "docs": [ + "The new value for a configuration parameter is invalid." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 787, + "type": { + "def": { + "sequence": { + "type": 439 + } + } + } + }, + { + "id": 788, + "type": { + "def": { + "sequence": { + "type": 382 + } + } + } + }, + { + "id": 789, + "type": { + "path": [ + "polkadot_runtime_parachains", + "inclusion", + "AvailabilityBitfieldRecord" + ], + "params": [ + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "bitfield", + "type": 436, + "typeName": "AvailabilityBitfield" + }, + { + "name": "submitted_at", + "type": 4, + "typeName": "N" + } + ] + } + } + } + }, + { + "id": 790, + "type": { + "path": [ + "polkadot_runtime_parachains", + "inclusion", + "CandidatePendingAvailability" + ], + "params": [ + { + "name": "H", + "type": 12 + }, + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "core", + "type": 100, + "typeName": "CoreIndex" + }, + { + "name": "hash", + "type": 106, + "typeName": "CandidateHash" + }, + { + "name": "descriptor", + "type": 92, + "typeName": "CandidateDescriptor" + }, + { + "name": "availability_votes", + "type": 437, + "typeName": "BitVec" + }, + { + "name": "backers", + "type": 437, + "typeName": "BitVec" + }, + { + "name": "relay_parent_number", + "type": 4, + "typeName": "N" + }, + { + "name": "backed_in_number", + "type": 4, + "typeName": "N" + }, + { + "name": "backing_group", + "type": 101, + "typeName": "GroupIndex" + } + ] + } + } + } + }, + { + "id": 791, + "type": { + "path": [ + "polkadot_runtime_parachains", + "inclusion", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "UnsortedOrDuplicateValidatorIndices", + "index": 0, + "docs": [ + "Validator indices are out of order or contains duplicates." + ] + }, + { + "name": "UnsortedOrDuplicateDisputeStatementSet", + "index": 1, + "docs": [ + "Dispute statement sets are out of order or contain duplicates." + ] + }, + { + "name": "UnsortedOrDuplicateBackedCandidates", + "index": 2, + "docs": [ + "Backed candidates are out of order (core index) or contain duplicates." + ] + }, + { + "name": "UnexpectedRelayParent", + "index": 3, + "docs": [ + "A different relay parent was provided compared to the on-chain stored one." + ] + }, + { + "name": "WrongBitfieldSize", + "index": 4, + "docs": [ + "Availability bitfield has unexpected size." + ] + }, + { + "name": "BitfieldAllZeros", + "index": 5, + "docs": [ + "Bitfield consists of zeros only." + ] + }, + { + "name": "BitfieldDuplicateOrUnordered", + "index": 6, + "docs": [ + "Multiple bitfields submitted by same validator or validators out of order by index." + ] + }, + { + "name": "ValidatorIndexOutOfBounds", + "index": 7, + "docs": [ + "Validator index out of bounds." + ] + }, + { + "name": "InvalidBitfieldSignature", + "index": 8, + "docs": [ + "Invalid signature" + ] + }, + { + "name": "UnscheduledCandidate", + "index": 9, + "docs": [ + "Candidate submitted but para not scheduled." + ] + }, + { + "name": "CandidateScheduledBeforeParaFree", + "index": 10, + "docs": [ + "Candidate scheduled despite pending candidate already existing for the para." + ] + }, + { + "name": "WrongCollator", + "index": 11, + "docs": [ + "Candidate included with the wrong collator." + ] + }, + { + "name": "ScheduledOutOfOrder", + "index": 12, + "docs": [ + "Scheduled cores out of order." + ] + }, + { + "name": "HeadDataTooLarge", + "index": 13, + "docs": [ + "Head data exceeds the configured maximum." + ] + }, + { + "name": "PrematureCodeUpgrade", + "index": 14, + "docs": [ + "Code upgrade prematurely." + ] + }, + { + "name": "NewCodeTooLarge", + "index": 15, + "docs": [ + "Output code is too large" + ] + }, + { + "name": "CandidateNotInParentContext", + "index": 16, + "docs": [ + "Candidate not in parent context." + ] + }, + { + "name": "InvalidGroupIndex", + "index": 17, + "docs": [ + "Invalid group index in core assignment." + ] + }, + { + "name": "InsufficientBacking", + "index": 18, + "docs": [ + "Insufficient (non-majority) backing." + ] + }, + { + "name": "InvalidBacking", + "index": 19, + "docs": [ + "Invalid (bad signature, unknown validator, etc.) backing." + ] + }, + { + "name": "NotCollatorSigned", + "index": 20, + "docs": [ + "Collator did not sign PoV." + ] + }, + { + "name": "ValidationDataHashMismatch", + "index": 21, + "docs": [ + "The validation data hash does not match expected." + ] + }, + { + "name": "IncorrectDownwardMessageHandling", + "index": 22, + "docs": [ + "The downward message queue is not processed correctly." + ] + }, + { + "name": "InvalidUpwardMessages", + "index": 23, + "docs": [ + "At least one upward message sent does not pass the acceptance criteria." + ] + }, + { + "name": "HrmpWatermarkMishandling", + "index": 24, + "docs": [ + "The candidate didn't follow the rules of HRMP watermark advancement." + ] + }, + { + "name": "InvalidOutboundHrmp", + "index": 25, + "docs": [ + "The HRMP messages sent by the candidate is not valid." + ] + }, + { + "name": "InvalidValidationCodeHash", + "index": 26, + "docs": [ + "The validation code hash of the candidate is not valid." + ] + }, + { + "name": "ParaHeadMismatch", + "index": 27, + "docs": [ + "The `para_head` hash in the candidate descriptor doesn't match the hash of the actual para head in the", + "commitments." + ] + }, + { + "name": "BitfieldReferencesFreedCore", + "index": 28, + "docs": [ + "A bitfield that references a freed core,", + "either intentionally or as part of a concluded", + "invalid dispute." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 792, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "ScrapedOnChainVotes" + ], + "params": [ + { + "name": "H", + "type": 12 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "session", + "type": 4, + "typeName": "SessionIndex" + }, + { + "name": "backing_validators_per_candidate", + "type": 793, + "typeName": "Vec<(CandidateReceipt, Vec<(ValidatorIndex, ValidityAttestation)>)\n>" + }, + { + "name": "disputes", + "type": 453, + "typeName": "MultiDisputeStatementSet" + } + ] + } + } + } + }, + { + "id": 793, + "type": { + "def": { + "sequence": { + "type": 794 + } + } + } + }, + { + "id": 794, + "type": { + "def": { + "tuple": [ + 91, + 795 + ] + } + } + }, + { + "id": 795, + "type": { + "def": { + "sequence": { + "type": 796 + } + } + } + }, + { + "id": 796, + "type": { + "def": { + "tuple": [ + 439, + 452 + ] + } + } + }, + { + "id": 797, + "type": { + "path": [ + "polkadot_runtime_parachains", + "paras_inherent", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "TooManyInclusionInherents", + "index": 0, + "docs": [ + "Inclusion inherent called more than once per block." + ] + }, + { + "name": "InvalidParentHeader", + "index": 1, + "docs": [ + "The hash of the submitted parent header doesn't correspond to the saved block hash of", + "the parent." + ] + }, + { + "name": "CandidateConcludedInvalid", + "index": 2, + "docs": [ + "Disputed candidate that was concluded invalid." + ] + }, + { + "name": "InherentOverweight", + "index": 3, + "docs": [ + "The data given to the inherent will result in an overweight block." + ] + }, + { + "name": "DisputeStatementsUnsortedOrDuplicates", + "index": 4, + "docs": [ + "The ordering of dispute statements was invalid." + ] + }, + { + "name": "DisputeInvalid", + "index": 5, + "docs": [ + "A dispute statement was invalid." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 798, + "type": { + "def": { + "sequence": { + "type": 787 + } + } + } + }, + { + "id": 799, + "type": { + "path": [ + "polkadot_runtime_parachains", + "scheduler", + "ParathreadClaimQueue" + ], + "def": { + "composite": { + "fields": [ + { + "name": "queue", + "type": 800, + "typeName": "Vec" + }, + { + "name": "next_core_offset", + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 800, + "type": { + "def": { + "sequence": { + "type": 801 + } + } + } + }, + { + "id": 801, + "type": { + "path": [ + "polkadot_runtime_parachains", + "scheduler", + "QueuedParathread" + ], + "def": { + "composite": { + "fields": [ + { + "name": "claim", + "type": 802, + "typeName": "ParathreadEntry" + }, + { + "name": "core_offset", + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 802, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "ParathreadEntry" + ], + "def": { + "composite": { + "fields": [ + { + "name": "claim", + "type": 803, + "typeName": "ParathreadClaim" + }, + { + "name": "retries", + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 803, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "ParathreadClaim" + ], + "def": { + "composite": { + "fields": [ + { + "type": 93, + "typeName": "Id" + }, + { + "type": 94, + "typeName": "CollatorId" + } + ] + } + } + } + }, + { + "id": 804, + "type": { + "def": { + "sequence": { + "type": 805 + } + } + } + }, + { + "id": 805, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 806 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 806 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 806, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "CoreOccupied" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Parathread", + "fields": [ + { + "type": 802, + "typeName": "ParathreadEntry" + } + ], + "index": 0 + }, + { + "name": "Parachain", + "index": 1 + } + ] + } + } + } + }, + { + "id": 807, + "type": { + "def": { + "sequence": { + "type": 93 + } + } + } + }, + { + "id": 808, + "type": { + "def": { + "sequence": { + "type": 809 + } + } + } + }, + { + "id": 809, + "type": { + "path": [ + "polkadot_runtime_parachains", + "scheduler", + "CoreAssignment" + ], + "def": { + "composite": { + "fields": [ + { + "name": "core", + "type": 100, + "typeName": "CoreIndex" + }, + { + "name": "para_id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "kind", + "type": 810, + "typeName": "AssignmentKind" + }, + { + "name": "group_idx", + "type": 101, + "typeName": "GroupIndex" + } + ] + } + } + } + }, + { + "id": 810, + "type": { + "path": [ + "polkadot_runtime_parachains", + "scheduler", + "AssignmentKind" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Parachain", + "index": 0 + }, + { + "name": "Parathread", + "fields": [ + { + "type": 94, + "typeName": "CollatorId" + }, + { + "type": 4, + "typeName": "u32" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 811, + "type": { + "path": [ + "polkadot_runtime_parachains", + "paras", + "PvfCheckActiveVoteState" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "votes_accept", + "type": 437, + "typeName": "BitVec" + }, + { + "name": "votes_reject", + "type": 437, + "typeName": "BitVec" + }, + { + "name": "age", + "type": 4, + "typeName": "SessionIndex" + }, + { + "name": "created_at", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "causes", + "type": 812, + "typeName": "Vec>" + } + ] + } + } + } + }, + { + "id": 812, + "type": { + "def": { + "sequence": { + "type": 813 + } + } + } + }, + { + "id": 813, + "type": { + "path": [ + "polkadot_runtime_parachains", + "paras", + "PvfCheckCause" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Onboarding", + "fields": [ + { + "type": 93, + "typeName": "ParaId" + } + ], + "index": 0 + }, + { + "name": "Upgrade", + "fields": [ + { + "name": "id", + "type": 93, + "typeName": "ParaId" + }, + { + "name": "relay_parent_number", + "type": 4, + "typeName": "BlockNumber" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 814, + "type": { + "def": { + "sequence": { + "type": 98 + } + } + } + }, + { + "id": 815, + "type": { + "path": [ + "polkadot_runtime_parachains", + "paras", + "ParaLifecycle" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Onboarding", + "index": 0 + }, + { + "name": "Parathread", + "index": 1 + }, + { + "name": "Parachain", + "index": 2 + }, + { + "name": "UpgradingParathread", + "index": 3 + }, + { + "name": "DowngradingParachain", + "index": 4 + }, + { + "name": "OffboardingParathread", + "index": 5 + }, + { + "name": "OffboardingParachain", + "index": 6 + } + ] + } + } + } + }, + { + "id": 816, + "type": { + "def": { + "tuple": [ + 93, + 4 + ] + } + } + }, + { + "id": 817, + "type": { + "path": [ + "polkadot_runtime_parachains", + "paras", + "ParaPastCodeMeta" + ], + "params": [ + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "upgrade_times", + "type": 818, + "typeName": "Vec>" + }, + { + "name": "last_pruned", + "type": 73, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 818, + "type": { + "def": { + "sequence": { + "type": 819 + } + } + } + }, + { + "id": 819, + "type": { + "path": [ + "polkadot_runtime_parachains", + "paras", + "ReplacementTimes" + ], + "params": [ + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "expected_at", + "type": 4, + "typeName": "N" + }, + { + "name": "activated_at", + "type": 4, + "typeName": "N" + } + ] + } + } + } + }, + { + "id": 820, + "type": { + "def": { + "sequence": { + "type": 816 + } + } + } + }, + { + "id": 821, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "UpgradeGoAhead" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Abort", + "index": 0 + }, + { + "name": "GoAhead", + "index": 1 + } + ] + } + } + } + }, + { + "id": 822, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "UpgradeRestriction" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Present", + "index": 0 + } + ] + } + } + } + }, + { + "id": 823, + "type": { + "path": [ + "polkadot_runtime_parachains", + "paras", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NotRegistered", + "index": 0, + "docs": [ + "Para is not registered in our system." + ] + }, + { + "name": "CannotOnboard", + "index": 1, + "docs": [ + "Para cannot be onboarded because it is already tracked by our system." + ] + }, + { + "name": "CannotOffboard", + "index": 2, + "docs": [ + "Para cannot be offboarded at this time." + ] + }, + { + "name": "CannotUpgrade", + "index": 3, + "docs": [ + "Para cannot be upgraded to a parachain." + ] + }, + { + "name": "CannotDowngrade", + "index": 4, + "docs": [ + "Para cannot be downgraded to a parathread." + ] + }, + { + "name": "PvfCheckStatementStale", + "index": 5, + "docs": [ + "The statement for PVF pre-checking is stale." + ] + }, + { + "name": "PvfCheckStatementFuture", + "index": 6, + "docs": [ + "The statement for PVF pre-checking is for a future session." + ] + }, + { + "name": "PvfCheckValidatorIndexOutOfBounds", + "index": 7, + "docs": [ + "Claimed validator index is out of bounds." + ] + }, + { + "name": "PvfCheckInvalidSignature", + "index": 8, + "docs": [ + "The signature for the PVF pre-checking is invalid." + ] + }, + { + "name": "PvfCheckDoubleVote", + "index": 9, + "docs": [ + "The given validator already has cast a vote." + ] + }, + { + "name": "PvfCheckSubjectInvalid", + "index": 10, + "docs": [ + "The given PVF does not exist at the moment of process a vote." + ] + }, + { + "name": "CannotUpgradeCode", + "index": 11, + "docs": [ + "Parachain cannot currently schedule a code upgrade." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 824, + "type": { + "def": { + "sequence": { + "type": 825 + } + } + } + }, + { + "id": 825, + "type": { + "path": [ + "polkadot_runtime_parachains", + "initializer", + "BufferedSessionChange" + ], + "def": { + "composite": { + "fields": [ + { + "name": "validators", + "type": 788, + "typeName": "Vec" + }, + { + "name": "queued", + "type": 788, + "typeName": "Vec" + }, + { + "name": "session_index", + "type": 4, + "typeName": "SessionIndex" + } + ] + } + } + } + }, + { + "id": 826, + "type": { + "def": { + "sequence": { + "type": 827 + } + } + } + }, + { + "id": 827, + "type": { + "path": [ + "polkadot_core_primitives", + "InboundDownwardMessage" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "sent_at", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "msg", + "type": 13, + "typeName": "DownwardMessage" + } + ] + } + } + } + }, + { + "id": 828, + "type": { + "path": [ + "polkadot_runtime_parachains", + "hrmp", + "HrmpOpenChannelRequest" + ], + "def": { + "composite": { + "fields": [ + { + "name": "confirmed", + "type": 37, + "typeName": "bool" + }, + { + "name": "_age", + "type": 4, + "typeName": "SessionIndex" + }, + { + "name": "sender_deposit", + "type": 6, + "typeName": "Balance" + }, + { + "name": "max_message_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_capacity", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_total_size", + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 829, + "type": { + "def": { + "sequence": { + "type": 104 + } + } + } + }, + { + "id": 830, + "type": { + "path": [ + "polkadot_runtime_parachains", + "hrmp", + "HrmpChannel" + ], + "def": { + "composite": { + "fields": [ + { + "name": "max_capacity", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_total_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "max_message_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "msg_count", + "type": 4, + "typeName": "u32" + }, + { + "name": "total_size", + "type": 4, + "typeName": "u32" + }, + { + "name": "mqc_head", + "type": 593, + "typeName": "Option" + }, + { + "name": "sender_deposit", + "type": 6, + "typeName": "Balance" + }, + { + "name": "recipient_deposit", + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 831, + "type": { + "def": { + "sequence": { + "type": 832 + } + } + } + }, + { + "id": 832, + "type": { + "path": [ + "polkadot_core_primitives", + "InboundHrmpMessage" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "sent_at", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "data", + "type": 13, + "typeName": "sp_std::vec::Vec" + } + ] + } + } + } + }, + { + "id": 833, + "type": { + "def": { + "sequence": { + "type": 834 + } + } + } + }, + { + "id": 834, + "type": { + "def": { + "tuple": [ + 4, + 807 + ] + } + } + }, + { + "id": 835, + "type": { + "path": [ + "polkadot_runtime_parachains", + "hrmp", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OpenHrmpChannelToSelf", + "index": 0, + "docs": [ + "The sender tried to open a channel to themselves." + ] + }, + { + "name": "OpenHrmpChannelInvalidRecipient", + "index": 1, + "docs": [ + "The recipient is not a valid para." + ] + }, + { + "name": "OpenHrmpChannelZeroCapacity", + "index": 2, + "docs": [ + "The requested capacity is zero." + ] + }, + { + "name": "OpenHrmpChannelCapacityExceedsLimit", + "index": 3, + "docs": [ + "The requested capacity exceeds the global limit." + ] + }, + { + "name": "OpenHrmpChannelZeroMessageSize", + "index": 4, + "docs": [ + "The requested maximum message size is 0." + ] + }, + { + "name": "OpenHrmpChannelMessageSizeExceedsLimit", + "index": 5, + "docs": [ + "The open request requested the message size that exceeds the global limit." + ] + }, + { + "name": "OpenHrmpChannelAlreadyExists", + "index": 6, + "docs": [ + "The channel already exists" + ] + }, + { + "name": "OpenHrmpChannelAlreadyRequested", + "index": 7, + "docs": [ + "There is already a request to open the same channel." + ] + }, + { + "name": "OpenHrmpChannelLimitExceeded", + "index": 8, + "docs": [ + "The sender already has the maximum number of allowed outbound channels." + ] + }, + { + "name": "AcceptHrmpChannelDoesntExist", + "index": 9, + "docs": [ + "The channel from the sender to the origin doesn't exist." + ] + }, + { + "name": "AcceptHrmpChannelAlreadyConfirmed", + "index": 10, + "docs": [ + "The channel is already confirmed." + ] + }, + { + "name": "AcceptHrmpChannelLimitExceeded", + "index": 11, + "docs": [ + "The recipient already has the maximum number of allowed inbound channels." + ] + }, + { + "name": "CloseHrmpChannelUnauthorized", + "index": 12, + "docs": [ + "The origin tries to close a channel where it is neither the sender nor the recipient." + ] + }, + { + "name": "CloseHrmpChannelDoesntExist", + "index": 13, + "docs": [ + "The channel to be closed doesn't exist." + ] + }, + { + "name": "CloseHrmpChannelAlreadyUnderway", + "index": 14, + "docs": [ + "The channel close request is already requested." + ] + }, + { + "name": "CancelHrmpOpenChannelUnauthorized", + "index": 15, + "docs": [ + "Canceling is requested by neither the sender nor recipient of the open channel request." + ] + }, + { + "name": "OpenHrmpChannelDoesntExist", + "index": 16, + "docs": [ + "The open request doesn't exist." + ] + }, + { + "name": "OpenHrmpChannelAlreadyConfirmed", + "index": 17, + "docs": [ + "Cannot cancel an HRMP open channel request because it is already confirmed." + ] + }, + { + "name": "WrongWitness", + "index": 18, + "docs": [ + "The provided witness data is wrong." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 836, + "type": { + "def": { + "sequence": { + "type": 383 + } + } + } + }, + { + "id": 837, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "SessionInfo" + ], + "def": { + "composite": { + "fields": [ + { + "name": "active_validator_indices", + "type": 787, + "typeName": "Vec" + }, + { + "name": "random_seed", + "type": 1, + "typeName": "[u8; 32]" + }, + { + "name": "dispute_period", + "type": 4, + "typeName": "SessionIndex" + }, + { + "name": "validators", + "type": 838, + "typeName": "IndexedVec" + }, + { + "name": "discovery_keys", + "type": 839, + "typeName": "Vec" + }, + { + "name": "assignment_keys", + "type": 836, + "typeName": "Vec" + }, + { + "name": "validator_groups", + "type": 840, + "typeName": "IndexedVec>" + }, + { + "name": "n_cores", + "type": 4, + "typeName": "u32" + }, + { + "name": "zeroth_delay_tranche_width", + "type": 4, + "typeName": "u32" + }, + { + "name": "relay_vrf_modulo_samples", + "type": 4, + "typeName": "u32" + }, + { + "name": "n_delay_tranches", + "type": 4, + "typeName": "u32" + }, + { + "name": "no_show_slots", + "type": 4, + "typeName": "u32" + }, + { + "name": "needed_approvals", + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 838, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "IndexedVec" + ], + "params": [ + { + "name": "K", + "type": 439 + }, + { + "name": "V", + "type": 382 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 788, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 839, + "type": { + "def": { + "sequence": { + "type": 384 + } + } + } + }, + { + "id": 840, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "IndexedVec" + ], + "params": [ + { + "name": "K", + "type": 101 + }, + { + "name": "V", + "type": 787 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 798, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 841, + "type": { + "def": { + "tuple": [ + 4, + 106 + ] + } + } + }, + { + "id": 842, + "type": { + "path": [ + "polkadot_primitives", + "v4", + "DisputeState" + ], + "params": [ + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "validators_for", + "type": 437, + "typeName": "BitVec" + }, + { + "name": "validators_against", + "type": 437, + "typeName": "BitVec" + }, + { + "name": "start", + "type": 4, + "typeName": "N" + }, + { + "name": "concluded_at", + "type": 73, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 843, + "type": { + "path": [ + "BTreeSet" + ], + "params": [ + { + "name": "T", + "type": 439 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 787 + } + ] + } + } + } + }, + { + "id": 844, + "type": { + "path": [ + "polkadot_runtime_parachains", + "disputes", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "DuplicateDisputeStatementSets", + "index": 0, + "docs": [ + "Duplicate dispute statement sets provided." + ] + }, + { + "name": "AncientDisputeStatement", + "index": 1, + "docs": [ + "Ancient dispute statement provided." + ] + }, + { + "name": "ValidatorIndexOutOfBounds", + "index": 2, + "docs": [ + "Validator index on statement is out of bounds for session." + ] + }, + { + "name": "InvalidSignature", + "index": 3, + "docs": [ + "Invalid signature on statement." + ] + }, + { + "name": "DuplicateStatement", + "index": 4, + "docs": [ + "Validator vote submitted more than once to dispute." + ] + }, + { + "name": "SingleSidedDispute", + "index": 5, + "docs": [ + "A dispute where there are only votes on one side." + ] + }, + { + "name": "MaliciousBacker", + "index": 6, + "docs": [ + "A dispute vote from a malicious backer." + ] + }, + { + "name": "MissingBackingVotes", + "index": 7, + "docs": [ + "No backing votes were provides along dispute statements." + ] + }, + { + "name": "UnconfirmedDispute", + "index": 8, + "docs": [ + "Unconfirmed dispute statement sets provided." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 845, + "type": { + "path": [ + "polkadot_runtime_parachains", + "disputes", + "slashing", + "PendingSlashes" + ], + "def": { + "composite": { + "fields": [ + { + "name": "keys", + "type": 846, + "typeName": "BTreeMap" + }, + { + "name": "kind", + "type": 468, + "typeName": "SlashingOffenceKind" + } + ] + } + } + } + }, + { + "id": 846, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 439 + }, + { + "name": "V", + "type": 382 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 847 + } + ] + } + } + } + }, + { + "id": 847, + "type": { + "def": { + "sequence": { + "type": 848 + } + } + } + }, + { + "id": 848, + "type": { + "def": { + "tuple": [ + 439, + 382 + ] + } + } + }, + { + "id": 849, + "type": { + "path": [ + "polkadot_runtime_parachains", + "disputes", + "slashing", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "InvalidKeyOwnershipProof", + "index": 0, + "docs": [ + "The key ownership proof is invalid." + ] + }, + { + "name": "InvalidSessionIndex", + "index": 1, + "docs": [ + "The session index is too old or invalid." + ] + }, + { + "name": "InvalidCandidateHash", + "index": 2, + "docs": [ + "The candidate hash is invalid." + ] + }, + { + "name": "InvalidValidatorIndex", + "index": 3, + "docs": [ + "There is no pending slash for the given validator index and time", + "slot." + ] + }, + { + "name": "ValidatorIndexIdMismatch", + "index": 4, + "docs": [ + "The validator index does not match the validator id." + ] + }, + { + "name": "DuplicateSlashingReport", + "index": 5, + "docs": [ + "The given slashing report is valid but already previously reported." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 850, + "type": { + "path": [ + "polkadot_runtime_common", + "paras_registrar", + "ParaInfo" + ], + "params": [ + { + "name": "Account", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "manager", + "type": 0, + "typeName": "Account" + }, + { + "name": "deposit", + "type": 6, + "typeName": "Balance" + }, + { + "name": "locked", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 851, + "type": { + "path": [ + "polkadot_runtime_common", + "paras_registrar", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NotRegistered", + "index": 0, + "docs": [ + "The ID is not registered." + ] + }, + { + "name": "AlreadyRegistered", + "index": 1, + "docs": [ + "The ID is already registered." + ] + }, + { + "name": "NotOwner", + "index": 2, + "docs": [ + "The caller is not the owner of this Id." + ] + }, + { + "name": "CodeTooLarge", + "index": 3, + "docs": [ + "Invalid para code size." + ] + }, + { + "name": "HeadDataTooLarge", + "index": 4, + "docs": [ + "Invalid para head data size." + ] + }, + { + "name": "NotParachain", + "index": 5, + "docs": [ + "Para is not a Parachain." + ] + }, + { + "name": "NotParathread", + "index": 6, + "docs": [ + "Para is not a Parathread." + ] + }, + { + "name": "CannotDeregister", + "index": 7, + "docs": [ + "Cannot deregister para" + ] + }, + { + "name": "CannotDowngrade", + "index": 8, + "docs": [ + "Cannot schedule downgrade of parachain to parathread" + ] + }, + { + "name": "CannotUpgrade", + "index": 9, + "docs": [ + "Cannot schedule upgrade of parathread to parachain" + ] + }, + { + "name": "ParaLocked", + "index": 10, + "docs": [ + "Para is locked from manipulation by the manager. Must use parachain or relay chain governance." + ] + }, + { + "name": "NotReserved", + "index": 11, + "docs": [ + "The ID given for registration has not been reserved." + ] + }, + { + "name": "EmptyCode", + "index": 12, + "docs": [ + "Registering parachain with empty code is not allowed." + ] + }, + { + "name": "CannotSwap", + "index": 13, + "docs": [ + "Cannot perform a parachain slot / lifecycle swap. Check that the state of both paras are", + "correct for the swap to work." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 852, + "type": { + "def": { + "sequence": { + "type": 853 + } + } + } + }, + { + "id": 853, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 370 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 370 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 854, + "type": { + "path": [ + "polkadot_runtime_common", + "slots", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ParaNotOnboarding", + "index": 0, + "docs": [ + "The parachain ID is not onboarding." + ] + }, + { + "name": "LeaseError", + "index": 1, + "docs": [ + "There was an error with the lease." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 855, + "type": { + "def": { + "tuple": [ + 0, + 93 + ] + } + } + }, + { + "id": 856, + "type": { + "def": { + "array": { + "len": 36, + "type": 857 + } + } + } + }, + { + "id": 857, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 858 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 858 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 858, + "type": { + "def": { + "tuple": [ + 0, + 93, + 6 + ] + } + } + }, + { + "id": 859, + "type": { + "path": [ + "polkadot_runtime_common", + "auctions", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "AuctionInProgress", + "index": 0, + "docs": [ + "This auction is already in progress." + ] + }, + { + "name": "LeasePeriodInPast", + "index": 1, + "docs": [ + "The lease period is in the past." + ] + }, + { + "name": "ParaNotRegistered", + "index": 2, + "docs": [ + "Para is not registered" + ] + }, + { + "name": "NotCurrentAuction", + "index": 3, + "docs": [ + "Not a current auction." + ] + }, + { + "name": "NotAuction", + "index": 4, + "docs": [ + "Not an auction." + ] + }, + { + "name": "AuctionEnded", + "index": 5, + "docs": [ + "Auction has already ended." + ] + }, + { + "name": "AlreadyLeasedOut", + "index": 6, + "docs": [ + "The para is already leased out for part of this range." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 860, + "type": { + "path": [ + "polkadot_runtime_common", + "crowdloan", + "FundInfo" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "LeasePeriod", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "depositor", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "verifier", + "type": 474, + "typeName": "Option" + }, + { + "name": "deposit", + "type": 6, + "typeName": "Balance" + }, + { + "name": "raised", + "type": 6, + "typeName": "Balance" + }, + { + "name": "end", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "cap", + "type": 6, + "typeName": "Balance" + }, + { + "name": "last_contribution", + "type": 861, + "typeName": "LastContribution" + }, + { + "name": "first_period", + "type": 4, + "typeName": "LeasePeriod" + }, + { + "name": "last_period", + "type": 4, + "typeName": "LeasePeriod" + }, + { + "name": "fund_index", + "type": 4, + "typeName": "FundIndex" + } + ] + } + } + } + }, + { + "id": 861, + "type": { + "path": [ + "polkadot_runtime_common", + "crowdloan", + "LastContribution" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Never", + "index": 0 + }, + { + "name": "PreEnding", + "fields": [ + { + "type": 4, + "typeName": "u32" + } + ], + "index": 1 + }, + { + "name": "Ending", + "fields": [ + { + "type": 4, + "typeName": "BlockNumber" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 862, + "type": { + "path": [ + "polkadot_runtime_common", + "crowdloan", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "FirstPeriodInPast", + "index": 0, + "docs": [ + "The current lease period is more than the first lease period." + ] + }, + { + "name": "FirstPeriodTooFarInFuture", + "index": 1, + "docs": [ + "The first lease period needs to at least be less than 3 `max_value`." + ] + }, + { + "name": "LastPeriodBeforeFirstPeriod", + "index": 2, + "docs": [ + "Last lease period must be greater than first lease period." + ] + }, + { + "name": "LastPeriodTooFarInFuture", + "index": 3, + "docs": [ + "The last lease period cannot be more than 3 periods after the first period." + ] + }, + { + "name": "CannotEndInPast", + "index": 4, + "docs": [ + "The campaign ends before the current block number. The end must be in the future." + ] + }, + { + "name": "EndTooFarInFuture", + "index": 5, + "docs": [ + "The end date for this crowdloan is not sensible." + ] + }, + { + "name": "Overflow", + "index": 6, + "docs": [ + "There was an overflow." + ] + }, + { + "name": "ContributionTooSmall", + "index": 7, + "docs": [ + "The contribution was below the minimum, `MinContribution`." + ] + }, + { + "name": "InvalidParaId", + "index": 8, + "docs": [ + "Invalid fund index." + ] + }, + { + "name": "CapExceeded", + "index": 9, + "docs": [ + "Contributions exceed maximum amount." + ] + }, + { + "name": "ContributionPeriodOver", + "index": 10, + "docs": [ + "The contribution period has already ended." + ] + }, + { + "name": "InvalidOrigin", + "index": 11, + "docs": [ + "The origin of this call is invalid." + ] + }, + { + "name": "NotParachain", + "index": 12, + "docs": [ + "This crowdloan does not correspond to a parachain." + ] + }, + { + "name": "LeaseActive", + "index": 13, + "docs": [ + "This parachain lease is still active and retirement cannot yet begin." + ] + }, + { + "name": "BidOrLeaseActive", + "index": 14, + "docs": [ + "This parachain's bid or lease is still active and withdraw cannot yet begin." + ] + }, + { + "name": "FundNotEnded", + "index": 15, + "docs": [ + "The crowdloan has not yet ended." + ] + }, + { + "name": "NoContributions", + "index": 16, + "docs": [ + "There are no contributions stored in this crowdloan." + ] + }, + { + "name": "NotReadyToDissolve", + "index": 17, + "docs": [ + "The crowdloan is not ready to dissolve. Potentially still has a slot or in retirement period." + ] + }, + { + "name": "InvalidSignature", + "index": 18, + "docs": [ + "Invalid signature." + ] + }, + { + "name": "MemoTooLarge", + "index": 19, + "docs": [ + "The provided memo is too large." + ] + }, + { + "name": "AlreadyInNewRaise", + "index": 20, + "docs": [ + "The fund is already in `NewRaise`" + ] + }, + { + "name": "VrfDelayInProgress", + "index": 21, + "docs": [ + "No contributions allowed during the VRF delay" + ] + }, + { + "name": "NoLeasePeriod", + "index": 22, + "docs": [ + "A lease period has not started yet, due to an offset in the starting block." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 863, + "type": { + "path": [ + "pallet_xcm", + "pallet", + "QueryStatus" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Pending", + "fields": [ + { + "name": "responder", + "type": 166, + "typeName": "VersionedMultiLocation" + }, + { + "name": "maybe_match_querier", + "type": 864, + "typeName": "Option" + }, + { + "name": "maybe_notify", + "type": 865, + "typeName": "Option<(u8, u8)>" + }, + { + "name": "timeout", + "type": 4, + "typeName": "BlockNumber" + } + ], + "index": 0 + }, + { + "name": "VersionNotifier", + "fields": [ + { + "name": "origin", + "type": 166, + "typeName": "VersionedMultiLocation" + }, + { + "name": "is_active", + "type": 37, + "typeName": "bool" + } + ], + "index": 1 + }, + { + "name": "Ready", + "fields": [ + { + "name": "response", + "type": 867, + "typeName": "VersionedResponse" + }, + { + "name": "at", + "type": 4, + "typeName": "BlockNumber" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 864, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 166 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 166 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 865, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 866 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 866 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 866, + "type": { + "def": { + "tuple": [ + 2, + 2 + ] + } + } + }, + { + "id": 867, + "type": { + "path": [ + "xcm", + "VersionedResponse" + ], + "def": { + "variant": { + "variants": [ + { + "name": "V2", + "fields": [ + { + "type": 487, + "typeName": "v2::Response" + } + ], + "index": 2 + }, + { + "name": "V3", + "fields": [ + { + "type": 135, + "typeName": "v3::Response" + } + ], + "index": 3 + } + ] + } + } + } + }, + { + "id": 868, + "type": { + "def": { + "tuple": [ + 4, + 166 + ] + } + } + }, + { + "id": 869, + "type": { + "def": { + "tuple": [ + 11, + 9, + 4 + ] + } + } + }, + { + "id": 870, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 871 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 872, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 871, + "type": { + "def": { + "tuple": [ + 166, + 4 + ] + } + } + }, + { + "id": 872, + "type": { + "def": { + "sequence": { + "type": 871 + } + } + } + }, + { + "id": 873, + "type": { + "path": [ + "pallet_xcm", + "pallet", + "VersionMigrationStage" + ], + "def": { + "variant": { + "variants": [ + { + "name": "MigrateSupportedVersion", + "index": 0 + }, + { + "name": "MigrateVersionNotifiers", + "index": 1 + }, + { + "name": "NotifyCurrentTargets", + "fields": [ + { + "type": 874, + "typeName": "Option>" + } + ], + "index": 2 + }, + { + "name": "MigrateAndNotifyOldTargets", + "index": 3 + } + ] + } + } + } + }, + { + "id": 874, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 13 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 13 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 875, + "type": { + "def": { + "tuple": [ + 4, + 0, + 876 + ] + } + } + }, + { + "id": 876, + "type": { + "path": [ + "xcm", + "VersionedAssetId" + ], + "def": { + "variant": { + "variants": [ + { + "name": "V3", + "fields": [ + { + "type": 131, + "typeName": "v3::AssetId" + } + ], + "index": 3 + } + ] + } + } + } + }, + { + "id": 877, + "type": { + "path": [ + "pallet_xcm", + "pallet", + "RemoteLockedFungibleRecord" + ], + "params": [ + { + "name": "ConsumerIdentifier", + "type": 56 + }, + { + "name": "MaxConsumers", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "amount", + "type": 6, + "typeName": "u128" + }, + { + "name": "owner", + "type": 166, + "typeName": "VersionedMultiLocation" + }, + { + "name": "locker", + "type": 166, + "typeName": "VersionedMultiLocation" + }, + { + "name": "consumers", + "type": 878, + "typeName": "BoundedVec<(ConsumerIdentifier, u128), MaxConsumers>" + } + ] + } + } + } + }, + { + "id": 878, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 879 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 880, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 879, + "type": { + "def": { + "tuple": [ + 56, + 6 + ] + } + } + }, + { + "id": 880, + "type": { + "def": { + "sequence": { + "type": 879 + } + } + } + }, + { + "id": 881, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 882 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 883, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 882, + "type": { + "def": { + "tuple": [ + 6, + 166 + ] + } + } + }, + { + "id": 883, + "type": { + "def": { + "sequence": { + "type": 882 + } + } + } + }, + { + "id": 884, + "type": { + "path": [ + "pallet_xcm", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Unreachable", + "index": 0, + "docs": [ + "The desired destination was unreachable, generally because there is a no way of routing", + "to it." + ] + }, + { + "name": "SendFailure", + "index": 1, + "docs": [ + "There was some other issue (i.e. not to do with routing) in sending the message. Perhaps", + "a lack of space for buffering the message." + ] + }, + { + "name": "Filtered", + "index": 2, + "docs": [ + "The message execution fails the filter." + ] + }, + { + "name": "UnweighableMessage", + "index": 3, + "docs": [ + "The message's weight could not be determined." + ] + }, + { + "name": "DestinationNotInvertible", + "index": 4, + "docs": [ + "The destination `MultiLocation` provided cannot be inverted." + ] + }, + { + "name": "Empty", + "index": 5, + "docs": [ + "The assets to be sent are empty." + ] + }, + { + "name": "CannotReanchor", + "index": 6, + "docs": [ + "Could not re-anchor the assets to declare the fees for the destination chain." + ] + }, + { + "name": "TooManyAssets", + "index": 7, + "docs": [ + "Too many assets have been attempted for transfer." + ] + }, + { + "name": "InvalidOrigin", + "index": 8, + "docs": [ + "Origin is invalid for sending." + ] + }, + { + "name": "BadVersion", + "index": 9, + "docs": [ + "The version of the `Versioned` value used is not able to be interpreted." + ] + }, + { + "name": "BadLocation", + "index": 10, + "docs": [ + "The given location could not be used (e.g. because it cannot be expressed in the", + "desired version of XCM)." + ] + }, + { + "name": "NoSubscription", + "index": 11, + "docs": [ + "The referenced subscription could not be found." + ] + }, + { + "name": "AlreadySubscribed", + "index": 12, + "docs": [ + "The location is invalid since it already has a subscription from us." + ] + }, + { + "name": "InvalidAsset", + "index": 13, + "docs": [ + "Invalid asset for the operation." + ] + }, + { + "name": "LowBalance", + "index": 14, + "docs": [ + "The owner does not own (all) of the asset that they wish to do the operation on." + ] + }, + { + "name": "TooManyLocks", + "index": 15, + "docs": [ + "The asset owner has too many locks on the asset." + ] + }, + { + "name": "AccountNotSovereign", + "index": 16, + "docs": [ + "The given account is not an identifiable sovereign account for any location." + ] + }, + { + "name": "FeesNotMet", + "index": 17, + "docs": [ + "The operation required fees to be paid which the initiator could not meet." + ] + }, + { + "name": "LockNotFound", + "index": 18, + "docs": [ + "A remote lock with the corresponding data could not be found." + ] + }, + { + "name": "InUse", + "index": 19, + "docs": [ + "The unlock operation cannot succeed because there are still consumers of the lock." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 885, + "type": { + "path": [ + "pallet_message_queue", + "BookState" + ], + "params": [ + { + "name": "MessageOrigin", + "type": 168 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "begin", + "type": 4, + "typeName": "PageIndex" + }, + { + "name": "end", + "type": 4, + "typeName": "PageIndex" + }, + { + "name": "count", + "type": 4, + "typeName": "PageIndex" + }, + { + "name": "ready_neighbours", + "type": 886, + "typeName": "Option>" + }, + { + "name": "message_count", + "type": 11, + "typeName": "u64" + }, + { + "name": "size", + "type": 11, + "typeName": "u64" + } + ] + } + } + } + }, + { + "id": 886, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 887 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 887 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 887, + "type": { + "path": [ + "pallet_message_queue", + "Neighbours" + ], + "params": [ + { + "name": "MessageOrigin", + "type": 168 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "prev", + "type": 168, + "typeName": "MessageOrigin" + }, + { + "name": "next", + "type": 168, + "typeName": "MessageOrigin" + } + ] + } + } + } + }, + { + "id": 888, + "type": { + "def": { + "tuple": [ + 168, + 4 + ] + } + } + }, + { + "id": 889, + "type": { + "path": [ + "pallet_message_queue", + "Page" + ], + "params": [ + { + "name": "Size", + "type": 4 + }, + { + "name": "HeapSize", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "remaining", + "type": 4, + "typeName": "Size" + }, + { + "name": "remaining_size", + "type": 4, + "typeName": "Size" + }, + { + "name": "first_index", + "type": 4, + "typeName": "Size" + }, + { + "name": "first", + "type": 4, + "typeName": "Size" + }, + { + "name": "last", + "type": 4, + "typeName": "Size" + }, + { + "name": "heap", + "type": 890, + "typeName": "BoundedVec>" + } + ] + } + } + } + }, + { + "id": 890, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 891, + "type": { + "path": [ + "pallet_message_queue", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NotReapable", + "index": 0, + "docs": [ + "Page is not reapable because it has items remaining to be processed and is not old", + "enough." + ] + }, + { + "name": "NoPage", + "index": 1, + "docs": [ + "Page to be reaped does not exist." + ] + }, + { + "name": "NoMessage", + "index": 2, + "docs": [ + "The referenced message could not be found." + ] + }, + { + "name": "AlreadyProcessed", + "index": 3, + "docs": [ + "The message was already processed and cannot be processed again." + ] + }, + { + "name": "Queued", + "index": 4, + "docs": [ + "The message is queued for future execution." + ] + }, + { + "name": "InsufficientWeight", + "index": 5, + "docs": [ + "There is temporarily not enough weight to continue servicing messages." + ] + }, + { + "name": "TemporarilyUnprocessable", + "index": 6, + "docs": [ + "This message is temporarily unprocessable.", + "", + "Such errors are expected, but not guaranteed, to resolve themselves eventually through", + "retrying." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 892, + "type": { + "path": [ + "polkadot_runtime_common", + "paras_sudo_wrapper", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ParaDoesntExist", + "index": 0, + "docs": [ + "The specified parachain or parathread is not registered." + ] + }, + { + "name": "ParaAlreadyExists", + "index": 1, + "docs": [ + "The specified parachain or parathread is already registered." + ] + }, + { + "name": "ExceedsMaxMessageSize", + "index": 2, + "docs": [ + "A DMP message couldn't be sent because it exceeds the maximum size allowed for a downward", + "message." + ] + }, + { + "name": "CouldntCleanup", + "index": 3, + "docs": [ + "Could not schedule para cleanup." + ] + }, + { + "name": "NotParathread", + "index": 4, + "docs": [ + "Not a parathread." + ] + }, + { + "name": "NotParachain", + "index": 5, + "docs": [ + "Not a parachain." + ] + }, + { + "name": "CannotUpgrade", + "index": 6, + "docs": [ + "Cannot upgrade parathread." + ] + }, + { + "name": "CannotDowngrade", + "index": 7, + "docs": [ + "Cannot downgrade parachain." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 893, + "type": { + "path": [ + "polkadot_runtime_common", + "assigned_slots", + "ParachainTemporarySlot" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "LeasePeriod", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "manager", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "period_begin", + "type": 4, + "typeName": "LeasePeriod" + }, + { + "name": "period_count", + "type": 4, + "typeName": "LeasePeriod" + }, + { + "name": "last_lease", + "type": 73, + "typeName": "Option" + }, + { + "name": "lease_count", + "type": 4, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 894, + "type": { + "path": [ + "polkadot_runtime_common", + "assigned_slots", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ParaDoesntExist", + "index": 0, + "docs": [ + "The specified parachain or parathread is not registered." + ] + }, + { + "name": "NotParathread", + "index": 1, + "docs": [ + "Not a parathread." + ] + }, + { + "name": "CannotUpgrade", + "index": 2, + "docs": [ + "Cannot upgrade parathread." + ] + }, + { + "name": "CannotDowngrade", + "index": 3, + "docs": [ + "Cannot downgrade parachain." + ] + }, + { + "name": "SlotAlreadyAssigned", + "index": 4, + "docs": [ + "Permanent or Temporary slot already assigned." + ] + }, + { + "name": "SlotNotAssigned", + "index": 5, + "docs": [ + "Permanent or Temporary slot has not been assigned." + ] + }, + { + "name": "OngoingLeaseExists", + "index": 6, + "docs": [ + "An ongoing lease already exists." + ] + }, + { + "name": "MaxPermanentSlotsExceeded", + "index": 7 + }, + { + "name": "MaxTemporarySlotsExceeded", + "index": 8 + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 895, + "type": { + "def": { + "tuple": [ + 6, + 6, + 0 + ] + } + } + }, + { + "id": 896, + "type": { + "def": { + "tuple": [ + 6, + 6 + ] + } + } + }, + { + "id": 897, + "type": { + "def": { + "tuple": [ + 6, + 0 + ] + } + } + }, + { + "id": 898, + "type": { + "def": { + "tuple": [ + 6, + 77, + 201 + ] + } + } + }, + { + "id": 899, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 900, + "type": { + "path": [ + "ep_core", + "frame", + "migrations", + "Migration" + ], + "params": [ + { + "name": "MaxMigrationKeyLength", + "type": 901 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "stage", + "type": 243, + "typeName": "MigrationStage" + }, + { + "name": "last_iterated_key", + "type": 902, + "typeName": "Option>" + } + ] + } + } + } + }, + { + "id": 901, + "type": { + "path": [ + "enjin_runtime", + "MaxMigrationKeyLength" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 902, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 899 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 899 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 903, + "type": { + "path": [ + "ep_multi_tokens", + "types", + "NativeAssetInfo" + ], + "params": [ + { + "name": "AssetId", + "type": 177 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "id", + "type": 177, + "typeName": "AssetId" + }, + { + "name": "units_per_second", + "type": 6, + "typeName": "u128" + } + ] + } + } + } + }, + { + "id": 904, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 905 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 907, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 905, + "type": { + "path": [ + "ep_core", + "frame", + "types", + "ExtrinsicInfo" + ], + "params": [ + { + "name": "MaxNameLength", + "type": 272 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "pallet_name", + "type": 271, + "typeName": "BoundedString" + }, + { + "name": "extrinsic_name", + "type": 906, + "typeName": "Option>" + } + ] + } + } + } + }, + { + "id": 906, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 271 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 271 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 907, + "type": { + "def": { + "sequence": { + "type": 905 + } + } + } + }, + { + "id": 908, + "type": { + "path": [ + "pallet_multi_tokens", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "CollectionNotFound", + "index": 0, + "docs": [ + "Collection was not found" + ] + }, + { + "name": "CollectionAccountNotFound", + "index": 1, + "docs": [ + "CollectionAccount was not found" + ] + }, + { + "name": "TokenNotFound", + "index": 2, + "docs": [ + "Token was not found" + ] + }, + { + "name": "TokenAccountNotFound", + "index": 3, + "docs": [ + "TokenAccount was not found" + ] + }, + { + "name": "NoPermission", + "index": 4, + "docs": [ + "Caller is not allowed to execute this extrinsic" + ] + }, + { + "name": "BalanceLow", + "index": 5, + "docs": [ + "Not enough balance to perform the operation." + ] + }, + { + "name": "Frozen", + "index": 6, + "docs": [ + "The operation failed due to an item being frozen" + ] + }, + { + "name": "HasNeverFreezeState", + "index": 7, + "docs": [ + "The token has a never freeze state. The state cannot be changed and the token cannot be", + "frozen." + ] + }, + { + "name": "PermanentlyFrozen", + "index": 8, + "docs": [ + "The token is permanently frozen" + ] + }, + { + "name": "InvalidFreezeState", + "index": 9, + "docs": [ + "The freeze state is not valid" + ] + }, + { + "name": "AmountZero", + "index": 10, + "docs": [ + "An amount of zero was used when it's not allowed" + ] + }, + { + "name": "InvalidAttributeKey", + "index": 11, + "docs": [ + "Attribute key invalid" + ] + }, + { + "name": "MaxTokenCountExceeded", + "index": 12, + "docs": [ + "Tried to mint more tokens than allowed" + ] + }, + { + "name": "TokenMintCapExceeded", + "index": 13, + "docs": [ + "The cap for the token was exceeded during mint" + ] + }, + { + "name": "TokenAlreadyExists", + "index": 14, + "docs": [ + "Tried to create Token that already exists" + ] + }, + { + "name": "DestroyForbiddenByAttributeCount", + "index": 15, + "docs": [ + "The collection or token cannot be destroyed because it has attributes" + ] + }, + { + "name": "DestroyForbiddenByRemainingTokens", + "index": 16, + "docs": [ + "Destroy is not allowed on collections that have tokens. Destroy all tokens before", + "calling [`destroy_collection`](Pallet::destroy_collection). Keep in mind that the", + "[`Tokens`] storage can remain even if all of [`Token`](ep_multi_tokens::Token)'s units", + "were burned. A token can only be destroyed by setting", + "[`remove_token_storage`](OnBurnInput::remove_token_storage) to true in", + "[`burn`](Pallet::burn)." + ] + }, + { + "name": "DestroyForbiddenByCollectionEvent", + "index": 17, + "docs": [ + "The `OnCollectionEvent` trait has forbidden burning of the collection" + ] + }, + { + "name": "DepositReserveFailed", + "index": 18, + "docs": [ + "Unable to reserve the amount to create a new collection/token" + ] + }, + { + "name": "DepositUnreserveFailed", + "index": 19, + "docs": [ + "Unable to unreserve the amount to burn an existing collection/token" + ] + }, + { + "name": "InvalidUnitPrice", + "index": 20, + "docs": [ + "The unit price cannot be zero, cannot decrease, and `unit_price * total_supply` must", + "be greater than `TokenAccountDeposit`" + ] + }, + { + "name": "BalanceBelowMinimumRequirement", + "index": 21, + "docs": [ + "The balance is below the minimum required balance" + ] + }, + { + "name": "MintFailedRequirements", + "index": 22, + "docs": [ + "The minting did not meet the requirements set by the mint policy" + ] + }, + { + "name": "IdleOperationQueueFull", + "index": 23, + "docs": [ + "The idle operation queue is full and cannot accept new operations" + ] + }, + { + "name": "ReservesLow", + "index": 24, + "docs": [ + "Reserved balance is not enough to perform the operation" + ] + }, + { + "name": "TooManyReserves", + "index": 25, + "docs": [ + "Max named reserves for an account are exceeded" + ] + }, + { + "name": "TooManyLocks", + "index": 26, + "docs": [ + "Max named locks for an account are exceeded" + ] + }, + { + "name": "LiquidityRestrictions", + "index": 27, + "docs": [ + "The balance is locked or restricted" + ] + }, + { + "name": "PercentageOutOfBounds", + "index": 28, + "docs": [ + "Royalty percentage is above or below allowed bounds" + ] + }, + { + "name": "CurrencyIncompatibleWithCollectionRoyalty", + "index": 29, + "docs": [ + "Token cannot act as both a currency and a royalty" + ] + }, + { + "name": "MaxApprovalsExceeded", + "index": 30, + "docs": [ + "The max number of approvals for this account was exceeded" + ] + }, + { + "name": "AlreadyExpired", + "index": 31, + "docs": [ + "Tried to set an expiration that has already passed" + ] + }, + { + "name": "CollectionAlreadyApproved", + "index": 32, + "docs": [ + "The collection is already approved for all, so it is useless to approve for a single", + "token" + ] + }, + { + "name": "InsufficientAllowance", + "index": 33, + "docs": [ + "Not enough allowance to perform the operation" + ] + }, + { + "name": "WrongCurrentApprovedAmount", + "index": 34, + "docs": [ + "The passed `current_amount` does not match the actual current amount of the approval" + ] + }, + { + "name": "CannotApproveSelf", + "index": 35, + "docs": [ + "An account cannot approve itself as an operator" + ] + }, + { + "name": "CannotTransferToSelf", + "index": 36, + "docs": [ + "An account cannot transfer tokens to itself" + ] + }, + { + "name": "TransferParamCreationFailed", + "index": 37, + "docs": [ + "Transfer params could not be created" + ] + }, + { + "name": "OperationNotAllowedForNativeToken", + "index": 38, + "docs": [ + "This operation is not allowed for the native token" + ] + }, + { + "name": "InvalidExplicitRoyaltyCurrencies", + "index": 39, + "docs": [ + "One or more of the explicit royalty currencies are invalid" + ] + }, + { + "name": "InvalidAttributeCount", + "index": 40, + "docs": [ + "Provided attribute count doesnt match the count is storage" + ] + }, + { + "name": "ConflictingLocation", + "index": 41, + "docs": [ + "Conflicting MultiLocation for an AssetId" + ] + }, + { + "name": "CollectionIdAlreadyInUse", + "index": 42, + "docs": [ + "Collection ID is already in use" + ] + }, + { + "name": "FreezeStateRequired", + "index": 43, + "docs": [ + "Freeze state is required when freezing a token" + ] + }, + { + "name": "PremintExceeded", + "index": 44, + "docs": [ + "The preminted amount would be exceeded by the mint operation" + ] + }, + { + "name": "TokenMetadataCreationFailed", + "index": 45, + "docs": [ + "Token metadata could not be created from mint params" + ] + }, + { + "name": "NoClaimAvailable", + "index": 46, + "docs": [ + "There is nothing to claim" + ] + }, + { + "name": "InvalidEthereumSignature", + "index": 47, + "docs": [ + "The ethereum signature is invalid" + ] + }, + { + "name": "InvalidEthereumAddress", + "index": 48, + "docs": [ + "The ethereum address does not match the signature" + ] + }, + { + "name": "EthereumCollectionIdConversionFailed", + "index": 49, + "docs": [ + "The ethereum collection id could not be converted to a native collection id" + ] + }, + { + "name": "TokenIdReservedForClaim", + "index": 50, + "docs": [ + "The token id cannot be minted because it's reserved for claiming" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 909, + "type": { + "path": [ + "pallet_fuel_tanks", + "types", + "FuelTank" + ], + "params": [ + { + "name": "Name", + "type": 250 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "DispatchRuleSets", + "type": 910 + }, + { + "name": "AccountRuleSets", + "type": 929 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "owner", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "name", + "type": 250, + "typeName": "Name" + }, + { + "name": "rule_sets", + "type": 910, + "typeName": "DispatchRuleSets" + }, + { + "name": "total_reserved", + "type": 63, + "typeName": "Balance" + }, + { + "name": "account_count", + "type": 119, + "typeName": "u32" + }, + { + "name": "user_account_management", + "type": 256, + "typeName": "Option" + }, + { + "name": "is_frozen", + "type": 37, + "typeName": "bool" + }, + { + "name": "provides_deposit", + "type": 37, + "typeName": "bool" + }, + { + "name": "account_rules", + "type": 929, + "typeName": "AccountRuleSets" + } + ] + } + } + } + }, + { + "id": 910, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 4 + }, + { + "name": "V", + "type": 911 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 926, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 911, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "RuleSet" + ], + "params": [ + { + "name": "Rule", + "type": 912 + }, + { + "name": "MaxRules", + "type": 561 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "rules", + "type": 922, + "typeName": "BoundedBTreeMap" + }, + { + "name": "is_frozen", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 912, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "DispatchRuleWrapper" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "WhitelistedCallers", + "fields": [ + { + "type": 262, + "typeName": "WhitelistedCallersRuleOf" + } + ], + "index": 0 + }, + { + "name": "WhitelistedCollections", + "fields": [ + { + "type": 545, + "typeName": "WhitelistedCollectionsRuleOf" + } + ], + "index": 1 + }, + { + "name": "MaxFuelBurnPerTransaction", + "fields": [ + { + "type": 548, + "typeName": "MaxFuelBurnPerTransactionRuleOf" + } + ], + "index": 2 + }, + { + "name": "UserFuelBudget", + "fields": [ + { + "type": 913, + "typeName": "UserFuelBudgetRuleOf" + } + ], + "index": 3 + }, + { + "name": "TankFuelBudget", + "fields": [ + { + "type": 914, + "typeName": "TankFuelBudgetRuleOf" + } + ], + "index": 4 + }, + { + "name": "RequireToken", + "fields": [ + { + "type": 266, + "typeName": "RequireTokenRuleOf" + } + ], + "index": 5 + }, + { + "name": "PermittedCalls", + "fields": [ + { + "type": 552, + "typeName": "PermittedCallsRuleOf" + } + ], + "index": 6 + }, + { + "name": "PermittedExtrinsics", + "fields": [ + { + "type": 915, + "typeName": "PermittedExtrinsicsRuleOf" + } + ], + "index": 7 + } + ] + } + } + } + }, + { + "id": 913, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "user_fuel_budget", + "UserFuelBudgetRule" + ], + "params": [ + { + "name": "Budget", + "type": 550 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "budget", + "type": 550, + "typeName": "Budget" + }, + { + "name": "user_count", + "type": 119, + "typeName": "u32" + } + ] + } + } + } + }, + { + "id": 914, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "tank_fuel_budget", + "TankFuelBudgetRule" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "budget", + "type": 550, + "typeName": "Budget" + }, + { + "name": "consumption", + "type": 269, + "typeName": "Consumption" + } + ] + } + } + } + }, + { + "id": 915, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "permitted_extrinsics", + "PermittedExtrinsicsRule" + ], + "params": [ + { + "name": "ExtrinsicInfo", + "type": 916 + }, + { + "name": "Max", + "type": 559 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 920, + "typeName": "BoundedVec" + } + ] + } + } + } + }, + { + "id": 916, + "type": { + "path": [ + "pallet_fuel_tanks", + "types", + "ExtrinsicInfo" + ], + "params": [ + { + "name": "MaxNameLength", + "type": 917 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "pallet_name", + "type": 918, + "typeName": "BoundedString" + }, + { + "name": "extrinsic_name", + "type": 918, + "typeName": "BoundedString" + } + ] + } + } + } + }, + { + "id": 917, + "type": { + "path": [ + "enjin_runtime", + "MaxExtrinsicNameLength" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 918, + "type": { + "path": [ + "ep_core", + "frame", + "types", + "BoundedString" + ], + "params": [ + { + "name": "MaxLength", + "type": 917 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 919, + "typeName": "BoundedVec" + } + ] + } + } + } + }, + { + "id": 919, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 920, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 916 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 921, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 921, + "type": { + "def": { + "sequence": { + "type": 916 + } + } + } + }, + { + "id": 922, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 268 + }, + { + "name": "V", + "type": 912 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 923, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 923, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 268 + }, + { + "name": "V", + "type": 912 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 924 + } + ] + } + } + } + }, + { + "id": 924, + "type": { + "def": { + "sequence": { + "type": 925 + } + } + } + }, + { + "id": 925, + "type": { + "def": { + "tuple": [ + 268, + 912 + ] + } + } + }, + { + "id": 926, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 4 + }, + { + "name": "V", + "type": 911 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 927 + } + ] + } + } + } + }, + { + "id": 927, + "type": { + "def": { + "sequence": { + "type": 928 + } + } + } + }, + { + "id": 928, + "type": { + "def": { + "tuple": [ + 4, + 911 + ] + } + } + }, + { + "id": 929, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 930 + }, + { + "name": "V", + "type": 931 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 932, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 930, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "AccountRuleKind" + ], + "def": { + "variant": { + "variants": [ + { + "name": "WhitelistedCallers", + "index": 0 + }, + { + "name": "RequireToken", + "index": 1 + } + ] + } + } + } + }, + { + "id": 931, + "type": { + "path": [ + "pallet_fuel_tanks", + "rules", + "AccountRuleWrapper" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "WhitelistedCallers", + "fields": [ + { + "type": 262, + "typeName": "WhitelistedCallersRuleOf" + } + ], + "index": 0 + }, + { + "name": "RequireToken", + "fields": [ + { + "type": 266, + "typeName": "RequireTokenRuleOf" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 932, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 930 + }, + { + "name": "V", + "type": 931 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 933 + } + ] + } + } + } + }, + { + "id": 933, + "type": { + "def": { + "sequence": { + "type": 934 + } + } + } + }, + { + "id": 934, + "type": { + "def": { + "tuple": [ + 930, + 931 + ] + } + } + }, + { + "id": 935, + "type": { + "def": { + "tuple": [ + 0, + 0 + ] + } + } + }, + { + "id": 936, + "type": { + "path": [ + "pallet_fuel_tanks", + "types", + "UserAccount" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "RuleSetId", + "type": 4 + }, + { + "name": "MaxRuleSets", + "type": 937 + }, + { + "name": "MaxRuleCount", + "type": 561 + }, + { + "name": "MaxRuleDataLength", + "type": 938 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "tank_deposit", + "type": 63, + "typeName": "Balance" + }, + { + "name": "user_deposit", + "type": 63, + "typeName": "Balance" + }, + { + "name": "rule_data_sets", + "type": 939, + "typeName": "BoundedBTreeMap, MaxRuleCount>, MaxRuleSets,>" + } + ] + } + } + } + }, + { + "id": 937, + "type": { + "path": [ + "enjin_runtime", + "MaxRuleSets" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 938, + "type": { + "path": [ + "enjin_runtime", + "MaxAccountRuleDataLength" + ], + "def": { + "composite": {} + } + } + }, + { + "id": 939, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 4 + }, + { + "name": "V", + "type": 940 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 945, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 940, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 268 + }, + { + "name": "V", + "type": 941 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 942, + "typeName": "BTreeMap" + } + ] + } + } + } + }, + { + "id": 941, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 942, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 268 + }, + { + "name": "V", + "type": 941 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 943 + } + ] + } + } + } + }, + { + "id": 943, + "type": { + "def": { + "sequence": { + "type": 944 + } + } + } + }, + { + "id": 944, + "type": { + "def": { + "tuple": [ + 268, + 941 + ] + } + } + }, + { + "id": 945, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 4 + }, + { + "name": "V", + "type": 940 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 946 + } + ] + } + } + } + }, + { + "id": 946, + "type": { + "def": { + "sequence": { + "type": 947 + } + } + } + }, + { + "id": 947, + "type": { + "def": { + "tuple": [ + 4, + 940 + ] + } + } + }, + { + "id": 948, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 949 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 950, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 949, + "type": { + "path": [ + "pallet_fuel_tanks", + "types", + "FreezeQueueItem" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "RuleSetId", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "tank_id", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "rule_set_id", + "type": 73, + "typeName": "Option" + }, + { + "name": "is_frozen", + "type": 37, + "typeName": "bool" + } + ] + } + } + } + }, + { + "id": 950, + "type": { + "def": { + "sequence": { + "type": 949 + } + } + } + }, + { + "id": 951, + "type": { + "path": [ + "pallet_fuel_tanks", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "FuelTankNotFound", + "index": 0, + "docs": [ + "Fuel Tank not found" + ] + }, + { + "name": "FuelTankAlreadyExists", + "index": 1, + "docs": [ + "Fuel Tank already exists" + ] + }, + { + "name": "InsufficientBalance", + "index": 2, + "docs": [ + "Not enough funds to perform operation" + ] + }, + { + "name": "UsageRestricted", + "index": 3, + "docs": [ + "Fuel tank cannot be used due to restrictions" + ] + }, + { + "name": "FuelTankOutOfFunds", + "index": 4, + "docs": [ + "Fuel tank doesnt have enough funds" + ] + }, + { + "name": "RuleSetNotFound", + "index": 5, + "docs": [ + "The rule set does not exist" + ] + }, + { + "name": "RuleNotFound", + "index": 6, + "docs": [ + "The rule is missing" + ] + }, + { + "name": "NoPermission", + "index": 7, + "docs": [ + "User does not have permission to perform operation" + ] + }, + { + "name": "AccountAlreadyExists", + "index": 8, + "docs": [ + "The account already exists" + ] + }, + { + "name": "AccountNotFound", + "index": 9, + "docs": [ + "The account was not found" + ] + }, + { + "name": "DestroyWithExistingAccounts", + "index": 10, + "docs": [ + "Destroying fuel tank is not possible while it has existing accounts attached" + ] + }, + { + "name": "DestroyUnfrozenTank", + "index": 11, + "docs": [ + "Destroying fuel tank is not possible while it is not frozen" + ] + }, + { + "name": "MaxRuleSetsExceeded", + "index": 12, + "docs": [ + "Max number of rules sets per fuel tank was exceeded" + ] + }, + { + "name": "UserRuleDataExceededMaxSize", + "index": 13, + "docs": [ + "The size of the user rule data is greater than the allowed amount" + ] + }, + { + "name": "DecodeUserRuleDataFailed", + "index": 14, + "docs": [ + "The user rule data could not be decoded" + ] + }, + { + "name": "FreezeQueueFull", + "index": 15, + "docs": [ + "The queue for fuel tank and rule set freezing is full" + ] + }, + { + "name": "RequiresFrozenTankOrRuleset", + "index": 16, + "docs": [ + "Either the tank or ruleset must be frozen for this operation" + ] + }, + { + "name": "RequiresFrozenTank", + "index": 17, + "docs": [ + "The fuel tank must be frozen for this operation" + ] + }, + { + "name": "MissingRequiredRule", + "index": 18, + "docs": [ + "A rule that is required for this operation does not exist" + ] + }, + { + "name": "MissingRequiredRuleUserData", + "index": 19, + "docs": [ + "User data for the required rule does not exist" + ] + }, + { + "name": "InvalidRuleSet", + "index": 20, + "docs": [ + "The rule set of the fuel tank is misconfigured. This error should never occur." + ] + }, + { + "name": "AccountContainsRuleData", + "index": 21, + "docs": [ + "A user cannot remove an account that is storing data for a rule" + ] + }, + { + "name": "CannotRemoveRuleThatIsStoringAccountData", + "index": 22, + "docs": [ + "A rule cannot be removed from a rule set if it is storing data on any account" + ] + }, + { + "name": "DuplicateRuleKinds", + "index": 23, + "docs": [ + "A fuel tank cannot have more than one rule of the same kind" + ] + }, + { + "name": "MintDepositCalculationError", + "index": 24, + "docs": [ + "Problems calculating the mint deposit for a call" + ] + }, + { + "name": "FuelTankFrozen", + "index": 25, + "docs": [ + "The fuel tank is frozen" + ] + }, + { + "name": "CallerDoesNotHaveRuleSetTokenBalance", + "index": 26, + "docs": [ + "The user does not have the token required by rule set" + ] + }, + { + "name": "NoDataToRemove", + "index": 27, + "docs": [ + "The user does not have any data stored for rule set" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 952, + "type": { + "path": [ + "pallet_extrinsic_pause", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "CannotPauseSelf", + "index": 0, + "docs": [ + "Cannot pause this pallet or it's extrinsic" + ] + }, + { + "name": "CannotProcessInput", + "index": 1, + "docs": [ + "Cannot read the pallet or extrinsic name" + ] + } + ] + } + }, + "docs": [ + "Pallet's error type." + ] + } + }, + { + "id": 953, + "type": { + "path": [ + "pallet_marketplace", + "types", + "MarketPlaceInfo" + ], + "def": { + "composite": { + "fields": [ + { + "name": "protocol_fee", + "type": 44, + "typeName": "Perbill" + } + ] + } + } + } + }, + { + "id": 954, + "type": { + "path": [ + "pallet_marketplace", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "UnableToFill", + "index": 0, + "docs": [ + "the order cannot be filled" + ] + }, + { + "name": "ListingNotFound", + "index": 1, + "docs": [ + "The listing does not exist" + ] + }, + { + "name": "NoPermission", + "index": 2, + "docs": [ + "The caller does not have permission for this operation" + ] + }, + { + "name": "MaxRoundingErrorExceeded", + "index": 3, + "docs": [ + "The max rounding error was exceeded" + ] + }, + { + "name": "LowBaseCurrencyBalance", + "index": 4, + "docs": [ + "The base currency balance is too low" + ] + }, + { + "name": "LowTokenBalance", + "index": 5, + "docs": [ + "The token balance is too low" + ] + }, + { + "name": "TransferParamCreationFailed", + "index": 6, + "docs": [ + "Transfer params could not be created" + ] + }, + { + "name": "TakeValueUnderMinimum", + "index": 7, + "docs": [ + "The take value is under the minimum requirement" + ] + }, + { + "name": "ListingAlreadyExists", + "index": 8, + "docs": [ + "A listing with this id already exists" + ] + }, + { + "name": "InvalidAuctionStart", + "index": 9, + "docs": [ + "The start time of the auction must be greater than the current block plus the", + "minimum requirement" + ] + }, + { + "name": "InvalidAuctionEnd", + "index": 10, + "docs": [ + "The end time of the auction must be after the start" + ] + }, + { + "name": "InactiveAuction", + "index": 11, + "docs": [ + "Cannot bid on an auction that has not started or is over" + ] + }, + { + "name": "AuctionNotOver", + "index": 12, + "docs": [ + "Cannot finalize an auction that is not over" + ] + }, + { + "name": "ListingIsWrongType", + "index": 13, + "docs": [ + "An action was taken that is not compatible with the listing's type." + ] + }, + { + "name": "InvalidAmount", + "index": 14, + "docs": [ + "The amount is invalid" + ] + }, + { + "name": "InvalidPrice", + "index": 15, + "docs": [ + "The price is invalid" + ] + }, + { + "name": "ListingForbidden", + "index": 16, + "docs": [ + "Listing is forbidden for this token" + ] + }, + { + "name": "NoCurrency", + "index": 17, + "docs": [ + "Neither the make side or the take side of the listing is considered a currency" + ] + }, + { + "name": "ListingNotActive", + "index": 18, + "docs": [ + "The listing has not crossed the mandatory delay before its considered active" + ] + }, + { + "name": "CurrencyNotAllowedAsRoyalty", + "index": 19, + "docs": [ + "The currency is not allowed to be used as a royalty payment" + ] + }, + { + "name": "BuyerIsSeller", + "index": 20, + "docs": [ + "The seller is not allowed to buy their own listing" + ] + } + ] + } + }, + "docs": [ + "The error for this pallet" + ] + } + }, + { + "id": 955, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 575 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 956, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 956, + "type": { + "def": { + "sequence": { + "type": 575 + } + } + } + }, + { + "id": 957, + "type": { + "path": [ + "pallet_beefy", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "InvalidKeyOwnershipProof", + "index": 0, + "docs": [ + "A key ownership proof provided as part of an equivocation report is invalid." + ] + }, + { + "name": "InvalidEquivocationProof", + "index": 1, + "docs": [ + "An equivocation proof provided as part of an equivocation report is invalid." + ] + }, + { + "name": "DuplicateOffenceReport", + "index": 2, + "docs": [ + "A given equivocation report is valid but already previously reported." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 958, + "type": { + "path": [ + "sp_consensus_beefy", + "mmr", + "BeefyAuthoritySet" + ], + "params": [ + { + "name": "MerkleRoot", + "type": 12 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "id", + "type": 11, + "typeName": "crate::ValidatorSetId" + }, + { + "name": "len", + "type": 4, + "typeName": "u32" + }, + { + "name": "root", + "type": 12, + "typeName": "MerkleRoot" + } + ] + } + } + } + }, + { + "id": 959, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 960 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 962, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 960, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 961 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 961 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 961, + "type": { + "path": [ + "pallet_scheduler", + "Scheduled" + ], + "params": [ + { + "name": "Name", + "type": 1 + }, + { + "name": "Call", + "type": 291 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "PalletsOrigin", + "type": 415 + }, + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "maybe_id", + "type": 286, + "typeName": "Option" + }, + { + "name": "priority", + "type": 2, + "typeName": "schedule::Priority" + }, + { + "name": "call", + "type": 291, + "typeName": "Call" + }, + { + "name": "maybe_periodic", + "type": 584, + "typeName": "Option>" + }, + { + "name": "origin", + "type": 415, + "typeName": "PalletsOrigin" + } + ] + } + } + } + }, + { + "id": 962, + "type": { + "def": { + "sequence": { + "type": 960 + } + } + } + }, + { + "id": 963, + "type": { + "path": [ + "pallet_scheduler", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "FailedToSchedule", + "index": 0, + "docs": [ + "Failed to schedule a call" + ] + }, + { + "name": "NotFound", + "index": 1, + "docs": [ + "Cannot find the scheduled call." + ] + }, + { + "name": "TargetBlockNumberInPast", + "index": 2, + "docs": [ + "Given target block number is in the past." + ] + }, + { + "name": "RescheduleNoChange", + "index": 3, + "docs": [ + "Reschedule failed because it does not change scheduled time." + ] + }, + { + "name": "Named", + "index": 4, + "docs": [ + "Attempt to use a non-named function on a named task." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 964, + "type": { + "path": [ + "pallet_preimage", + "RequestStatus" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Unrequested", + "fields": [ + { + "name": "deposit", + "type": 370, + "typeName": "(AccountId, Balance)" + }, + { + "name": "len", + "type": 4, + "typeName": "u32" + } + ], + "index": 0 + }, + { + "name": "Requested", + "fields": [ + { + "name": "deposit", + "type": 853, + "typeName": "Option<(AccountId, Balance)>" + }, + { + "name": "count", + "type": 4, + "typeName": "u32" + }, + { + "name": "len", + "type": 73, + "typeName": "Option" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 965, + "type": { + "def": { + "tuple": [ + 12, + 4 + ] + } + } + }, + { + "id": 966, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 967, + "type": { + "path": [ + "pallet_preimage", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "TooBig", + "index": 0, + "docs": [ + "Preimage is too large to store on-chain." + ] + }, + { + "name": "AlreadyNoted", + "index": 1, + "docs": [ + "Preimage has already been noted on-chain." + ] + }, + { + "name": "NotAuthorized", + "index": 2, + "docs": [ + "The user is not authorized to perform this action." + ] + }, + { + "name": "NotNoted", + "index": 3, + "docs": [ + "The preimage cannot be removed since it has not yet been noted." + ] + }, + { + "name": "Requested", + "index": 4, + "docs": [ + "A preimage may not be removed when there are outstanding requests." + ] + }, + { + "name": "NotRequested", + "index": 5, + "docs": [ + "The preimage request cannot be removed since no outstanding requests exist." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 968, + "type": { + "def": { + "tuple": [ + 0, + 290 + ] + } + } + }, + { + "id": 969, + "type": { + "path": [ + "pallet_conviction_voting", + "vote", + "Voting" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "PollIndex", + "type": 4 + }, + { + "name": "MaxVotes", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Casting", + "fields": [ + { + "type": 970, + "typeName": "Casting" + } + ], + "index": 0 + }, + { + "name": "Delegating", + "fields": [ + { + "type": 976, + "typeName": "Delegating" + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 970, + "type": { + "path": [ + "pallet_conviction_voting", + "vote", + "Casting" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "PollIndex", + "type": 4 + }, + { + "name": "MaxVotes", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "votes", + "type": 971, + "typeName": "BoundedVec<(PollIndex, AccountVote), MaxVotes>" + }, + { + "name": "delegations", + "type": 974, + "typeName": "Delegations" + }, + { + "name": "prior", + "type": 975, + "typeName": "PriorLock" + } + ] + } + } + } + }, + { + "id": 971, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 972 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 973, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 972, + "type": { + "def": { + "tuple": [ + 4, + 587 + ] + } + } + }, + { + "id": 973, + "type": { + "def": { + "sequence": { + "type": 972 + } + } + } + }, + { + "id": 974, + "type": { + "path": [ + "pallet_conviction_voting", + "types", + "Delegations" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "votes", + "type": 6, + "typeName": "Balance" + }, + { + "name": "capital", + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 975, + "type": { + "path": [ + "pallet_conviction_voting", + "vote", + "PriorLock" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 4, + "typeName": "BlockNumber" + }, + { + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 976, + "type": { + "path": [ + "pallet_conviction_voting", + "vote", + "Delegating" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "balance", + "type": 6, + "typeName": "Balance" + }, + { + "name": "target", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "conviction", + "type": 589, + "typeName": "Conviction" + }, + { + "name": "delegations", + "type": 974, + "typeName": "Delegations" + }, + { + "name": "prior", + "type": 975, + "typeName": "PriorLock" + } + ] + } + } + } + }, + { + "id": 977, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 978 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 979, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 978, + "type": { + "def": { + "tuple": [ + 290, + 6 + ] + } + } + }, + { + "id": 979, + "type": { + "def": { + "sequence": { + "type": 978 + } + } + } + }, + { + "id": 980, + "type": { + "path": [ + "pallet_conviction_voting", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NotOngoing", + "index": 0, + "docs": [ + "Poll is not ongoing." + ] + }, + { + "name": "NotVoter", + "index": 1, + "docs": [ + "The given account did not vote on the poll." + ] + }, + { + "name": "NoPermission", + "index": 2, + "docs": [ + "The actor has no permission to conduct the action." + ] + }, + { + "name": "NoPermissionYet", + "index": 3, + "docs": [ + "The actor has no permission to conduct the action right now but will do in the future." + ] + }, + { + "name": "AlreadyDelegating", + "index": 4, + "docs": [ + "The account is already delegating." + ] + }, + { + "name": "AlreadyVoting", + "index": 5, + "docs": [ + "The account currently has votes attached to it and the operation cannot succeed until", + "these are removed, either through `unvote` or `reap_vote`." + ] + }, + { + "name": "InsufficientFunds", + "index": 6, + "docs": [ + "Too high a balance was provided that the account cannot afford." + ] + }, + { + "name": "NotDelegating", + "index": 7, + "docs": [ + "The account is not currently delegating." + ] + }, + { + "name": "Nonsense", + "index": 8, + "docs": [ + "Delegation to oneself makes no sense." + ] + }, + { + "name": "MaxVotesReached", + "index": 9, + "docs": [ + "Maximum number of votes reached." + ] + }, + { + "name": "ClassNeeded", + "index": 10, + "docs": [ + "The class must be supplied since it is not easily determinable from the state." + ] + }, + { + "name": "BadClass", + "index": 11, + "docs": [ + "The class ID supplied is invalid." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 981, + "type": { + "path": [ + "pallet_referenda", + "types", + "ReferendumInfo" + ], + "params": [ + { + "name": "TrackId", + "type": 290 + }, + { + "name": "RuntimeOrigin", + "type": 415 + }, + { + "name": "Moment", + "type": 4 + }, + { + "name": "Call", + "type": 291 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Tally", + "type": 639 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "ScheduleAddress", + "type": 285 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Ongoing", + "fields": [ + { + "type": 982, + "typeName": "ReferendumStatus" + } + ], + "index": 0 + }, + { + "name": "Approved", + "fields": [ + { + "type": 4, + "typeName": "Moment" + }, + { + "type": 984, + "typeName": "Option>" + }, + { + "type": 984, + "typeName": "Option>" + } + ], + "index": 1 + }, + { + "name": "Rejected", + "fields": [ + { + "type": 4, + "typeName": "Moment" + }, + { + "type": 984, + "typeName": "Option>" + }, + { + "type": 984, + "typeName": "Option>" + } + ], + "index": 2 + }, + { + "name": "Cancelled", + "fields": [ + { + "type": 4, + "typeName": "Moment" + }, + { + "type": 984, + "typeName": "Option>" + }, + { + "type": 984, + "typeName": "Option>" + } + ], + "index": 3 + }, + { + "name": "TimedOut", + "fields": [ + { + "type": 4, + "typeName": "Moment" + }, + { + "type": 984, + "typeName": "Option>" + }, + { + "type": 984, + "typeName": "Option>" + } + ], + "index": 4 + }, + { + "name": "Killed", + "fields": [ + { + "type": 4, + "typeName": "Moment" + } + ], + "index": 5 + } + ] + } + } + } + }, + { + "id": 982, + "type": { + "path": [ + "pallet_referenda", + "types", + "ReferendumStatus" + ], + "params": [ + { + "name": "TrackId", + "type": 290 + }, + { + "name": "RuntimeOrigin", + "type": 415 + }, + { + "name": "Moment", + "type": 4 + }, + { + "name": "Call", + "type": 291 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Tally", + "type": 639 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "ScheduleAddress", + "type": 285 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "track", + "type": 290, + "typeName": "TrackId" + }, + { + "name": "origin", + "type": 415, + "typeName": "RuntimeOrigin" + }, + { + "name": "proposal", + "type": 291, + "typeName": "Call" + }, + { + "name": "enactment", + "type": 592, + "typeName": "DispatchTime" + }, + { + "name": "submitted", + "type": 4, + "typeName": "Moment" + }, + { + "name": "submission_deposit", + "type": 983, + "typeName": "Deposit" + }, + { + "name": "decision_deposit", + "type": 984, + "typeName": "Option>" + }, + { + "name": "deciding", + "type": 985, + "typeName": "Option>" + }, + { + "name": "tally", + "type": 639, + "typeName": "Tally" + }, + { + "name": "in_queue", + "type": 37, + "typeName": "bool" + }, + { + "name": "alarm", + "type": 987, + "typeName": "Option<(Moment, ScheduleAddress)>" + } + ] + } + } + } + }, + { + "id": 983, + "type": { + "path": [ + "pallet_referenda", + "types", + "Deposit" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "amount", + "type": 6, + "typeName": "Balance" + } + ] + } + } + } + }, + { + "id": 984, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 983 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 983 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 985, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 986 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 986 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 986, + "type": { + "path": [ + "pallet_referenda", + "types", + "DecidingStatus" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "since", + "type": 4, + "typeName": "BlockNumber" + }, + { + "name": "confirming", + "type": 73, + "typeName": "Option" + } + ] + } + } + } + }, + { + "id": 987, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 988 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 988 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 988, + "type": { + "def": { + "tuple": [ + 4, + 285 + ] + } + } + }, + { + "id": 989, + "type": { + "def": { + "sequence": { + "type": 990 + } + } + } + }, + { + "id": 990, + "type": { + "def": { + "tuple": [ + 290, + 991 + ] + } + } + }, + { + "id": 991, + "type": { + "path": [ + "pallet_referenda", + "types", + "TrackInfo" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "Moment", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "name", + "type": 655, + "typeName": "&'static str" + }, + { + "name": "max_deciding", + "type": 4, + "typeName": "u32" + }, + { + "name": "decision_deposit", + "type": 6, + "typeName": "Balance" + }, + { + "name": "prepare_period", + "type": 4, + "typeName": "Moment" + }, + { + "name": "decision_period", + "type": 4, + "typeName": "Moment" + }, + { + "name": "confirm_period", + "type": 4, + "typeName": "Moment" + }, + { + "name": "min_enactment_period", + "type": 4, + "typeName": "Moment" + }, + { + "name": "min_approval", + "type": 992, + "typeName": "Curve" + }, + { + "name": "min_support", + "type": 992, + "typeName": "Curve" + } + ] + } + } + } + }, + { + "id": 992, + "type": { + "path": [ + "pallet_referenda", + "types", + "Curve" + ], + "def": { + "variant": { + "variants": [ + { + "name": "LinearDecreasing", + "fields": [ + { + "name": "length", + "type": 42, + "typeName": "Perbill" + }, + { + "name": "floor", + "type": 42, + "typeName": "Perbill" + }, + { + "name": "ceil", + "type": 42, + "typeName": "Perbill" + } + ], + "index": 0 + }, + { + "name": "SteppedDecreasing", + "fields": [ + { + "name": "begin", + "type": 42, + "typeName": "Perbill" + }, + { + "name": "end", + "type": 42, + "typeName": "Perbill" + }, + { + "name": "step", + "type": 42, + "typeName": "Perbill" + }, + { + "name": "period", + "type": 42, + "typeName": "Perbill" + } + ], + "index": 1 + }, + { + "name": "Reciprocal", + "fields": [ + { + "name": "factor", + "type": 993, + "typeName": "FixedI64" + }, + { + "name": "x_offset", + "type": 993, + "typeName": "FixedI64" + }, + { + "name": "y_offset", + "type": 993, + "typeName": "FixedI64" + } + ], + "index": 2 + } + ] + } + } + } + }, + { + "id": 993, + "type": { + "path": [ + "sp_arithmetic", + "fixed_point", + "FixedI64" + ], + "def": { + "composite": { + "fields": [ + { + "type": 994, + "typeName": "i64" + } + ] + } + } + } + }, + { + "id": 994, + "type": { + "def": { + "primitive": "i64" + } + } + }, + { + "id": 995, + "type": { + "path": [ + "pallet_referenda", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NotOngoing", + "index": 0, + "docs": [ + "Referendum is not ongoing." + ] + }, + { + "name": "HasDeposit", + "index": 1, + "docs": [ + "Referendum's decision deposit is already paid." + ] + }, + { + "name": "BadTrack", + "index": 2, + "docs": [ + "The track identifier given was invalid." + ] + }, + { + "name": "Full", + "index": 3, + "docs": [ + "There are already a full complement of referenda in progress for this track." + ] + }, + { + "name": "QueueEmpty", + "index": 4, + "docs": [ + "The queue of the track is empty." + ] + }, + { + "name": "BadReferendum", + "index": 5, + "docs": [ + "The referendum index provided is invalid in this context." + ] + }, + { + "name": "NothingToDo", + "index": 6, + "docs": [ + "There was nothing to do in the advancement." + ] + }, + { + "name": "NoTrack", + "index": 7, + "docs": [ + "No track exists for the proposal origin." + ] + }, + { + "name": "Unfinished", + "index": 8, + "docs": [ + "Any deposit cannot be refunded until after the decision is over." + ] + }, + { + "name": "NoPermission", + "index": 9, + "docs": [ + "The deposit refunder is not the depositor." + ] + }, + { + "name": "NoDeposit", + "index": 10, + "docs": [ + "The deposit cannot be refunded since none was made." + ] + }, + { + "name": "BadStatus", + "index": 11, + "docs": [ + "The referendum status is invalid for this operation." + ] + }, + { + "name": "PreimageNotExist", + "index": 12, + "docs": [ + "The preimage does not exist." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 996, + "type": { + "path": [ + "pallet_whitelist", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "UnavailablePreImage", + "index": 0, + "docs": [ + "The preimage of the call hash could not be loaded." + ] + }, + { + "name": "UndecodableCall", + "index": 1, + "docs": [ + "The call could not be decoded." + ] + }, + { + "name": "InvalidCallWeightWitness", + "index": 2, + "docs": [ + "The weight of the decoded call was higher than the witness." + ] + }, + { + "name": "CallIsNotWhitelisted", + "index": 3, + "docs": [ + "The call was not whitelisted." + ] + }, + { + "name": "CallAlreadyWhitelisted", + "index": 4, + "docs": [ + "The call was already whitelisted; No-Op." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 997, + "type": { + "path": [ + "pallet_ranked_collective", + "MemberRecord" + ], + "def": { + "composite": { + "fields": [ + { + "name": "rank", + "type": 290, + "typeName": "Rank" + } + ] + } + } + } + }, + { + "id": 998, + "type": { + "def": { + "tuple": [ + 290, + 0 + ] + } + } + }, + { + "id": 999, + "type": { + "def": { + "tuple": [ + 290, + 4 + ] + } + } + }, + { + "id": 1000, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 1001, + "type": { + "path": [ + "pallet_ranked_collective", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "AlreadyMember", + "index": 0, + "docs": [ + "Account is already a member." + ] + }, + { + "name": "NotMember", + "index": 1, + "docs": [ + "Account is not a member." + ] + }, + { + "name": "NotPolling", + "index": 2, + "docs": [ + "The given poll index is unknown or has closed." + ] + }, + { + "name": "Ongoing", + "index": 3, + "docs": [ + "The given poll is still ongoing." + ] + }, + { + "name": "NoneRemaining", + "index": 4, + "docs": [ + "There are no further records to be removed." + ] + }, + { + "name": "Corruption", + "index": 5, + "docs": [ + "Unexpected error in state." + ] + }, + { + "name": "RankTooLow", + "index": 6, + "docs": [ + "The member's rank is too low to vote." + ] + }, + { + "name": "InvalidWitness", + "index": 7, + "docs": [ + "The information provided is incorrect." + ] + }, + { + "name": "NoPermission", + "index": 8, + "docs": [ + "The origin is not sufficiently privileged to do the operation." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 1002, + "type": { + "path": [ + "pallet_referenda", + "types", + "ReferendumInfo" + ], + "params": [ + { + "name": "TrackId", + "type": 290 + }, + { + "name": "RuntimeOrigin", + "type": 415 + }, + { + "name": "Moment", + "type": 4 + }, + { + "name": "Call", + "type": 291 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Tally", + "type": 647 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "ScheduleAddress", + "type": 285 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Ongoing", + "fields": [ + { + "type": 1003, + "typeName": "ReferendumStatus" + } + ], + "index": 0 + }, + { + "name": "Approved", + "fields": [ + { + "type": 4, + "typeName": "Moment" + }, + { + "type": 984, + "typeName": "Option>" + }, + { + "type": 984, + "typeName": "Option>" + } + ], + "index": 1 + }, + { + "name": "Rejected", + "fields": [ + { + "type": 4, + "typeName": "Moment" + }, + { + "type": 984, + "typeName": "Option>" + }, + { + "type": 984, + "typeName": "Option>" + } + ], + "index": 2 + }, + { + "name": "Cancelled", + "fields": [ + { + "type": 4, + "typeName": "Moment" + }, + { + "type": 984, + "typeName": "Option>" + }, + { + "type": 984, + "typeName": "Option>" + } + ], + "index": 3 + }, + { + "name": "TimedOut", + "fields": [ + { + "type": 4, + "typeName": "Moment" + }, + { + "type": 984, + "typeName": "Option>" + }, + { + "type": 984, + "typeName": "Option>" + } + ], + "index": 4 + }, + { + "name": "Killed", + "fields": [ + { + "type": 4, + "typeName": "Moment" + } + ], + "index": 5 + } + ] + } + } + } + }, + { + "id": 1003, + "type": { + "path": [ + "pallet_referenda", + "types", + "ReferendumStatus" + ], + "params": [ + { + "name": "TrackId", + "type": 290 + }, + { + "name": "RuntimeOrigin", + "type": 415 + }, + { + "name": "Moment", + "type": 4 + }, + { + "name": "Call", + "type": 291 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Tally", + "type": 647 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "ScheduleAddress", + "type": 285 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "track", + "type": 290, + "typeName": "TrackId" + }, + { + "name": "origin", + "type": 415, + "typeName": "RuntimeOrigin" + }, + { + "name": "proposal", + "type": 291, + "typeName": "Call" + }, + { + "name": "enactment", + "type": 592, + "typeName": "DispatchTime" + }, + { + "name": "submitted", + "type": 4, + "typeName": "Moment" + }, + { + "name": "submission_deposit", + "type": 983, + "typeName": "Deposit" + }, + { + "name": "decision_deposit", + "type": 984, + "typeName": "Option>" + }, + { + "name": "deciding", + "type": 985, + "typeName": "Option>" + }, + { + "name": "tally", + "type": 647, + "typeName": "Tally" + }, + { + "name": "in_queue", + "type": 37, + "typeName": "bool" + }, + { + "name": "alarm", + "type": 987, + "typeName": "Option<(Moment, ScheduleAddress)>" + } + ] + } + } + } + }, + { + "id": 1004, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 285 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 653, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 1005, + "type": { + "path": [ + "pallet_referenda", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NotOngoing", + "index": 0, + "docs": [ + "Referendum is not ongoing." + ] + }, + { + "name": "HasDeposit", + "index": 1, + "docs": [ + "Referendum's decision deposit is already paid." + ] + }, + { + "name": "BadTrack", + "index": 2, + "docs": [ + "The track identifier given was invalid." + ] + }, + { + "name": "Full", + "index": 3, + "docs": [ + "There are already a full complement of referenda in progress for this track." + ] + }, + { + "name": "QueueEmpty", + "index": 4, + "docs": [ + "The queue of the track is empty." + ] + }, + { + "name": "BadReferendum", + "index": 5, + "docs": [ + "The referendum index provided is invalid in this context." + ] + }, + { + "name": "NothingToDo", + "index": 6, + "docs": [ + "There was nothing to do in the advancement." + ] + }, + { + "name": "NoTrack", + "index": 7, + "docs": [ + "No track exists for the proposal origin." + ] + }, + { + "name": "Unfinished", + "index": 8, + "docs": [ + "Any deposit cannot be refunded until after the decision is over." + ] + }, + { + "name": "NoPermission", + "index": 9, + "docs": [ + "The deposit refunder is not the depositor." + ] + }, + { + "name": "NoDeposit", + "index": 10, + "docs": [ + "The deposit cannot be refunded since none was made." + ] + }, + { + "name": "BadStatus", + "index": 11, + "docs": [ + "The referendum status is invalid for this operation." + ] + }, + { + "name": "PreimageNotExist", + "index": 12, + "docs": [ + "The preimage does not exist." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 1006, + "type": { + "path": [ + "pallet_identity", + "types", + "Registration" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "MaxJudgements", + "type": null + }, + { + "name": "MaxAdditionalFields", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "judgements", + "type": 1007, + "typeName": "BoundedVec<(RegistrarIndex, Judgement), MaxJudgements>" + }, + { + "name": "deposit", + "type": 6, + "typeName": "Balance" + }, + { + "name": "info", + "type": 598, + "typeName": "IdentityInfo" + } + ] + } + } + } + }, + { + "id": 1007, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 1008 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 1009, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 1008, + "type": { + "def": { + "tuple": [ + 4, + 635 + ] + } + } + }, + { + "id": 1009, + "type": { + "def": { + "sequence": { + "type": 1008 + } + } + } + }, + { + "id": 1010, + "type": { + "def": { + "tuple": [ + 6, + 1011 + ] + } + } + }, + { + "id": 1011, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 78, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 1012, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 1013 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 1015, + "typeName": "Vec" + } + ] + } + } + } + }, + { + "id": 1013, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 1014 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "index": 0 + }, + { + "name": "Some", + "fields": [ + { + "type": 1014 + } + ], + "index": 1 + } + ] + } + } + } + }, + { + "id": 1014, + "type": { + "path": [ + "pallet_identity", + "types", + "RegistrarInfo" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "account", + "type": 0, + "typeName": "AccountId" + }, + { + "name": "fee", + "type": 6, + "typeName": "Balance" + }, + { + "name": "fields", + "type": 633, + "typeName": "IdentityFields" + } + ] + } + } + } + }, + { + "id": 1015, + "type": { + "def": { + "sequence": { + "type": 1013 + } + } + } + }, + { + "id": 1016, + "type": { + "path": [ + "pallet_identity", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "TooManySubAccounts", + "index": 0, + "docs": [ + "Too many subs-accounts." + ] + }, + { + "name": "NotFound", + "index": 1, + "docs": [ + "Account isn't found." + ] + }, + { + "name": "NotNamed", + "index": 2, + "docs": [ + "Account isn't named." + ] + }, + { + "name": "EmptyIndex", + "index": 3, + "docs": [ + "Empty index." + ] + }, + { + "name": "FeeChanged", + "index": 4, + "docs": [ + "Fee is changed." + ] + }, + { + "name": "NoIdentity", + "index": 5, + "docs": [ + "No identity found." + ] + }, + { + "name": "StickyJudgement", + "index": 6, + "docs": [ + "Sticky judgement." + ] + }, + { + "name": "JudgementGiven", + "index": 7, + "docs": [ + "Judgement given." + ] + }, + { + "name": "InvalidJudgement", + "index": 8, + "docs": [ + "Invalid judgement." + ] + }, + { + "name": "InvalidIndex", + "index": 9, + "docs": [ + "The index is invalid." + ] + }, + { + "name": "InvalidTarget", + "index": 10, + "docs": [ + "The target is invalid." + ] + }, + { + "name": "TooManyFields", + "index": 11, + "docs": [ + "Too many additional fields." + ] + }, + { + "name": "TooManyRegistrars", + "index": 12, + "docs": [ + "Maximum amount of registrars reached. Cannot add any more." + ] + }, + { + "name": "AlreadyClaimed", + "index": 13, + "docs": [ + "Account ID is already named." + ] + }, + { + "name": "NotSub", + "index": 14, + "docs": [ + "Sender is not a sub-account." + ] + }, + { + "name": "NotOwned", + "index": 15, + "docs": [ + "Sub-account isn't owned by sender." + ] + }, + { + "name": "JudgementForDifferentIdentity", + "index": 16, + "docs": [ + "The provided judgement was for a different identity." + ] + }, + { + "name": "JudgementPaymentFailed", + "index": 17, + "docs": [ + "Error that occurs when there is an issue paying for judgement." + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 1017, + "type": { + "path": [ + "pallet_vote_manager", + "types", + "BalanceToUnlock" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "TokenId", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "balance", + "type": 6, + "typeName": "Balance" + }, + { + "name": "currency", + "type": 637, + "typeName": "VoteCurrency" + }, + { + "name": "unlocks_at", + "type": 4, + "typeName": "BlockNumber" + } + ] + } + } + } + }, + { + "id": 1018, + "type": { + "path": [ + "pallet_vote_manager", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "AlreadyDelegating", + "index": 0, + "docs": [ + "The account is already delegating their vote." + ] + }, + { + "name": "InsufficientFunds", + "index": 1, + "docs": [ + "The account has insufficient funds to cast the vote." + ] + }, + { + "name": "NotOngoing", + "index": 2, + "docs": [ + "The maximum number of votes for this referendum has been reached." + ] + }, + { + "name": "NotVoter", + "index": 3, + "docs": [ + "The account is not a registered voter for the referendum." + ] + }, + { + "name": "NoPermission", + "index": 4, + "docs": [ + "The account does not have permission to perform the operation." + ] + }, + { + "name": "UnlockVoteNotFound", + "index": 5, + "docs": [ + "The vote unlock information was not found." + ] + }, + { + "name": "UnlockPeriodNotPassed", + "index": 6, + "docs": [ + "The unlock period for the vote has not yet passed." + ] + }, + { + "name": "MaxVotesReached", + "index": 7, + "docs": [ + "Max votes exceeded" + ] + }, + { + "name": "ClassNeeded", + "index": 8, + "docs": [ + "Class info missing" + ] + }, + { + "name": "NoPermissionYet", + "index": 9, + "docs": [ + "The account does not have permission, usually related to unlock periods" + ] + } + ] + } + }, + "docs": [ + "\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" + ] + } + }, + { + "id": 1019, + "type": { + "path": [ + "sp_runtime", + "generic", + "unchecked_extrinsic", + "UncheckedExtrinsic" + ], + "params": [ + { + "name": "Address", + "type": 309 + }, + { + "name": "Call", + "type": 292 + }, + { + "name": "Signature", + "type": 479 + }, + { + "name": "Extra", + "type": 1020 + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 13 + } + ] + } + } + } + }, + { + "id": 1020, + "type": { + "def": { + "tuple": [ + 1021, + 1022, + 1023, + 1024, + 1025, + 1027, + 1028, + 1029, + 1030 + ] + } + } + }, + { + "id": 1021, + "type": { + "path": [ + "frame_system", + "extensions", + "check_non_zero_sender", + "CheckNonZeroSender" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": {} + } + } + }, + { + "id": 1022, + "type": { + "path": [ + "frame_system", + "extensions", + "check_spec_version", + "CheckSpecVersion" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": {} + } + } + }, + { + "id": 1023, + "type": { + "path": [ + "frame_system", + "extensions", + "check_tx_version", + "CheckTxVersion" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": {} + } + } + }, + { + "id": 1024, + "type": { + "path": [ + "frame_system", + "extensions", + "check_genesis", + "CheckGenesis" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": {} + } + } + }, + { + "id": 1025, + "type": { + "path": [ + "frame_system", + "extensions", + "check_mortality", + "CheckMortality" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 1026, + "typeName": "Era" + } + ] + } + } + } + }, + { + "id": 1026, + "type": { + "path": [ + "sp_runtime", + "generic", + "era", + "Era" + ], + "def": { + "variant": { + "variants": [ + { + "name": "Immortal", + "index": 0 + }, + { + "name": "Mortal1", + "fields": [ + { + "type": 2 + } + ], + "index": 1 + }, + { + "name": "Mortal2", + "fields": [ + { + "type": 2 + } + ], + "index": 2 + }, + { + "name": "Mortal3", + "fields": [ + { + "type": 2 + } + ], + "index": 3 + }, + { + "name": "Mortal4", + "fields": [ + { + "type": 2 + } + ], + "index": 4 + }, + { + "name": "Mortal5", + "fields": [ + { + "type": 2 + } + ], + "index": 5 + }, + { + "name": "Mortal6", + "fields": [ + { + "type": 2 + } + ], + "index": 6 + }, + { + "name": "Mortal7", + "fields": [ + { + "type": 2 + } + ], + "index": 7 + }, + { + "name": "Mortal8", + "fields": [ + { + "type": 2 + } + ], + "index": 8 + }, + { + "name": "Mortal9", + "fields": [ + { + "type": 2 + } + ], + "index": 9 + }, + { + "name": "Mortal10", + "fields": [ + { + "type": 2 + } + ], + "index": 10 + }, + { + "name": "Mortal11", + "fields": [ + { + "type": 2 + } + ], + "index": 11 + }, + { + "name": "Mortal12", + "fields": [ + { + "type": 2 + } + ], + "index": 12 + }, + { + "name": "Mortal13", + "fields": [ + { + "type": 2 + } + ], + "index": 13 + }, + { + "name": "Mortal14", + "fields": [ + { + "type": 2 + } + ], + "index": 14 + }, + { + "name": "Mortal15", + "fields": [ + { + "type": 2 + } + ], + "index": 15 + }, + { + "name": "Mortal16", + "fields": [ + { + "type": 2 + } + ], + "index": 16 + }, + { + "name": "Mortal17", + "fields": [ + { + "type": 2 + } + ], + "index": 17 + }, + { + "name": "Mortal18", + "fields": [ + { + "type": 2 + } + ], + "index": 18 + }, + { + "name": "Mortal19", + "fields": [ + { + "type": 2 + } + ], + "index": 19 + }, + { + "name": "Mortal20", + "fields": [ + { + "type": 2 + } + ], + "index": 20 + }, + { + "name": "Mortal21", + "fields": [ + { + "type": 2 + } + ], + "index": 21 + }, + { + "name": "Mortal22", + "fields": [ + { + "type": 2 + } + ], + "index": 22 + }, + { + "name": "Mortal23", + "fields": [ + { + "type": 2 + } + ], + "index": 23 + }, + { + "name": "Mortal24", + "fields": [ + { + "type": 2 + } + ], + "index": 24 + }, + { + "name": "Mortal25", + "fields": [ + { + "type": 2 + } + ], + "index": 25 + }, + { + "name": "Mortal26", + "fields": [ + { + "type": 2 + } + ], + "index": 26 + }, + { + "name": "Mortal27", + "fields": [ + { + "type": 2 + } + ], + "index": 27 + }, + { + "name": "Mortal28", + "fields": [ + { + "type": 2 + } + ], + "index": 28 + }, + { + "name": "Mortal29", + "fields": [ + { + "type": 2 + } + ], + "index": 29 + }, + { + "name": "Mortal30", + "fields": [ + { + "type": 2 + } + ], + "index": 30 + }, + { + "name": "Mortal31", + "fields": [ + { + "type": 2 + } + ], + "index": 31 + }, + { + "name": "Mortal32", + "fields": [ + { + "type": 2 + } + ], + "index": 32 + }, + { + "name": "Mortal33", + "fields": [ + { + "type": 2 + } + ], + "index": 33 + }, + { + "name": "Mortal34", + "fields": [ + { + "type": 2 + } + ], + "index": 34 + }, + { + "name": "Mortal35", + "fields": [ + { + "type": 2 + } + ], + "index": 35 + }, + { + "name": "Mortal36", + "fields": [ + { + "type": 2 + } + ], + "index": 36 + }, + { + "name": "Mortal37", + "fields": [ + { + "type": 2 + } + ], + "index": 37 + }, + { + "name": "Mortal38", + "fields": [ + { + "type": 2 + } + ], + "index": 38 + }, + { + "name": "Mortal39", + "fields": [ + { + "type": 2 + } + ], + "index": 39 + }, + { + "name": "Mortal40", + "fields": [ + { + "type": 2 + } + ], + "index": 40 + }, + { + "name": "Mortal41", + "fields": [ + { + "type": 2 + } + ], + "index": 41 + }, + { + "name": "Mortal42", + "fields": [ + { + "type": 2 + } + ], + "index": 42 + }, + { + "name": "Mortal43", + "fields": [ + { + "type": 2 + } + ], + "index": 43 + }, + { + "name": "Mortal44", + "fields": [ + { + "type": 2 + } + ], + "index": 44 + }, + { + "name": "Mortal45", + "fields": [ + { + "type": 2 + } + ], + "index": 45 + }, + { + "name": "Mortal46", + "fields": [ + { + "type": 2 + } + ], + "index": 46 + }, + { + "name": "Mortal47", + "fields": [ + { + "type": 2 + } + ], + "index": 47 + }, + { + "name": "Mortal48", + "fields": [ + { + "type": 2 + } + ], + "index": 48 + }, + { + "name": "Mortal49", + "fields": [ + { + "type": 2 + } + ], + "index": 49 + }, + { + "name": "Mortal50", + "fields": [ + { + "type": 2 + } + ], + "index": 50 + }, + { + "name": "Mortal51", + "fields": [ + { + "type": 2 + } + ], + "index": 51 + }, + { + "name": "Mortal52", + "fields": [ + { + "type": 2 + } + ], + "index": 52 + }, + { + "name": "Mortal53", + "fields": [ + { + "type": 2 + } + ], + "index": 53 + }, + { + "name": "Mortal54", + "fields": [ + { + "type": 2 + } + ], + "index": 54 + }, + { + "name": "Mortal55", + "fields": [ + { + "type": 2 + } + ], + "index": 55 + }, + { + "name": "Mortal56", + "fields": [ + { + "type": 2 + } + ], + "index": 56 + }, + { + "name": "Mortal57", + "fields": [ + { + "type": 2 + } + ], + "index": 57 + }, + { + "name": "Mortal58", + "fields": [ + { + "type": 2 + } + ], + "index": 58 + }, + { + "name": "Mortal59", + "fields": [ + { + "type": 2 + } + ], + "index": 59 + }, + { + "name": "Mortal60", + "fields": [ + { + "type": 2 + } + ], + "index": 60 + }, + { + "name": "Mortal61", + "fields": [ + { + "type": 2 + } + ], + "index": 61 + }, + { + "name": "Mortal62", + "fields": [ + { + "type": 2 + } + ], + "index": 62 + }, + { + "name": "Mortal63", + "fields": [ + { + "type": 2 + } + ], + "index": 63 + }, + { + "name": "Mortal64", + "fields": [ + { + "type": 2 + } + ], + "index": 64 + }, + { + "name": "Mortal65", + "fields": [ + { + "type": 2 + } + ], + "index": 65 + }, + { + "name": "Mortal66", + "fields": [ + { + "type": 2 + } + ], + "index": 66 + }, + { + "name": "Mortal67", + "fields": [ + { + "type": 2 + } + ], + "index": 67 + }, + { + "name": "Mortal68", + "fields": [ + { + "type": 2 + } + ], + "index": 68 + }, + { + "name": "Mortal69", + "fields": [ + { + "type": 2 + } + ], + "index": 69 + }, + { + "name": "Mortal70", + "fields": [ + { + "type": 2 + } + ], + "index": 70 + }, + { + "name": "Mortal71", + "fields": [ + { + "type": 2 + } + ], + "index": 71 + }, + { + "name": "Mortal72", + "fields": [ + { + "type": 2 + } + ], + "index": 72 + }, + { + "name": "Mortal73", + "fields": [ + { + "type": 2 + } + ], + "index": 73 + }, + { + "name": "Mortal74", + "fields": [ + { + "type": 2 + } + ], + "index": 74 + }, + { + "name": "Mortal75", + "fields": [ + { + "type": 2 + } + ], + "index": 75 + }, + { + "name": "Mortal76", + "fields": [ + { + "type": 2 + } + ], + "index": 76 + }, + { + "name": "Mortal77", + "fields": [ + { + "type": 2 + } + ], + "index": 77 + }, + { + "name": "Mortal78", + "fields": [ + { + "type": 2 + } + ], + "index": 78 + }, + { + "name": "Mortal79", + "fields": [ + { + "type": 2 + } + ], + "index": 79 + }, + { + "name": "Mortal80", + "fields": [ + { + "type": 2 + } + ], + "index": 80 + }, + { + "name": "Mortal81", + "fields": [ + { + "type": 2 + } + ], + "index": 81 + }, + { + "name": "Mortal82", + "fields": [ + { + "type": 2 + } + ], + "index": 82 + }, + { + "name": "Mortal83", + "fields": [ + { + "type": 2 + } + ], + "index": 83 + }, + { + "name": "Mortal84", + "fields": [ + { + "type": 2 + } + ], + "index": 84 + }, + { + "name": "Mortal85", + "fields": [ + { + "type": 2 + } + ], + "index": 85 + }, + { + "name": "Mortal86", + "fields": [ + { + "type": 2 + } + ], + "index": 86 + }, + { + "name": "Mortal87", + "fields": [ + { + "type": 2 + } + ], + "index": 87 + }, + { + "name": "Mortal88", + "fields": [ + { + "type": 2 + } + ], + "index": 88 + }, + { + "name": "Mortal89", + "fields": [ + { + "type": 2 + } + ], + "index": 89 + }, + { + "name": "Mortal90", + "fields": [ + { + "type": 2 + } + ], + "index": 90 + }, + { + "name": "Mortal91", + "fields": [ + { + "type": 2 + } + ], + "index": 91 + }, + { + "name": "Mortal92", + "fields": [ + { + "type": 2 + } + ], + "index": 92 + }, + { + "name": "Mortal93", + "fields": [ + { + "type": 2 + } + ], + "index": 93 + }, + { + "name": "Mortal94", + "fields": [ + { + "type": 2 + } + ], + "index": 94 + }, + { + "name": "Mortal95", + "fields": [ + { + "type": 2 + } + ], + "index": 95 + }, + { + "name": "Mortal96", + "fields": [ + { + "type": 2 + } + ], + "index": 96 + }, + { + "name": "Mortal97", + "fields": [ + { + "type": 2 + } + ], + "index": 97 + }, + { + "name": "Mortal98", + "fields": [ + { + "type": 2 + } + ], + "index": 98 + }, + { + "name": "Mortal99", + "fields": [ + { + "type": 2 + } + ], + "index": 99 + }, + { + "name": "Mortal100", + "fields": [ + { + "type": 2 + } + ], + "index": 100 + }, + { + "name": "Mortal101", + "fields": [ + { + "type": 2 + } + ], + "index": 101 + }, + { + "name": "Mortal102", + "fields": [ + { + "type": 2 + } + ], + "index": 102 + }, + { + "name": "Mortal103", + "fields": [ + { + "type": 2 + } + ], + "index": 103 + }, + { + "name": "Mortal104", + "fields": [ + { + "type": 2 + } + ], + "index": 104 + }, + { + "name": "Mortal105", + "fields": [ + { + "type": 2 + } + ], + "index": 105 + }, + { + "name": "Mortal106", + "fields": [ + { + "type": 2 + } + ], + "index": 106 + }, + { + "name": "Mortal107", + "fields": [ + { + "type": 2 + } + ], + "index": 107 + }, + { + "name": "Mortal108", + "fields": [ + { + "type": 2 + } + ], + "index": 108 + }, + { + "name": "Mortal109", + "fields": [ + { + "type": 2 + } + ], + "index": 109 + }, + { + "name": "Mortal110", + "fields": [ + { + "type": 2 + } + ], + "index": 110 + }, + { + "name": "Mortal111", + "fields": [ + { + "type": 2 + } + ], + "index": 111 + }, + { + "name": "Mortal112", + "fields": [ + { + "type": 2 + } + ], + "index": 112 + }, + { + "name": "Mortal113", + "fields": [ + { + "type": 2 + } + ], + "index": 113 + }, + { + "name": "Mortal114", + "fields": [ + { + "type": 2 + } + ], + "index": 114 + }, + { + "name": "Mortal115", + "fields": [ + { + "type": 2 + } + ], + "index": 115 + }, + { + "name": "Mortal116", + "fields": [ + { + "type": 2 + } + ], + "index": 116 + }, + { + "name": "Mortal117", + "fields": [ + { + "type": 2 + } + ], + "index": 117 + }, + { + "name": "Mortal118", + "fields": [ + { + "type": 2 + } + ], + "index": 118 + }, + { + "name": "Mortal119", + "fields": [ + { + "type": 2 + } + ], + "index": 119 + }, + { + "name": "Mortal120", + "fields": [ + { + "type": 2 + } + ], + "index": 120 + }, + { + "name": "Mortal121", + "fields": [ + { + "type": 2 + } + ], + "index": 121 + }, + { + "name": "Mortal122", + "fields": [ + { + "type": 2 + } + ], + "index": 122 + }, + { + "name": "Mortal123", + "fields": [ + { + "type": 2 + } + ], + "index": 123 + }, + { + "name": "Mortal124", + "fields": [ + { + "type": 2 + } + ], + "index": 124 + }, + { + "name": "Mortal125", + "fields": [ + { + "type": 2 + } + ], + "index": 125 + }, + { + "name": "Mortal126", + "fields": [ + { + "type": 2 + } + ], + "index": 126 + }, + { + "name": "Mortal127", + "fields": [ + { + "type": 2 + } + ], + "index": 127 + }, + { + "name": "Mortal128", + "fields": [ + { + "type": 2 + } + ], + "index": 128 + }, + { + "name": "Mortal129", + "fields": [ + { + "type": 2 + } + ], + "index": 129 + }, + { + "name": "Mortal130", + "fields": [ + { + "type": 2 + } + ], + "index": 130 + }, + { + "name": "Mortal131", + "fields": [ + { + "type": 2 + } + ], + "index": 131 + }, + { + "name": "Mortal132", + "fields": [ + { + "type": 2 + } + ], + "index": 132 + }, + { + "name": "Mortal133", + "fields": [ + { + "type": 2 + } + ], + "index": 133 + }, + { + "name": "Mortal134", + "fields": [ + { + "type": 2 + } + ], + "index": 134 + }, + { + "name": "Mortal135", + "fields": [ + { + "type": 2 + } + ], + "index": 135 + }, + { + "name": "Mortal136", + "fields": [ + { + "type": 2 + } + ], + "index": 136 + }, + { + "name": "Mortal137", + "fields": [ + { + "type": 2 + } + ], + "index": 137 + }, + { + "name": "Mortal138", + "fields": [ + { + "type": 2 + } + ], + "index": 138 + }, + { + "name": "Mortal139", + "fields": [ + { + "type": 2 + } + ], + "index": 139 + }, + { + "name": "Mortal140", + "fields": [ + { + "type": 2 + } + ], + "index": 140 + }, + { + "name": "Mortal141", + "fields": [ + { + "type": 2 + } + ], + "index": 141 + }, + { + "name": "Mortal142", + "fields": [ + { + "type": 2 + } + ], + "index": 142 + }, + { + "name": "Mortal143", + "fields": [ + { + "type": 2 + } + ], + "index": 143 + }, + { + "name": "Mortal144", + "fields": [ + { + "type": 2 + } + ], + "index": 144 + }, + { + "name": "Mortal145", + "fields": [ + { + "type": 2 + } + ], + "index": 145 + }, + { + "name": "Mortal146", + "fields": [ + { + "type": 2 + } + ], + "index": 146 + }, + { + "name": "Mortal147", + "fields": [ + { + "type": 2 + } + ], + "index": 147 + }, + { + "name": "Mortal148", + "fields": [ + { + "type": 2 + } + ], + "index": 148 + }, + { + "name": "Mortal149", + "fields": [ + { + "type": 2 + } + ], + "index": 149 + }, + { + "name": "Mortal150", + "fields": [ + { + "type": 2 + } + ], + "index": 150 + }, + { + "name": "Mortal151", + "fields": [ + { + "type": 2 + } + ], + "index": 151 + }, + { + "name": "Mortal152", + "fields": [ + { + "type": 2 + } + ], + "index": 152 + }, + { + "name": "Mortal153", + "fields": [ + { + "type": 2 + } + ], + "index": 153 + }, + { + "name": "Mortal154", + "fields": [ + { + "type": 2 + } + ], + "index": 154 + }, + { + "name": "Mortal155", + "fields": [ + { + "type": 2 + } + ], + "index": 155 + }, + { + "name": "Mortal156", + "fields": [ + { + "type": 2 + } + ], + "index": 156 + }, + { + "name": "Mortal157", + "fields": [ + { + "type": 2 + } + ], + "index": 157 + }, + { + "name": "Mortal158", + "fields": [ + { + "type": 2 + } + ], + "index": 158 + }, + { + "name": "Mortal159", + "fields": [ + { + "type": 2 + } + ], + "index": 159 + }, + { + "name": "Mortal160", + "fields": [ + { + "type": 2 + } + ], + "index": 160 + }, + { + "name": "Mortal161", + "fields": [ + { + "type": 2 + } + ], + "index": 161 + }, + { + "name": "Mortal162", + "fields": [ + { + "type": 2 + } + ], + "index": 162 + }, + { + "name": "Mortal163", + "fields": [ + { + "type": 2 + } + ], + "index": 163 + }, + { + "name": "Mortal164", + "fields": [ + { + "type": 2 + } + ], + "index": 164 + }, + { + "name": "Mortal165", + "fields": [ + { + "type": 2 + } + ], + "index": 165 + }, + { + "name": "Mortal166", + "fields": [ + { + "type": 2 + } + ], + "index": 166 + }, + { + "name": "Mortal167", + "fields": [ + { + "type": 2 + } + ], + "index": 167 + }, + { + "name": "Mortal168", + "fields": [ + { + "type": 2 + } + ], + "index": 168 + }, + { + "name": "Mortal169", + "fields": [ + { + "type": 2 + } + ], + "index": 169 + }, + { + "name": "Mortal170", + "fields": [ + { + "type": 2 + } + ], + "index": 170 + }, + { + "name": "Mortal171", + "fields": [ + { + "type": 2 + } + ], + "index": 171 + }, + { + "name": "Mortal172", + "fields": [ + { + "type": 2 + } + ], + "index": 172 + }, + { + "name": "Mortal173", + "fields": [ + { + "type": 2 + } + ], + "index": 173 + }, + { + "name": "Mortal174", + "fields": [ + { + "type": 2 + } + ], + "index": 174 + }, + { + "name": "Mortal175", + "fields": [ + { + "type": 2 + } + ], + "index": 175 + }, + { + "name": "Mortal176", + "fields": [ + { + "type": 2 + } + ], + "index": 176 + }, + { + "name": "Mortal177", + "fields": [ + { + "type": 2 + } + ], + "index": 177 + }, + { + "name": "Mortal178", + "fields": [ + { + "type": 2 + } + ], + "index": 178 + }, + { + "name": "Mortal179", + "fields": [ + { + "type": 2 + } + ], + "index": 179 + }, + { + "name": "Mortal180", + "fields": [ + { + "type": 2 + } + ], + "index": 180 + }, + { + "name": "Mortal181", + "fields": [ + { + "type": 2 + } + ], + "index": 181 + }, + { + "name": "Mortal182", + "fields": [ + { + "type": 2 + } + ], + "index": 182 + }, + { + "name": "Mortal183", + "fields": [ + { + "type": 2 + } + ], + "index": 183 + }, + { + "name": "Mortal184", + "fields": [ + { + "type": 2 + } + ], + "index": 184 + }, + { + "name": "Mortal185", + "fields": [ + { + "type": 2 + } + ], + "index": 185 + }, + { + "name": "Mortal186", + "fields": [ + { + "type": 2 + } + ], + "index": 186 + }, + { + "name": "Mortal187", + "fields": [ + { + "type": 2 + } + ], + "index": 187 + }, + { + "name": "Mortal188", + "fields": [ + { + "type": 2 + } + ], + "index": 188 + }, + { + "name": "Mortal189", + "fields": [ + { + "type": 2 + } + ], + "index": 189 + }, + { + "name": "Mortal190", + "fields": [ + { + "type": 2 + } + ], + "index": 190 + }, + { + "name": "Mortal191", + "fields": [ + { + "type": 2 + } + ], + "index": 191 + }, + { + "name": "Mortal192", + "fields": [ + { + "type": 2 + } + ], + "index": 192 + }, + { + "name": "Mortal193", + "fields": [ + { + "type": 2 + } + ], + "index": 193 + }, + { + "name": "Mortal194", + "fields": [ + { + "type": 2 + } + ], + "index": 194 + }, + { + "name": "Mortal195", + "fields": [ + { + "type": 2 + } + ], + "index": 195 + }, + { + "name": "Mortal196", + "fields": [ + { + "type": 2 + } + ], + "index": 196 + }, + { + "name": "Mortal197", + "fields": [ + { + "type": 2 + } + ], + "index": 197 + }, + { + "name": "Mortal198", + "fields": [ + { + "type": 2 + } + ], + "index": 198 + }, + { + "name": "Mortal199", + "fields": [ + { + "type": 2 + } + ], + "index": 199 + }, + { + "name": "Mortal200", + "fields": [ + { + "type": 2 + } + ], + "index": 200 + }, + { + "name": "Mortal201", + "fields": [ + { + "type": 2 + } + ], + "index": 201 + }, + { + "name": "Mortal202", + "fields": [ + { + "type": 2 + } + ], + "index": 202 + }, + { + "name": "Mortal203", + "fields": [ + { + "type": 2 + } + ], + "index": 203 + }, + { + "name": "Mortal204", + "fields": [ + { + "type": 2 + } + ], + "index": 204 + }, + { + "name": "Mortal205", + "fields": [ + { + "type": 2 + } + ], + "index": 205 + }, + { + "name": "Mortal206", + "fields": [ + { + "type": 2 + } + ], + "index": 206 + }, + { + "name": "Mortal207", + "fields": [ + { + "type": 2 + } + ], + "index": 207 + }, + { + "name": "Mortal208", + "fields": [ + { + "type": 2 + } + ], + "index": 208 + }, + { + "name": "Mortal209", + "fields": [ + { + "type": 2 + } + ], + "index": 209 + }, + { + "name": "Mortal210", + "fields": [ + { + "type": 2 + } + ], + "index": 210 + }, + { + "name": "Mortal211", + "fields": [ + { + "type": 2 + } + ], + "index": 211 + }, + { + "name": "Mortal212", + "fields": [ + { + "type": 2 + } + ], + "index": 212 + }, + { + "name": "Mortal213", + "fields": [ + { + "type": 2 + } + ], + "index": 213 + }, + { + "name": "Mortal214", + "fields": [ + { + "type": 2 + } + ], + "index": 214 + }, + { + "name": "Mortal215", + "fields": [ + { + "type": 2 + } + ], + "index": 215 + }, + { + "name": "Mortal216", + "fields": [ + { + "type": 2 + } + ], + "index": 216 + }, + { + "name": "Mortal217", + "fields": [ + { + "type": 2 + } + ], + "index": 217 + }, + { + "name": "Mortal218", + "fields": [ + { + "type": 2 + } + ], + "index": 218 + }, + { + "name": "Mortal219", + "fields": [ + { + "type": 2 + } + ], + "index": 219 + }, + { + "name": "Mortal220", + "fields": [ + { + "type": 2 + } + ], + "index": 220 + }, + { + "name": "Mortal221", + "fields": [ + { + "type": 2 + } + ], + "index": 221 + }, + { + "name": "Mortal222", + "fields": [ + { + "type": 2 + } + ], + "index": 222 + }, + { + "name": "Mortal223", + "fields": [ + { + "type": 2 + } + ], + "index": 223 + }, + { + "name": "Mortal224", + "fields": [ + { + "type": 2 + } + ], + "index": 224 + }, + { + "name": "Mortal225", + "fields": [ + { + "type": 2 + } + ], + "index": 225 + }, + { + "name": "Mortal226", + "fields": [ + { + "type": 2 + } + ], + "index": 226 + }, + { + "name": "Mortal227", + "fields": [ + { + "type": 2 + } + ], + "index": 227 + }, + { + "name": "Mortal228", + "fields": [ + { + "type": 2 + } + ], + "index": 228 + }, + { + "name": "Mortal229", + "fields": [ + { + "type": 2 + } + ], + "index": 229 + }, + { + "name": "Mortal230", + "fields": [ + { + "type": 2 + } + ], + "index": 230 + }, + { + "name": "Mortal231", + "fields": [ + { + "type": 2 + } + ], + "index": 231 + }, + { + "name": "Mortal232", + "fields": [ + { + "type": 2 + } + ], + "index": 232 + }, + { + "name": "Mortal233", + "fields": [ + { + "type": 2 + } + ], + "index": 233 + }, + { + "name": "Mortal234", + "fields": [ + { + "type": 2 + } + ], + "index": 234 + }, + { + "name": "Mortal235", + "fields": [ + { + "type": 2 + } + ], + "index": 235 + }, + { + "name": "Mortal236", + "fields": [ + { + "type": 2 + } + ], + "index": 236 + }, + { + "name": "Mortal237", + "fields": [ + { + "type": 2 + } + ], + "index": 237 + }, + { + "name": "Mortal238", + "fields": [ + { + "type": 2 + } + ], + "index": 238 + }, + { + "name": "Mortal239", + "fields": [ + { + "type": 2 + } + ], + "index": 239 + }, + { + "name": "Mortal240", + "fields": [ + { + "type": 2 + } + ], + "index": 240 + }, + { + "name": "Mortal241", + "fields": [ + { + "type": 2 + } + ], + "index": 241 + }, + { + "name": "Mortal242", + "fields": [ + { + "type": 2 + } + ], + "index": 242 + }, + { + "name": "Mortal243", + "fields": [ + { + "type": 2 + } + ], + "index": 243 + }, + { + "name": "Mortal244", + "fields": [ + { + "type": 2 + } + ], + "index": 244 + }, + { + "name": "Mortal245", + "fields": [ + { + "type": 2 + } + ], + "index": 245 + }, + { + "name": "Mortal246", + "fields": [ + { + "type": 2 + } + ], + "index": 246 + }, + { + "name": "Mortal247", + "fields": [ + { + "type": 2 + } + ], + "index": 247 + }, + { + "name": "Mortal248", + "fields": [ + { + "type": 2 + } + ], + "index": 248 + }, + { + "name": "Mortal249", + "fields": [ + { + "type": 2 + } + ], + "index": 249 + }, + { + "name": "Mortal250", + "fields": [ + { + "type": 2 + } + ], + "index": 250 + }, + { + "name": "Mortal251", + "fields": [ + { + "type": 2 + } + ], + "index": 251 + }, + { + "name": "Mortal252", + "fields": [ + { + "type": 2 + } + ], + "index": 252 + }, + { + "name": "Mortal253", + "fields": [ + { + "type": 2 + } + ], + "index": 253 + }, + { + "name": "Mortal254", + "fields": [ + { + "type": 2 + } + ], + "index": 254 + }, + { + "name": "Mortal255", + "fields": [ + { + "type": 2 + } + ], + "index": 255 + } + ] + } + } + } + }, + { + "id": 1027, + "type": { + "path": [ + "frame_system", + "extensions", + "check_nonce", + "CheckNonce" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 119, + "typeName": "T::Index" + } + ] + } + } + } + }, + { + "id": 1028, + "type": { + "path": [ + "frame_system", + "extensions", + "check_weight", + "CheckWeight" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": {} + } + } + }, + { + "id": 1029, + "type": { + "path": [ + "pallet_transaction_payment", + "ChargeTransactionPayment" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "type": 63, + "typeName": "BalanceOf" + } + ] + } + } + } + }, + { + "id": 1030, + "type": { + "path": [ + "pallet_fuel_tanks", + "extension", + "CheckFuelTank" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": {} + } + } + } + ] + }, + "pallets": [ + { + "name": "System", + "storage": { + "prefix": "System", + "entries": [ + { + "name": "Account", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 3 + } + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128 + ], + "docs": [ + " The full account information for a particular account ID." + ] + }, + { + "name": "ExtrinsicCount", + "modifier": "Optional", + "ty": { + "Plain": 4 + }, + "default": [ + 0 + ], + "docs": [ + " Total extrinsics count for the current block." + ] + }, + { + "name": "BlockWeight", + "modifier": "Default", + "ty": { + "Plain": 8 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The current weight for the block." + ] + }, + { + "name": "AllExtrinsicsLen", + "modifier": "Optional", + "ty": { + "Plain": 4 + }, + "default": [ + 0 + ], + "docs": [ + " Total length (in bytes) for all extrinsics put together, for the current block." + ] + }, + { + "name": "BlockHash", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 12 + } + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Map of block numbers to block hashes." + ] + }, + { + "name": "ExtrinsicData", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 13 + } + }, + "default": [ + 0 + ], + "docs": [ + " Extrinsics data for the current block (maps an extrinsic's index to its data)." + ] + }, + { + "name": "Number", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The current block number being processed. Set by `execute_block`." + ] + }, + { + "name": "ParentHash", + "modifier": "Default", + "ty": { + "Plain": 12 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Hash of the previous block." + ] + }, + { + "name": "Digest", + "modifier": "Default", + "ty": { + "Plain": 14 + }, + "default": [ + 0 + ], + "docs": [ + " Digest of the current block, also part of the block header." + ] + }, + { + "name": "Events", + "modifier": "Default", + "ty": { + "Plain": 18 + }, + "default": [ + 0 + ], + "docs": [ + " Events deposited for the current block.", + "", + " NOTE: The item is unbound and should therefore never be read on chain.", + " It could otherwise inflate the PoV size of a block.", + "", + " Events have a large in-memory size. Box the events to not go out-of-memory", + " just in case someone still reads them from within the runtime." + ] + }, + { + "name": "EventCount", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The number of events in the `Events` list." + ] + }, + { + "name": "EventTopics", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 12, + "value": 653 + } + }, + "default": [ + 0 + ], + "docs": [ + " Mapping between a topic (represented by T::Hash) and a vector of indexes", + " of events in the `>` list.", + "", + " All topic vectors have deterministic storage locations depending on the topic. This", + " allows light-clients to leverage the changes trie storage tracking mechanism and", + " in case of changes fetch the list of events of interest.", + "", + " The value has the type `(T::BlockNumber, EventIndex)` because if we used only just", + " the `EventIndex` then in case if the topic has the same contents on the next block", + " no notification will be triggered thus the event might be lost." + ] + }, + { + "name": "LastRuntimeUpgrade", + "modifier": "Optional", + "ty": { + "Plain": 654 + }, + "default": [ + 0 + ], + "docs": [ + " Stores the `spec_version` and `spec_name` of when the last runtime upgrade happened." + ] + }, + { + "name": "UpgradedToU32RefCount", + "modifier": "Default", + "ty": { + "Plain": 37 + }, + "default": [ + 0 + ], + "docs": [ + " True if we have upgraded so that `type RefCount` is `u32`. False (default) if not." + ] + }, + { + "name": "UpgradedToTripleRefCount", + "modifier": "Default", + "ty": { + "Plain": 37 + }, + "default": [ + 0 + ], + "docs": [ + " True if we have upgraded so that AccountInfo contains three types of `RefCount`. False", + " (default) if not." + ] + }, + { + "name": "ExecutionPhase", + "modifier": "Optional", + "ty": { + "Plain": 651 + }, + "default": [ + 0 + ], + "docs": [ + " The execution phase of the block." + ] + } + ] + }, + "calls": { + "ty": 293 + }, + "event": { + "ty": 21 + }, + "constants": [ + { + "name": "BlockWeights", + "ty": 656, + "value": [ + 2, + 3, + 129, + 93, + 0, + 11, + 0, + 32, + 74, + 169, + 209, + 1, + 19, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 194, + 233, + 23, + 27, + 0, + 1, + 11, + 144, + 213, + 25, + 144, + 88, + 1, + 19, + 163, + 112, + 61, + 10, + 215, + 163, + 112, + 189, + 1, + 11, + 0, + 152, + 247, + 62, + 93, + 1, + 19, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 191, + 1, + 0, + 0, + 194, + 233, + 23, + 27, + 0, + 1, + 11, + 144, + 93, + 108, + 250, + 204, + 1, + 19, + 163, + 112, + 61, + 10, + 215, + 163, + 112, + 253, + 1, + 11, + 0, + 32, + 74, + 169, + 209, + 1, + 19, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 1, + 7, + 0, + 136, + 82, + 106, + 116, + 19, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 64, + 194, + 233, + 23, + 27, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Block & extrinsics weights: base values and limits." + ] + }, + { + "name": "BlockLength", + "ty": 659, + "value": [ + 0, + 0, + 60, + 0, + 0, + 0, + 80, + 0, + 0, + 0, + 80, + 0 + ], + "docs": [ + " The maximum length of a block (in bytes)." + ] + }, + { + "name": "BlockHashCount", + "ty": 4, + "value": [ + 0, + 16, + 0, + 0 + ], + "docs": [ + " Maximum number of block number to block hash mappings to keep (oldest pruned first)." + ] + }, + { + "name": "DbWeight", + "ty": 661, + "value": [ + 64, + 120, + 125, + 1, + 0, + 0, + 0, + 0, + 0, + 225, + 245, + 5, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The weight of runtime database operations the runtime can invoke." + ] + }, + { + "name": "Version", + "ty": 662, + "value": [ + 20, + 101, + 110, + 106, + 105, + 110, + 20, + 101, + 110, + 106, + 105, + 110, + 1, + 0, + 0, + 0, + 120, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 60, + 223, + 106, + 203, + 104, + 153, + 7, + 96, + 155, + 4, + 0, + 0, + 0, + 55, + 227, + 151, + 252, + 124, + 145, + 245, + 228, + 2, + 0, + 0, + 0, + 64, + 254, + 58, + 212, + 1, + 248, + 149, + 154, + 6, + 0, + 0, + 0, + 210, + 188, + 152, + 151, + 238, + 208, + 143, + 21, + 3, + 0, + 0, + 0, + 247, + 139, + 39, + 139, + 229, + 63, + 69, + 76, + 2, + 0, + 0, + 0, + 203, + 202, + 37, + 227, + 159, + 20, + 35, + 135, + 2, + 0, + 0, + 0, + 73, + 234, + 175, + 27, + 84, + 138, + 12, + 176, + 2, + 0, + 0, + 0, + 145, + 213, + 223, + 24, + 176, + 210, + 207, + 88, + 2, + 0, + 0, + 0, + 104, + 122, + 212, + 74, + 211, + 127, + 3, + 194, + 1, + 0, + 0, + 0, + 171, + 60, + 5, + 114, + 41, + 31, + 235, + 139, + 1, + 0, + 0, + 0, + 237, + 153, + 197, + 172, + 178, + 94, + 237, + 245, + 3, + 0, + 0, + 0, + 175, + 44, + 2, + 151, + 162, + 62, + 109, + 61, + 4, + 0, + 0, + 0, + 188, + 157, + 137, + 144, + 79, + 91, + 146, + 63, + 1, + 0, + 0, + 0, + 55, + 200, + 187, + 19, + 80, + 169, + 162, + 168, + 4, + 0, + 0, + 0, + 243, + 255, + 20, + 213, + 171, + 82, + 112, + 89, + 3, + 0, + 0, + 0, + 4, + 0, + 0, + 0, + 1 + ], + "docs": [ + " Get the chain's current version." + ] + }, + { + "name": "SS58Prefix", + "ty": 290, + "value": [ + 87, + 8 + ], + "docs": [ + " The designated SS58 prefix of this chain.", + "", + " This replaces the \"ss58Format\" property declared in the chain spec. Reason is", + " that the runtime should know about the prefix in order to make use of it as", + " an identifier of the chain." + ] + } + ], + "error": { + "ty": 666 + }, + "index": 0 + }, + { + "name": "RandomnessCollectiveFlip", + "storage": { + "prefix": "RandomnessCollectiveFlip", + "entries": [ + { + "name": "RandomMaterial", + "modifier": "Default", + "ty": { + "Plain": 667 + }, + "default": [ + 0 + ], + "docs": [ + " Series of block headers from the last 81 blocks that acts as random seed material. This", + " is arranged as a ring buffer with `block_number % 81` being the index into the `Vec` of", + " the oldest hash." + ] + } + ] + }, + "calls": null, + "event": null, + "constants": [], + "error": null, + "index": 1 + }, + { + "name": "Timestamp", + "storage": { + "prefix": "Timestamp", + "entries": [ + { + "name": "Now", + "modifier": "Default", + "ty": { + "Plain": 11 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Current time for the current block." + ] + }, + { + "name": "DidUpdate", + "modifier": "Default", + "ty": { + "Plain": 37 + }, + "default": [ + 0 + ], + "docs": [ + " Did the timestamp get updated in this block?" + ] + } + ] + }, + "calls": { + "ty": 297 + }, + "event": null, + "constants": [ + { + "name": "MinimumPeriod", + "ty": 11, + "value": [ + 184, + 11, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The minimum period between blocks. Beware that this is different to the *expected*", + " period that the block production apparatus provides. Your chosen consensus system will", + " generally work with this to determine a sensible block time. e.g. For Aura, it will be", + " double this period on default settings." + ] + } + ], + "error": null, + "index": 2 + }, + { + "name": "Babe", + "storage": { + "prefix": "Babe", + "entries": [ + { + "name": "EpochIndex", + "modifier": "Default", + "ty": { + "Plain": 11 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Current epoch index." + ] + }, + { + "name": "Authorities", + "modifier": "Default", + "ty": { + "Plain": 668 + }, + "default": [ + 0 + ], + "docs": [ + " Current epoch authorities." + ] + }, + { + "name": "GenesisSlot", + "modifier": "Default", + "ty": { + "Plain": 303 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The slot at which the first epoch actually started. This is 0", + " until the first block of the chain." + ] + }, + { + "name": "CurrentSlot", + "modifier": "Default", + "ty": { + "Plain": 303 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Current slot number." + ] + }, + { + "name": "Randomness", + "modifier": "Default", + "ty": { + "Plain": 1 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The epoch randomness for the *current* epoch.", + "", + " # Security", + "", + " This MUST NOT be used for gambling, as it can be influenced by a", + " malicious validator in the short term. It MAY be used in many", + " cryptographic protocols, however, so long as one remembers that this", + " (like everything else on-chain) it is public. For example, it can be", + " used where a number is needed that cannot have been chosen by an", + " adversary, for purposes such as public-coin zero-knowledge proofs." + ] + }, + { + "name": "PendingEpochConfigChange", + "modifier": "Optional", + "ty": { + "Plain": 305 + }, + "default": [ + 0 + ], + "docs": [ + " Pending epoch configuration change that will be applied when the next epoch is enacted." + ] + }, + { + "name": "NextRandomness", + "modifier": "Default", + "ty": { + "Plain": 1 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Next epoch randomness." + ] + }, + { + "name": "NextAuthorities", + "modifier": "Default", + "ty": { + "Plain": 668 + }, + "default": [ + 0 + ], + "docs": [ + " Next epoch authorities." + ] + }, + { + "name": "SegmentIndex", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " Randomness under construction.", + "", + " We make a trade-off between storage accesses and list length.", + " We store the under-construction randomness in segments of up to", + " `UNDER_CONSTRUCTION_SEGMENT_LENGTH`.", + "", + " Once a segment reaches this length, we begin the next one.", + " We reset all segments and return to `0` at the beginning of every", + " epoch." + ] + }, + { + "name": "UnderConstruction", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 671 + } + }, + "default": [ + 0 + ], + "docs": [ + " TWOX-NOTE: `SegmentIndex` is an increasing integer, so this is okay." + ] + }, + { + "name": "Initialized", + "modifier": "Optional", + "ty": { + "Plain": 673 + }, + "default": [ + 0 + ], + "docs": [ + " Temporary value (cleared at block finalization) which is `Some`", + " if per-block initialization has already been called for current block." + ] + }, + { + "name": "AuthorVrfRandomness", + "modifier": "Default", + "ty": { + "Plain": 286 + }, + "default": [ + 0 + ], + "docs": [ + " This field should always be populated during block processing unless", + " secondary plain slots are enabled (which don't contain a VRF output).", + "", + " It is set in `on_finalize`, before it will contain the value from the last block." + ] + }, + { + "name": "EpochStart", + "modifier": "Default", + "ty": { + "Plain": 285 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The block numbers when the last and current epoch have started, respectively `N-1` and", + " `N`.", + " NOTE: We track this is in order to annotate the block number when a given pool of", + " entropy was fixed (i.e. it was known to chain observers). Since epochs are defined in", + " slots, which may be skipped, the block numbers may not line up with the slot numbers." + ] + }, + { + "name": "Lateness", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " How late the current block is compared to its parent.", + "", + " This entry is populated as part of block execution and is cleaned up", + " on block finalization. Querying this storage entry outside of block", + " execution context should always yield zero." + ] + }, + { + "name": "EpochConfig", + "modifier": "Optional", + "ty": { + "Plain": 679 + }, + "default": [ + 0 + ], + "docs": [ + " The configuration for the current epoch. Should never be `None` as it is initialized in", + " genesis." + ] + }, + { + "name": "NextEpochConfig", + "modifier": "Optional", + "ty": { + "Plain": 679 + }, + "default": [ + 0 + ], + "docs": [ + " The configuration for the next epoch, `None` if the config will not change", + " (you can fallback to `EpochConfig` instead in that case)." + ] + }, + { + "name": "SkippedEpochs", + "modifier": "Default", + "ty": { + "Plain": 680 + }, + "default": [ + 0 + ], + "docs": [ + " A list of the last 100 skipped epochs and the corresponding session index", + " when the epoch was skipped.", + "", + " This is only used for validating equivocation proofs. An equivocation proof", + " must contains a key-ownership proof for a given session, therefore we need a", + " way to tie together sessions and epoch indices, i.e. we need to validate that", + " a validator was the owner of a given key on a given session, and what the", + " active epoch index was during that session." + ] + } + ] + }, + "calls": { + "ty": 298 + }, + "event": null, + "constants": [ + { + "name": "EpochDuration", + "ty": 11, + "value": [ + 96, + 9, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The amount of time, in slots, that each epoch should last.", + " NOTE: Currently it is not possible to change the epoch duration after", + " the chain has started. Attempting to do so will brick block production." + ] + }, + { + "name": "ExpectedBlockTime", + "ty": 11, + "value": [ + 112, + 23, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The expected average block time at which BABE should be creating", + " blocks. Since BABE is probabilistic it is not trivial to figure out", + " what the expected average block time should be based on the slot", + " duration and the security parameter `c` (where `1 - c` represents", + " the probability of a slot being empty)." + ] + }, + { + "name": "MaxAuthorities", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " Max number of authorities allowed" + ] + } + ], + "error": { + "ty": 683 + }, + "index": 3 + }, + { + "name": "Historical", + "storage": null, + "calls": null, + "event": null, + "constants": [], + "error": null, + "index": 4 + }, + { + "name": "Authorship", + "storage": { + "prefix": "Authorship", + "entries": [ + { + "name": "Author", + "modifier": "Optional", + "ty": { + "Plain": 0 + }, + "default": [ + 0 + ], + "docs": [ + " Author of current block." + ] + } + ] + }, + "calls": null, + "event": null, + "constants": [], + "error": null, + "index": 5 + }, + { + "name": "Balances", + "storage": { + "prefix": "Balances", + "entries": [ + { + "name": "TotalIssuance", + "modifier": "Default", + "ty": { + "Plain": 6 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The total units issued in the system." + ] + }, + { + "name": "InactiveIssuance", + "modifier": "Default", + "ty": { + "Plain": 6 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The total units of outstanding deactivated balance in the system." + ] + }, + { + "name": "Account", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 5 + } + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128 + ], + "docs": [ + " The Balances pallet example of storing the balance of an account.", + "", + " # Example", + "", + " ```nocompile", + " impl pallet_balances::Config for Runtime {", + " type AccountStore = StorageMapShim, frame_system::Provider, AccountId, Self::AccountData>", + " }", + " ```", + "", + " You can also store the balance of an account in the `System` pallet.", + "", + " # Example", + "", + " ```nocompile", + " impl pallet_balances::Config for Runtime {", + " type AccountStore = System", + " }", + " ```", + "", + " But this comes with tradeoffs, storing account balances in the system pallet stores", + " `frame_system` data alongside the account data contrary to storing account balances in the", + " `Balances` pallet, which uses a `StorageMap` to store balances data only.", + " NOTE: This is only used in the case that this pallet is used to store balances." + ] + }, + { + "name": "Locks", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 684 + } + }, + "default": [ + 0 + ], + "docs": [ + " Any liquidity locks on some account balances.", + " NOTE: Should only be accessed when setting, changing and freeing a lock." + ] + }, + { + "name": "Reserves", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 688 + } + }, + "default": [ + 0 + ], + "docs": [ + " Named reserves on some account balances." + ] + }, + { + "name": "Holds", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 691 + } + }, + "default": [ + 0 + ], + "docs": [ + " Holds on account balances." + ] + }, + { + "name": "Freezes", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 691 + } + }, + "default": [ + 0 + ], + "docs": [ + " Freeze locks on account balances." + ] + } + ] + }, + "calls": { + "ty": 308 + }, + "event": { + "ty": 30 + }, + "constants": [ + { + "name": "ExistentialDeposit", + "ty": 6, + "value": [ + 0, + 0, + 138, + 93, + 120, + 69, + 99, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The minimum amount required to keep an account open. MUST BE GREATER THAN ZERO!", + "", + " If you *really* need it to be zero, you can enable the feature `insecure_zero_ed` for", + " this pallet. However, you do so at your own risk: this will open up a major DoS vector.", + " In case you have multiple sources of provider references, you may also get unexpected", + " behaviour if you set this to zero.", + "", + " Bottom line: Do yourself a favour and make it at least one!" + ] + }, + { + "name": "MaxLocks", + "ty": 4, + "value": [ + 50, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of locks that should exist on an account.", + " Not strictly enforced, but used for weight estimation." + ] + }, + { + "name": "MaxReserves", + "ty": 4, + "value": [ + 50, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of named reserves that can exist on an account." + ] + }, + { + "name": "MaxHolds", + "ty": 4, + "value": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of holds that can exist on an account at any time." + ] + }, + { + "name": "MaxFreezes", + "ty": 4, + "value": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of individual freeze locks that can exist on an account at any time." + ] + } + ], + "error": { + "ty": 694 + }, + "index": 6 + }, + { + "name": "Offences", + "storage": { + "prefix": "Offences", + "entries": [ + { + "name": "Reports", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 12, + "value": 695 + } + }, + "default": [ + 0 + ], + "docs": [ + " The primary structure that holds all offence records keyed by report identifiers." + ] + }, + { + "name": "ConcurrentReportsIndex", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 696, + "value": 652 + } + }, + "default": [ + 0 + ], + "docs": [ + " A vector of reports of the same kind that happened at the same time slot." + ] + } + ] + }, + "calls": null, + "event": { + "ty": 32 + }, + "constants": [], + "error": null, + "index": 7 + }, + { + "name": "ElectionProviderMultiPhase", + "storage": { + "prefix": "ElectionProviderMultiPhase", + "entries": [ + { + "name": "Round", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 1, + 0, + 0, + 0 + ], + "docs": [ + " Internal counter for the number of rounds.", + "", + " This is useful for de-duplication of transactions submitted to the pool, and general", + " diagnostics of the pallet.", + "", + " This is merely incremented once per every time that an upstream `elect` is called." + ] + }, + { + "name": "CurrentPhase", + "modifier": "Default", + "ty": { + "Plain": 39 + }, + "default": [ + 0 + ], + "docs": [ + " Current phase." + ] + }, + { + "name": "QueuedSolution", + "modifier": "Optional", + "ty": { + "Plain": 697 + }, + "default": [ + 0 + ], + "docs": [ + " Current best solution, signed or unsigned, queued to be returned upon `elect`.", + "", + " Always sorted by score." + ] + }, + { + "name": "Snapshot", + "modifier": "Optional", + "ty": { + "Plain": 699 + }, + "default": [ + 0 + ], + "docs": [ + " Snapshot data of the round.", + "", + " This is created at the beginning of the signed phase and cleared upon calling `elect`." + ] + }, + { + "name": "DesiredTargets", + "modifier": "Optional", + "ty": { + "Plain": 4 + }, + "default": [ + 0 + ], + "docs": [ + " Desired number of targets to elect for this round.", + "", + " Only exists when [`Snapshot`] is present." + ] + }, + { + "name": "SnapshotMetadata", + "modifier": "Optional", + "ty": { + "Plain": 364 + }, + "default": [ + 0 + ], + "docs": [ + " The metadata of the [`RoundSnapshot`]", + "", + " Only exists when [`Snapshot`] is present." + ] + }, + { + "name": "SignedSubmissionNextIndex", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The next index to be assigned to an incoming signed submission.", + "", + " Every accepted submission is assigned a unique index; that index is bound to that particular", + " submission for the duration of the election. On election finalization, the next index is", + " reset to 0.", + "", + " We can't just use `SignedSubmissionIndices.len()`, because that's a bounded set; past its", + " capacity, it will simply saturate. We can't just iterate over `SignedSubmissionsMap`,", + " because iteration is slow. Instead, we store the value here." + ] + }, + { + "name": "SignedSubmissionIndices", + "modifier": "Default", + "ty": { + "Plain": 703 + }, + "default": [ + 0 + ], + "docs": [ + " A sorted, bounded vector of `(score, block_number, index)`, where each `index` points to a", + " value in `SignedSubmissions`.", + "", + " We never need to process more than a single signed submission at a time. Signed submissions", + " can be quite large, so we're willing to pay the cost of multiple database accesses to access", + " them one at a time instead of reading and decoding all of them at once." + ] + }, + { + "name": "SignedSubmissionsMap", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 706 + } + }, + "default": [ + 0 + ], + "docs": [ + " Unchecked, signed solutions.", + "", + " Together with `SubmissionIndices`, this stores a bounded set of `SignedSubmissions` while", + " allowing us to keep only a single one in memory at a time.", + "", + " Twox note: the key of the map is an auto-incrementing index which users cannot inspect or", + " affect; we shouldn't need a cryptographically secure hasher." + ] + }, + { + "name": "MinimumUntrustedScore", + "modifier": "Optional", + "ty": { + "Plain": 38 + }, + "default": [ + 0 + ], + "docs": [ + " The minimum score that each 'untrusted' solution must attain in order to be considered", + " feasible.", + "", + " Can be set via `set_minimum_untrusted_score`." + ] + } + ] + }, + "calls": { + "ty": 311 + }, + "event": { + "ty": 34 + }, + "constants": [ + { + "name": "UnsignedPhase", + "ty": 4, + "value": [ + 88, + 2, + 0, + 0 + ], + "docs": [ + " Duration of the unsigned phase." + ] + }, + { + "name": "SignedPhase", + "ty": 4, + "value": [ + 88, + 2, + 0, + 0 + ], + "docs": [ + " Duration of the signed phase." + ] + }, + { + "name": "BetterSignedThreshold", + "ty": 42, + "value": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The minimum amount of improvement to the solution score that defines a solution as", + " \"better\" in the Signed phase." + ] + }, + { + "name": "BetterUnsignedThreshold", + "ty": 42, + "value": [ + 160, + 134, + 1, + 0 + ], + "docs": [ + " The minimum amount of improvement to the solution score that defines a solution as", + " \"better\" in the Unsigned phase." + ] + }, + { + "name": "OffchainRepeat", + "ty": 4, + "value": [ + 5, + 0, + 0, + 0 + ], + "docs": [ + " The repeat threshold of the offchain worker.", + "", + " For example, if it is 5, that means that at least 5 blocks will elapse between attempts", + " to submit the worker's solution." + ] + }, + { + "name": "MinerTxPriority", + "ty": 11, + "value": [ + 254, + 255, + 255, + 255, + 255, + 255, + 255, + 127 + ], + "docs": [ + " The priority of the unsigned transaction submitted in the unsigned-phase" + ] + }, + { + "name": "SignedMaxSubmissions", + "ty": 4, + "value": [ + 10, + 0, + 0, + 0 + ], + "docs": [ + " Maximum number of signed submissions that can be queued.", + "", + " It is best to avoid adjusting this during an election, as it impacts downstream data", + " structures. In particular, `SignedSubmissionIndices` is bounded on this value. If you", + " update this value during an election, you _must_ ensure that", + " `SignedSubmissionIndices.len()` is less than or equal to the new value. Otherwise,", + " attempts to submit new solutions may cause a runtime panic." + ] + }, + { + "name": "SignedMaxWeight", + "ty": 9, + "value": [ + 11, + 208, + 148, + 185, + 120, + 88, + 1, + 19, + 163, + 112, + 61, + 10, + 215, + 163, + 112, + 189 + ], + "docs": [ + " Maximum weight of a signed solution.", + "", + " If [`Config::MinerConfig`] is being implemented to submit signed solutions (outside of", + " this pallet), then [`MinerConfig::solution_weight`] is used to compare against", + " this value." + ] + }, + { + "name": "SignedMaxRefunds", + "ty": 4, + "value": [ + 3, + 0, + 0, + 0 + ], + "docs": [ + " The maximum amount of unchecked solutions to refund the call fee for." + ] + }, + { + "name": "SignedRewardBase", + "ty": 6, + "value": [ + 0, + 0, + 122, + 34, + 193, + 200, + 177, + 34, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Base reward for a signed solution" + ] + }, + { + "name": "SignedDepositBase", + "ty": 6, + "value": [ + 0, + 0, + 122, + 34, + 193, + 200, + 177, + 34, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Base deposit for a signed solution." + ] + }, + { + "name": "SignedDepositByte", + "ty": 6, + "value": [ + 0, + 128, + 98, + 23, + 94, + 209, + 88, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Per-byte deposit for a signed solution." + ] + }, + { + "name": "SignedDepositWeight", + "ty": 6, + "value": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Per-weight deposit for a signed solution." + ] + }, + { + "name": "MaxElectingVoters", + "ty": 4, + "value": [ + 64, + 156, + 0, + 0 + ], + "docs": [ + " The maximum number of electing voters to put in the snapshot. At the moment, snapshots", + " are only over a single block, but once multi-block elections are introduced they will", + " take place over multiple blocks." + ] + }, + { + "name": "MaxElectableTargets", + "ty": 290, + "value": [ + 16, + 39 + ], + "docs": [ + " The maximum number of electable targets to put in the snapshot." + ] + }, + { + "name": "MaxWinners", + "ty": 4, + "value": [ + 232, + 3, + 0, + 0 + ], + "docs": [ + " The maximum number of winners that can be elected by this `ElectionProvider`", + " implementation.", + "", + " Note: This must always be greater or equal to `T::DataProvider::desired_targets()`." + ] + }, + { + "name": "MinerMaxLength", + "ty": 4, + "value": [ + 0, + 0, + 54, + 0 + ], + "docs": [] + }, + { + "name": "MinerMaxWeight", + "ty": 9, + "value": [ + 11, + 208, + 148, + 185, + 120, + 88, + 1, + 19, + 163, + 112, + 61, + 10, + 215, + 163, + 112, + 189 + ], + "docs": [] + }, + { + "name": "MinerMaxVotesPerVoter", + "ty": 4, + "value": [ + 16, + 0, + 0, + 0 + ], + "docs": [] + }, + { + "name": "MinerMaxWinners", + "ty": 4, + "value": [ + 232, + 3, + 0, + 0 + ], + "docs": [] + } + ], + "error": { + "ty": 707 + }, + "index": 8 + }, + { + "name": "Staking", + "storage": { + "prefix": "Staking", + "entries": [ + { + "name": "ValidatorCount", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The ideal number of active validators." + ] + }, + { + "name": "MinimumValidatorCount", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " Minimum number of staking participants before emergency conditions are imposed." + ] + }, + { + "name": "Invulnerables", + "modifier": "Default", + "ty": { + "Plain": 78 + }, + "default": [ + 0 + ], + "docs": [ + " Any validators that may never be slashed or forcibly kicked. It's a Vec since they're", + " easy to initialize and the performance hit is minimal (we expect no more than four", + " invulnerables) and restricted to testnets." + ] + }, + { + "name": "Bonded", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 0 + } + }, + "default": [ + 0 + ], + "docs": [ + " Map from all locked \"stash\" accounts to the controller account.", + "", + " TWOX-NOTE: SAFE since `AccountId` is a secure hash." + ] + }, + { + "name": "MinNominatorBond", + "modifier": "Default", + "ty": { + "Plain": 6 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The minimum active bond to become and maintain the role of a nominator." + ] + }, + { + "name": "MinValidatorBond", + "modifier": "Default", + "ty": { + "Plain": 6 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The minimum active bond to become and maintain the role of a validator." + ] + }, + { + "name": "MinimumActiveStake", + "modifier": "Default", + "ty": { + "Plain": 6 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The minimum active nominator stake of the last successful election." + ] + }, + { + "name": "MinCommission", + "modifier": "Default", + "ty": { + "Plain": 42 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The minimum amount of commission that validators can set.", + "", + " If set to `0`, no limit exists." + ] + }, + { + "name": "Ledger", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 708 + } + }, + "default": [ + 0 + ], + "docs": [ + " Map from all (unlocked) \"controller\" accounts to the info regarding the staking." + ] + }, + { + "name": "Payee", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 372 + } + }, + "default": [ + 0 + ], + "docs": [ + " Where the reward payment should be made. Keyed by stash.", + "", + " TWOX-NOTE: SAFE since `AccountId` is a secure hash." + ] + }, + { + "name": "Validators", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 43 + } + }, + "default": [ + 0, + 0 + ], + "docs": [ + " The map from (wannabe) validator stash key to the preferences of that validator.", + "", + " TWOX-NOTE: SAFE since `AccountId` is a secure hash." + ] + }, + { + "name": "CounterForValidators", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + "Counter for the related counted storage map" + ] + }, + { + "name": "MaxValidatorsCount", + "modifier": "Optional", + "ty": { + "Plain": 4 + }, + "default": [ + 0 + ], + "docs": [ + " The maximum validator count before we stop allowing new validators to join.", + "", + " When this value is not set, no limits are enforced." + ] + }, + { + "name": "Nominators", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 713 + } + }, + "default": [ + 0 + ], + "docs": [ + " The map from nominator stash key to their nomination preferences, namely the validators that", + " they wish to support.", + "", + " Note that the keys of this storage map might become non-decodable in case the", + " [`Config::MaxNominations`] configuration is decreased. In this rare case, these nominators", + " are still existent in storage, their key is correct and retrievable (i.e. `contains_key`", + " indicates that they exist), but their value cannot be decoded. Therefore, the non-decodable", + " nominators will effectively not-exist, until they re-submit their preferences such that it", + " is within the bounds of the newly set `Config::MaxNominations`.", + "", + " This implies that `::iter_keys().count()` and `::iter().count()` might return different", + " values for this map. Moreover, the main `::count()` is aligned with the former, namely the", + " number of keys that exist.", + "", + " Lastly, if any of the nominators become non-decodable, they can be chilled immediately via", + " [`Call::chill_other`] dispatchable by anyone.", + "", + " TWOX-NOTE: SAFE since `AccountId` is a secure hash." + ] + }, + { + "name": "CounterForNominators", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + "Counter for the related counted storage map" + ] + }, + { + "name": "MaxNominatorsCount", + "modifier": "Optional", + "ty": { + "Plain": 4 + }, + "default": [ + 0 + ], + "docs": [ + " The maximum nominator count before we stop allowing new validators to join.", + "", + " When this value is not set, no limits are enforced." + ] + }, + { + "name": "CurrentEra", + "modifier": "Optional", + "ty": { + "Plain": 4 + }, + "default": [ + 0 + ], + "docs": [ + " The current era index.", + "", + " This is the latest planned era, depending on how the Session pallet queues the validator", + " set, it might be active or not." + ] + }, + { + "name": "ActiveEra", + "modifier": "Optional", + "ty": { + "Plain": 714 + }, + "default": [ + 0 + ], + "docs": [ + " The active era information, it holds index and start.", + "", + " The active era is the era being currently rewarded. Validator set of this era must be", + " equal to [`SessionInterface::validators`]." + ] + }, + { + "name": "ErasStartSessionIndex", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 4 + } + }, + "default": [ + 0 + ], + "docs": [ + " The session index at which the era start for the last `HISTORY_DEPTH` eras.", + "", + " Note: This tracks the starting session (i.e. session index when era start being active)", + " for the eras in `[CurrentEra - HISTORY_DEPTH, CurrentEra]`." + ] + }, + { + "name": "ErasStakers", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 715, + "value": 62 + } + }, + "default": [ + 0, + 0, + 0 + ], + "docs": [ + " Exposure of validator at era.", + "", + " This is keyed first by the era index to allow bulk deletion and then the stash account.", + "", + " Is it removed after `HISTORY_DEPTH` eras.", + " If stakers hasn't been set or has been removed then empty exposure is returned." + ] + }, + { + "name": "ErasStakersClipped", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 715, + "value": 62 + } + }, + "default": [ + 0, + 0, + 0 + ], + "docs": [ + " Clipped Exposure of validator at era.", + "", + " This is similar to [`ErasStakers`] but number of nominators exposed is reduced to the", + " `T::MaxNominatorRewardedPerValidator` biggest stakers.", + " (Note: the field `total` and `own` of the exposure remains unchanged).", + " This is used to limit the i/o cost for the nominator payout.", + "", + " This is keyed fist by the era index to allow bulk deletion and then the stash account.", + "", + " Is it removed after `HISTORY_DEPTH` eras.", + " If stakers hasn't been set or has been removed then empty exposure is returned." + ] + }, + { + "name": "ErasValidatorPrefs", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 715, + "value": 43 + } + }, + "default": [ + 0, + 0 + ], + "docs": [ + " Similar to `ErasStakers`, this holds the preferences of validators.", + "", + " This is keyed first by the era index to allow bulk deletion and then the stash account.", + "", + " Is it removed after `HISTORY_DEPTH` eras." + ] + }, + { + "name": "ErasValidatorReward", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 6 + } + }, + "default": [ + 0 + ], + "docs": [ + " The total validator era payout for the last `HISTORY_DEPTH` eras.", + "", + " Eras that haven't finished yet or has been removed doesn't have reward." + ] + }, + { + "name": "ErasRewardPoints", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 716 + } + }, + "default": [ + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Rewards for the last `HISTORY_DEPTH` eras.", + " If reward hasn't been set or has been removed then 0 reward is returned." + ] + }, + { + "name": "ErasTotalStake", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 6 + } + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The total amount staked for the last `HISTORY_DEPTH` eras.", + " If total hasn't been set or has been removed then 0 stake is returned." + ] + }, + { + "name": "ForceEra", + "modifier": "Default", + "ty": { + "Plain": 45 + }, + "default": [ + 0 + ], + "docs": [ + " Mode of era forcing." + ] + }, + { + "name": "SlashRewardFraction", + "modifier": "Default", + "ty": { + "Plain": 42 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The percentage of the slash that is distributed to reporters.", + "", + " The rest of the slashed value is handled by the `Slash`." + ] + }, + { + "name": "CanceledSlashPayout", + "modifier": "Default", + "ty": { + "Plain": 6 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The amount of currency given to reporters of a slash event which was", + " canceled by extraordinary circumstances (e.g. governance)." + ] + }, + { + "name": "UnappliedSlashes", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 720 + } + }, + "default": [ + 0 + ], + "docs": [ + " All unapplied slashes that are queued for later." + ] + }, + { + "name": "BondedEras", + "modifier": "Default", + "ty": { + "Plain": 653 + }, + "default": [ + 0 + ], + "docs": [ + " A mapping from still-bonded eras to the first session index of that era.", + "", + " Must contains information for eras for the range:", + " `[active_era - bounding_duration; active_era]`" + ] + }, + { + "name": "ValidatorSlashInEra", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 715, + "value": 722 + } + }, + "default": [ + 0 + ], + "docs": [ + " All slashing events on validators, mapped by era to the highest slash proportion", + " and slash value of the era." + ] + }, + { + "name": "NominatorSlashInEra", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 715, + "value": 6 + } + }, + "default": [ + 0 + ], + "docs": [ + " All slashing events on nominators, mapped by era to the highest slash value of the era." + ] + }, + { + "name": "SlashingSpans", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 723 + } + }, + "default": [ + 0 + ], + "docs": [ + " Slashing spans for stash accounts." + ] + }, + { + "name": "SpanSlash", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 719, + "value": 724 + } + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Records information about the maximum slash of a stash within a slashing span,", + " as well as how much reward has been paid out." + ] + }, + { + "name": "CurrentPlannedSession", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The last planned session scheduled by the session pallet.", + "", + " This is basically in sync with the call to [`pallet_session::SessionManager::new_session`]." + ] + }, + { + "name": "OffendingValidators", + "modifier": "Default", + "ty": { + "Plain": 725 + }, + "default": [ + 0 + ], + "docs": [ + " Indices of validators that have offended in the active era and whether they are currently", + " disabled.", + "", + " This value should be a superset of disabled validators since not all offences lead to the", + " validator being disabled (if there was no slash). This is needed to track the percentage of", + " validators that have offended in the current era, ensuring a new era is forced if", + " `OffendingValidatorsThreshold` is reached. The vec is always kept sorted so that we can find", + " whether a given validator has previously offended using binary search. It gets cleared when", + " the era ends." + ] + }, + { + "name": "ChillThreshold", + "modifier": "Optional", + "ty": { + "Plain": 374 + }, + "default": [ + 0 + ], + "docs": [ + " The threshold for when users can start calling `chill_other` for other validators /", + " nominators. The threshold is compared to the actual number of validators / nominators", + " (`CountFor*`) in the system compared to the configured max (`Max*Count`)." + ] + } + ] + }, + "calls": { + "ty": 371 + }, + "event": { + "ty": 41 + }, + "constants": [ + { + "name": "MaxNominations", + "ty": 4, + "value": [ + 16, + 0, + 0, + 0 + ], + "docs": [ + " Maximum number of nominations per nominator." + ] + }, + { + "name": "HistoryDepth", + "ty": 4, + "value": [ + 84, + 0, + 0, + 0 + ], + "docs": [ + " Number of eras to keep in history.", + "", + " Following information is kept for eras in `[current_era -", + " HistoryDepth, current_era]`: `ErasStakers`, `ErasStakersClipped`,", + " `ErasValidatorPrefs`, `ErasValidatorReward`, `ErasRewardPoints`,", + " `ErasTotalStake`, `ErasStartSessionIndex`,", + " `StakingLedger.claimed_rewards`.", + "", + " Must be more than the number of eras delayed by session.", + " I.e. active era must always be in history. I.e. `active_era >", + " current_era - history_depth` must be guaranteed.", + "", + " If migrating an existing pallet from storage value to config value,", + " this should be set to same value or greater as in storage.", + "", + " Note: `HistoryDepth` is used as the upper bound for the `BoundedVec`", + " item `StakingLedger.claimed_rewards`. Setting this value lower than", + " the existing value can lead to inconsistencies in the", + " `StakingLedger` and will need to be handled properly in a migration.", + " The test `reducing_history_depth_abrupt` shows this effect." + ] + }, + { + "name": "SessionsPerEra", + "ty": 4, + "value": [ + 6, + 0, + 0, + 0 + ], + "docs": [ + " Number of sessions per era." + ] + }, + { + "name": "BondingDuration", + "ty": 4, + "value": [ + 28, + 0, + 0, + 0 + ], + "docs": [ + " Number of eras that staked funds must remain bonded for." + ] + }, + { + "name": "SlashDeferDuration", + "ty": 4, + "value": [ + 27, + 0, + 0, + 0 + ], + "docs": [ + " Number of eras that slashes are deferred by, after computation.", + "", + " This should be less than the bonding duration. Set to 0 if slashes", + " should be applied immediately, without opportunity for intervention." + ] + }, + { + "name": "MaxNominatorRewardedPerValidator", + "ty": 4, + "value": [ + 0, + 1, + 0, + 0 + ], + "docs": [ + " The maximum number of nominators rewarded for each validator.", + "", + " For each validator only the `$MaxNominatorRewardedPerValidator` biggest stakers can", + " claim their reward. This used to limit the i/o cost for the nominator payout." + ] + }, + { + "name": "MaxUnlockingChunks", + "ty": 4, + "value": [ + 32, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of `unlocking` chunks a [`StakingLedger`] can", + " have. Effectively determines how many unique eras a staker may be", + " unbonding in.", + "", + " Note: `MaxUnlockingChunks` is used as the upper bound for the", + " `BoundedVec` item `StakingLedger.unlocking`. Setting this value", + " lower than the existing value can lead to inconsistencies in the", + " `StakingLedger` and will need to be handled properly in a runtime", + " migration. The test `reducing_max_unlocking_chunks_abrupt` shows", + " this effect." + ] + } + ], + "error": { + "ty": 727 + }, + "index": 9 + }, + { + "name": "Session", + "storage": { + "prefix": "Session", + "entries": [ + { + "name": "Validators", + "modifier": "Default", + "ty": { + "Plain": 78 + }, + "default": [ + 0 + ], + "docs": [ + " The current set of validators." + ] + }, + { + "name": "CurrentIndex", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " Current index of the session." + ] + }, + { + "name": "QueuedChanged", + "modifier": "Default", + "ty": { + "Plain": 37 + }, + "default": [ + 0 + ], + "docs": [ + " True if the underlying economic identities or weighting behind the validators", + " has changed in the queued validator set." + ] + }, + { + "name": "QueuedKeys", + "modifier": "Default", + "ty": { + "Plain": 728 + }, + "default": [ + 0 + ], + "docs": [ + " The queued keys for the next session. When the next session begins, these keys", + " will be used to determine the validator's session keys." + ] + }, + { + "name": "DisabledValidators", + "modifier": "Default", + "ty": { + "Plain": 375 + }, + "default": [ + 0 + ], + "docs": [ + " Indices of disabled validators.", + "", + " The vec is always kept sorted so that we can find whether a given validator is", + " disabled using binary search. It gets cleared when `on_session_ending` returns", + " a new set of identities." + ] + }, + { + "name": "NextKeys", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 381 + } + }, + "default": [ + 0 + ], + "docs": [ + " The next session keys for a validator." + ] + }, + { + "name": "KeyOwner", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 730, + "value": 0 + } + }, + "default": [ + 0 + ], + "docs": [ + " The owner of a key. The key is the `KeyTypeId` + the encoded key." + ] + } + ] + }, + "calls": { + "ty": 380 + }, + "event": { + "ty": 46 + }, + "constants": [], + "error": { + "ty": 732 + }, + "index": 10 + }, + { + "name": "Grandpa", + "storage": { + "prefix": "Grandpa", + "entries": [ + { + "name": "State", + "modifier": "Default", + "ty": { + "Plain": 733 + }, + "default": [ + 0 + ], + "docs": [ + " State of the current authority set." + ] + }, + { + "name": "PendingChange", + "modifier": "Optional", + "ty": { + "Plain": 734 + }, + "default": [ + 0 + ], + "docs": [ + " Pending change: (signaled at, scheduled change)." + ] + }, + { + "name": "NextForced", + "modifier": "Optional", + "ty": { + "Plain": 4 + }, + "default": [ + 0 + ], + "docs": [ + " next block number where we can force a change." + ] + }, + { + "name": "Stalled", + "modifier": "Optional", + "ty": { + "Plain": 285 + }, + "default": [ + 0 + ], + "docs": [ + " `true` if we are currently stalled." + ] + }, + { + "name": "CurrentSetId", + "modifier": "Default", + "ty": { + "Plain": 11 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The number of changes (both in terms of keys and underlying economic responsibilities)", + " in the \"set\" of Grandpa validators from genesis." + ] + }, + { + "name": "SetIdSession", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 11, + "value": 4 + } + }, + "default": [ + 0 + ], + "docs": [ + " A mapping from grandpa set ID to the index of the *most recent* session for which its", + " members were responsible.", + "", + " This is only used for validating equivocation proofs. An equivocation proof must", + " contains a key-ownership proof for a given session, therefore we need a way to tie", + " together sessions and GRANDPA set ids, i.e. we need to validate that a validator", + " was the owner of a given key on a given session, and what the active set ID was", + " during that session.", + "", + " TWOX-NOTE: `SetId` is not under user control." + ] + } + ] + }, + "calls": { + "ty": 385 + }, + "event": { + "ty": 47 + }, + "constants": [ + { + "name": "MaxAuthorities", + "ty": 4, + "value": [ + 32, + 0, + 0, + 0 + ], + "docs": [ + " Max Authorities in use" + ] + }, + { + "name": "MaxSetIdSessionEntries", + "ty": 11, + "value": [ + 168, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of entries to keep in the set id to session index mapping.", + "", + " Since the `SetIdSession` map is only used for validating equivocations this", + " value should relate to the bonding duration of whatever staking system is", + " being used (if any). If equivocation handling is not enabled then this value", + " can be zero." + ] + } + ], + "error": { + "ty": 736 + }, + "index": 11 + }, + { + "name": "Treasury", + "storage": { + "prefix": "Treasury", + "entries": [ + { + "name": "ProposalCount", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " Number of proposals that have been made." + ] + }, + { + "name": "Proposals", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 737 + } + }, + "default": [ + 0 + ], + "docs": [ + " Proposals that have been made." + ] + }, + { + "name": "Deactivated", + "modifier": "Default", + "ty": { + "Plain": 6 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The amount which has been reported as inactive to Currency." + ] + }, + { + "name": "Approvals", + "modifier": "Default", + "ty": { + "Plain": 738 + }, + "default": [ + 0 + ], + "docs": [ + " Proposal indices that have been approved but not yet awarded." + ] + } + ] + }, + "calls": { + "ty": 396 + }, + "event": { + "ty": 52 + }, + "constants": [ + { + "name": "ProposalBond", + "ty": 739, + "value": [ + 80, + 195, + 0, + 0 + ], + "docs": [ + " Fraction of a proposal's value that should be bonded in order to place the proposal.", + " An accepted proposal gets these back. A rejected proposal does not." + ] + }, + { + "name": "ProposalBondMinimum", + "ty": 6, + "value": [ + 0, + 0, + 64, + 178, + 186, + 201, + 224, + 25, + 30, + 2, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Minimum amount of funds that should be placed in a deposit for making a proposal." + ] + }, + { + "name": "ProposalBondMaximum", + "ty": 77, + "value": [ + 0 + ], + "docs": [ + " Maximum amount of funds that should be placed in a deposit for making a proposal." + ] + }, + { + "name": "SpendPeriod", + "ty": 4, + "value": [ + 64, + 56, + 0, + 0 + ], + "docs": [ + " Period between successive spends." + ] + }, + { + "name": "Burn", + "ty": 739, + "value": [ + 32, + 161, + 7, + 0 + ], + "docs": [ + " Percentage of spare funds (if any) that are burnt per spend period." + ] + }, + { + "name": "PalletId", + "ty": 740, + "value": [ + 112, + 121, + 47, + 116, + 114, + 115, + 114, + 121 + ], + "docs": [ + " The treasury's pallet id, used for deriving its sovereign account ID." + ] + }, + { + "name": "MaxApprovals", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of approvals that can wait in the spending queue.", + "", + " NOTE: This parameter is also used within the Bounties Pallet extension if enabled." + ] + } + ], + "error": { + "ty": 741 + }, + "index": 12 + }, + { + "name": "TransactionPayment", + "storage": { + "prefix": "TransactionPayment", + "entries": [ + { + "name": "NextFeeMultiplier", + "modifier": "Default", + "ty": { + "Plain": 742 + }, + "default": [ + 0, + 0, + 100, + 167, + 179, + 182, + 224, + 13, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [] + }, + { + "name": "StorageVersion", + "modifier": "Default", + "ty": { + "Plain": 743 + }, + "default": [ + 0 + ], + "docs": [] + } + ] + }, + "calls": null, + "event": { + "ty": 53 + }, + "constants": [ + { + "name": "OperationalFeeMultiplier", + "ty": 2, + "value": [ + 5 + ], + "docs": [ + " A fee mulitplier for `Operational` extrinsics to compute \"virtual tip\" to boost their", + " `priority`", + "", + " This value is multipled by the `final_fee` to obtain a \"virtual tip\" that is later", + " added to a tip component in regular `priority` calculations.", + " It means that a `Normal` transaction can front-run a similarly-sized `Operational`", + " extrinsic (with no tip), by including a tip value greater than the virtual tip.", + "", + " ```rust,ignore", + " // For `Normal`", + " let priority = priority_calc(tip);", + "", + " // For `Operational`", + " let virtual_tip = (inclusion_fee + tip) * OperationalFeeMultiplier;", + " let priority = priority_calc(tip + virtual_tip);", + " ```", + "", + " Note that since we use `final_fee` the multiplier applies also to the regular `tip`", + " sent with the transaction. So, not only does the transaction get a priority bump based", + " on the `inclusion_fee`, but we also amplify the impact of tips applied to `Operational`", + " transactions." + ] + } + ], + "error": null, + "index": 13 + }, + { + "name": "Sudo", + "storage": { + "prefix": "Sudo", + "entries": [ + { + "name": "Key", + "modifier": "Optional", + "ty": { + "Plain": 0 + }, + "default": [ + 0 + ], + "docs": [ + " The `AccountId` of the sudo key." + ] + } + ] + }, + "calls": { + "ty": 397 + }, + "event": { + "ty": 54 + }, + "constants": [], + "error": { + "ty": 744 + }, + "index": 14 + }, + { + "name": "ImOnline", + "storage": { + "prefix": "ImOnline", + "entries": [ + { + "name": "HeartbeatAfter", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The block number after which it's ok to send heartbeats in the current", + " session.", + "", + " At the beginning of each session we set this to a value that should fall", + " roughly in the middle of the session duration. The idea is to first wait for", + " the validators to produce a block in the current session, so that the", + " heartbeat later on will not be necessary.", + "", + " This value will only be used as a fallback if we fail to get a proper session", + " progress estimate from `NextSessionRotation`, as those estimates should be", + " more accurate then the value we calculate for `HeartbeatAfter`." + ] + }, + { + "name": "Keys", + "modifier": "Default", + "ty": { + "Plain": 745 + }, + "default": [ + 0 + ], + "docs": [ + " The current set of keys that may issue a heartbeat." + ] + }, + { + "name": "ReceivedHeartbeats", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 285, + "value": 747 + } + }, + "default": [ + 0 + ], + "docs": [ + " For each session index, we keep a mapping of `SessionIndex` and `AuthIndex` to", + " `WrapperOpaque`." + ] + }, + { + "name": "AuthoredBlocks", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 715, + "value": 4 + } + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " For each session index, we keep a mapping of `ValidatorId` to the", + " number of blocks authored by the given authority." + ] + } + ] + }, + "calls": { + "ty": 398 + }, + "event": { + "ty": 57 + }, + "constants": [ + { + "name": "UnsignedPriority", + "ty": 11, + "value": [ + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255 + ], + "docs": [ + " A configuration for base priority of unsigned transactions.", + "", + " This is exposed so that it can be tuned for particular runtime, when", + " multiple pallets send unsigned transactions." + ] + } + ], + "error": { + "ty": 752 + }, + "index": 15 + }, + { + "name": "AuthorityDiscovery", + "storage": null, + "calls": null, + "event": null, + "constants": [], + "error": null, + "index": 16 + }, + { + "name": "VoterList", + "storage": { + "prefix": "VoterList", + "entries": [ + { + "name": "ListNodes", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 753 + } + }, + "default": [ + 0 + ], + "docs": [ + " A single node, within some bag.", + "", + " Nodes store links forward and back within their respective bags." + ] + }, + { + "name": "CounterForListNodes", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + "Counter for the related counted storage map" + ] + }, + { + "name": "ListBags", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 11, + "value": 754 + } + }, + "default": [ + 0 + ], + "docs": [ + " A bag stored in storage.", + "", + " Stores a `Bag` struct, which stores head and tail pointers to itself." + ] + } + ] + }, + "calls": { + "ty": 405 + }, + "event": { + "ty": 66 + }, + "constants": [ + { + "name": "BagThresholds", + "ty": 755, + "value": [ + 33, + 3, + 171, + 47, + 184, + 68, + 0, + 0, + 0, + 0, + 213, + 225, + 84, + 77, + 0, + 0, + 0, + 0, + 67, + 224, + 5, + 87, + 0, + 0, + 0, + 0, + 76, + 203, + 237, + 97, + 0, + 0, + 0, + 0, + 46, + 154, + 51, + 110, + 0, + 0, + 0, + 0, + 70, + 38, + 3, + 124, + 0, + 0, + 0, + 0, + 188, + 199, + 141, + 139, + 0, + 0, + 0, + 0, + 206, + 5, + 11, + 157, + 0, + 0, + 0, + 0, + 57, + 93, + 185, + 176, + 0, + 0, + 0, + 0, + 122, + 31, + 223, + 198, + 0, + 0, + 0, + 0, + 11, + 110, + 203, + 223, + 0, + 0, + 0, + 0, + 29, + 85, + 215, + 251, + 0, + 0, + 0, + 0, + 193, + 9, + 103, + 27, + 1, + 0, + 0, + 0, + 241, + 79, + 235, + 62, + 1, + 0, + 0, + 0, + 117, + 13, + 227, + 102, + 1, + 0, + 0, + 0, + 70, + 15, + 221, + 147, + 1, + 0, + 0, + 0, + 200, + 7, + 122, + 198, + 1, + 0, + 0, + 0, + 238, + 204, + 110, + 255, + 1, + 0, + 0, + 0, + 87, + 222, + 134, + 63, + 2, + 0, + 0, + 0, + 99, + 60, + 167, + 135, + 2, + 0, + 0, + 0, + 100, + 154, + 209, + 216, + 2, + 0, + 0, + 0, + 94, + 247, + 39, + 52, + 3, + 0, + 0, + 0, + 36, + 170, + 240, + 154, + 3, + 0, + 0, + 0, + 85, + 239, + 154, + 14, + 4, + 0, + 0, + 0, + 115, + 9, + 196, + 144, + 4, + 0, + 0, + 0, + 111, + 5, + 61, + 35, + 5, + 0, + 0, + 0, + 59, + 56, + 17, + 200, + 5, + 0, + 0, + 0, + 155, + 140, + 141, + 129, + 6, + 0, + 0, + 0, + 72, + 187, + 72, + 82, + 7, + 0, + 0, + 0, + 199, + 138, + 44, + 61, + 8, + 0, + 0, + 0, + 254, + 55, + 128, + 69, + 9, + 0, + 0, + 0, + 183, + 44, + 244, + 110, + 10, + 0, + 0, + 0, + 235, + 45, + 175, + 189, + 11, + 0, + 0, + 0, + 237, + 48, + 93, + 54, + 13, + 0, + 0, + 0, + 115, + 12, + 64, + 222, + 14, + 0, + 0, + 0, + 35, + 65, + 66, + 187, + 16, + 0, + 0, + 0, + 189, + 28, + 12, + 212, + 18, + 0, + 0, + 0, + 105, + 131, + 27, + 48, + 21, + 0, + 0, + 0, + 37, + 180, + 222, + 215, + 23, + 0, + 0, + 0, + 249, + 103, + 210, + 212, + 26, + 0, + 0, + 0, + 137, + 183, + 163, + 49, + 30, + 0, + 0, + 0, + 43, + 64, + 86, + 250, + 33, + 0, + 0, + 0, + 195, + 16, + 111, + 60, + 38, + 0, + 0, + 0, + 198, + 247, + 36, + 7, + 43, + 0, + 0, + 0, + 251, + 222, + 150, + 107, + 48, + 0, + 0, + 0, + 45, + 247, + 8, + 125, + 54, + 0, + 0, + 0, + 103, + 142, + 41, + 81, + 61, + 0, + 0, + 0, + 160, + 134, + 94, + 0, + 69, + 0, + 0, + 0, + 165, + 129, + 28, + 166, + 77, + 0, + 0, + 0, + 175, + 249, + 72, + 97, + 87, + 0, + 0, + 0, + 41, + 165, + 168, + 84, + 98, + 0, + 0, + 0, + 9, + 176, + 91, + 167, + 110, + 0, + 0, + 0, + 148, + 134, + 105, + 133, + 124, + 0, + 0, + 0, + 9, + 37, + 94, + 32, + 140, + 0, + 0, + 0, + 58, + 30, + 251, + 175, + 157, + 0, + 0, + 0, + 148, + 209, + 254, + 114, + 177, + 0, + 0, + 0, + 95, + 152, + 4, + 176, + 199, + 0, + 0, + 0, + 36, + 11, + 129, + 182, + 224, + 0, + 0, + 0, + 144, + 228, + 221, + 223, + 252, + 0, + 0, + 0, + 43, + 120, + 185, + 144, + 28, + 1, + 0, + 0, + 58, + 50, + 78, + 58, + 64, + 1, + 0, + 0, + 85, + 37, + 7, + 92, + 104, + 1, + 0, + 0, + 12, + 75, + 71, + 133, + 149, + 1, + 0, + 0, + 60, + 210, + 105, + 87, + 200, + 1, + 0, + 0, + 116, + 161, + 2, + 136, + 1, + 2, + 0, + 0, + 65, + 25, + 103, + 227, + 65, + 2, + 0, + 0, + 79, + 36, + 136, + 79, + 138, + 2, + 0, + 0, + 211, + 197, + 39, + 207, + 219, + 2, + 0, + 0, + 149, + 157, + 117, + 133, + 55, + 3, + 0, + 0, + 202, + 72, + 31, + 186, + 158, + 3, + 0, + 0, + 236, + 36, + 227, + 221, + 18, + 4, + 0, + 0, + 147, + 203, + 181, + 143, + 149, + 4, + 0, + 0, + 137, + 170, + 140, + 162, + 40, + 5, + 0, + 0, + 68, + 105, + 226, + 35, + 206, + 5, + 0, + 0, + 202, + 100, + 12, + 99, + 136, + 6, + 0, + 0, + 9, + 118, + 123, + 249, + 89, + 7, + 0, + 0, + 103, + 127, + 5, + 212, + 69, + 8, + 0, + 0, + 68, + 240, + 88, + 61, + 79, + 9, + 0, + 0, + 201, + 149, + 191, + 233, + 121, + 10, + 0, + 0, + 92, + 190, + 90, + 4, + 202, + 11, + 0, + 0, + 47, + 249, + 7, + 62, + 68, + 13, + 0, + 0, + 128, + 168, + 35, + 222, + 237, + 14, + 0, + 0, + 78, + 72, + 101, + 213, + 204, + 16, + 0, + 0, + 117, + 204, + 24, + 211, + 231, + 18, + 0, + 0, + 21, + 235, + 0, + 93, + 70, + 21, + 0, + 0, + 248, + 168, + 55, + 234, + 240, + 23, + 0, + 0, + 135, + 47, + 109, + 1, + 241, + 26, + 0, + 0, + 162, + 252, + 240, + 90, + 81, + 30, + 0, + 0, + 181, + 7, + 255, + 6, + 30, + 34, + 0, + 0, + 217, + 180, + 217, + 152, + 100, + 38, + 0, + 0, + 44, + 149, + 74, + 87, + 52, + 43, + 0, + 0, + 47, + 64, + 55, + 115, + 158, + 48, + 0, + 0, + 194, + 73, + 13, + 69, + 182, + 54, + 0, + 0, + 218, + 200, + 224, + 145, + 145, + 61, + 0, + 0, + 183, + 99, + 52, + 217, + 72, + 69, + 0, + 0, + 83, + 201, + 128, + 172, + 247, + 77, + 0, + 0, + 181, + 83, + 180, + 17, + 189, + 87, + 0, + 0, + 17, + 192, + 10, + 242, + 187, + 98, + 0, + 0, + 70, + 4, + 201, + 150, + 27, + 111, + 0, + 0, + 254, + 234, + 154, + 53, + 8, + 125, + 0, + 0, + 143, + 249, + 135, + 142, + 179, + 140, + 0, + 0, + 156, + 252, + 179, + 157, + 85, + 158, + 0, + 0, + 155, + 82, + 102, + 99, + 45, + 178, + 0, + 0, + 194, + 162, + 34, + 197, + 129, + 200, + 0, + 0, + 164, + 63, + 247, + 138, + 162, + 225, + 0, + 0, + 22, + 63, + 138, + 124, + 233, + 253, + 0, + 0, + 229, + 188, + 223, + 161, + 187, + 29, + 1, + 0, + 152, + 96, + 83, + 172, + 138, + 65, + 1, + 0, + 46, + 224, + 206, + 140, + 214, + 105, + 1, + 0, + 116, + 219, + 232, + 60, + 47, + 151, + 1, + 0, + 207, + 78, + 77, + 193, + 54, + 202, + 1, + 0, + 10, + 139, + 157, + 108, + 163, + 3, + 2, + 0, + 33, + 245, + 219, + 106, + 66, + 68, + 2, + 0, + 23, + 4, + 123, + 158, + 250, + 140, + 2, + 0, + 205, + 161, + 74, + 217, + 207, + 222, + 2, + 0, + 161, + 80, + 199, + 124, + 230, + 58, + 3, + 0, + 35, + 215, + 191, + 142, + 135, + 162, + 3, + 0, + 35, + 221, + 229, + 80, + 37, + 23, + 4, + 0, + 222, + 166, + 177, + 107, + 96, + 154, + 4, + 0, + 93, + 123, + 15, + 191, + 13, + 46, + 5, + 0, + 238, + 154, + 157, + 237, + 60, + 212, + 5, + 0, + 68, + 62, + 220, + 185, + 63, + 143, + 6, + 0, + 1, + 52, + 159, + 79, + 178, + 97, + 7, + 0, + 19, + 209, + 92, + 151, + 132, + 78, + 8, + 0, + 164, + 208, + 171, + 180, + 4, + 89, + 9, + 0, + 255, + 179, + 110, + 213, + 234, + 132, + 10, + 0, + 54, + 29, + 222, + 123, + 102, + 214, + 11, + 0, + 85, + 74, + 237, + 114, + 45, + 82, + 13, + 0, + 6, + 39, + 119, + 162, + 140, + 253, + 14, + 0, + 115, + 162, + 84, + 255, + 122, + 222, + 16, + 0, + 128, + 3, + 6, + 219, + 174, + 251, + 18, + 0, + 177, + 194, + 19, + 223, + 181, + 92, + 21, + 0, + 245, + 74, + 214, + 9, + 16, + 10, + 24, + 0, + 139, + 1, + 17, + 13, + 78, + 13, + 27, + 0, + 208, + 118, + 226, + 122, + 51, + 113, + 30, + 0, + 12, + 211, + 36, + 59, + 221, + 65, + 34, + 0, + 32, + 9, + 167, + 210, + 236, + 140, + 38, + 0, + 222, + 193, + 223, + 22, + 185, + 97, + 43, + 0, + 4, + 213, + 27, + 252, + 132, + 209, + 48, + 0, + 120, + 188, + 248, + 65, + 189, + 239, + 54, + 0, + 16, + 166, + 133, + 218, + 61, + 210, + 61, + 0, + 80, + 77, + 3, + 4, + 160, + 145, + 69, + 0, + 244, + 67, + 78, + 44, + 146, + 73, + 78, + 0, + 192, + 205, + 247, + 215, + 58, + 25, + 88, + 0, + 144, + 228, + 107, + 238, + 167, + 35, + 99, + 0, + 240, + 247, + 203, + 248, + 75, + 144, + 111, + 0, + 32, + 193, + 251, + 18, + 139, + 139, + 125, + 0, + 8, + 32, + 114, + 134, + 89, + 71, + 141, + 0, + 16, + 198, + 123, + 69, + 238, + 251, + 158, + 0, + 120, + 243, + 161, + 196, + 139, + 232, + 178, + 0, + 104, + 120, + 210, + 255, + 97, + 84, + 201, + 0, + 72, + 14, + 213, + 210, + 140, + 143, + 226, + 0, + 136, + 73, + 206, + 49, + 50, + 244, + 254, + 0, + 64, + 112, + 115, + 64, + 196, + 231, + 30, + 1, + 112, + 86, + 187, + 198, + 107, + 220, + 66, + 1, + 240, + 227, + 16, + 18, + 160, + 82, + 107, + 1, + 240, + 98, + 87, + 244, + 241, + 218, + 152, + 1, + 32, + 7, + 179, + 72, + 16, + 24, + 204, + 1, + 128, + 202, + 141, + 51, + 13, + 193, + 5, + 2, + 0, + 25, + 152, + 58, + 236, + 163, + 70, + 2, + 0, + 32, + 200, + 85, + 130, + 168, + 143, + 2, + 160, + 222, + 59, + 63, + 178, + 211, + 225, + 2, + 32, + 172, + 119, + 145, + 16, + 75, + 62, + 3, + 96, + 111, + 94, + 182, + 252, + 88, + 166, + 3, + 128, + 84, + 159, + 74, + 61, + 113, + 27, + 4, + 192, + 162, + 1, + 111, + 48, + 54, + 159, + 4, + 64, + 146, + 128, + 145, + 162, + 126, + 51, + 5, + 0, + 252, + 238, + 138, + 96, + 92, + 218, + 5, + 128, + 157, + 42, + 139, + 156, + 35, + 150, + 6, + 192, + 187, + 23, + 63, + 64, + 115, + 105, + 7, + 128, + 85, + 51, + 235, + 73, + 62, + 87, + 8, + 0, + 31, + 88, + 239, + 85, + 214, + 98, + 9, + 0, + 7, + 169, + 89, + 122, + 247, + 143, + 10, + 0, + 243, + 109, + 230, + 158, + 213, + 226, + 11, + 128, + 72, + 232, + 25, + 129, + 43, + 96, + 13, + 128, + 8, + 181, + 26, + 154, + 75, + 13, + 15, + 0, + 194, + 146, + 172, + 34, + 51, + 240, + 16, + 0, + 66, + 88, + 60, + 121, + 159, + 15, + 19, + 0, + 75, + 158, + 113, + 54, + 38, + 115, + 21, + 0, + 130, + 126, + 79, + 70, + 80, + 35, + 24, + 0, + 71, + 16, + 182, + 102, + 184, + 41, + 27, + 0, + 55, + 127, + 56, + 120, + 45, + 145, + 30, + 0, + 0, + 17, + 227, + 27, + 217, + 101, + 34, + 0, + 224, + 249, + 233, + 39, + 107, + 181, + 38, + 0, + 192, + 94, + 132, + 142, + 74, + 143, + 43, + 0, + 202, + 32, + 172, + 101, + 204, + 4, + 49, + 0, + 40, + 142, + 96, + 212, + 113, + 41, + 55, + 0, + 252, + 17, + 174, + 194, + 45, + 19, + 62, + 0, + 172, + 132, + 119, + 69, + 179, + 218, + 69, + 0, + 100, + 223, + 49, + 222, + 205, + 155, + 78, + 0, + 40, + 79, + 224, + 201, + 196, + 117, + 88, + 0, + 128, + 106, + 34, + 194, + 202, + 139, + 99, + 0, + 80, + 207, + 157, + 191, + 123, + 5, + 112, + 0, + 4, + 141, + 22, + 127, + 106, + 15, + 126, + 0, + 32, + 67, + 217, + 194, + 191, + 219, + 141, + 0, + 96, + 246, + 119, + 137, + 237, + 162, + 159, + 0, + 144, + 183, + 41, + 186, + 120, + 164, + 179, + 0, + 168, + 21, + 92, + 23, + 220, + 39, + 202, + 0, + 72, + 175, + 82, + 162, + 135, + 125, + 227, + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255 + ], + "docs": [ + " The list of thresholds separating the various bags.", + "", + " Ids are separated into unsorted bags according to their score. This specifies the", + " thresholds separating the bags. An id's bag is the largest bag for which the id's score", + " is less than or equal to its upper threshold.", + "", + " When ids are iterated, higher bags are iterated completely before lower bags. This means", + " that iteration is _semi-sorted_: ids of higher score tend to come before ids of lower", + " score, but peer ids within a particular bag are sorted in insertion order.", + "", + " # Expressing the constant", + "", + " This constant must be sorted in strictly increasing order. Duplicate items are not", + " permitted.", + "", + " There is an implied upper limit of `Score::MAX`; that value does not need to be", + " specified within the bag. For any two threshold lists, if one ends with", + " `Score::MAX`, the other one does not, and they are otherwise equal, the two", + " lists will behave identically.", + "", + " # Calculation", + "", + " It is recommended to generate the set of thresholds in a geometric series, such that", + " there exists some constant ratio such that `threshold[k + 1] == (threshold[k] *", + " constant_ratio).max(threshold[k] + 1)` for all `k`.", + "", + " The helpers in the `/utils/frame/generate-bags` module can simplify this calculation.", + "", + " # Examples", + "", + " - If `BagThresholds::get().is_empty()`, then all ids are put into the same bag, and", + " iteration is strictly in insertion order.", + " - If `BagThresholds::get().len() == 64`, and the thresholds are determined according to", + " the procedure given above, then the constant ratio is equal to 2.", + " - If `BagThresholds::get().len() == 200`, and the thresholds are determined according to", + " the procedure given above, then the constant ratio is approximately equal to 1.248.", + " - If the threshold list begins `[1, 2, 3, ...]`, then an id with score 0 or 1 will fall", + " into bag 0, an id with score 2 will fall into bag 1, etc.", + "", + " # Migration", + "", + " In the event that this list ever changes, a copy of the old bags list must be retained.", + " With that `List::migrate` can be called, which will perform the appropriate migration." + ] + } + ], + "error": { + "ty": 756 + }, + "index": 17 + }, + { + "name": "NominationPools", + "storage": { + "prefix": "NominationPools", + "entries": [ + { + "name": "MinJoinBond", + "modifier": "Default", + "ty": { + "Plain": 6 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Minimum amount to bond to join a pool." + ] + }, + { + "name": "MinCreateBond", + "modifier": "Default", + "ty": { + "Plain": 6 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Minimum bond required to create a pool.", + "", + " This is the amount that the pool creator must put as their initial stake in the pool, as an", + " indication of \"skin in the game\".", + "", + " This is the value that will always exist in the staking ledger of the pool bonded account", + " while all other accounts leave." + ] + }, + { + "name": "UnbondingMembers", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 715, + "value": 758 + } + }, + "default": [ + 0 + ], + "docs": [ + " Pool Members who are Unbonding.", + "", + " TWOX-NOTE: SAFE since `AccountId` is a secure hash." + ] + }, + { + "name": "BondedPools", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 763 + } + }, + "default": [ + 0 + ], + "docs": [ + " Storage for bonded pools." + ] + }, + { + "name": "CounterForBondedPools", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + "Counter for the related counted storage map" + ] + }, + { + "name": "SubPoolsStorage", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 766 + } + }, + "default": [ + 0 + ], + "docs": [ + " Groups of unbonding pools. Each group of unbonding pools belongs to a bonded pool,", + " hence the name sub-pools. Keyed by the bonded pools account." + ] + }, + { + "name": "CounterForSubPoolsStorage", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + "Counter for the related counted storage map" + ] + }, + { + "name": "NextPoolId", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The next pool id that will be used in [`create`](Pallet::create). Increments by one with", + " each pool created." + ] + }, + { + "name": "ReversePoolIdLookup", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 4 + } + }, + "default": [ + 0 + ], + "docs": [ + " A reverse lookup from the pool's account id to its id.", + "", + " This is only used for slashing. In all other instances, the pool id is used, and the", + " accounts are deterministically derived from it." + ] + }, + { + "name": "CounterForReversePoolIdLookup", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + "Counter for the related counted storage map" + ] + }, + { + "name": "UsedPoolTokenIds", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 6, + "value": 4 + } + }, + "default": [ + 0 + ], + "docs": [ + " A reverse lookup from the token_id to pool_id.", + "", + " This is used for making sure the same token is not used to create multiple pools" + ] + }, + { + "name": "GlobalMaxCommission", + "modifier": "Optional", + "ty": { + "Plain": 42 + }, + "default": [ + 0 + ], + "docs": [ + " The maximum commission that can be charged by a pool. Used on commission payouts to bound", + " pool commissions that are > `GlobalMaxCommission`, necessary if a future" + ] + }, + { + "name": "StakingInformation", + "modifier": "Optional", + "ty": { + "Plain": 410 + }, + "default": [ + 0 + ], + "docs": [ + " The general staking parameters" + ] + }, + { + "name": "EarlyBirdBonusInfo", + "modifier": "Default", + "ty": { + "Plain": 772 + }, + "default": [ + 0, + 0 + ], + "docs": [ + " The queue of bonuses that should be distributed to the pools" + ] + }, + { + "name": "EraPayoutInfo", + "modifier": "Default", + "ty": { + "Plain": 774 + }, + "default": [ + 0, + 0, + 0, + 0, + 202, + 154, + 59 + ], + "docs": [ + " Tracks payout information for an era" + ] + } + ] + }, + "calls": { + "ty": 406 + }, + "event": { + "ty": 67 + }, + "constants": [ + { + "name": "PalletId", + "ty": 740, + "value": [ + 112, + 121, + 47, + 110, + 111, + 112, + 108, + 115 + ], + "docs": [ + " The nomination pool's pallet id." + ] + }, + { + "name": "CollatorRewardPool", + "ty": 740, + "value": [ + 112, + 121, + 47, + 99, + 111, + 108, + 114, + 112 + ], + "docs": [ + " The pool ID for system account holding the collator rewards." + ] + }, + { + "name": "MaxPointsToBalance", + "ty": 2, + "value": [ + 10 + ], + "docs": [ + " The maximum pool points-to-balance ratio that an `open` pool can have.", + "", + " This is important in the event slashing takes place and the pool's points-to-balance", + " ratio becomes disproportional.", + "", + " Moreover, this relates to the `RewardCounter` type as well, as the arithmetic operations", + " are a function of number of points, and by setting this value to e.g. 10, you ensure", + " that the total number of points in the system are at most 10 times the total_issuance of", + " the chain, in the absolute worse case.", + "", + " For a value of 10, the threshold would be a pool points-to-balance ratio of 10:1.", + " Such a scenario would also be the equivalent of the pool being 90% slashed." + ] + }, + { + "name": "PostUnbondingPoolsWindow", + "ty": 4, + "value": [ + 4, + 0, + 0, + 0 + ], + "docs": [ + " The amount of eras a `SubPools::with_era` pool can exist before it gets merged into the", + " `SubPools::no_era` pool. In other words, this is the amount of eras a member will be", + " able to withdraw from an unbonding pool which is guaranteed to have the correct ratio of", + " points to balance; once the `with_era` pool is merged into the `no_era` pool, the ratio", + " can become skewed due to some slashed ratio getting merged in at some point." + ] + }, + { + "name": "MaxUnbonding", + "ty": 4, + "value": [ + 8, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of simultaneous unbonding chunks that can exist per member." + ] + }, + { + "name": "MinDuration", + "ty": 4, + "value": [ + 30, + 0, + 0, + 0 + ], + "docs": [ + " Min duration of a pool's bonus cycle in eras" + ] + }, + { + "name": "MaxDuration", + "ty": 4, + "value": [ + 232, + 3, + 0, + 0 + ], + "docs": [ + " Max duration of a pool's bonus cycle in eras" + ] + }, + { + "name": "PoolCollectionId", + "ty": 6, + "value": [ + 2, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The collection id that is used for pool NFTs" + ] + }, + { + "name": "StakedEnjCollectionId", + "ty": 6, + "value": [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The collection id that is used for sENJ tokens" + ] + }, + { + "name": "StakedEnjCollectionOwner", + "ty": 0, + "value": [ + 109, + 111, + 100, + 108, + 112, + 121, + 47, + 110, + 111, + 112, + 108, + 115, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The owner of the sENJ collection" + ] + }, + { + "name": "BonusPercentage", + "ty": 42, + "value": [ + 0, + 194, + 235, + 11 + ], + "docs": [ + " The percentage of each pool's rewards that goes to the bonus" + ] + }, + { + "name": "BaseBonusRewardPercentage", + "ty": 42, + "value": [ + 128, + 178, + 230, + 14 + ], + "docs": [ + " Share of bonus reward that is distributed to everyone regardless of their weight" + ] + }, + { + "name": "UnclaimedBalanceReceiver", + "ty": 0, + "value": [ + 109, + 111, + 100, + 108, + 112, + 121, + 47, + 116, + 114, + 115, + 114, + 121, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The account that will receive the deposit and commission if the pool's token is burned.", + " It also receives the leftover bonus if a pool is destroyed." + ] + }, + { + "name": "CapacityMutationPeriod", + "ty": 4, + "value": [ + 14, + 0, + 0, + 0 + ], + "docs": [ + " The number of eras its allowed to mutate the pools capacity" + ] + }, + { + "name": "EarlyBirdBonusDistributionBlock", + "ty": 4, + "value": [ + 152, + 139, + 49, + 0 + ], + "docs": [ + " The block number after which the early bird bonus can be distributed" + ] + }, + { + "name": "MaxEarlyBirdBonusQueueItems", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of items in the early bird bonus queue" + ] + }, + { + "name": "EarlyBirdBonusAccount", + "ty": 0, + "value": [ + 109, + 111, + 100, + 108, + 101, + 97, + 114, + 108, + 98, + 105, + 114, + 100, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The account id that holds early bird bonus" + ] + }, + { + "name": "GlobalMaxCapacity", + "ty": 6, + "value": [ + 0, + 0, + 0, + 148, + 144, + 2, + 40, + 44, + 42, + 139, + 16, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The global maximum pool capacity" + ] + }, + { + "name": "DefaultMaxCapacity", + "ty": 6, + "value": [ + 0, + 0, + 128, + 208, + 118, + 102, + 231, + 13, + 225, + 105, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The default maximum pool capacity" + ] + }, + { + "name": "AttributeKeyMaxLength", + "ty": 4, + "value": [ + 0, + 1, + 0, + 0 + ], + "docs": [ + " The max attribute key length" + ] + }, + { + "name": "AttributeValueMaxLength", + "ty": 4, + "value": [ + 0, + 4, + 0, + 0 + ], + "docs": [ + " The max attribute value length" + ] + }, + { + "name": "MaxCapacityAttributeKey", + "ty": 201, + "value": [ + 68, + 109, + 97, + 120, + 95, + 112, + 111, + 111, + 108, + 95, + 99, + 97, + 112, + 97, + 99, + 105, + 116, + 121 + ], + "docs": [ + " Max pool capacity attribute key" + ] + } + ], + "error": { + "ty": 775 + }, + "index": 18 + }, + { + "name": "StakeExchange", + "storage": { + "prefix": "StakeExchange", + "entries": [ + { + "name": "LiquidityConfigs", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 81 + } + }, + "default": [ + 0 + ], + "docs": [ + " Mapping of LP accounts to their configuration" + ] + }, + { + "name": "Offers", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 6, + "value": 80 + } + }, + "default": [ + 0 + ], + "docs": [ + " Mapping of LPAccountId to their active offer" + ] + }, + { + "name": "NextOfferId", + "modifier": "Default", + "ty": { + "Plain": 6 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Value to use for Next offer Id" + ] + } + ] + }, + "calls": { + "ty": 411 + }, + "event": { + "ty": 79 + }, + "constants": [ + { + "name": "ReserveIdentifier", + "ty": 134, + "value": [ + 115, + 116, + 97, + 107, + 101, + 101, + 120, + 103 + ], + "docs": [ + " The id used for making reservations with this pallet" + ] + }, + { + "name": "MaxFilteredTokenCount", + "ty": 4, + "value": [ + 20, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of tokens that can be whitelisted/blacklisted" + ] + }, + { + "name": "OfferDeposit", + "ty": 6, + "value": [ + 0, + 128, + 74, + 252, + 112, + 192, + 246, + 6, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The deposit for creating an offer" + ] + } + ], + "error": { + "ty": 777 + }, + "index": 19 + }, + { + "name": "Utility", + "storage": null, + "calls": { + "ty": 413 + }, + "event": { + "ty": 87 + }, + "constants": [ + { + "name": "batched_calls_limit", + "ty": 4, + "value": [ + 170, + 42, + 0, + 0 + ], + "docs": [ + " The limit on the number of batched calls." + ] + } + ], + "error": { + "ty": 778 + }, + "index": 20 + }, + { + "name": "Multisig", + "storage": { + "prefix": "Multisig", + "entries": [ + { + "name": "Multisigs", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Blake2_128Concat" + ], + "key": 779, + "value": 780 + } + }, + "default": [ + 0 + ], + "docs": [ + " The set of open multisig operations." + ] + } + ] + }, + "calls": { + "ty": 421 + }, + "event": { + "ty": 88 + }, + "constants": [ + { + "name": "DepositBase", + "ty": 6, + "value": [ + 0, + 128, + 51, + 62, + 61, + 44, + 248, + 6, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The base amount of currency needed to reserve for creating a multisig execution or to", + " store a dispatch call for later.", + "", + " This is held for an additional storage item whose value size is", + " `4 + sizeof((BlockNumber, Balance, AccountId))` bytes and whose key size is", + " `32 + sizeof(AccountId)` bytes." + ] + }, + { + "name": "DepositFactor", + "ty": 6, + "value": [ + 0, + 0, + 210, + 131, + 152, + 215, + 2, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The amount of currency needed per unit threshold when creating a multisig execution.", + "", + " This is held for adding 32 bytes more into a pre-existing storage value." + ] + }, + { + "name": "MaxSignatories", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " The maximum amount of signatories allowed in the multisig." + ] + } + ], + "error": { + "ty": 782 + }, + "index": 21 + }, + { + "name": "ParachainsOrigin", + "storage": null, + "calls": null, + "event": null, + "constants": [], + "error": null, + "index": 50 + }, + { + "name": "Configuration", + "storage": { + "prefix": "Configuration", + "entries": [ + { + "name": "ActiveConfig", + "modifier": "Default", + "ty": { + "Plain": 783 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 2, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 6, + 0, + 0, + 0, + 100, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 2, + 0, + 0, + 0, + 2, + 0, + 0, + 0 + ], + "docs": [ + " The active configuration for the current session." + ] + }, + { + "name": "PendingConfigs", + "modifier": "Default", + "ty": { + "Plain": 784 + }, + "default": [ + 0 + ], + "docs": [ + " Pending configuration changes.", + "", + " This is a list of configuration changes, each with a session index at which it should", + " be applied.", + "", + " The list is sorted ascending by session index. Also, this list can only contain at most", + " 2 items: for the next session and for the `scheduled_session`." + ] + }, + { + "name": "BypassConsistencyCheck", + "modifier": "Default", + "ty": { + "Plain": 37 + }, + "default": [ + 0 + ], + "docs": [ + " If this is set, then the configuration setters will bypass the consistency checks. This", + " is meant to be used only as the last resort." + ] + } + ] + }, + "calls": { + "ty": 423 + }, + "event": null, + "constants": [], + "error": { + "ty": 786 + }, + "index": 51 + }, + { + "name": "ParasShared", + "storage": { + "prefix": "ParasShared", + "entries": [ + { + "name": "CurrentSessionIndex", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The current session index." + ] + }, + { + "name": "ActiveValidatorIndices", + "modifier": "Default", + "ty": { + "Plain": 787 + }, + "default": [ + 0 + ], + "docs": [ + " All the validators actively participating in parachain consensus.", + " Indices are into the broader validator set." + ] + }, + { + "name": "ActiveValidatorKeys", + "modifier": "Default", + "ty": { + "Plain": 788 + }, + "default": [ + 0 + ], + "docs": [ + " The parachain attestation keys of the validators actively participating in parachain consensus.", + " This should be the same length as `ActiveValidatorIndices`." + ] + } + ] + }, + "calls": { + "ty": 430 + }, + "event": null, + "constants": [], + "error": null, + "index": 52 + }, + { + "name": "ParaInclusion", + "storage": { + "prefix": "ParaInclusion", + "entries": [ + { + "name": "AvailabilityBitfields", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 439, + "value": 789 + } + }, + "default": [ + 0 + ], + "docs": [ + " The latest bitfield for each validator, referred to by their index in the validator set." + ] + }, + { + "name": "PendingAvailability", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 790 + } + }, + "default": [ + 0 + ], + "docs": [ + " Candidates pending availability by `ParaId`." + ] + }, + { + "name": "PendingAvailabilityCommitments", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 444 + } + }, + "default": [ + 0 + ], + "docs": [ + " The commitments of candidates pending availability, by `ParaId`." + ] + } + ] + }, + "calls": { + "ty": 431 + }, + "event": { + "ty": 90 + }, + "constants": [], + "error": { + "ty": 791 + }, + "index": 53 + }, + { + "name": "ParaInherent", + "storage": { + "prefix": "ParaInherent", + "entries": [ + { + "name": "Included", + "modifier": "Optional", + "ty": { + "Plain": 56 + }, + "default": [ + 0 + ], + "docs": [ + " Whether the paras inherent was included within this block.", + "", + " The `Option<()>` is effectively a `bool`, but it never hits storage in the `None` variant", + " due to the guarantees of FRAME's storage APIs.", + "", + " If this is `None` at the end of the block, we panic and render the block invalid." + ] + }, + { + "name": "OnChainVotes", + "modifier": "Optional", + "ty": { + "Plain": 792 + }, + "default": [ + 0 + ], + "docs": [ + " Scraped on chain data for extracting resolved disputes as well as backing votes." + ] + } + ] + }, + "calls": { + "ty": 432 + }, + "event": null, + "constants": [], + "error": { + "ty": 797 + }, + "index": 54 + }, + { + "name": "ParaScheduler", + "storage": { + "prefix": "ParaScheduler", + "entries": [ + { + "name": "ValidatorGroups", + "modifier": "Default", + "ty": { + "Plain": 798 + }, + "default": [ + 0 + ], + "docs": [ + " All the validator groups. One for each core. Indices are into `ActiveValidators` - not the", + " broader set of Polkadot validators, but instead just the subset used for parachains during", + " this session.", + "", + " Bound: The number of cores is the sum of the numbers of parachains and parathread multiplexers.", + " Reasonably, 100-1000. The dominant factor is the number of validators: safe upper bound at 10k." + ] + }, + { + "name": "ParathreadQueue", + "modifier": "Default", + "ty": { + "Plain": 799 + }, + "default": [ + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " A queue of upcoming claims and which core they should be mapped onto.", + "", + " The number of queued claims is bounded at the `scheduling_lookahead`", + " multiplied by the number of parathread multiplexer cores. Reasonably, 10 * 50 = 500." + ] + }, + { + "name": "AvailabilityCores", + "modifier": "Default", + "ty": { + "Plain": 804 + }, + "default": [ + 0 + ], + "docs": [ + " One entry for each availability core. Entries are `None` if the core is not currently occupied. Can be", + " temporarily `Some` if scheduled but not occupied.", + " The i'th parachain belongs to the i'th core, with the remaining cores all being", + " parathread-multiplexers.", + "", + " Bounded by the maximum of either of these two values:", + " * The number of parachains and parathread multiplexers", + " * The number of validators divided by `configuration.max_validators_per_core`." + ] + }, + { + "name": "ParathreadClaimIndex", + "modifier": "Default", + "ty": { + "Plain": 807 + }, + "default": [ + 0 + ], + "docs": [ + " An index used to ensure that only one claim on a parathread exists in the queue or is", + " currently being handled by an occupied core.", + "", + " Bounded by the number of parathread cores and scheduling lookahead. Reasonably, 10 * 50 = 500." + ] + }, + { + "name": "SessionStartBlock", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The block number where the session start occurred. Used to track how many group rotations have occurred.", + "", + " Note that in the context of parachains modules the session change is signaled during", + " the block and enacted at the end of the block (at the finalization stage, to be exact).", + " Thus for all intents and purposes the effect of the session change is observed at the", + " block following the session change, block number of which we save in this storage value." + ] + }, + { + "name": "Scheduled", + "modifier": "Default", + "ty": { + "Plain": 808 + }, + "default": [ + 0 + ], + "docs": [ + " Currently scheduled cores - free but up to be occupied.", + "", + " Bounded by the number of cores: one for each parachain and parathread multiplexer.", + "", + " The value contained here will not be valid after the end of a block. Runtime APIs should be used to determine scheduled cores/", + " for the upcoming block." + ] + } + ] + }, + "calls": null, + "event": null, + "constants": [], + "error": null, + "index": 55 + }, + { + "name": "Paras", + "storage": { + "prefix": "Paras", + "entries": [ + { + "name": "PvfActiveVoteMap", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 98, + "value": 811 + } + }, + "default": [ + 0 + ], + "docs": [ + " All currently active PVF pre-checking votes.", + "", + " Invariant:", + " - There are no PVF pre-checking votes that exists in list but not in the set and vice versa." + ] + }, + { + "name": "PvfActiveVoteList", + "modifier": "Default", + "ty": { + "Plain": 814 + }, + "default": [ + 0 + ], + "docs": [ + " The list of all currently active PVF votes. Auxiliary to `PvfActiveVoteMap`." + ] + }, + { + "name": "Parachains", + "modifier": "Default", + "ty": { + "Plain": 807 + }, + "default": [ + 0 + ], + "docs": [ + " All parachains. Ordered ascending by `ParaId`. Parathreads are not included.", + "", + " Consider using the [`ParachainsCache`] type of modifying." + ] + }, + { + "name": "ParaLifecycles", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 815 + } + }, + "default": [ + 0 + ], + "docs": [ + " The current lifecycle of a all known Para IDs." + ] + }, + { + "name": "Heads", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 99 + } + }, + "default": [ + 0 + ], + "docs": [ + " The head-data of every registered para." + ] + }, + { + "name": "CurrentCodeHash", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 98 + } + }, + "default": [ + 0 + ], + "docs": [ + " The validation code hash of every live para.", + "", + " Corresponding code can be retrieved with [`CodeByHash`]." + ] + }, + { + "name": "PastCodeHash", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 816, + "value": 98 + } + }, + "default": [ + 0 + ], + "docs": [ + " Actual past code hash, indicated by the para id as well as the block number at which it", + " became outdated.", + "", + " Corresponding code can be retrieved with [`CodeByHash`]." + ] + }, + { + "name": "PastCodeMeta", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 817 + } + }, + "default": [ + 0, + 0 + ], + "docs": [ + " Past code of parachains. The parachains themselves may not be registered anymore,", + " but we also keep their code on-chain for the same amount of time as outdated code", + " to keep it available for approval checkers." + ] + }, + { + "name": "PastCodePruning", + "modifier": "Default", + "ty": { + "Plain": 820 + }, + "default": [ + 0 + ], + "docs": [ + " Which paras have past code that needs pruning and the relay-chain block at which the code was replaced.", + " Note that this is the actual height of the included block, not the expected height at which the", + " code upgrade would be applied, although they may be equal.", + " This is to ensure the entire acceptance period is covered, not an offset acceptance period starting", + " from the time at which the parachain perceives a code upgrade as having occurred.", + " Multiple entries for a single para are permitted. Ordered ascending by block number." + ] + }, + { + "name": "FutureCodeUpgrades", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 4 + } + }, + "default": [ + 0 + ], + "docs": [ + " The block number at which the planned code change is expected for a para.", + " The change will be applied after the first parablock for this ID included which executes", + " in the context of a relay chain block with a number >= `expected_at`." + ] + }, + { + "name": "FutureCodeHash", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 98 + } + }, + "default": [ + 0 + ], + "docs": [ + " The actual future code hash of a para.", + "", + " Corresponding code can be retrieved with [`CodeByHash`]." + ] + }, + { + "name": "UpgradeGoAheadSignal", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 821 + } + }, + "default": [ + 0 + ], + "docs": [ + " This is used by the relay-chain to communicate to a parachain a go-ahead with in the upgrade procedure.", + "", + " This value is absent when there are no upgrades scheduled or during the time the relay chain", + " performs the checks. It is set at the first relay-chain block when the corresponding parachain", + " can switch its upgrade function. As soon as the parachain's block is included, the value", + " gets reset to `None`.", + "", + " NOTE that this field is used by parachains via merkle storage proofs, therefore changing", + " the format will require migration of parachains." + ] + }, + { + "name": "UpgradeRestrictionSignal", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 822 + } + }, + "default": [ + 0 + ], + "docs": [ + " This is used by the relay-chain to communicate that there are restrictions for performing", + " an upgrade for this parachain.", + "", + " This may be a because the parachain waits for the upgrade cooldown to expire. Another", + " potential use case is when we want to perform some maintenance (such as storage migration)", + " we could restrict upgrades to make the process simpler.", + "", + " NOTE that this field is used by parachains via merkle storage proofs, therefore changing", + " the format will require migration of parachains." + ] + }, + { + "name": "UpgradeCooldowns", + "modifier": "Default", + "ty": { + "Plain": 820 + }, + "default": [ + 0 + ], + "docs": [ + " The list of parachains that are awaiting for their upgrade restriction to cooldown.", + "", + " Ordered ascending by block number." + ] + }, + { + "name": "UpcomingUpgrades", + "modifier": "Default", + "ty": { + "Plain": 820 + }, + "default": [ + 0 + ], + "docs": [ + " The list of upcoming code upgrades. Each item is a pair of which para performs a code", + " upgrade and at which relay-chain block it is expected at.", + "", + " Ordered ascending by block number." + ] + }, + { + "name": "ActionsQueue", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 807 + } + }, + "default": [ + 0 + ], + "docs": [ + " The actions to perform during the start of a specific session index." + ] + }, + { + "name": "UpcomingParasGenesis", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 505 + } + }, + "default": [ + 0 + ], + "docs": [ + " Upcoming paras instantiation arguments.", + "", + " NOTE that after PVF pre-checking is enabled the para genesis arg will have it's code set", + " to empty. Instead, the code will be saved into the storage right away via `CodeByHash`." + ] + }, + { + "name": "CodeByHashRefs", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Identity" + ], + "key": 98, + "value": 4 + } + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The number of reference on the validation code in [`CodeByHash`] storage." + ] + }, + { + "name": "CodeByHash", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Identity" + ], + "key": 98, + "value": 450 + } + }, + "default": [ + 0 + ], + "docs": [ + " Validation code stored by its hash.", + "", + " This storage is consistent with [`FutureCodeHash`], [`CurrentCodeHash`] and", + " [`PastCodeHash`]." + ] + } + ] + }, + "calls": { + "ty": 460 + }, + "event": { + "ty": 102 + }, + "constants": [ + { + "name": "UnsignedPriority", + "ty": 11, + "value": [ + 255, + 255, + 255, + 255, + 255, + 255, + 255, + 255 + ], + "docs": [] + } + ], + "error": { + "ty": 823 + }, + "index": 56 + }, + { + "name": "Initializer", + "storage": { + "prefix": "Initializer", + "entries": [ + { + "name": "HasInitialized", + "modifier": "Optional", + "ty": { + "Plain": 56 + }, + "default": [ + 0 + ], + "docs": [ + " Whether the parachains modules have been initialized within this block.", + "", + " Semantically a `bool`, but this guarantees it should never hit the trie,", + " as this is cleared in `on_finalize` and Frame optimizes `None` values to be empty values.", + "", + " As a `bool`, `set(false)` and `remove()` both lead to the next `get()` being false, but one of", + " them writes to the trie and one does not. This confusion makes `Option<()>` more suitable for", + " the semantics of this variable." + ] + }, + { + "name": "BufferedSessionChanges", + "modifier": "Default", + "ty": { + "Plain": 824 + }, + "default": [ + 0 + ], + "docs": [ + " Buffered session changes along with the block number at which they should be applied.", + "", + " Typically this will be empty or one element long. Apart from that this item never hits", + " the storage.", + "", + " However this is a `Vec` regardless to handle various edge cases that may occur at runtime", + " upgrade boundaries or if governance intervenes." + ] + } + ] + }, + "calls": { + "ty": 462 + }, + "event": null, + "constants": [], + "error": null, + "index": 57 + }, + { + "name": "Dmp", + "storage": { + "prefix": "Dmp", + "entries": [ + { + "name": "DownwardMessageQueues", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 826 + } + }, + "default": [ + 0 + ], + "docs": [ + " The downward messages addressed for a certain para." + ] + }, + { + "name": "DownwardMessageQueueHeads", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 12 + } + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " A mapping that stores the downward message queue MQC head for each para.", + "", + " Each link in this chain has a form:", + " `(prev_head, B, H(M))`, where", + " - `prev_head`: is the previous head hash or zero if none.", + " - `B`: is the relay-chain block number in which a message was appended.", + " - `H(M)`: is the hash of the message being appended." + ] + }, + { + "name": "DeliveryFeeFactor", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 742 + } + }, + "default": [ + 0, + 0, + 100, + 167, + 179, + 182, + 224, + 13, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The number to multiply the base delivery fee by." + ] + } + ] + }, + "calls": null, + "event": null, + "constants": [], + "error": null, + "index": 58 + }, + { + "name": "Hrmp", + "storage": { + "prefix": "Hrmp", + "entries": [ + { + "name": "HrmpOpenChannelRequests", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 104, + "value": 828 + } + }, + "default": [ + 0 + ], + "docs": [ + " The set of pending HRMP open channel requests.", + "", + " The set is accompanied by a list for iteration.", + "", + " Invariant:", + " - There are no channels that exists in list but not in the set and vice versa." + ] + }, + { + "name": "HrmpOpenChannelRequestsList", + "modifier": "Default", + "ty": { + "Plain": 829 + }, + "default": [ + 0 + ], + "docs": [] + }, + { + "name": "HrmpOpenChannelRequestCount", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 4 + } + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " This mapping tracks how many open channel requests are initiated by a given sender para.", + " Invariant: `HrmpOpenChannelRequests` should contain the same number of items that has", + " `(X, _)` as the number of `HrmpOpenChannelRequestCount` for `X`." + ] + }, + { + "name": "HrmpAcceptedChannelRequestCount", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 4 + } + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " This mapping tracks how many open channel requests were accepted by a given recipient para.", + " Invariant: `HrmpOpenChannelRequests` should contain the same number of items `(_, X)` with", + " `confirmed` set to true, as the number of `HrmpAcceptedChannelRequestCount` for `X`." + ] + }, + { + "name": "HrmpCloseChannelRequests", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 104, + "value": 56 + } + }, + "default": [ + 0 + ], + "docs": [ + " A set of pending HRMP close channel requests that are going to be closed during the session", + " change. Used for checking if a given channel is registered for closure.", + "", + " The set is accompanied by a list for iteration.", + "", + " Invariant:", + " - There are no channels that exists in list but not in the set and vice versa." + ] + }, + { + "name": "HrmpCloseChannelRequestsList", + "modifier": "Default", + "ty": { + "Plain": 829 + }, + "default": [ + 0 + ], + "docs": [] + }, + { + "name": "HrmpWatermarks", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 4 + } + }, + "default": [ + 0 + ], + "docs": [ + " The HRMP watermark associated with each para.", + " Invariant:", + " - each para `P` used here as a key should satisfy `Paras::is_valid_para(P)` within a session." + ] + }, + { + "name": "HrmpChannels", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 104, + "value": 830 + } + }, + "default": [ + 0 + ], + "docs": [ + " HRMP channel data associated with each para.", + " Invariant:", + " - each participant in the channel should satisfy `Paras::is_valid_para(P)` within a session." + ] + }, + { + "name": "HrmpIngressChannelsIndex", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 807 + } + }, + "default": [ + 0 + ], + "docs": [ + " Ingress/egress indexes allow to find all the senders and receivers given the opposite side.", + " I.e.", + "", + " (a) ingress index allows to find all the senders for a given recipient.", + " (b) egress index allows to find all the recipients for a given sender.", + "", + " Invariants:", + " - for each ingress index entry for `P` each item `I` in the index should present in", + " `HrmpChannels` as `(I, P)`.", + " - for each egress index entry for `P` each item `E` in the index should present in", + " `HrmpChannels` as `(P, E)`.", + " - there should be no other dangling channels in `HrmpChannels`.", + " - the vectors are sorted." + ] + }, + { + "name": "HrmpEgressChannelsIndex", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 807 + } + }, + "default": [ + 0 + ], + "docs": [] + }, + { + "name": "HrmpChannelContents", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 104, + "value": 831 + } + }, + "default": [ + 0 + ], + "docs": [ + " Storage for the messages for each channel.", + " Invariant: cannot be non-empty if the corresponding channel in `HrmpChannels` is `None`." + ] + }, + { + "name": "HrmpChannelDigests", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 833 + } + }, + "default": [ + 0 + ], + "docs": [ + " Maintains a mapping that can be used to answer the question: What paras sent a message at", + " the given block number for a given receiver. Invariants:", + " - The inner `Vec` is never empty.", + " - The inner `Vec` cannot store two same `ParaId`.", + " - The outer vector is sorted ascending by block number and cannot store two items with the", + " same block number." + ] + } + ] + }, + "calls": { + "ty": 463 + }, + "event": { + "ty": 103 + }, + "constants": [], + "error": { + "ty": 835 + }, + "index": 60 + }, + { + "name": "ParaSessionInfo", + "storage": { + "prefix": "ParaSessionInfo", + "entries": [ + { + "name": "AssignmentKeysUnsafe", + "modifier": "Default", + "ty": { + "Plain": 836 + }, + "default": [ + 0 + ], + "docs": [ + " Assignment keys for the current session.", + " Note that this API is private due to it being prone to 'off-by-one' at session boundaries.", + " When in doubt, use `Sessions` API instead." + ] + }, + { + "name": "EarliestStoredSession", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The earliest session for which previous session info is stored." + ] + }, + { + "name": "Sessions", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Identity" + ], + "key": 4, + "value": 837 + } + }, + "default": [ + 0 + ], + "docs": [ + " Session information in a rolling window.", + " Should have an entry in range `EarliestStoredSession..=CurrentSessionIndex`.", + " Does not have any entries before the session index in the first session change notification." + ] + }, + { + "name": "AccountKeys", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Identity" + ], + "key": 4, + "value": 78 + } + }, + "default": [ + 0 + ], + "docs": [ + " The validator account keys of the validators actively participating in parachain consensus." + ] + }, + { + "name": "SessionExecutorParams", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Identity" + ], + "key": 4, + "value": 425 + } + }, + "default": [ + 0 + ], + "docs": [ + " Executor parameter set for a given session index" + ] + } + ] + }, + "calls": null, + "event": null, + "constants": [], + "error": null, + "index": 61 + }, + { + "name": "ParasDisputes", + "storage": { + "prefix": "ParasDisputes", + "entries": [ + { + "name": "LastPrunedSession", + "modifier": "Optional", + "ty": { + "Plain": 4 + }, + "default": [ + 0 + ], + "docs": [ + " The last pruned session, if any. All data stored by this module", + " references sessions." + ] + }, + { + "name": "Disputes", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Blake2_128Concat" + ], + "key": 841, + "value": 842 + } + }, + "default": [ + 0 + ], + "docs": [ + " All ongoing or concluded disputes for the last several sessions." + ] + }, + { + "name": "BackersOnDisputes", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Blake2_128Concat" + ], + "key": 841, + "value": 843 + } + }, + "default": [ + 0 + ], + "docs": [ + " Backing votes stored for each dispute.", + " This storage is used for slashing." + ] + }, + { + "name": "Included", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Blake2_128Concat" + ], + "key": 841, + "value": 4 + } + }, + "default": [ + 0 + ], + "docs": [ + " All included blocks on the chain, as well as the block number in this chain that", + " should be reverted back to if the candidate is disputed and determined to be invalid." + ] + }, + { + "name": "Frozen", + "modifier": "Default", + "ty": { + "Plain": 73 + }, + "default": [ + 0 + ], + "docs": [ + " Whether the chain is frozen. Starts as `None`. When this is `Some`,", + " the chain will not accept any new parachain blocks for backing or inclusion,", + " and its value indicates the last valid block number in the chain.", + " It can only be set back to `None` by governance intervention." + ] + } + ] + }, + "calls": { + "ty": 464 + }, + "event": { + "ty": 105 + }, + "constants": [], + "error": { + "ty": 844 + }, + "index": 62 + }, + { + "name": "ParasSlashing", + "storage": { + "prefix": "ParasSlashing", + "entries": [ + { + "name": "UnappliedSlashes", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Blake2_128Concat" + ], + "key": 841, + "value": 845 + } + }, + "default": [ + 0 + ], + "docs": [ + " Validators pending dispute slashes." + ] + }, + { + "name": "ValidatorSetCounts", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 4 + } + }, + "default": [ + 0 + ], + "docs": [ + " `ValidatorSetCount` per session." + ] + } + ] + }, + "calls": { + "ty": 465 + }, + "event": null, + "constants": [], + "error": { + "ty": 849 + }, + "index": 63 + }, + { + "name": "Registrar", + "storage": { + "prefix": "Registrar", + "entries": [ + { + "name": "PendingSwap", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 93 + } + }, + "default": [ + 0 + ], + "docs": [ + " Pending swap operations." + ] + }, + { + "name": "Paras", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 850 + } + }, + "default": [ + 0 + ], + "docs": [ + " Amount held on deposit for each para and the original depositor.", + "", + " The given account ID is responsible for registering the code and initial head data, but may only do", + " so if it isn't yet registered. (After that, it's up to governance to do so.)" + ] + }, + { + "name": "NextFreeParaId", + "modifier": "Default", + "ty": { + "Plain": 93 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The next free `ParaId`." + ] + } + ] + }, + "calls": { + "ty": 469 + }, + "event": { + "ty": 109 + }, + "constants": [ + { + "name": "ParaDeposit", + "ty": 6, + "value": [ + 0, + 0, + 64, + 178, + 186, + 201, + 224, + 25, + 30, + 2, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The deposit to be paid to run a parathread.", + " This should include the cost for storing the genesis head and validation code." + ] + }, + { + "name": "DataDepositPerByte", + "ty": 6, + "value": [ + 0, + 128, + 98, + 23, + 94, + 209, + 88, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The deposit to be paid per byte stored on chain." + ] + } + ], + "error": { + "ty": 851 + }, + "index": 70 + }, + { + "name": "Slots", + "storage": { + "prefix": "Slots", + "entries": [ + { + "name": "Leases", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 852 + } + }, + "default": [ + 0 + ], + "docs": [ + " Amounts held on deposit for each (possibly future) leased parachain.", + "", + " The actual amount locked on its behalf by any account at any time is the maximum of the second values", + " of the items in this list whose first value is the account.", + "", + " The first item in the list is the amount locked for the current Lease Period. Following", + " items are for the subsequent lease periods.", + "", + " The default value (an empty list) implies that the parachain no longer exists (or never", + " existed) as far as this pallet is concerned.", + "", + " If a parachain doesn't exist *yet* but is scheduled to exist in the future, then it", + " will be left-padded with one or more `None`s to denote the fact that nothing is held on", + " deposit for the non-existent chain currently, but is held at some point in the future.", + "", + " It is illegal for a `None` value to trail in the list." + ] + } + ] + }, + "calls": { + "ty": 470 + }, + "event": { + "ty": 110 + }, + "constants": [ + { + "name": "LeasePeriod", + "ty": 4, + "value": [ + 0, + 117, + 18, + 0 + ], + "docs": [ + " The number of blocks over which a single period lasts." + ] + }, + { + "name": "LeaseOffset", + "ty": 4, + "value": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The number of blocks to offset each lease period by." + ] + } + ], + "error": { + "ty": 854 + }, + "index": 71 + }, + { + "name": "Auctions", + "storage": { + "prefix": "Auctions", + "entries": [ + { + "name": "AuctionCounter", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " Number of auctions started so far." + ] + }, + { + "name": "AuctionInfo", + "modifier": "Optional", + "ty": { + "Plain": 285 + }, + "default": [ + 0 + ], + "docs": [ + " Information relating to the current auction, if there is one.", + "", + " The first item in the tuple is the lease period index that the first of the four", + " contiguous lease periods on auction is for. The second is the block number when the", + " auction will \"begin to end\", i.e. the first block of the Ending Period of the auction." + ] + }, + { + "name": "ReservedAmounts", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 855, + "value": 6 + } + }, + "default": [ + 0 + ], + "docs": [ + " Amounts currently reserved in the accounts of the bidders currently winning", + " (sub-)ranges." + ] + }, + { + "name": "Winning", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 856 + } + }, + "default": [ + 0 + ], + "docs": [ + " The winning bids for each of the 10 ranges at each sample in the final Ending Period of", + " the current auction. The map's key is the 0-based index into the Sample Size. The", + " first sample of the ending period is 0; the last is `Sample Size - 1`." + ] + } + ] + }, + "calls": { + "ty": 471 + }, + "event": { + "ty": 111 + }, + "constants": [ + { + "name": "EndingPeriod", + "ty": 4, + "value": [ + 64, + 25, + 1, + 0 + ], + "docs": [ + " The number of blocks over which an auction may be retroactively ended." + ] + }, + { + "name": "SampleLength", + "ty": 4, + "value": [ + 20, + 0, + 0, + 0 + ], + "docs": [ + " The length of each sample to take during the ending period.", + "", + " `EndingPeriod` / `SampleLength` = Total # of Samples" + ] + }, + { + "name": "SlotRangeCount", + "ty": 4, + "value": [ + 36, + 0, + 0, + 0 + ], + "docs": [] + }, + { + "name": "LeasePeriodsPerSlot", + "ty": 4, + "value": [ + 8, + 0, + 0, + 0 + ], + "docs": [] + } + ], + "error": { + "ty": 859 + }, + "index": 72 + }, + { + "name": "Crowdloan", + "storage": { + "prefix": "Crowdloan", + "entries": [ + { + "name": "Funds", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 860 + } + }, + "default": [ + 0 + ], + "docs": [ + " Info on all of the funds." + ] + }, + { + "name": "NewRaise", + "modifier": "Default", + "ty": { + "Plain": 807 + }, + "default": [ + 0 + ], + "docs": [ + " The funds that have had additional contributions during the last block. This is used", + " in order to determine which funds should submit new or updated bids." + ] + }, + { + "name": "EndingsCount", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The number of auctions that have entered into their ending period so far." + ] + }, + { + "name": "NextFundIndex", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " Tracker for the next available fund index" + ] + } + ] + }, + "calls": { + "ty": 473 + }, + "event": { + "ty": 112 + }, + "constants": [ + { + "name": "PalletId", + "ty": 740, + "value": [ + 112, + 121, + 47, + 99, + 102, + 117, + 110, + 100 + ], + "docs": [ + " `PalletId` for the crowdloan pallet. An appropriate value could be `PalletId(*b\"py/cfund\")`" + ] + }, + { + "name": "MinContribution", + "ty": 6, + "value": [ + 0, + 0, + 76, + 10, + 162, + 134, + 213, + 16, + 4, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The minimum amount that may be contributed into a crowdloan. Should almost certainly be at", + " least `ExistentialDeposit`." + ] + }, + { + "name": "RemoveKeysLimit", + "ty": 4, + "value": [ + 232, + 3, + 0, + 0 + ], + "docs": [ + " Max number of storage keys to remove per extrinsic call." + ] + } + ], + "error": { + "ty": 862 + }, + "index": 73 + }, + { + "name": "XcmPallet", + "storage": { + "prefix": "XcmPallet", + "entries": [ + { + "name": "QueryCounter", + "modifier": "Default", + "ty": { + "Plain": 11 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The latest available query index." + ] + }, + { + "name": "Queries", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 11, + "value": 863 + } + }, + "default": [ + 0 + ], + "docs": [ + " The ongoing queries." + ] + }, + { + "name": "AssetTraps", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Identity" + ], + "key": 12, + "value": 4 + } + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The existing asset traps.", + "", + " Key is the blake2 256 hash of (origin, versioned `MultiAssets`) pair. Value is the number of", + " times this pair has been trapped (usually just 1 if it exists at all)." + ] + }, + { + "name": "SafeXcmVersion", + "modifier": "Optional", + "ty": { + "Plain": 4 + }, + "default": [ + 0 + ], + "docs": [ + " Default version to encode XCM when latest version of destination is unknown. If `None`,", + " then the destinations whose XCM version is unknown are considered unreachable." + ] + }, + { + "name": "SupportedVersion", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Blake2_128Concat" + ], + "key": 868, + "value": 4 + } + }, + "default": [ + 0 + ], + "docs": [ + " The Latest versions that we know various locations support." + ] + }, + { + "name": "VersionNotifiers", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Blake2_128Concat" + ], + "key": 868, + "value": 11 + } + }, + "default": [ + 0 + ], + "docs": [ + " All locations that we have requested version notifications from." + ] + }, + { + "name": "VersionNotifyTargets", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Blake2_128Concat" + ], + "key": 868, + "value": 869 + } + }, + "default": [ + 0 + ], + "docs": [ + " The target locations that are subscribed to our version changes, as well as the most recent", + " of our versions we informed them of." + ] + }, + { + "name": "VersionDiscoveryQueue", + "modifier": "Default", + "ty": { + "Plain": 870 + }, + "default": [ + 0 + ], + "docs": [ + " Destinations whose latest XCM version we would like to know. Duplicates not allowed, and", + " the `u32` counter is the number of times that a send to the destination has been attempted,", + " which is used as a prioritization." + ] + }, + { + "name": "CurrentMigration", + "modifier": "Optional", + "ty": { + "Plain": 873 + }, + "default": [ + 0 + ], + "docs": [ + " The current migration's stage, if any." + ] + }, + { + "name": "RemoteLockedFungibles", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 875, + "value": 877 + } + }, + "default": [ + 0 + ], + "docs": [ + " Fungible assets which we know are locked on a remote chain." + ] + }, + { + "name": "LockedFungibles", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 881 + } + }, + "default": [ + 0 + ], + "docs": [ + " Fungible assets which we know are locked on this chain." + ] + }, + { + "name": "XcmExecutionSuspended", + "modifier": "Default", + "ty": { + "Plain": 37 + }, + "default": [ + 0 + ], + "docs": [ + " Global suspension state of the XCM executor." + ] + } + ] + }, + "calls": { + "ty": 482 + }, + "event": { + "ty": 113 + }, + "constants": [], + "error": { + "ty": 884 + }, + "index": 99 + }, + { + "name": "MessageQueue", + "storage": { + "prefix": "MessageQueue", + "entries": [ + { + "name": "BookStateFor", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 168, + "value": 885 + } + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The index of the first and last (non-empty) pages." + ] + }, + { + "name": "ServiceHead", + "modifier": "Optional", + "ty": { + "Plain": 168 + }, + "default": [ + 0 + ], + "docs": [ + " The origin at which we should begin servicing." + ] + }, + { + "name": "Pages", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 888, + "value": 889 + } + }, + "default": [ + 0 + ], + "docs": [ + " The map of page indices to pages." + ] + } + ] + }, + "calls": { + "ty": 503 + }, + "event": { + "ty": 167 + }, + "constants": [ + { + "name": "HeapSize", + "ty": 4, + "value": [ + 0, + 0, + 1, + 0 + ], + "docs": [ + " The size of the page; this implies the maximum message size which can be sent.", + "", + " A good value depends on the expected message sizes, their weights, the weight that is", + " available for processing them and the maximal needed message size. The maximal message", + " size is slightly lower than this as defined by [`MaxMessageLenOf`]." + ] + }, + { + "name": "MaxStale", + "ty": 4, + "value": [ + 8, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of stale pages (i.e. of overweight messages) allowed before culling", + " can happen. Once there are more stale pages than this, then historical pages may be", + " dropped, even if they contain unprocessed overweight messages." + ] + }, + { + "name": "ServiceWeight", + "ty": 643, + "value": [ + 1, + 7, + 0, + 160, + 219, + 33, + 93, + 19, + 51, + 51, + 51, + 51, + 51, + 51, + 51, + 51 + ], + "docs": [ + " The amount of weight (if any) which should be provided to the message queue for", + " servicing enqueued items.", + "", + " This may be legitimately `None` in the case that you will call", + " `ServiceQueues::service_queues` manually." + ] + } + ], + "error": { + "ty": 891 + }, + "index": 110 + }, + { + "name": "ParasSudoWrapper", + "storage": null, + "calls": { + "ty": 504 + }, + "event": null, + "constants": [], + "error": { + "ty": 892 + }, + "index": 250 + }, + { + "name": "AssignedSlots", + "storage": { + "prefix": "AssignedSlots", + "entries": [ + { + "name": "PermanentSlots", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 285 + } + }, + "default": [ + 0 + ], + "docs": [ + " Assigned permanent slots, with their start lease period, and duration." + ] + }, + { + "name": "PermanentSlotCount", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " Number of assigned (and active) permanent slots." + ] + }, + { + "name": "TemporarySlots", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 93, + "value": 893 + } + }, + "default": [ + 0 + ], + "docs": [ + " Assigned temporary slots." + ] + }, + { + "name": "TemporarySlotCount", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " Number of assigned temporary slots." + ] + }, + { + "name": "ActiveTemporarySlotCount", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " Number of active temporary slots in current slot lease period." + ] + } + ] + }, + "calls": { + "ty": 506 + }, + "event": { + "ty": 171 + }, + "constants": [ + { + "name": "PermanentSlotLeasePeriodLength", + "ty": 4, + "value": [ + 109, + 1, + 0, + 0 + ], + "docs": [ + " The number of lease periods a permanent parachain slot lasts." + ] + }, + { + "name": "TemporarySlotLeasePeriodLength", + "ty": 4, + "value": [ + 3, + 0, + 0, + 0 + ], + "docs": [ + " The number of lease periods a temporary parachain slot lasts." + ] + }, + { + "name": "MaxPermanentSlots", + "ty": 4, + "value": [ + 40, + 0, + 0, + 0 + ], + "docs": [ + " The max number of permanent slots that can be assigned." + ] + }, + { + "name": "MaxTemporarySlots", + "ty": 4, + "value": [ + 40, + 0, + 0, + 0 + ], + "docs": [ + " The max number of temporary slots that can be assigned." + ] + }, + { + "name": "MaxTemporarySlotPerLeasePeriod", + "ty": 4, + "value": [ + 5, + 0, + 0, + 0 + ], + "docs": [ + " The max number of temporary slots to be scheduled per lease periods." + ] + } + ], + "error": { + "ty": 894 + }, + "index": 251 + }, + { + "name": "ValidatorManager", + "storage": { + "prefix": "ValidatorManager", + "entries": [ + { + "name": "ValidatorsToRetire", + "modifier": "Default", + "ty": { + "Plain": 78 + }, + "default": [ + 0 + ], + "docs": [ + " Validators that should be retired, because their Parachain was deregistered." + ] + }, + { + "name": "ValidatorsToAdd", + "modifier": "Default", + "ty": { + "Plain": 78 + }, + "default": [ + 0 + ], + "docs": [ + " Validators that should be added." + ] + } + ] + }, + "calls": { + "ty": 508 + }, + "event": { + "ty": 172 + }, + "constants": [], + "error": null, + "index": 252 + }, + { + "name": "MultiTokens", + "storage": { + "prefix": "MultiTokens", + "entries": [ + { + "name": "TokenAccounts", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 895, + "value": 230 + } + }, + "default": [ + 0 + ], + "docs": [ + " Accounts per token" + ] + }, + { + "name": "Collections", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 6, + "value": 205 + } + }, + "default": [ + 0 + ], + "docs": [ + " The collections in existence and their ownership details." + ] + }, + { + "name": "Tokens", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 896, + "value": 218 + } + }, + "default": [ + 0 + ], + "docs": [ + " Tokens storage" + ] + }, + { + "name": "NextCollectionId", + "modifier": "Default", + "ty": { + "Plain": 6 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Sequencer for collectionID generators." + ] + }, + { + "name": "CollectionAccounts", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 897, + "value": 223 + } + }, + "default": [ + 0 + ], + "docs": [ + " Stores information for an account per collection" + ] + }, + { + "name": "Attributes", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 898, + "value": 534 + } + }, + "default": [ + 0 + ], + "docs": [ + " Metadata of collections and tokens." + ] + }, + { + "name": "AssetIdsByLocation", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 116, + "value": 177 + } + }, + "default": [ + 0 + ], + "docs": [ + " Map of Locations to AssetIds of Foreign Tokens" + ] + }, + { + "name": "Migrations", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 899, + "value": 900 + } + }, + "default": [ + 0 + ], + "docs": [ + " Stores last iterated keys for migrations. Used by multi block migrations", + " to resume from the last iterated key.", + "", + " Key is the storage prefix, value is the status of migration and last iterated key, if any.", + " i.e `[\"MultiTokens\", \"TokenAccounts\"] -> (collection_id, token_id, account_id)`" + ] + }, + { + "name": "MigrationStatus", + "modifier": "Default", + "ty": { + "Plain": 243 + }, + "default": [ + 0 + ], + "docs": [ + " Status of the current multi-block migration" + ] + }, + { + "name": "ClaimableCollectionIds", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Identity" + ], + "key": 244, + "value": 537 + } + }, + "default": [ + 0 + ], + "docs": [ + " Stores data for an ethereum address" + ] + }, + { + "name": "UnmintableTokenIds", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 6, + "value": 539 + } + }, + "default": [ + 0 + ], + "docs": [ + " These token ids can only be minted by calling `claim_token`" + ] + }, + { + "name": "NativeCollectionIds", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 6, + "value": 6 + } + }, + "default": [ + 0 + ], + "docs": [ + " Map of ethereum collection id to the native collection id" + ] + } + ] + }, + "calls": { + "ty": 509 + }, + "event": { + "ty": 173 + }, + "constants": [ + { + "name": "AttributeDepositBase", + "ty": 6, + "value": [ + 0, + 0, + 197, + 46, + 188, + 162, + 177, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The base deposit required for setting an attribute" + ] + }, + { + "name": "AttributeDepositPerByte", + "ty": 6, + "value": [ + 0, + 144, + 30, + 196, + 188, + 22, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Additional deposit per byte for setting an attribute" + ] + }, + { + "name": "MaxRecipientsPerBatchTransfer", + "ty": 4, + "value": [ + 250, + 0, + 0, + 0 + ], + "docs": [ + " The max number of recipients allowed in a batch transfer" + ] + }, + { + "name": "MaxTokensPerBatchTransfer", + "ty": 4, + "value": [ + 244, + 1, + 0, + 0 + ], + "docs": [ + " The max number of tokens allowed in a batch transfer" + ] + }, + { + "name": "MaxBatchAttributesPerCall", + "ty": 4, + "value": [ + 50, + 0, + 0, + 0 + ], + "docs": [ + " The max number of attributes to set in one call" + ] + }, + { + "name": "MaxRecipientsPerBatchMint", + "ty": 4, + "value": [ + 250, + 0, + 0, + 0 + ], + "docs": [ + " The max number of recipients allowed in a batch mint" + ] + }, + { + "name": "CollectionCreationDeposit", + "ty": 6, + "value": [ + 0, + 0, + 49, + 214, + 226, + 117, + 188, + 86, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Amount of [`Balance`](BalanceOf) reserved to create a collection" + ] + }, + { + "name": "TokenAccountDeposit", + "ty": 6, + "value": [ + 0, + 0, + 193, + 111, + 242, + 134, + 35, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The amount of [`Balance`](BalanceOf) that must be reserved for a token account to be", + " maintained" + ] + }, + { + "name": "MaxIdleOperationQueueLength", + "ty": 4, + "value": [ + 232, + 3, + 0, + 0 + ], + "docs": [ + " The maximum length of the idle operation queue" + ] + }, + { + "name": "MaxIdleOperationQueueWeight", + "ty": 9, + "value": [ + 7, + 0, + 232, + 118, + 72, + 23, + 0 + ], + "docs": [ + " The maximum weight of the idle operation queue" + ] + }, + { + "name": "MaxOperatorsPerAccount", + "ty": 4, + "value": [ + 10, + 0, + 0, + 0 + ], + "docs": [ + " The max number of operators a [`TokenAccount`] and an [`CollectionAccount`] can have" + ] + }, + { + "name": "MaxReserves", + "ty": 4, + "value": [ + 2, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of named reserves that can exist on an account" + ] + }, + { + "name": "MaxLocks", + "ty": 4, + "value": [ + 2, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of locks that can exist on a token account" + ] + }, + { + "name": "MaxExplicitRoyaltyCurrencies", + "ty": 4, + "value": [ + 10, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of explicit royalty currencies" + ] + }, + { + "name": "NativeAssetInfo", + "ty": 903, + "value": [ + 0, + 0, + 0, + 192, + 167, + 198, + 179, + 209, + 70, + 49, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The [`NativeAssetInfo`](ep_multi_tokens::NativeAssetInfo) for this pallet" + ] + }, + { + "name": "ReserveIdentifier", + "ty": 134, + "value": [ + 109, + 117, + 108, + 116, + 111, + 107, + 101, + 110 + ], + "docs": [ + " The id used for making reservations with this pallet" + ] + }, + { + "name": "TokenMetadataMaxNameLength", + "ty": 4, + "value": [ + 32, + 0, + 0, + 0 + ], + "docs": [ + " Max length of name stored in [`TokenMetadata`]" + ] + }, + { + "name": "TokenMetadataMaxSymbolLength", + "ty": 4, + "value": [ + 8, + 0, + 0, + 0 + ], + "docs": [ + " Max length of symbol stored in [`TokenMetadata`]" + ] + }, + { + "name": "MaxMigrationKeyLength", + "ty": 4, + "value": [ + 0, + 4, + 0, + 0 + ], + "docs": [ + " Max length for the [`Migrations`] storage" + ] + }, + { + "name": "MigrationWeightLimitPercentage", + "ty": 42, + "value": [ + 0, + 225, + 245, + 5 + ], + "docs": [ + " Percentage of block weight to consume during migration" + ] + }, + { + "name": "MaxMigrationExtrinsicInfosToPause", + "ty": 4, + "value": [ + 20, + 0, + 0, + 0 + ], + "docs": [ + " Bound for the number of extrinsics to pause during multi block migration" + ] + }, + { + "name": "MigrationExtrinsicsInfosToPause", + "ty": 904, + "value": [ + 16, + 36, + 70, + 117, + 101, + 108, + 84, + 97, + 110, + 107, + 115, + 0, + 44, + 77, + 117, + 108, + 116, + 105, + 84, + 111, + 107, + 101, + 110, + 115, + 0, + 52, + 83, + 116, + 97, + 107, + 101, + 69, + 120, + 99, + 104, + 97, + 110, + 103, + 101, + 0, + 60, + 78, + 111, + 109, + 105, + 110, + 97, + 116, + 105, + 111, + 110, + 80, + 111, + 111, + 108, + 115, + 0 + ], + "docs": [ + " List of extrinsics to pause during multi block migration (this pallet is excluded)" + ] + }, + { + "name": "MaxClaimableCollectionsPerAccount", + "ty": 4, + "value": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " Max number of collections that can be claimed by an account" + ] + }, + { + "name": "MaxClaimableTokensPerCall", + "ty": 4, + "value": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The max number of tokens that can be claimed in a single call to `claim_tokens`" + ] + }, + { + "name": "ClaimCollectionsPrefix", + "ty": 13, + "value": [ + 128, + 84, + 114, + 97, + 110, + 115, + 102, + 101, + 114, + 32, + 99, + 111, + 108, + 108, + 101, + 99, + 116, + 105, + 111, + 110, + 115, + 32, + 116, + 111, + 32, + 97, + 99, + 99, + 111, + 117, + 110, + 116, + 58 + ], + "docs": [ + " The prefix of the message used to claim collections" + ] + }, + { + "name": "ClaimTokensPrefix", + "ty": 13, + "value": [ + 108, + 84, + 114, + 97, + 110, + 115, + 102, + 101, + 114, + 32, + 116, + 111, + 107, + 101, + 110, + 115, + 32, + 116, + 111, + 32, + 97, + 99, + 99, + 111, + 117, + 110, + 116, + 58 + ], + "docs": [ + " The prefix of the message used to claim tokens" + ] + }, + { + "name": "ClaimsAccountId", + "ty": 0, + "value": [ + 109, + 111, + 100, + 108, + 101, + 102, + 47, + 102, + 117, + 101, + 108, + 116, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The account id that owns unclaimed collections and tokens. This account also pays", + " deposits if needed when claiming." + ] + } + ], + "error": { + "ty": 908 + }, + "index": 253 + }, + { + "name": "FuelTanks", + "storage": { + "prefix": "FuelTanks", + "entries": [ + { + "name": "Tanks", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 909 + } + }, + "default": [ + 0 + ], + "docs": [ + " Mapping of Fuel Tanks accounts to their data" + ] + }, + { + "name": "Accounts", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 935, + "value": 936 + } + }, + "default": [ + 0 + ], + "docs": [ + " Mapping of Fuel Tanks and their user Accounts to account data" + ] + }, + { + "name": "FreezeQueue", + "modifier": "Default", + "ty": { + "Plain": 948 + }, + "default": [ + 0 + ], + "docs": [ + " The queue for fuel tank and rule set freezing", + " Composed of (`tank_id`, `rule_set_id`, new `is_frozen` value)" + ] + } + ] + }, + "calls": { + "ty": 540 + }, + "event": { + "ty": 249 + }, + "constants": [ + { + "name": "Salt", + "ty": 134, + "value": [ + 101, + 102, + 105, + 110, + 105, + 116, + 121, + 121 + ], + "docs": [ + " The salt used for address generation" + ] + }, + { + "name": "MaxWhitelistedCallers", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of whitelisted callers per fuel tank" + ] + }, + { + "name": "MaxRuleSets", + "ty": 4, + "value": [ + 5, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of rule sets per fuel tank" + ] + }, + { + "name": "MaxRulesPerSet", + "ty": 4, + "value": [ + 10, + 0, + 0, + 0 + ], + "docs": [ + " Maximum number of rules in a ruleset" + ] + }, + { + "name": "MaxAccountRuleDataLength", + "ty": 4, + "value": [ + 128, + 0, + 0, + 0 + ], + "docs": [ + " Max length of data a rule can store per account" + ] + }, + { + "name": "MaxCallFilters", + "ty": 4, + "value": [ + 5, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of permitted calls" + ] + }, + { + "name": "MaxWhitelistedCollections", + "ty": 4, + "value": [ + 0, + 1, + 0, + 0 + ], + "docs": [ + " Maximum number of whitelisted collections for a fuel tank" + ] + }, + { + "name": "MaxCallSize", + "ty": 4, + "value": [ + 244, + 1, + 0, + 0 + ], + "docs": [ + " The maximum number of rule sets per fuel tank" + ] + }, + { + "name": "MaxFreezeQueueLength", + "ty": 4, + "value": [ + 10, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of fuel tank freeze state mutations that can be queued" + ] + }, + { + "name": "MaxUserHistorySize", + "ty": 4, + "value": [ + 16, + 39, + 0, + 0 + ], + "docs": [ + " The maximum number of user history that can be stored" + ] + }, + { + "name": "MaxBatchAccounts", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of accounts for batch operations" + ] + }, + { + "name": "MaxFuelTankNameLength", + "ty": 4, + "value": [ + 32, + 0, + 0, + 0 + ], + "docs": [ + " The maximum length for fuel tank name" + ] + }, + { + "name": "MaxExtrinsicNameLength", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " The maximum length for extrinsics for PermittedExtrinsic rule" + ] + }, + { + "name": "MaxPermittedExtrinsicLength", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of extrinsics to allow for PermittedExtrinsic rule" + ] + }, + { + "name": "TankCreationDeposit", + "ty": 6, + "value": [ + 0, + 0, + 122, + 34, + 193, + 200, + 177, + 34, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Deposit for creating a new fuel tank" + ] + }, + { + "name": "AccountCreationDeposit", + "ty": 6, + "value": [ + 0, + 0, + 217, + 233, + 172, + 45, + 120, + 3, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Deposit for creating an account" + ] + }, + { + "name": "ReserveIdentifier", + "ty": 134, + "value": [ + 102, + 117, + 101, + 108, + 116, + 97, + 110, + 107 + ], + "docs": [ + " The identifier used for currency reserves" + ] + }, + { + "name": "LevyScale", + "ty": 4, + "value": [ + 184, + 11, + 0, + 0 + ], + "docs": [ + " value of a unit of the independant variable in EFI for the levy discount according to", + " f(x) = (1/2)^x. Cannot be 0." + ] + }, + { + "name": "Levy", + "ty": 42, + "value": [ + 128, + 23, + 180, + 44 + ], + "docs": [ + " The Levy applied to all transactions in Matrix." + ] + } + ], + "error": { + "ty": 951 + }, + "index": 254 + }, + { + "name": "ExtrinsicPause", + "storage": { + "prefix": "ExtrinsicPause", + "entries": [ + { + "name": "PausedExtrinsics", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 905, + "value": 56 + } + }, + "default": [ + 0 + ], + "docs": [ + " Paused extrinsics map", + "", + " The key is tuple with the name of the pallet and the extrinsic name and value is", + " an Option<()> which is None if the extrinsic is not paused and Some(()) if it is." + ] + } + ] + }, + "calls": { + "ty": 570 + }, + "event": { + "ty": 270 + }, + "constants": [ + { + "name": "MaxNameLength", + "ty": 4, + "value": [ + 64, + 0, + 0, + 0 + ], + "docs": [ + " Max number of characters in pallet or extrinsic name." + ] + } + ], + "error": { + "ty": 952 + }, + "index": 255 + }, + { + "name": "Marketplace", + "storage": { + "prefix": "Marketplace", + "entries": [ + { + "name": "Info", + "modifier": "Default", + "ty": { + "Plain": 953 + }, + "default": [ + 2, + 225, + 245, + 5 + ], + "docs": [ + " Stores information about the marketplace" + ] + }, + { + "name": "Listings", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Identity" + ], + "key": 12, + "value": 275 + } + }, + "default": [ + 0 + ], + "docs": [ + " Listings by ID" + ] + } + ] + }, + "calls": { + "ty": 571 + }, + "event": { + "ty": 274 + }, + "constants": [ + { + "name": "MinimumBidIncreasePercentage", + "ty": 42, + "value": [ + 128, + 240, + 250, + 2 + ], + "docs": [ + " The percentage the minimum bid in an auction must increase by" + ] + }, + { + "name": "ReserveIdentifier", + "ty": 134, + "value": [ + 109, + 97, + 114, + 107, + 116, + 112, + 108, + 99 + ], + "docs": [ + " ID used by the pallet for making reservations" + ] + }, + { + "name": "ListingDeposit", + "ty": 6, + "value": [ + 0, + 144, + 96, + 182, + 218, + 46, + 7, + 7, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The deposit for creating a listing" + ] + }, + { + "name": "ListingActiveDelay", + "ty": 4, + "value": [ + 5, + 0, + 0, + 0 + ], + "docs": [ + " The delay before a listing is considered active" + ] + }, + { + "name": "MaxRoundingError", + "ty": 6, + "value": [ + 232, + 3, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The max amount that can be lost due to rounding before failing" + ] + }, + { + "name": "MaxSaltLength", + "ty": 4, + "value": [ + 32, + 0, + 0, + 0 + ], + "docs": [ + " Max length of salt used when creating listings and bids" + ] + } + ], + "error": { + "ty": 954 + }, + "index": 249 + }, + { + "name": "Beefy", + "storage": { + "prefix": "Beefy", + "entries": [ + { + "name": "Authorities", + "modifier": "Default", + "ty": { + "Plain": 955 + }, + "default": [ + 0 + ], + "docs": [ + " The current authorities set" + ] + }, + { + "name": "ValidatorSetId", + "modifier": "Default", + "ty": { + "Plain": 11 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The current validator set id" + ] + }, + { + "name": "NextAuthorities", + "modifier": "Default", + "ty": { + "Plain": 955 + }, + "default": [ + 0 + ], + "docs": [ + " Authorities set scheduled to be used with the next session" + ] + }, + { + "name": "SetIdSession", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 11, + "value": 4 + } + }, + "default": [ + 0 + ], + "docs": [ + " A mapping from BEEFY set ID to the index of the *most recent* session for which its", + " members were responsible.", + "", + " This is only used for validating equivocation proofs. An equivocation proof must", + " contains a key-ownership proof for a given session, therefore we need a way to tie", + " together sessions and BEEFY set ids, i.e. we need to validate that a validator", + " was the owner of a given key on a given session, and what the active set ID was", + " during that session.", + "", + " TWOX-NOTE: `ValidatorSetId` is not under user control." + ] + }, + { + "name": "GenesisBlock", + "modifier": "Default", + "ty": { + "Plain": 73 + }, + "default": [ + 0 + ], + "docs": [ + " Block number where BEEFY consensus is enabled/started.", + " By changing this (through governance or sudo), BEEFY consensus is effectively", + " restarted from the new block number." + ] + } + ] + }, + "calls": { + "ty": 573 + }, + "event": null, + "constants": [ + { + "name": "MaxAuthorities", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of authorities that can be added." + ] + }, + { + "name": "MaxSetIdSessionEntries", + "ty": 11, + "value": [ + 168, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of entries to keep in the set id to session index mapping.", + "", + " Since the `SetIdSession` map is only used for validating equivocations this", + " value should relate to the bonding duration of whatever staking system is", + " being used (if any). If equivocation handling is not enabled then this value", + " can be zero." + ] + } + ], + "error": { + "ty": 957 + }, + "index": 240 + }, + { + "name": "Mmr", + "storage": { + "prefix": "Mmr", + "entries": [ + { + "name": "RootHash", + "modifier": "Default", + "ty": { + "Plain": 12 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Latest MMR Root hash." + ] + }, + { + "name": "NumberOfLeaves", + "modifier": "Default", + "ty": { + "Plain": 11 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Current size of the MMR (number of leaves)." + ] + }, + { + "name": "Nodes", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Identity" + ], + "key": 11, + "value": 12 + } + }, + "default": [ + 0 + ], + "docs": [ + " Hashes of the nodes in the MMR.", + "", + " Note this collection only contains MMR peaks, the inner nodes (and leaves)", + " are pruned and only stored in the Offchain DB." + ] + } + ] + }, + "calls": null, + "event": null, + "constants": [], + "error": null, + "index": 241 + }, + { + "name": "MmrLeaf", + "storage": { + "prefix": "MmrLeaf", + "entries": [ + { + "name": "BeefyAuthorities", + "modifier": "Default", + "ty": { + "Plain": 958 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Details of current BEEFY authority set." + ] + }, + { + "name": "BeefyNextAuthorities", + "modifier": "Default", + "ty": { + "Plain": 958 + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Details of next BEEFY authority set.", + "", + " This storage entry is used as cache for calls to `update_beefy_next_authority_set`." + ] + } + ] + }, + "calls": null, + "event": null, + "constants": [], + "error": null, + "index": 242 + }, + { + "name": "Scheduler", + "storage": { + "prefix": "Scheduler", + "entries": [ + { + "name": "IncompleteSince", + "modifier": "Optional", + "ty": { + "Plain": 4 + }, + "default": [ + 0 + ], + "docs": [] + }, + { + "name": "Agenda", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 959 + } + }, + "default": [ + 0 + ], + "docs": [ + " Items to be executed, indexed by the block number that they should be executed on." + ] + }, + { + "name": "Lookup", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 1, + "value": 285 + } + }, + "default": [ + 0 + ], + "docs": [ + " Lookup from a name to the block number and index of the task.", + "", + " For v3 -> v4 the previously unbounded identities are Blake2-256 hashed to form the v4", + " identities." + ] + } + ] + }, + "calls": { + "ty": 583 + }, + "event": { + "ty": 284 + }, + "constants": [ + { + "name": "MaximumWeight", + "ty": 9, + "value": [ + 11, + 0, + 128, + 110, + 135, + 116, + 1, + 19, + 204, + 204, + 204, + 204, + 204, + 204, + 204, + 204 + ], + "docs": [ + " The maximum weight that may be scheduled per block for any dispatchables." + ] + }, + { + "name": "MaxScheduledPerBlock", + "ty": 4, + "value": [ + 50, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of scheduled calls in the queue for a single block.", + "", + " NOTE:", + " + Dependent pallets' benchmarks might require a higher limit for the setting. Set a", + " higher limit under `runtime-benchmarks` feature." + ] + } + ], + "error": { + "ty": 963 + }, + "index": 100 + }, + { + "name": "Preimage", + "storage": { + "prefix": "Preimage", + "entries": [ + { + "name": "StatusFor", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Identity" + ], + "key": 12, + "value": 964 + } + }, + "default": [ + 0 + ], + "docs": [ + " The request status of a given hash." + ] + }, + { + "name": "PreimageFor", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Identity" + ], + "key": 965, + "value": 966 + } + }, + "default": [ + 0 + ], + "docs": [] + } + ] + }, + "calls": { + "ty": 585 + }, + "event": { + "ty": 287 + }, + "constants": [], + "error": { + "ty": 967 + }, + "index": 101 + }, + { + "name": "ConvictionVoting", + "storage": { + "prefix": "ConvictionVoting", + "entries": [ + { + "name": "VotingFor", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 968, + "value": 969 + } + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " All voting for a particular voter in a particular voting class. We store the balance for the", + " number of votes that we have recorded." + ] + }, + { + "name": "ClassLocksFor", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 977 + } + }, + "default": [ + 0 + ], + "docs": [ + " The voting classes which have a non-zero lock requirement and the lock amounts which they", + " require. The actual amount locked on behalf of this pallet should always be the maximum of", + " this list." + ] + } + ] + }, + "calls": { + "ty": 586 + }, + "event": { + "ty": 288 + }, + "constants": [ + { + "name": "MaxVotes", + "ty": 4, + "value": [ + 0, + 2, + 0, + 0 + ], + "docs": [ + " The maximum number of concurrent votes an account may have.", + "", + " Also used to compute weight, an overly large value can lead to extrinsics with large", + " weight estimation: see `delegate` for instance." + ] + }, + { + "name": "VoteLockingPeriod", + "ty": 4, + "value": [ + 192, + 137, + 1, + 0 + ], + "docs": [ + " The minimum period of vote locking.", + "", + " It should be no shorter than enactment period to ensure that in the case of an approval,", + " those successful voters are locked into the consequences that their votes entail." + ] + } + ], + "error": { + "ty": 980 + }, + "index": 102 + }, + { + "name": "Referenda", + "storage": { + "prefix": "Referenda", + "entries": [ + { + "name": "ReferendumCount", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The next free referendum index, aka the number of referenda started so far." + ] + }, + { + "name": "ReferendumInfoFor", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 4, + "value": 981 + } + }, + "default": [ + 0 + ], + "docs": [ + " Information concerning any given referendum." + ] + }, + { + "name": "TrackQueue", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 290, + "value": 773 + } + }, + "default": [ + 0 + ], + "docs": [ + " The sorted list of referenda ready to be decided but not yet being decided, ordered by", + " conviction-weighted approvals.", + "", + " This should be empty if `DecidingCount` is less than `TrackInfo::max_deciding`." + ] + }, + { + "name": "DecidingCount", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 290, + "value": 4 + } + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The number of referenda being decided currently." + ] + }, + { + "name": "MetadataOf", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 4, + "value": 12 + } + }, + "default": [ + 0 + ], + "docs": [ + " The metadata is a general information concerning the referendum.", + " The `PreimageHash` refers to the preimage of the `Preimages` provider which can be a JSON", + " dump or IPFS hash of a JSON file.", + "", + " Consider a garbage collection for a metadata of finished referendums to `unrequest` (remove)", + " large preimages." + ] + } + ] + }, + "calls": { + "ty": 591 + }, + "event": { + "ty": 289 + }, + "constants": [ + { + "name": "SubmissionDeposit", + "ty": 6, + "value": [ + 0, + 128, + 98, + 23, + 94, + 209, + 88, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The minimum amount to be used as a deposit for a public referendum proposal." + ] + }, + { + "name": "MaxQueued", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " Maximum size of the referendum queue for a single track." + ] + }, + { + "name": "UndecidingTimeout", + "ty": 4, + "value": [ + 128, + 19, + 3, + 0 + ], + "docs": [ + " The number of blocks after submission that a referendum must begin being decided by.", + " Once this passes, then anyone may cancel the referendum." + ] + }, + { + "name": "AlarmInterval", + "ty": 4, + "value": [ + 1, + 0, + 0, + 0 + ], + "docs": [ + " Quantization level for the referendum wakeup scheduler. A higher number will result in", + " fewer storage reads/writes needed for smaller voters, but also result in delays to the", + " automatic referendum status changes. Explicit servicing instructions are unaffected." + ] + }, + { + "name": "Tracks", + "ty": 989, + "value": [ + 88, + 0, + 0, + 16, + 114, + 111, + 111, + 116, + 1, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 64, + 56, + 0, + 0, + 64, + 56, + 0, + 0, + 2, + 144, + 215, + 62, + 13, + 0, + 0, + 0, + 0, + 87, + 67, + 222, + 19, + 0, + 0, + 0, + 0, + 84, + 67, + 222, + 19, + 0, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29, + 1, + 0, + 72, + 119, + 104, + 105, + 116, + 101, + 108, + 105, + 115, + 116, + 101, + 100, + 95, + 99, + 97, + 108, + 108, + 101, + 114, + 100, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 150, + 0, + 0, + 0, + 192, + 137, + 1, + 0, + 100, + 0, + 0, + 0, + 100, + 0, + 0, + 0, + 2, + 236, + 151, + 37, + 16, + 0, + 0, + 0, + 0, + 123, + 87, + 60, + 23, + 0, + 0, + 0, + 0, + 66, + 57, + 47, + 18, + 0, + 0, + 0, + 0, + 2, + 14, + 0, + 132, + 0, + 0, + 0, + 0, + 0, + 214, + 230, + 31, + 1, + 0, + 0, + 0, + 0, + 57, + 98, + 121, + 2, + 0, + 0, + 0, + 0, + 2, + 0, + 80, + 114, + 101, + 102, + 101, + 114, + 101, + 110, + 100, + 117, + 109, + 95, + 99, + 97, + 110, + 99, + 101, + 108, + 108, + 101, + 114, + 232, + 3, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 192, + 137, + 1, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 3, + 0, + 68, + 114, + 101, + 102, + 101, + 114, + 101, + 110, + 100, + 117, + 109, + 95, + 107, + 105, + 108, + 108, + 101, + 114, + 232, + 3, + 0, + 0, + 0, + 0, + 64, + 178, + 186, + 201, + 224, + 25, + 30, + 2, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 100, + 0, + 52, + 115, + 116, + 97, + 107, + 105, + 110, + 103, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 80, + 239, + 226, + 214, + 228, + 26, + 27, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 101, + 0, + 56, + 116, + 114, + 101, + 97, + 115, + 117, + 114, + 121, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 64, + 56, + 0, + 0, + 2, + 144, + 215, + 62, + 13, + 0, + 0, + 0, + 0, + 87, + 67, + 222, + 19, + 0, + 0, + 0, + 0, + 84, + 67, + 222, + 19, + 0, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29, + 102, + 0, + 44, + 108, + 101, + 97, + 115, + 101, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 80, + 239, + 226, + 214, + 228, + 26, + 27, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 103, + 0, + 64, + 102, + 101, + 108, + 108, + 111, + 119, + 115, + 104, + 105, + 112, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 16, + 99, + 45, + 94, + 199, + 107, + 5, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 104, + 0, + 52, + 103, + 101, + 110, + 101, + 114, + 97, + 108, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 16, + 99, + 45, + 94, + 199, + 107, + 5, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 2, + 144, + 215, + 62, + 13, + 0, + 0, + 0, + 0, + 87, + 67, + 222, + 19, + 0, + 0, + 0, + 0, + 84, + 67, + 222, + 19, + 0, + 0, + 0, + 0, + 2, + 89, + 162, + 244, + 2, + 0, + 0, + 0, + 0, + 163, + 41, + 107, + 5, + 0, + 0, + 0, + 0, + 46, + 107, + 74, + 253, + 255, + 255, + 255, + 255, + 105, + 0, + 52, + 97, + 117, + 99, + 116, + 105, + 111, + 110, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 2, + 144, + 215, + 62, + 13, + 0, + 0, + 0, + 0, + 87, + 67, + 222, + 19, + 0, + 0, + 0, + 0, + 84, + 67, + 222, + 19, + 0, + 0, + 0, + 0, + 2, + 89, + 162, + 244, + 2, + 0, + 0, + 0, + 0, + 163, + 41, + 107, + 5, + 0, + 0, + 0, + 0, + 46, + 107, + 74, + 253, + 255, + 255, + 255, + 255, + 106, + 0, + 72, + 109, + 117, + 108, + 116, + 105, + 95, + 116, + 111, + 107, + 101, + 110, + 115, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 107, + 0, + 64, + 102, + 117, + 101, + 108, + 95, + 116, + 97, + 110, + 107, + 115, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 108, + 0, + 48, + 99, + 108, + 97, + 105, + 109, + 115, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 109, + 0, + 84, + 101, + 120, + 116, + 114, + 105, + 110, + 115, + 105, + 99, + 95, + 112, + 97, + 117, + 115, + 101, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 110, + 0, + 56, + 112, + 114, + 101, + 105, + 109, + 97, + 103, + 101, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 111, + 0, + 60, + 119, + 104, + 105, + 116, + 101, + 108, + 105, + 115, + 116, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 112, + 0, + 64, + 112, + 97, + 114, + 97, + 99, + 104, + 97, + 105, + 110, + 115, + 95, + 97, + 100, + 109, + 105, + 110, + 10, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 176, + 4, + 0, + 0, + 128, + 19, + 3, + 0, + 8, + 7, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 200, + 0, + 48, + 115, + 109, + 97, + 108, + 108, + 95, + 116, + 105, + 112, + 112, + 101, + 114, + 200, + 0, + 0, + 0, + 0, + 0, + 100, + 167, + 179, + 182, + 224, + 13, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 10, + 0, + 0, + 0, + 192, + 137, + 1, + 0, + 100, + 0, + 0, + 0, + 10, + 0, + 0, + 0, + 0, + 73, + 145, + 73, + 21, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 249, + 186, + 24, + 0, + 0, + 0, + 0, + 0, + 42, + 77, + 49, + 0, + 0, + 0, + 0, + 0, + 107, + 89, + 231, + 255, + 255, + 255, + 255, + 255, + 201, + 0, + 40, + 98, + 105, + 103, + 95, + 116, + 105, + 112, + 112, + 101, + 114, + 100, + 0, + 0, + 0, + 0, + 0, + 232, + 137, + 4, + 35, + 199, + 138, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 100, + 0, + 0, + 0, + 192, + 137, + 1, + 0, + 88, + 2, + 0, + 0, + 100, + 0, + 0, + 0, + 0, + 73, + 145, + 73, + 21, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 105, + 79, + 63, + 0, + 0, + 0, + 0, + 0, + 53, + 150, + 125, + 0, + 0, + 0, + 0, + 0, + 229, + 52, + 193, + 255, + 255, + 255, + 255, + 255, + 202, + 0, + 52, + 115, + 109, + 97, + 108, + 108, + 95, + 115, + 112, + 101, + 110, + 100, + 101, + 114, + 50, + 0, + 0, + 0, + 0, + 0, + 16, + 99, + 45, + 94, + 199, + 107, + 5, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 96, + 9, + 0, + 0, + 128, + 19, + 3, + 0, + 32, + 28, + 0, + 0, + 64, + 56, + 0, + 0, + 0, + 201, + 67, + 48, + 36, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 93, + 111, + 120, + 0, + 0, + 0, + 0, + 0, + 232, + 46, + 237, + 0, + 0, + 0, + 0, + 0, + 140, + 104, + 137, + 255, + 255, + 255, + 255, + 255, + 203, + 0, + 56, + 109, + 101, + 100, + 105, + 117, + 109, + 95, + 115, + 112, + 101, + 110, + 100, + 101, + 114, + 50, + 0, + 0, + 0, + 0, + 0, + 32, + 198, + 90, + 188, + 142, + 215, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 96, + 9, + 0, + 0, + 128, + 19, + 3, + 0, + 64, + 56, + 0, + 0, + 64, + 56, + 0, + 0, + 0, + 91, + 1, + 246, + 48, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 17, + 97, + 219, + 0, + 0, + 0, + 0, + 0, + 191, + 209, + 170, + 1, + 0, + 0, + 0, + 0, + 32, + 151, + 42, + 255, + 255, + 255, + 255, + 255, + 204, + 0, + 44, + 98, + 105, + 103, + 95, + 115, + 112, + 101, + 110, + 100, + 101, + 114, + 50, + 0, + 0, + 0, + 0, + 0, + 64, + 140, + 181, + 120, + 29, + 175, + 21, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 96, + 9, + 0, + 0, + 128, + 19, + 3, + 0, + 128, + 112, + 0, + 0, + 64, + 56, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 2, + 65, + 60, + 176, + 1, + 0, + 0, + 0, + 0, + 117, + 93, + 52, + 3, + 0, + 0, + 0, + 0, + 69, + 209, + 101, + 254, + 255, + 255, + 255, + 255 + ], + "docs": [ + " Information concerning the different referendum tracks." + ] + } + ], + "error": { + "ty": 995 + }, + "index": 103 + }, + { + "name": "Whitelist", + "storage": { + "prefix": "Whitelist", + "entries": [ + { + "name": "WhitelistedCall", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 12, + "value": 56 + } + }, + "default": [ + 0 + ], + "docs": [] + } + ] + }, + "calls": { + "ty": 594 + }, + "event": { + "ty": 640 + }, + "constants": [], + "error": { + "ty": 996 + }, + "index": 105 + }, + { + "name": "FellowshipCollective", + "storage": { + "prefix": "FellowshipCollective", + "entries": [ + { + "name": "MemberCount", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 290, + "value": 4 + } + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The number of members in the collective who have at least the rank according to the index", + " of the vec." + ] + }, + { + "name": "Members", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 997 + } + }, + "default": [ + 0 + ], + "docs": [ + " The current members of the collective." + ] + }, + { + "name": "IdToIndex", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 998, + "value": 4 + } + }, + "default": [ + 0 + ], + "docs": [ + " The index of each ranks's member into the group of members who have at least that rank." + ] + }, + { + "name": "IndexToId", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 999, + "value": 0 + } + }, + "default": [ + 0 + ], + "docs": [ + " The members in the collective by index. All indices in the range `0..MemberCount` will", + " return `Some`, however a member's index is not guaranteed to remain unchanged over time." + ] + }, + { + "name": "Voting", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat", + "Twox64Concat" + ], + "key": 715, + "value": 646 + } + }, + "default": [ + 0 + ], + "docs": [ + " Votes on a given proposal, if it is ongoing." + ] + }, + { + "name": "VotingCleanup", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 4, + "value": 1000 + } + }, + "default": [ + 0 + ], + "docs": [] + } + ] + }, + "calls": { + "ty": 595 + }, + "event": { + "ty": 645 + }, + "constants": [], + "error": { + "ty": 1001 + }, + "index": 106 + }, + { + "name": "FellowshipReferenda", + "storage": { + "prefix": "FellowshipReferenda", + "entries": [ + { + "name": "ReferendumCount", + "modifier": "Default", + "ty": { + "Plain": 4 + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The next free referendum index, aka the number of referenda started so far." + ] + }, + { + "name": "ReferendumInfoFor", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 4, + "value": 1002 + } + }, + "default": [ + 0 + ], + "docs": [ + " Information concerning any given referendum." + ] + }, + { + "name": "TrackQueue", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 290, + "value": 1004 + } + }, + "default": [ + 0 + ], + "docs": [ + " The sorted list of referenda ready to be decided but not yet being decided, ordered by", + " conviction-weighted approvals.", + "", + " This should be empty if `DecidingCount` is less than `TrackInfo::max_deciding`." + ] + }, + { + "name": "DecidingCount", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 290, + "value": 4 + } + }, + "default": [ + 0, + 0, + 0, + 0 + ], + "docs": [ + " The number of referenda being decided currently." + ] + }, + { + "name": "MetadataOf", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 4, + "value": 12 + } + }, + "default": [ + 0 + ], + "docs": [ + " The metadata is a general information concerning the referendum.", + " The `PreimageHash` refers to the preimage of the `Preimages` provider which can be a JSON", + " dump or IPFS hash of a JSON file.", + "", + " Consider a garbage collection for a metadata of finished referendums to `unrequest` (remove)", + " large preimages." + ] + } + ] + }, + "calls": { + "ty": 596 + }, + "event": { + "ty": 648 + }, + "constants": [ + { + "name": "SubmissionDeposit", + "ty": 6, + "value": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The minimum amount to be used as a deposit for a public referendum proposal." + ] + }, + { + "name": "MaxQueued", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " Maximum size of the referendum queue for a single track." + ] + }, + { + "name": "UndecidingTimeout", + "ty": 4, + "value": [ + 192, + 137, + 1, + 0 + ], + "docs": [ + " The number of blocks after submission that a referendum must begin being decided by.", + " Once this passes, then anyone may cancel the referendum." + ] + }, + { + "name": "AlarmInterval", + "ty": 4, + "value": [ + 1, + 0, + 0, + 0 + ], + "docs": [ + " Quantization level for the referendum wakeup scheduler. A higher number will result in", + " fewer storage reads/writes needed for smaller voters, but also result in delays to the", + " automatic referendum status changes. Explicit servicing instructions are unaffected." + ] + }, + { + "name": "Tracks", + "ty": 989, + "value": [ + 40, + 0, + 0, + 40, + 99, + 97, + 110, + 100, + 105, + 100, + 97, + 116, + 101, + 115, + 10, + 0, + 0, + 0, + 0, + 0, + 232, + 137, + 4, + 35, + 199, + 138, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 88, + 2, + 0, + 0, + 128, + 19, + 3, + 0, + 194, + 1, + 0, + 0, + 10, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29, + 1, + 0, + 28, + 109, + 101, + 109, + 98, + 101, + 114, + 115, + 10, + 0, + 0, + 0, + 0, + 0, + 16, + 99, + 45, + 94, + 199, + 107, + 5, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 194, + 1, + 0, + 0, + 128, + 50, + 2, + 0, + 44, + 1, + 0, + 0, + 10, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29, + 2, + 0, + 44, + 112, + 114, + 111, + 102, + 105, + 99, + 105, + 101, + 110, + 116, + 115, + 10, + 0, + 0, + 0, + 0, + 0, + 32, + 198, + 90, + 188, + 142, + 215, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 44, + 1, + 0, + 0, + 192, + 137, + 1, + 0, + 150, + 0, + 0, + 0, + 10, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29, + 3, + 0, + 28, + 102, + 101, + 108, + 108, + 111, + 119, + 115, + 10, + 0, + 0, + 0, + 0, + 0, + 160, + 222, + 197, + 173, + 201, + 53, + 54, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 150, + 0, + 0, + 0, + 192, + 168, + 0, + 0, + 150, + 0, + 0, + 0, + 10, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29, + 4, + 0, + 56, + 115, + 101, + 110, + 105, + 111, + 114, + 32, + 102, + 101, + 108, + 108, + 111, + 119, + 115, + 10, + 0, + 0, + 0, + 0, + 0, + 144, + 172, + 110, + 50, + 120, + 134, + 135, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 150, + 0, + 0, + 0, + 128, + 112, + 0, + 0, + 100, + 0, + 0, + 0, + 10, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29, + 5, + 0, + 28, + 101, + 120, + 112, + 101, + 114, + 116, + 115, + 10, + 0, + 0, + 0, + 0, + 0, + 32, + 89, + 221, + 100, + 240, + 12, + 15, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 100, + 0, + 0, + 0, + 64, + 56, + 0, + 0, + 100, + 0, + 0, + 0, + 10, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29, + 6, + 0, + 56, + 115, + 101, + 110, + 105, + 111, + 114, + 32, + 101, + 120, + 112, + 101, + 114, + 116, + 115, + 10, + 0, + 0, + 0, + 0, + 0, + 176, + 5, + 76, + 151, + 104, + 147, + 150, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 100, + 0, + 0, + 0, + 128, + 37, + 0, + 0, + 50, + 0, + 0, + 0, + 10, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29, + 7, + 0, + 28, + 109, + 97, + 115, + 116, + 101, + 114, + 115, + 10, + 0, + 0, + 0, + 0, + 0, + 64, + 178, + 186, + 201, + 224, + 25, + 30, + 2, + 0, + 0, + 0, + 0, + 0, + 0, + 50, + 0, + 0, + 0, + 32, + 28, + 0, + 0, + 50, + 0, + 0, + 0, + 10, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29, + 8, + 0, + 56, + 115, + 101, + 110, + 105, + 111, + 114, + 32, + 109, + 97, + 115, + 116, + 101, + 114, + 115, + 10, + 0, + 0, + 0, + 0, + 0, + 64, + 123, + 165, + 240, + 99, + 129, + 150, + 10, + 0, + 0, + 0, + 0, + 0, + 0, + 50, + 0, + 0, + 0, + 192, + 18, + 0, + 0, + 50, + 0, + 0, + 0, + 10, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29, + 9, + 0, + 52, + 103, + 114, + 97, + 110, + 100, + 32, + 109, + 97, + 115, + 116, + 101, + 114, + 115, + 10, + 0, + 0, + 0, + 0, + 0, + 128, + 246, + 74, + 225, + 199, + 2, + 45, + 21, + 0, + 0, + 0, + 0, + 0, + 0, + 50, + 0, + 0, + 0, + 96, + 9, + 0, + 0, + 50, + 0, + 0, + 0, + 10, + 0, + 0, + 0, + 0, + 0, + 202, + 154, + 59, + 0, + 101, + 205, + 29, + 0, + 202, + 154, + 59, + 0, + 0, + 202, + 154, + 59, + 0, + 0, + 0, + 0, + 0, + 101, + 205, + 29 + ], + "docs": [ + " Information concerning the different referendum tracks." + ] + } + ], + "error": { + "ty": 1005 + }, + "index": 107 + }, + { + "name": "Identity", + "storage": { + "prefix": "Identity", + "entries": [ + { + "name": "IdentityOf", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 1006 + } + }, + "default": [ + 0 + ], + "docs": [ + " Information that is pertinent to identify the entity behind an account.", + "", + " TWOX-NOTE: OK ― `AccountId` is a secure hash." + ] + }, + { + "name": "SuperOf", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 632 + } + }, + "default": [ + 0 + ], + "docs": [ + " The super-identity of an alternative \"sub\" identity together with its name, within that", + " context. If the account is not some other account's sub-identity, then just `None`." + ] + }, + { + "name": "SubsOf", + "modifier": "Default", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 1010 + } + }, + "default": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " Alternative \"sub\" identities of this account.", + "", + " The first item is the deposit, the second is a vector of the accounts.", + "", + " TWOX-NOTE: OK ― `AccountId` is a secure hash." + ] + }, + { + "name": "Registrars", + "modifier": "Default", + "ty": { + "Plain": 1012 + }, + "default": [ + 0 + ], + "docs": [ + " The set of registrars. Not expected to get very big as can only be added through a", + " special origin (likely a council motion).", + "", + " The index into this can be cast to `RegistrarIndex` to get a valid value." + ] + } + ] + }, + "calls": { + "ty": 597 + }, + "event": { + "ty": 649 + }, + "constants": [ + { + "name": "BasicDeposit", + "ty": 6, + "value": [ + 0, + 0, + 64, + 140, + 181, + 120, + 29, + 175, + 21, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The amount held on deposit for a registered identity" + ] + }, + { + "name": "FieldDeposit", + "ty": 6, + "value": [ + 0, + 0, + 61, + 145, + 96, + 228, + 88, + 17, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The amount held on deposit per additional field for a registered identity." + ] + }, + { + "name": "SubAccountDeposit", + "ty": 6, + "value": [ + 0, + 0, + 61, + 145, + 96, + 228, + 88, + 17, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "docs": [ + " The amount held on deposit for a registered subaccount. This should account for the fact", + " that one storage item's value will increase by the size of an account ID, and there will", + " be another trie item whose value is the size of an account ID plus 32 bytes." + ] + }, + { + "name": "MaxSubAccounts", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " The maximum number of sub-accounts allowed per identified account." + ] + }, + { + "name": "MaxAdditionalFields", + "ty": 4, + "value": [ + 100, + 0, + 0, + 0 + ], + "docs": [ + " Maximum number of additional fields that may be stored in an ID. Needed to bound the I/O", + " required to access an identity, but can be pretty high." + ] + }, + { + "name": "MaxRegistrars", + "ty": 4, + "value": [ + 20, + 0, + 0, + 0 + ], + "docs": [ + " Maxmimum number of registrars allowed in the system. Needed to bound the complexity", + " of, e.g., updating judgements." + ] + } + ], + "error": { + "ty": 1016 + }, + "index": 108 + }, + { + "name": "VoteManager", + "storage": { + "prefix": "VoteManager", + "entries": [ + { + "name": "VoteCurrencies", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 719, + "value": 637 + } + }, + "default": [ + 0 + ], + "docs": [ + " The currency used by `AccountId` to vote in Poll with", + " `PollIndex`", + "", + " TWOX-NOTE: SAFE since `AccountId` is a secure hash." + ] + }, + { + "name": "VotesToUnlock", + "modifier": "Optional", + "ty": { + "Map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 719, + "value": 1017 + } + }, + "default": [ + 0 + ], + "docs": [ + " The currency used by `AccountId` to vote in referendum with", + " `ReferendumIndex`", + "", + " TWOX-NOTE: SAFE since `AccountId` is a secure hash." + ] + } + ] + }, + "calls": { + "ty": 636 + }, + "event": { + "ty": 650 + }, + "constants": [], + "error": { + "ty": 1018 + }, + "index": 109 + } + ], + "extrinsic": { + "ty": 1019, + "version": 4, + "signed_extensions": [ + { + "identifier": "CheckNonZeroSender", + "ty": 1021, + "additional_signed": 56 + }, + { + "identifier": "CheckSpecVersion", + "ty": 1022, + "additional_signed": 4 + }, + { + "identifier": "CheckTxVersion", + "ty": 1023, + "additional_signed": 4 + }, + { + "identifier": "CheckGenesis", + "ty": 1024, + "additional_signed": 12 + }, + { + "identifier": "CheckMortality", + "ty": 1025, + "additional_signed": 12 + }, + { + "identifier": "CheckNonce", + "ty": 1027, + "additional_signed": 56 + }, + { + "identifier": "CheckWeight", + "ty": 1028, + "additional_signed": 56 + }, + { + "identifier": "ChargeTransactionPayment", + "ty": 1029, + "additional_signed": 56 + }, + { + "identifier": "CheckFuelTank", + "ty": 1030, + "additional_signed": 56 + } + ] + }, + "ty": 254 + } + } +] \ No newline at end of file diff --git a/cli/enjin2.scale b/cli/enjin2.scale new file mode 100644 index 0000000000..a2b79dbc5e Binary files /dev/null and b/cli/enjin2.scale differ diff --git a/subxt/examples/storage_bug.rs b/subxt/examples/storage_bug.rs new file mode 100644 index 0000000000..61aab4b66b --- /dev/null +++ b/subxt/examples/storage_bug.rs @@ -0,0 +1,37 @@ +use polkadot::multisig::events::NewMultisig; +use polkadot::runtime_types::{frame_system::pallet::Call, sp_weights::weight_v2::Weight}; +use subxt::utils::AccountId32; +use subxt::{OnlineClient, PolkadotConfig}; +use subxt_signer::sr25519::{dev, Keypair}; + +#[subxt::subxt(runtime_metadata_path = "../cli/enjin2.scale")] +pub mod polkadot {} + +#[tokio::main] +async fn main() -> Result<(), Box> { + // Create a new API client, configured to talk to Polkadot nodes. + let api = + OnlineClient::::from_url("wss://rpc.relay.blockchain.enjin.io:443").await?; + + let unbonding_members = { + let query = polkadot::storage() + .nomination_pools() + .unbonding_members_iter1(6u32); + + println!("Query {:?}", query); + + let static_query = "0x7a6d38deaa01cb6e76ee69889f1696270a0047e8c76616ede28bd21ecd3c8acbb61f803a716bd3b906000000"; + + let mut results = api.storage().at_latest().await?.iter(query).await?; + + let mut unbonding_members = std::collections::HashMap::new(); + while let Some(Ok((key, prefs))) = results.next().await { + unbonding_members.insert(key, prefs); + } + unbonding_members + }; + + println!("Unbonding members {:?}", unbonding_members.len()); + + Ok(()) +} diff --git a/testing/integration-tests/src/full_client/codegen/enji.rs b/testing/integration-tests/src/full_client/codegen/enji.rs new file mode 100644 index 0000000000..db88a4f519 --- /dev/null +++ b/testing/integration-tests/src/full_client/codegen/enji.rs @@ -0,0 +1,57630 @@ +#[allow(dead_code, unused_imports, non_camel_case_types)] +#[allow(clippy::all)] +#[allow(rustdoc::broken_intra_doc_links)] +pub mod api { + #[allow(unused_imports)] + mod root_mod { + pub use super::*; + } + pub static PALLETS: [&str; 60usize] = [ + "System", + "RandomnessCollectiveFlip", + "Timestamp", + "Babe", + "Historical", + "Authorship", + "Balances", + "Offences", + "ElectionProviderMultiPhase", + "Staking", + "Session", + "Grandpa", + "Treasury", + "TransactionPayment", + "Sudo", + "ImOnline", + "AuthorityDiscovery", + "VoterList", + "NominationPools", + "StakeExchange", + "Utility", + "Multisig", + "ParachainsOrigin", + "Configuration", + "ParasShared", + "ParaInclusion", + "ParaInherent", + "ParaScheduler", + "Paras", + "Initializer", + "Dmp", + "Hrmp", + "ParaSessionInfo", + "ParasDisputes", + "ParasSlashing", + "Registrar", + "Slots", + "Auctions", + "Crowdloan", + "XcmPallet", + "MessageQueue", + "ParasSudoWrapper", + "AssignedSlots", + "ValidatorManager", + "MultiTokens", + "FuelTanks", + "ExtrinsicPause", + "Marketplace", + "Beefy", + "Mmr", + "MmrLeaf", + "Scheduler", + "Preimage", + "ConvictionVoting", + "Referenda", + "Whitelist", + "FellowshipCollective", + "FellowshipReferenda", + "Identity", + "VoteManager", + ]; + pub static RUNTIME_APIS: [&str; 0usize] = []; + #[doc = r" The error type returned when there is a runtime issue."] + pub type DispatchError = runtime_types::sp_runtime::DispatchError; + #[doc = r" The outer event enum."] + pub type Event = runtime_types::enjin_runtime::RuntimeEvent; + #[doc = r" The outer extrinsic enum."] + pub type Call = runtime_types::enjin_runtime::RuntimeCall; + #[doc = r" The outer error enum representing the DispatchError's Module variant."] + pub type Error = runtime_types::enjin_runtime::RuntimeError; + pub fn constants() -> ConstantsApi { + ConstantsApi + } + pub fn storage() -> StorageApi { + StorageApi + } + pub fn tx() -> TransactionApi { + TransactionApi + } + pub fn apis() -> runtime_apis::RuntimeApi { + runtime_apis::RuntimeApi + } + pub mod runtime_apis { + use super::root_mod; + use super::runtime_types; + use subxt::ext::codec::Encode; + pub struct RuntimeApi; + impl RuntimeApi {} + } + pub fn custom() -> CustomValuesApi { + CustomValuesApi + } + pub struct CustomValuesApi; + impl CustomValuesApi {} + pub struct ConstantsApi; + impl ConstantsApi { + pub fn system(&self) -> system::constants::ConstantsApi { + system::constants::ConstantsApi + } + pub fn timestamp(&self) -> timestamp::constants::ConstantsApi { + timestamp::constants::ConstantsApi + } + pub fn babe(&self) -> babe::constants::ConstantsApi { + babe::constants::ConstantsApi + } + pub fn balances(&self) -> balances::constants::ConstantsApi { + balances::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 grandpa(&self) -> grandpa::constants::ConstantsApi { + grandpa::constants::ConstantsApi + } + pub fn treasury(&self) -> treasury::constants::ConstantsApi { + treasury::constants::ConstantsApi + } + pub fn transaction_payment(&self) -> transaction_payment::constants::ConstantsApi { + transaction_payment::constants::ConstantsApi + } + pub fn im_online(&self) -> im_online::constants::ConstantsApi { + im_online::constants::ConstantsApi + } + pub fn voter_list(&self) -> voter_list::constants::ConstantsApi { + voter_list::constants::ConstantsApi + } + pub fn nomination_pools(&self) -> nomination_pools::constants::ConstantsApi { + nomination_pools::constants::ConstantsApi + } + pub fn stake_exchange(&self) -> stake_exchange::constants::ConstantsApi { + stake_exchange::constants::ConstantsApi + } + pub fn utility(&self) -> utility::constants::ConstantsApi { + utility::constants::ConstantsApi + } + pub fn multisig(&self) -> multisig::constants::ConstantsApi { + multisig::constants::ConstantsApi + } + pub fn paras(&self) -> paras::constants::ConstantsApi { + paras::constants::ConstantsApi + } + pub fn registrar(&self) -> registrar::constants::ConstantsApi { + registrar::constants::ConstantsApi + } + pub fn slots(&self) -> slots::constants::ConstantsApi { + slots::constants::ConstantsApi + } + pub fn auctions(&self) -> auctions::constants::ConstantsApi { + auctions::constants::ConstantsApi + } + pub fn crowdloan(&self) -> crowdloan::constants::ConstantsApi { + crowdloan::constants::ConstantsApi + } + pub fn message_queue(&self) -> message_queue::constants::ConstantsApi { + message_queue::constants::ConstantsApi + } + pub fn assigned_slots(&self) -> assigned_slots::constants::ConstantsApi { + assigned_slots::constants::ConstantsApi + } + pub fn multi_tokens(&self) -> multi_tokens::constants::ConstantsApi { + multi_tokens::constants::ConstantsApi + } + pub fn fuel_tanks(&self) -> fuel_tanks::constants::ConstantsApi { + fuel_tanks::constants::ConstantsApi + } + pub fn extrinsic_pause(&self) -> extrinsic_pause::constants::ConstantsApi { + extrinsic_pause::constants::ConstantsApi + } + pub fn marketplace(&self) -> marketplace::constants::ConstantsApi { + marketplace::constants::ConstantsApi + } + pub fn beefy(&self) -> beefy::constants::ConstantsApi { + beefy::constants::ConstantsApi + } + pub fn scheduler(&self) -> scheduler::constants::ConstantsApi { + scheduler::constants::ConstantsApi + } + pub fn conviction_voting(&self) -> conviction_voting::constants::ConstantsApi { + conviction_voting::constants::ConstantsApi + } + pub fn referenda(&self) -> referenda::constants::ConstantsApi { + referenda::constants::ConstantsApi + } + pub fn fellowship_referenda(&self) -> fellowship_referenda::constants::ConstantsApi { + fellowship_referenda::constants::ConstantsApi + } + pub fn identity(&self) -> identity::constants::ConstantsApi { + identity::constants::ConstantsApi + } + } + pub struct StorageApi; + impl StorageApi { + pub fn system(&self) -> system::storage::StorageApi { + system::storage::StorageApi + } + pub fn randomness_collective_flip( + &self, + ) -> randomness_collective_flip::storage::StorageApi { + randomness_collective_flip::storage::StorageApi + } + pub fn timestamp(&self) -> timestamp::storage::StorageApi { + timestamp::storage::StorageApi + } + pub fn babe(&self) -> babe::storage::StorageApi { + babe::storage::StorageApi + } + pub fn authorship(&self) -> authorship::storage::StorageApi { + authorship::storage::StorageApi + } + pub fn balances(&self) -> balances::storage::StorageApi { + balances::storage::StorageApi + } + pub fn offences(&self) -> offences::storage::StorageApi { + offences::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 grandpa(&self) -> grandpa::storage::StorageApi { + grandpa::storage::StorageApi + } + pub fn treasury(&self) -> treasury::storage::StorageApi { + treasury::storage::StorageApi + } + pub fn transaction_payment(&self) -> transaction_payment::storage::StorageApi { + transaction_payment::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 voter_list(&self) -> voter_list::storage::StorageApi { + voter_list::storage::StorageApi + } + pub fn nomination_pools(&self) -> nomination_pools::storage::StorageApi { + nomination_pools::storage::StorageApi + } + pub fn stake_exchange(&self) -> stake_exchange::storage::StorageApi { + stake_exchange::storage::StorageApi + } + pub fn multisig(&self) -> multisig::storage::StorageApi { + multisig::storage::StorageApi + } + pub fn configuration(&self) -> configuration::storage::StorageApi { + configuration::storage::StorageApi + } + pub fn paras_shared(&self) -> paras_shared::storage::StorageApi { + paras_shared::storage::StorageApi + } + pub fn para_inclusion(&self) -> para_inclusion::storage::StorageApi { + para_inclusion::storage::StorageApi + } + pub fn para_inherent(&self) -> para_inherent::storage::StorageApi { + para_inherent::storage::StorageApi + } + pub fn para_scheduler(&self) -> para_scheduler::storage::StorageApi { + para_scheduler::storage::StorageApi + } + pub fn paras(&self) -> paras::storage::StorageApi { + paras::storage::StorageApi + } + pub fn initializer(&self) -> initializer::storage::StorageApi { + initializer::storage::StorageApi + } + pub fn dmp(&self) -> dmp::storage::StorageApi { + dmp::storage::StorageApi + } + pub fn hrmp(&self) -> hrmp::storage::StorageApi { + hrmp::storage::StorageApi + } + pub fn para_session_info(&self) -> para_session_info::storage::StorageApi { + para_session_info::storage::StorageApi + } + pub fn paras_disputes(&self) -> paras_disputes::storage::StorageApi { + paras_disputes::storage::StorageApi + } + pub fn paras_slashing(&self) -> paras_slashing::storage::StorageApi { + paras_slashing::storage::StorageApi + } + pub fn registrar(&self) -> registrar::storage::StorageApi { + registrar::storage::StorageApi + } + pub fn slots(&self) -> slots::storage::StorageApi { + slots::storage::StorageApi + } + pub fn auctions(&self) -> auctions::storage::StorageApi { + auctions::storage::StorageApi + } + pub fn crowdloan(&self) -> crowdloan::storage::StorageApi { + crowdloan::storage::StorageApi + } + pub fn xcm_pallet(&self) -> xcm_pallet::storage::StorageApi { + xcm_pallet::storage::StorageApi + } + pub fn message_queue(&self) -> message_queue::storage::StorageApi { + message_queue::storage::StorageApi + } + pub fn assigned_slots(&self) -> assigned_slots::storage::StorageApi { + assigned_slots::storage::StorageApi + } + pub fn validator_manager(&self) -> validator_manager::storage::StorageApi { + validator_manager::storage::StorageApi + } + pub fn multi_tokens(&self) -> multi_tokens::storage::StorageApi { + multi_tokens::storage::StorageApi + } + pub fn fuel_tanks(&self) -> fuel_tanks::storage::StorageApi { + fuel_tanks::storage::StorageApi + } + pub fn extrinsic_pause(&self) -> extrinsic_pause::storage::StorageApi { + extrinsic_pause::storage::StorageApi + } + pub fn marketplace(&self) -> marketplace::storage::StorageApi { + marketplace::storage::StorageApi + } + pub fn beefy(&self) -> beefy::storage::StorageApi { + beefy::storage::StorageApi + } + pub fn mmr(&self) -> mmr::storage::StorageApi { + mmr::storage::StorageApi + } + pub fn mmr_leaf(&self) -> mmr_leaf::storage::StorageApi { + mmr_leaf::storage::StorageApi + } + pub fn scheduler(&self) -> scheduler::storage::StorageApi { + scheduler::storage::StorageApi + } + pub fn preimage(&self) -> preimage::storage::StorageApi { + preimage::storage::StorageApi + } + pub fn conviction_voting(&self) -> conviction_voting::storage::StorageApi { + conviction_voting::storage::StorageApi + } + pub fn referenda(&self) -> referenda::storage::StorageApi { + referenda::storage::StorageApi + } + pub fn whitelist(&self) -> whitelist::storage::StorageApi { + whitelist::storage::StorageApi + } + pub fn fellowship_collective(&self) -> fellowship_collective::storage::StorageApi { + fellowship_collective::storage::StorageApi + } + pub fn fellowship_referenda(&self) -> fellowship_referenda::storage::StorageApi { + fellowship_referenda::storage::StorageApi + } + pub fn identity(&self) -> identity::storage::StorageApi { + identity::storage::StorageApi + } + pub fn vote_manager(&self) -> vote_manager::storage::StorageApi { + vote_manager::storage::StorageApi + } + } + pub struct TransactionApi; + impl TransactionApi { + pub fn system(&self) -> system::calls::TransactionApi { + system::calls::TransactionApi + } + pub fn timestamp(&self) -> timestamp::calls::TransactionApi { + timestamp::calls::TransactionApi + } + pub fn babe(&self) -> babe::calls::TransactionApi { + babe::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 grandpa(&self) -> grandpa::calls::TransactionApi { + grandpa::calls::TransactionApi + } + pub fn treasury(&self) -> treasury::calls::TransactionApi { + treasury::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 voter_list(&self) -> voter_list::calls::TransactionApi { + voter_list::calls::TransactionApi + } + pub fn nomination_pools(&self) -> nomination_pools::calls::TransactionApi { + nomination_pools::calls::TransactionApi + } + pub fn stake_exchange(&self) -> stake_exchange::calls::TransactionApi { + stake_exchange::calls::TransactionApi + } + pub fn utility(&self) -> utility::calls::TransactionApi { + utility::calls::TransactionApi + } + pub fn multisig(&self) -> multisig::calls::TransactionApi { + multisig::calls::TransactionApi + } + pub fn configuration(&self) -> configuration::calls::TransactionApi { + configuration::calls::TransactionApi + } + pub fn paras_shared(&self) -> paras_shared::calls::TransactionApi { + paras_shared::calls::TransactionApi + } + pub fn para_inclusion(&self) -> para_inclusion::calls::TransactionApi { + para_inclusion::calls::TransactionApi + } + pub fn para_inherent(&self) -> para_inherent::calls::TransactionApi { + para_inherent::calls::TransactionApi + } + pub fn paras(&self) -> paras::calls::TransactionApi { + paras::calls::TransactionApi + } + pub fn initializer(&self) -> initializer::calls::TransactionApi { + initializer::calls::TransactionApi + } + pub fn hrmp(&self) -> hrmp::calls::TransactionApi { + hrmp::calls::TransactionApi + } + pub fn paras_disputes(&self) -> paras_disputes::calls::TransactionApi { + paras_disputes::calls::TransactionApi + } + pub fn paras_slashing(&self) -> paras_slashing::calls::TransactionApi { + paras_slashing::calls::TransactionApi + } + pub fn registrar(&self) -> registrar::calls::TransactionApi { + registrar::calls::TransactionApi + } + pub fn slots(&self) -> slots::calls::TransactionApi { + slots::calls::TransactionApi + } + pub fn auctions(&self) -> auctions::calls::TransactionApi { + auctions::calls::TransactionApi + } + pub fn crowdloan(&self) -> crowdloan::calls::TransactionApi { + crowdloan::calls::TransactionApi + } + pub fn xcm_pallet(&self) -> xcm_pallet::calls::TransactionApi { + xcm_pallet::calls::TransactionApi + } + pub fn message_queue(&self) -> message_queue::calls::TransactionApi { + message_queue::calls::TransactionApi + } + pub fn paras_sudo_wrapper(&self) -> paras_sudo_wrapper::calls::TransactionApi { + paras_sudo_wrapper::calls::TransactionApi + } + pub fn assigned_slots(&self) -> assigned_slots::calls::TransactionApi { + assigned_slots::calls::TransactionApi + } + pub fn validator_manager(&self) -> validator_manager::calls::TransactionApi { + validator_manager::calls::TransactionApi + } + pub fn multi_tokens(&self) -> multi_tokens::calls::TransactionApi { + multi_tokens::calls::TransactionApi + } + pub fn fuel_tanks(&self) -> fuel_tanks::calls::TransactionApi { + fuel_tanks::calls::TransactionApi + } + pub fn extrinsic_pause(&self) -> extrinsic_pause::calls::TransactionApi { + extrinsic_pause::calls::TransactionApi + } + pub fn marketplace(&self) -> marketplace::calls::TransactionApi { + marketplace::calls::TransactionApi + } + pub fn beefy(&self) -> beefy::calls::TransactionApi { + beefy::calls::TransactionApi + } + pub fn scheduler(&self) -> scheduler::calls::TransactionApi { + scheduler::calls::TransactionApi + } + pub fn preimage(&self) -> preimage::calls::TransactionApi { + preimage::calls::TransactionApi + } + pub fn conviction_voting(&self) -> conviction_voting::calls::TransactionApi { + conviction_voting::calls::TransactionApi + } + pub fn referenda(&self) -> referenda::calls::TransactionApi { + referenda::calls::TransactionApi + } + pub fn whitelist(&self) -> whitelist::calls::TransactionApi { + whitelist::calls::TransactionApi + } + pub fn fellowship_collective(&self) -> fellowship_collective::calls::TransactionApi { + fellowship_collective::calls::TransactionApi + } + pub fn fellowship_referenda(&self) -> fellowship_referenda::calls::TransactionApi { + fellowship_referenda::calls::TransactionApi + } + pub fn identity(&self) -> identity::calls::TransactionApi { + identity::calls::TransactionApi + } + pub fn vote_manager(&self) -> vote_manager::calls::TransactionApi { + vote_manager::calls::TransactionApi + } + } + #[doc = r" check whether the metadata provided is aligned with this statically generated code."] + pub fn is_codegen_valid_for(metadata: &::subxt::Metadata) -> bool { + let runtime_metadata_hash = metadata + .hasher() + .only_these_pallets(&PALLETS) + .only_these_runtime_apis(&RUNTIME_APIS) + .hash(); + runtime_metadata_hash + == [ + 144u8, 103u8, 231u8, 242u8, 203u8, 37u8, 75u8, 170u8, 24u8, 47u8, 152u8, 111u8, + 82u8, 18u8, 234u8, 153u8, 124u8, 36u8, 46u8, 129u8, 207u8, 5u8, 130u8, 226u8, 22u8, + 83u8, 115u8, 48u8, 24u8, 59u8, 159u8, 46u8, + ] + } + pub mod system { + use super::root_mod; + use super::runtime_types; + #[doc = "Error for the System pallet"] + pub type Error = runtime_types::frame_system::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::frame_system::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Remark { + pub remark: ::std::vec::Vec<::core::primitive::u8>, + } + impl ::subxt::blocks::StaticExtrinsic for Remark { + const PALLET: &'static str = "System"; + const CALL: &'static str = "remark"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHeapPages { + pub pages: ::core::primitive::u64, + } + impl ::subxt::blocks::StaticExtrinsic for SetHeapPages { + const PALLET: &'static str = "System"; + const CALL: &'static str = "set_heap_pages"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetCode { + pub code: ::std::vec::Vec<::core::primitive::u8>, + } + impl ::subxt::blocks::StaticExtrinsic for SetCode { + const PALLET: &'static str = "System"; + const CALL: &'static str = "set_code"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetCodeWithoutChecks { + pub code: ::std::vec::Vec<::core::primitive::u8>, + } + impl ::subxt::blocks::StaticExtrinsic for SetCodeWithoutChecks { + const PALLET: &'static str = "System"; + const CALL: &'static str = "set_code_without_checks"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetStorage { + pub items: ::std::vec::Vec<( + ::std::vec::Vec<::core::primitive::u8>, + ::std::vec::Vec<::core::primitive::u8>, + )>, + } + impl ::subxt::blocks::StaticExtrinsic for SetStorage { + const PALLET: &'static str = "System"; + const CALL: &'static str = "set_storage"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct KillStorage { + pub keys: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, + } + impl ::subxt::blocks::StaticExtrinsic for KillStorage { + const PALLET: &'static str = "System"; + const CALL: &'static str = "kill_storage"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct KillPrefix { + pub prefix: ::std::vec::Vec<::core::primitive::u8>, + pub subkeys: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for KillPrefix { + const PALLET: &'static str = "System"; + const CALL: &'static str = "kill_prefix"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemarkWithEvent { + pub remark: ::std::vec::Vec<::core::primitive::u8>, + } + impl ::subxt::blocks::StaticExtrinsic for RemarkWithEvent { + const PALLET: &'static str = "System"; + const CALL: &'static str = "remark_with_event"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Make some on-chain remark."] + #[doc = ""] + #[doc = "- `O(1)`"] + pub fn remark( + &self, + remark: ::std::vec::Vec<::core::primitive::u8>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "System", + "remark", + types::Remark { remark }, + [ + 43u8, 126u8, 180u8, 174u8, 141u8, 48u8, 52u8, 125u8, 166u8, 212u8, + 216u8, 98u8, 100u8, 24u8, 132u8, 71u8, 101u8, 64u8, 246u8, 169u8, 33u8, + 250u8, 147u8, 208u8, 2u8, 40u8, 129u8, 209u8, 232u8, 207u8, 207u8, + 13u8, + ], + ) + } + #[doc = "Set the number of pages in the WebAssembly environment's heap."] + pub fn set_heap_pages( + &self, + pages: ::core::primitive::u64, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "System", + "set_heap_pages", + types::SetHeapPages { pages }, + [ + 188u8, 191u8, 99u8, 216u8, 219u8, 109u8, 141u8, 50u8, 78u8, 235u8, + 215u8, 242u8, 195u8, 24u8, 111u8, 76u8, 229u8, 64u8, 99u8, 225u8, + 134u8, 121u8, 81u8, 209u8, 127u8, 223u8, 98u8, 215u8, 150u8, 70u8, + 57u8, 147u8, + ], + ) + } + #[doc = "Set the new runtime code."] + pub fn set_code( + &self, + code: ::std::vec::Vec<::core::primitive::u8>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "System", + "set_code", + types::SetCode { code }, + [ + 233u8, 248u8, 88u8, 245u8, 28u8, 65u8, 25u8, 169u8, 35u8, 237u8, 19u8, + 203u8, 136u8, 160u8, 18u8, 3u8, 20u8, 197u8, 81u8, 169u8, 244u8, 188u8, + 27u8, 147u8, 147u8, 236u8, 65u8, 25u8, 3u8, 143u8, 182u8, 22u8, + ], + ) + } + #[doc = "Set the new runtime code without doing any checks of the given `code`."] + pub fn set_code_without_checks( + &self, + code: ::std::vec::Vec<::core::primitive::u8>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "System", + "set_code_without_checks", + types::SetCodeWithoutChecks { code }, + [ + 82u8, 212u8, 157u8, 44u8, 70u8, 0u8, 143u8, 15u8, 109u8, 109u8, 107u8, + 157u8, 141u8, 42u8, 169u8, 11u8, 15u8, 186u8, 252u8, 138u8, 10u8, + 147u8, 15u8, 178u8, 247u8, 229u8, 213u8, 98u8, 207u8, 231u8, 119u8, + 115u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "System", + "set_storage", + types::SetStorage { items }, + [ + 141u8, 216u8, 52u8, 222u8, 223u8, 136u8, 123u8, 181u8, 19u8, 75u8, + 163u8, 102u8, 229u8, 189u8, 158u8, 142u8, 95u8, 235u8, 240u8, 49u8, + 150u8, 76u8, 78u8, 137u8, 126u8, 88u8, 183u8, 88u8, 231u8, 146u8, + 234u8, 43u8, + ], + ) + } + #[doc = "Kill some items from storage."] + pub fn kill_storage( + &self, + keys: ::std::vec::Vec<::std::vec::Vec<::core::primitive::u8>>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "System", + "kill_storage", + types::KillStorage { keys }, + [ + 73u8, 63u8, 196u8, 36u8, 144u8, 114u8, 34u8, 213u8, 108u8, 93u8, 209u8, + 234u8, 153u8, 185u8, 33u8, 91u8, 187u8, 195u8, 223u8, 130u8, 58u8, + 156u8, 63u8, 47u8, 228u8, 249u8, 216u8, 139u8, 143u8, 177u8, 41u8, + 35u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "System", + "kill_prefix", + types::KillPrefix { prefix, subkeys }, + [ + 184u8, 57u8, 139u8, 24u8, 208u8, 87u8, 108u8, 215u8, 198u8, 189u8, + 175u8, 242u8, 167u8, 215u8, 97u8, 63u8, 110u8, 166u8, 238u8, 98u8, + 67u8, 236u8, 111u8, 110u8, 234u8, 81u8, 102u8, 5u8, 182u8, 5u8, 214u8, + 85u8, + ], + ) + } + #[doc = "Make some on-chain remark and emit event."] + pub fn remark_with_event( + &self, + remark: ::std::vec::Vec<::core::primitive::u8>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "System", + "remark_with_event", + types::RemarkWithEvent { remark }, + [ + 120u8, 120u8, 153u8, 92u8, 184u8, 85u8, 34u8, 2u8, 174u8, 206u8, 105u8, + 228u8, 233u8, 130u8, 80u8, 246u8, 228u8, 59u8, 234u8, 240u8, 4u8, 49u8, + 147u8, 170u8, 115u8, 91u8, 149u8, 200u8, 228u8, 181u8, 8u8, 154u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::frame_system::AccountInfo< + ::core::primitive::u32, + runtime_types::pallet_balances::types::AccountData<::core::primitive::u128>, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "System", + "Account", + vec![], + [ + 14u8, 233u8, 115u8, 214u8, 0u8, 109u8, 222u8, 121u8, 162u8, 65u8, 60u8, + 175u8, 209u8, 79u8, 222u8, 124u8, 22u8, 235u8, 138u8, 176u8, 133u8, + 124u8, 90u8, 158u8, 85u8, 45u8, 37u8, 174u8, 47u8, 79u8, 47u8, 166u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::frame_system::AccountInfo< + ::core::primitive::u32, + runtime_types::pallet_balances::types::AccountData<::core::primitive::u128>, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "Account", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 14u8, 233u8, 115u8, 214u8, 0u8, 109u8, 222u8, 121u8, 162u8, 65u8, 60u8, + 175u8, 209u8, 79u8, 222u8, 124u8, 22u8, 235u8, 138u8, 176u8, 133u8, + 124u8, 90u8, 158u8, 85u8, 45u8, 37u8, 174u8, 47u8, 79u8, 47u8, 166u8, + ], + ) + } + #[doc = " Total extrinsics count for the current block."] + pub fn extrinsic_count( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "ExtrinsicCount", + vec![], + [ + 102u8, 76u8, 236u8, 42u8, 40u8, 231u8, 33u8, 222u8, 123u8, 147u8, + 153u8, 148u8, 234u8, 203u8, 181u8, 119u8, 6u8, 187u8, 177u8, 199u8, + 120u8, 47u8, 137u8, 254u8, 96u8, 100u8, 165u8, 182u8, 249u8, 230u8, + 159u8, 79u8, + ], + ) + } + #[doc = " The current weight for the block."] + pub fn block_weight( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::frame_support::dispatch::PerDispatchClass< + runtime_types::sp_weights::weight_v2::Weight, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "BlockWeight", + vec![], + [ + 158u8, 46u8, 228u8, 89u8, 210u8, 214u8, 84u8, 154u8, 50u8, 68u8, 63u8, + 62u8, 43u8, 42u8, 99u8, 27u8, 54u8, 42u8, 146u8, 44u8, 241u8, 216u8, + 229u8, 30u8, 216u8, 255u8, 165u8, 238u8, 181u8, 130u8, 36u8, 102u8, + ], + ) + } + #[doc = " Total length (in bytes) for all extrinsics put together, for the current block."] + pub fn all_extrinsics_len( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "AllExtrinsicsLen", + vec![], + [ + 117u8, 86u8, 61u8, 243u8, 41u8, 51u8, 102u8, 214u8, 137u8, 100u8, + 243u8, 185u8, 122u8, 174u8, 187u8, 117u8, 86u8, 189u8, 63u8, 135u8, + 101u8, 218u8, 203u8, 201u8, 237u8, 254u8, 128u8, 183u8, 169u8, 221u8, + 242u8, 65u8, + ], + ) + } + #[doc = " Map of block numbers to block hashes."] + pub fn block_hash_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "System", + "BlockHash", + vec![], + [ + 217u8, 32u8, 215u8, 253u8, 24u8, 182u8, 207u8, 178u8, 157u8, 24u8, + 103u8, 100u8, 195u8, 165u8, 69u8, 152u8, 112u8, 181u8, 56u8, 192u8, + 164u8, 16u8, 20u8, 222u8, 28u8, 214u8, 144u8, 142u8, 146u8, 69u8, + 202u8, 118u8, + ], + ) + } + #[doc = " Map of block numbers to block hashes."] + pub fn block_hash( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "BlockHash", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 217u8, 32u8, 215u8, 253u8, 24u8, 182u8, 207u8, 178u8, 157u8, 24u8, + 103u8, 100u8, 195u8, 165u8, 69u8, 152u8, 112u8, 181u8, 56u8, 192u8, + 164u8, 16u8, 20u8, 222u8, 28u8, 214u8, 144u8, 142u8, 146u8, 69u8, + 202u8, 118u8, + ], + ) + } + #[doc = " Extrinsics data for the current block (maps an extrinsic's index to its data)."] + pub fn extrinsic_data_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::core::primitive::u8>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "System", + "ExtrinsicData", + vec![], + [ + 160u8, 180u8, 122u8, 18u8, 196u8, 26u8, 2u8, 37u8, 115u8, 232u8, 133u8, + 220u8, 106u8, 245u8, 4u8, 129u8, 42u8, 84u8, 241u8, 45u8, 199u8, 179u8, + 128u8, 61u8, 170u8, 137u8, 231u8, 156u8, 247u8, 57u8, 47u8, 38u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::core::primitive::u8>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "ExtrinsicData", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 160u8, 180u8, 122u8, 18u8, 196u8, 26u8, 2u8, 37u8, 115u8, 232u8, 133u8, + 220u8, 106u8, 245u8, 4u8, 129u8, 42u8, 84u8, 241u8, 45u8, 199u8, 179u8, + 128u8, 61u8, 170u8, 137u8, 231u8, 156u8, 247u8, 57u8, 47u8, 38u8, + ], + ) + } + #[doc = " The current block number being processed. Set by `execute_block`."] + pub fn number( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "Number", + vec![], + [ + 30u8, 194u8, 177u8, 90u8, 194u8, 232u8, 46u8, 180u8, 85u8, 129u8, 14u8, + 9u8, 8u8, 8u8, 23u8, 95u8, 230u8, 5u8, 13u8, 105u8, 125u8, 2u8, 22u8, + 200u8, 78u8, 93u8, 115u8, 28u8, 150u8, 113u8, 48u8, 53u8, + ], + ) + } + #[doc = " Hash of the previous block."] + pub fn parent_hash( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "ParentHash", + vec![], + [ + 26u8, 130u8, 11u8, 216u8, 155u8, 71u8, 128u8, 170u8, 30u8, 153u8, 21u8, + 192u8, 62u8, 93u8, 137u8, 80u8, 120u8, 81u8, 202u8, 94u8, 248u8, 125u8, + 71u8, 82u8, 141u8, 229u8, 32u8, 56u8, 73u8, 50u8, 101u8, 78u8, + ], + ) + } + #[doc = " Digest of the current block, also part of the block header."] + pub fn digest( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_runtime::generic::digest::Digest, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "Digest", + vec![], + [ + 61u8, 64u8, 237u8, 91u8, 145u8, 232u8, 17u8, 254u8, 181u8, 16u8, 234u8, + 91u8, 51u8, 140u8, 254u8, 131u8, 98u8, 135u8, 21u8, 37u8, 251u8, 20u8, + 58u8, 92u8, 123u8, 141u8, 14u8, 227u8, 146u8, 46u8, 222u8, 117u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec< + runtime_types::frame_system::EventRecord< + runtime_types::enjin_runtime::RuntimeEvent, + ::subxt::utils::H256, + >, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "Events", + vec![], + [ + 128u8, 224u8, 228u8, 2u8, 208u8, 25u8, 25u8, 137u8, 201u8, 7u8, 84u8, + 234u8, 42u8, 6u8, 6u8, 195u8, 25u8, 147u8, 196u8, 27u8, 30u8, 160u8, + 119u8, 38u8, 116u8, 212u8, 210u8, 5u8, 59u8, 28u8, 119u8, 187u8, + ], + ) + } + #[doc = " The number of events in the `Events` list."] + pub fn event_count( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "EventCount", + vec![], + [ + 175u8, 24u8, 252u8, 184u8, 210u8, 167u8, 146u8, 143u8, 164u8, 80u8, + 151u8, 205u8, 189u8, 189u8, 55u8, 220u8, 47u8, 101u8, 181u8, 33u8, + 254u8, 131u8, 13u8, 143u8, 3u8, 244u8, 245u8, 45u8, 2u8, 210u8, 79u8, + 133u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<(::core::primitive::u32, ::core::primitive::u32)>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "System", + "EventTopics", + vec![], + [ + 40u8, 225u8, 14u8, 75u8, 44u8, 176u8, 76u8, 34u8, 143u8, 107u8, 69u8, + 133u8, 114u8, 13u8, 172u8, 250u8, 141u8, 73u8, 12u8, 65u8, 217u8, 63u8, + 120u8, 241u8, 48u8, 106u8, 143u8, 161u8, 128u8, 100u8, 166u8, 59u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<(::core::primitive::u32, ::core::primitive::u32)>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "EventTopics", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 40u8, 225u8, 14u8, 75u8, 44u8, 176u8, 76u8, 34u8, 143u8, 107u8, 69u8, + 133u8, 114u8, 13u8, 172u8, 250u8, 141u8, 73u8, 12u8, 65u8, 217u8, 63u8, + 120u8, 241u8, 48u8, 106u8, 143u8, 161u8, 128u8, 100u8, 166u8, 59u8, + ], + ) + } + #[doc = " Stores the `spec_version` and `spec_name` of when the last runtime upgrade happened."] + pub fn last_runtime_upgrade( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::frame_system::LastRuntimeUpgradeInfo, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "LastRuntimeUpgrade", + vec![], + [ + 137u8, 29u8, 175u8, 75u8, 197u8, 208u8, 91u8, 207u8, 156u8, 87u8, + 148u8, 68u8, 91u8, 140u8, 22u8, 233u8, 1u8, 229u8, 56u8, 34u8, 40u8, + 194u8, 253u8, 30u8, 163u8, 39u8, 54u8, 209u8, 13u8, 27u8, 139u8, 184u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::bool, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "UpgradedToU32RefCount", + vec![], + [ + 229u8, 73u8, 9u8, 132u8, 186u8, 116u8, 151u8, 171u8, 145u8, 29u8, 34u8, + 130u8, 52u8, 146u8, 124u8, 175u8, 79u8, 189u8, 147u8, 230u8, 234u8, + 107u8, 124u8, 31u8, 2u8, 22u8, 86u8, 190u8, 4u8, 147u8, 50u8, 245u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::bool, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "UpgradedToTripleRefCount", + vec![], + [ + 97u8, 66u8, 124u8, 243u8, 27u8, 167u8, 147u8, 81u8, 254u8, 201u8, + 101u8, 24u8, 40u8, 231u8, 14u8, 179u8, 154u8, 163u8, 71u8, 81u8, 185u8, + 167u8, 82u8, 254u8, 189u8, 3u8, 101u8, 207u8, 206u8, 194u8, 155u8, + 151u8, + ], + ) + } + #[doc = " The execution phase of the block."] + pub fn execution_phase( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::frame_system::Phase, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "System", + "ExecutionPhase", + vec![], + [ + 191u8, 129u8, 100u8, 134u8, 126u8, 116u8, 154u8, 203u8, 220u8, 200u8, + 0u8, 26u8, 161u8, 250u8, 133u8, 205u8, 146u8, 24u8, 5u8, 156u8, 158u8, + 35u8, 36u8, 253u8, 52u8, 235u8, 86u8, 167u8, 35u8, 100u8, 119u8, 27u8, + ], + ) + } + } + } + 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::Address + { + ::subxt::constants::Address::new_static( + "System", + "BlockWeights", + [ + 176u8, 124u8, 225u8, 136u8, 25u8, 73u8, 247u8, 33u8, 82u8, 206u8, 85u8, + 190u8, 127u8, 102u8, 71u8, 11u8, 185u8, 8u8, 58u8, 0u8, 94u8, 55u8, + 163u8, 177u8, 104u8, 59u8, 60u8, 136u8, 246u8, 116u8, 0u8, 239u8, + ], + ) + } + #[doc = " The maximum length of a block (in bytes)."] + pub fn block_length( + &self, + ) -> ::subxt::constants::Address + { + ::subxt::constants::Address::new_static( + "System", + "BlockLength", + [ + 23u8, 242u8, 225u8, 39u8, 225u8, 67u8, 152u8, 41u8, 155u8, 104u8, 68u8, + 229u8, 185u8, 133u8, 10u8, 143u8, 184u8, 152u8, 234u8, 44u8, 140u8, + 96u8, 166u8, 235u8, 162u8, 160u8, 72u8, 7u8, 35u8, 194u8, 3u8, 37u8, + ], + ) + } + #[doc = " Maximum number of block number to block hash mappings to keep (oldest pruned first)."] + pub fn block_hash_count( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address + { + ::subxt::constants::Address::new_static( + "System", + "DbWeight", + [ + 42u8, 43u8, 178u8, 142u8, 243u8, 203u8, 60u8, 173u8, 118u8, 111u8, + 200u8, 170u8, 102u8, 70u8, 237u8, 187u8, 198u8, 120u8, 153u8, 232u8, + 183u8, 76u8, 74u8, 10u8, 70u8, 243u8, 14u8, 218u8, 213u8, 126u8, 29u8, + 177u8, + ], + ) + } + #[doc = " Get the chain's current version."] + pub fn version( + &self, + ) -> ::subxt::constants::Address + { + ::subxt::constants::Address::new_static( + "System", + "Version", + [ + 219u8, 45u8, 162u8, 245u8, 177u8, 246u8, 48u8, 126u8, 191u8, 157u8, + 228u8, 83u8, 111u8, 133u8, 183u8, 13u8, 148u8, 108u8, 92u8, 102u8, + 72u8, 205u8, 74u8, 242u8, 233u8, 79u8, 20u8, 170u8, 72u8, 202u8, 158u8, + 165u8, + ], + ) + } + #[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::Address<::core::primitive::u16> { + ::subxt::constants::Address::new_static( + "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 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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::H256, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "RandomnessCollectiveFlip", + "RandomMaterial", + vec![], + [ + 195u8, 232u8, 244u8, 162u8, 110u8, 137u8, 66u8, 57u8, 51u8, 221u8, + 143u8, 38u8, 51u8, 183u8, 105u8, 245u8, 175u8, 13u8, 33u8, 192u8, 53u8, + 16u8, 161u8, 76u8, 219u8, 177u8, 144u8, 192u8, 96u8, 166u8, 117u8, + 247u8, + ], + ) + } + } + } + } + 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 type Call = runtime_types::pallet_timestamp::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Set { + #[codec(compact)] + pub now: ::core::primitive::u64, + } + impl ::subxt::blocks::StaticExtrinsic for Set { + const PALLET: &'static str = "Timestamp"; + const CALL: &'static str = "set"; + } + } + 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 = "## Complexity"] + #[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)`."] + pub fn set(&self, now: ::core::primitive::u64) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Timestamp", + "set", + types::Set { now }, + [ + 37u8, 95u8, 49u8, 218u8, 24u8, 22u8, 0u8, 95u8, 72u8, 35u8, 155u8, + 199u8, 213u8, 54u8, 207u8, 22u8, 185u8, 193u8, 221u8, 70u8, 18u8, + 200u8, 4u8, 231u8, 195u8, 173u8, 6u8, 122u8, 11u8, 203u8, 231u8, 227u8, + ], + ) + } + } + } + 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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u64, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Timestamp", + "Now", + vec![], + [ + 44u8, 50u8, 80u8, 30u8, 195u8, 146u8, 123u8, 238u8, 8u8, 163u8, 187u8, + 92u8, 61u8, 39u8, 51u8, 29u8, 173u8, 169u8, 217u8, 158u8, 85u8, 187u8, + 141u8, 26u8, 12u8, 115u8, 51u8, 11u8, 200u8, 244u8, 138u8, 152u8, + ], + ) + } + #[doc = " Did the timestamp get updated in this block?"] + pub fn did_update( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::bool, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Timestamp", + "DidUpdate", + vec![], + [ + 229u8, 175u8, 246u8, 102u8, 237u8, 158u8, 212u8, 229u8, 238u8, 214u8, + 205u8, 160u8, 164u8, 252u8, 195u8, 75u8, 139u8, 110u8, 22u8, 34u8, + 248u8, 204u8, 107u8, 46u8, 20u8, 200u8, 238u8, 167u8, 71u8, 41u8, + 214u8, 140u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u64> { + ::subxt::constants::Address::new_static( + "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 babe { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_babe::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_babe::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + } + impl ::subxt::blocks::StaticExtrinsic for ReportEquivocation { + const PALLET: &'static str = "Babe"; + const CALL: &'static str = "report_equivocation"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + } + impl ::subxt::blocks::StaticExtrinsic for ReportEquivocationUnsigned { + const PALLET: &'static str = "Babe"; + const CALL: &'static str = "report_equivocation_unsigned"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PlanConfigChange { + pub config: runtime_types::sp_consensus_babe::digests::NextConfigDescriptor, + } + impl ::subxt::blocks::StaticExtrinsic for PlanConfigChange { + const PALLET: &'static str = "Babe"; + const CALL: &'static str = "plan_config_change"; + } + } + 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::Payload { + ::subxt::tx::Payload::new_static( + "Babe", + "report_equivocation", + types::ReportEquivocation { + equivocation_proof: ::std::boxed::Box::new(equivocation_proof), + key_owner_proof, + }, + [ + 37u8, 70u8, 151u8, 149u8, 231u8, 197u8, 226u8, 88u8, 38u8, 138u8, + 147u8, 164u8, 250u8, 117u8, 156u8, 178u8, 44u8, 20u8, 123u8, 33u8, + 11u8, 106u8, 56u8, 122u8, 90u8, 11u8, 15u8, 219u8, 245u8, 18u8, 171u8, + 90u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Babe", + "report_equivocation_unsigned", + types::ReportEquivocationUnsigned { + equivocation_proof: ::std::boxed::Box::new(equivocation_proof), + key_owner_proof, + }, + [ + 179u8, 248u8, 80u8, 171u8, 220u8, 8u8, 75u8, 215u8, 121u8, 151u8, + 255u8, 4u8, 6u8, 54u8, 141u8, 244u8, 111u8, 156u8, 183u8, 19u8, 192u8, + 195u8, 79u8, 53u8, 0u8, 170u8, 120u8, 227u8, 186u8, 45u8, 48u8, 57u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Babe", + "plan_config_change", + types::PlanConfigChange { config }, + [ + 227u8, 155u8, 182u8, 231u8, 240u8, 107u8, 30u8, 22u8, 15u8, 52u8, + 172u8, 203u8, 115u8, 47u8, 6u8, 66u8, 170u8, 231u8, 186u8, 77u8, 19u8, + 235u8, 91u8, 136u8, 95u8, 149u8, 188u8, 163u8, 161u8, 109u8, 164u8, + 179u8, + ], + ) + } + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Current epoch index."] + pub fn epoch_index( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u64, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "EpochIndex", + vec![], + [ + 32u8, 82u8, 130u8, 31u8, 190u8, 162u8, 237u8, 189u8, 104u8, 244u8, + 30u8, 199u8, 179u8, 0u8, 161u8, 107u8, 72u8, 240u8, 201u8, 222u8, + 177u8, 222u8, 35u8, 156u8, 81u8, 132u8, 162u8, 118u8, 238u8, 84u8, + 112u8, 89u8, + ], + ) + } + #[doc = " Current epoch authorities."] + pub fn authorities( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::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::Address::new_static( + "Babe", + "Authorities", + vec![], + [ + 67u8, 196u8, 244u8, 13u8, 246u8, 245u8, 198u8, 98u8, 81u8, 55u8, 182u8, + 187u8, 214u8, 5u8, 181u8, 76u8, 251u8, 213u8, 144u8, 166u8, 36u8, + 153u8, 234u8, 181u8, 252u8, 55u8, 198u8, 175u8, 55u8, 211u8, 105u8, + 85u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_consensus_slots::Slot, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "GenesisSlot", + vec![], + [ + 218u8, 174u8, 152u8, 76u8, 188u8, 214u8, 7u8, 88u8, 253u8, 187u8, + 139u8, 234u8, 51u8, 28u8, 220u8, 57u8, 73u8, 1u8, 18u8, 205u8, 80u8, + 160u8, 120u8, 216u8, 139u8, 191u8, 100u8, 108u8, 162u8, 106u8, 175u8, + 107u8, + ], + ) + } + #[doc = " Current slot number."] + pub fn current_slot( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_consensus_slots::Slot, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "CurrentSlot", + vec![], + [ + 112u8, 199u8, 115u8, 248u8, 217u8, 242u8, 45u8, 231u8, 178u8, 53u8, + 236u8, 167u8, 219u8, 238u8, 81u8, 243u8, 39u8, 140u8, 68u8, 19u8, + 201u8, 169u8, 211u8, 133u8, 135u8, 213u8, 150u8, 105u8, 60u8, 252u8, + 43u8, 57u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + [::core::primitive::u8; 32usize], + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "Randomness", + vec![], + [ + 36u8, 15u8, 52u8, 73u8, 195u8, 177u8, 186u8, 125u8, 134u8, 11u8, 103u8, + 248u8, 170u8, 237u8, 105u8, 239u8, 168u8, 204u8, 147u8, 52u8, 15u8, + 226u8, 126u8, 176u8, 133u8, 186u8, 169u8, 241u8, 156u8, 118u8, 67u8, + 58u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_consensus_babe::digests::NextConfigDescriptor, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "PendingEpochConfigChange", + vec![], + [ + 79u8, 216u8, 84u8, 210u8, 83u8, 149u8, 122u8, 160u8, 159u8, 164u8, + 16u8, 134u8, 154u8, 104u8, 77u8, 254u8, 139u8, 18u8, 163u8, 59u8, 92u8, + 9u8, 135u8, 141u8, 147u8, 86u8, 44u8, 95u8, 183u8, 101u8, 11u8, 58u8, + ], + ) + } + #[doc = " Next epoch randomness."] + pub fn next_randomness( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + [::core::primitive::u8; 32usize], + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "NextRandomness", + vec![], + [ + 96u8, 191u8, 139u8, 171u8, 144u8, 92u8, 33u8, 58u8, 23u8, 219u8, 164u8, + 121u8, 59u8, 209u8, 112u8, 244u8, 50u8, 8u8, 14u8, 244u8, 103u8, 125u8, + 120u8, 210u8, 16u8, 250u8, 54u8, 192u8, 72u8, 8u8, 219u8, 152u8, + ], + ) + } + #[doc = " Next epoch authorities."] + pub fn next_authorities( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::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::Address::new_static( + "Babe", + "NextAuthorities", + vec![], + [ + 116u8, 95u8, 126u8, 199u8, 237u8, 90u8, 202u8, 227u8, 247u8, 56u8, + 201u8, 113u8, 239u8, 191u8, 151u8, 56u8, 156u8, 133u8, 61u8, 64u8, + 141u8, 26u8, 8u8, 95u8, 177u8, 255u8, 54u8, 223u8, 132u8, 74u8, 210u8, + 128u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "SegmentIndex", + vec![], + [ + 145u8, 91u8, 142u8, 240u8, 184u8, 94u8, 68u8, 52u8, 130u8, 3u8, 75u8, + 175u8, 155u8, 130u8, 66u8, 9u8, 150u8, 242u8, 123u8, 111u8, 124u8, + 241u8, 100u8, 128u8, 220u8, 133u8, 96u8, 227u8, 164u8, 241u8, 170u8, + 34u8, + ], + ) + } + #[doc = " TWOX-NOTE: `SegmentIndex` is an increasing integer, so this is okay."] + pub fn under_construction_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + [::core::primitive::u8; 32usize], + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "UnderConstruction", + vec![], + [ + 120u8, 120u8, 59u8, 247u8, 50u8, 6u8, 220u8, 14u8, 2u8, 76u8, 203u8, + 244u8, 232u8, 144u8, 253u8, 191u8, 101u8, 35u8, 99u8, 85u8, 111u8, + 168u8, 31u8, 110u8, 187u8, 124u8, 72u8, 32u8, 43u8, 66u8, 8u8, 215u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + [::core::primitive::u8; 32usize], + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "UnderConstruction", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 120u8, 120u8, 59u8, 247u8, 50u8, 6u8, 220u8, 14u8, 2u8, 76u8, 203u8, + 244u8, 232u8, 144u8, 253u8, 191u8, 101u8, 35u8, 99u8, 85u8, 111u8, + 168u8, 31u8, 110u8, 187u8, 124u8, 72u8, 32u8, 43u8, 66u8, 8u8, 215u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::option::Option, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "Initialized", + vec![], + [ + 137u8, 31u8, 4u8, 130u8, 35u8, 232u8, 67u8, 108u8, 17u8, 123u8, 26u8, + 96u8, 238u8, 95u8, 138u8, 208u8, 163u8, 83u8, 218u8, 143u8, 8u8, 119u8, + 138u8, 130u8, 9u8, 194u8, 92u8, 40u8, 7u8, 89u8, 53u8, 237u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::option::Option<[::core::primitive::u8; 32usize]>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "AuthorVrfRandomness", + vec![], + [ + 160u8, 157u8, 62u8, 48u8, 196u8, 136u8, 63u8, 132u8, 155u8, 183u8, + 91u8, 201u8, 146u8, 29u8, 192u8, 142u8, 168u8, 152u8, 197u8, 233u8, + 5u8, 25u8, 0u8, 154u8, 234u8, 180u8, 146u8, 132u8, 106u8, 164u8, 149u8, + 63u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + (::core::primitive::u32, ::core::primitive::u32), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "EpochStart", + vec![], + [ + 144u8, 133u8, 140u8, 56u8, 241u8, 203u8, 199u8, 123u8, 244u8, 126u8, + 196u8, 151u8, 214u8, 204u8, 243u8, 244u8, 210u8, 198u8, 174u8, 126u8, + 200u8, 236u8, 248u8, 190u8, 181u8, 152u8, 113u8, 224u8, 95u8, 234u8, + 169u8, 14u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "Lateness", + vec![], + [ + 229u8, 214u8, 133u8, 149u8, 32u8, 159u8, 26u8, 22u8, 252u8, 131u8, + 200u8, 191u8, 231u8, 176u8, 178u8, 127u8, 33u8, 212u8, 139u8, 220u8, + 157u8, 38u8, 4u8, 226u8, 204u8, 32u8, 55u8, 20u8, 205u8, 141u8, 29u8, + 87u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_consensus_babe::BabeEpochConfiguration, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "EpochConfig", + vec![], + [ + 151u8, 58u8, 93u8, 2u8, 19u8, 98u8, 41u8, 144u8, 241u8, 70u8, 195u8, + 37u8, 126u8, 241u8, 111u8, 65u8, 16u8, 228u8, 111u8, 220u8, 241u8, + 215u8, 179u8, 235u8, 122u8, 88u8, 92u8, 95u8, 131u8, 252u8, 236u8, + 46u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_consensus_babe::BabeEpochConfiguration, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "NextEpochConfig", + vec![], + [ + 65u8, 54u8, 74u8, 141u8, 193u8, 124u8, 130u8, 238u8, 106u8, 27u8, + 221u8, 189u8, 103u8, 53u8, 39u8, 243u8, 212u8, 216u8, 75u8, 185u8, + 104u8, 220u8, 70u8, 108u8, 87u8, 172u8, 201u8, 185u8, 39u8, 55u8, + 145u8, 6u8, + ], + ) + } + #[doc = " A list of the last 100 skipped epochs and the corresponding session index"] + #[doc = " when the epoch was skipped."] + #[doc = ""] + #[doc = " This is only used for validating equivocation proofs. An equivocation proof"] + #[doc = " must contains a key-ownership proof for a given session, therefore we need a"] + #[doc = " way to tie together sessions and epoch indices, i.e. we need to validate that"] + #[doc = " a validator was the owner of a given key on a given session, and what the"] + #[doc = " active epoch index was during that session."] + pub fn skipped_epochs( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec<( + ::core::primitive::u64, + ::core::primitive::u32, + )>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Babe", + "SkippedEpochs", + vec![], + [ + 120u8, 167u8, 144u8, 97u8, 41u8, 216u8, 103u8, 90u8, 3u8, 86u8, 196u8, + 35u8, 160u8, 150u8, 144u8, 233u8, 128u8, 35u8, 119u8, 66u8, 6u8, 63u8, + 114u8, 140u8, 182u8, 228u8, 192u8, 30u8, 50u8, 145u8, 217u8, 108u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u64> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u64> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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 historical { + use super::root_mod; + use super::runtime_types; + } + 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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::AccountId32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Authorship", + "Author", + vec![], + [ + 247u8, 192u8, 118u8, 227u8, 47u8, 20u8, 203u8, 199u8, 216u8, 87u8, + 220u8, 50u8, 166u8, 61u8, 168u8, 213u8, 253u8, 62u8, 202u8, 199u8, + 61u8, 192u8, 237u8, 53u8, 22u8, 148u8, 164u8, 245u8, 99u8, 24u8, 146u8, + 18u8, + ], + ) + } + } + } + } + pub mod balances { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_balances::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_balances::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct TransferAllowDeath { + pub dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub value: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for TransferAllowDeath { + const PALLET: &'static str = "Balances"; + const CALL: &'static str = "transfer_allow_death"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetBalanceDeprecated { + pub who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub new_free: ::core::primitive::u128, + #[codec(compact)] + pub old_reserved: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for SetBalanceDeprecated { + const PALLET: &'static str = "Balances"; + const CALL: &'static str = "set_balance_deprecated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceTransfer { + pub source: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub value: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for ForceTransfer { + const PALLET: &'static str = "Balances"; + const CALL: &'static str = "force_transfer"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct TransferKeepAlive { + pub dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub value: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for TransferKeepAlive { + const PALLET: &'static str = "Balances"; + const CALL: &'static str = "transfer_keep_alive"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct TransferAll { + pub dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub keep_alive: ::core::primitive::bool, + } + impl ::subxt::blocks::StaticExtrinsic for TransferAll { + const PALLET: &'static str = "Balances"; + const CALL: &'static str = "transfer_all"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceUnreserve { + pub who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub amount: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for ForceUnreserve { + const PALLET: &'static str = "Balances"; + const CALL: &'static str = "force_unreserve"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UpgradeAccounts { + pub who: ::std::vec::Vec<::subxt::utils::AccountId32>, + } + impl ::subxt::blocks::StaticExtrinsic for UpgradeAccounts { + const PALLET: &'static str = "Balances"; + const CALL: &'static str = "upgrade_accounts"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Transfer { + pub dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub value: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for Transfer { + const PALLET: &'static str = "Balances"; + const CALL: &'static str = "transfer"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetBalance { + pub who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub new_free: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSetBalance { + const PALLET: &'static str = "Balances"; + const CALL: &'static str = "force_set_balance"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Transfer some liquid free balance to another account."] + #[doc = ""] + #[doc = "`transfer_allow_death` 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."] + pub fn transfer_allow_death( + &self, + dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + value: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Balances", + "transfer_allow_death", + types::TransferAllowDeath { dest, value }, + [ + 51u8, 166u8, 195u8, 10u8, 139u8, 218u8, 55u8, 130u8, 6u8, 194u8, 35u8, + 140u8, 27u8, 205u8, 214u8, 222u8, 102u8, 43u8, 143u8, 145u8, 86u8, + 219u8, 210u8, 147u8, 13u8, 39u8, 51u8, 21u8, 237u8, 179u8, 132u8, + 130u8, + ], + ) + } + #[doc = "Set the regular balance of a given account; it also takes a reserved balance but this"] + #[doc = "must be the same as the account's current reserved balance."] + #[doc = ""] + #[doc = "The dispatch origin for this call is `root`."] + #[doc = ""] + #[doc = "WARNING: This call is DEPRECATED! Use `force_set_balance` instead."] + pub fn set_balance_deprecated( + &self, + who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + new_free: ::core::primitive::u128, + old_reserved: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Balances", + "set_balance_deprecated", + types::SetBalanceDeprecated { + who, + new_free, + old_reserved, + }, + [ + 125u8, 171u8, 21u8, 186u8, 108u8, 185u8, 241u8, 145u8, 125u8, 8u8, + 12u8, 42u8, 96u8, 114u8, 80u8, 80u8, 227u8, 76u8, 20u8, 208u8, 93u8, + 219u8, 36u8, 50u8, 209u8, 155u8, 70u8, 45u8, 6u8, 57u8, 156u8, 77u8, + ], + ) + } + #[doc = "Exactly as `transfer_allow_death`, except the origin must be root and the source account"] + #[doc = "may be specified."] + pub fn force_transfer( + &self, + source: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + value: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Balances", + "force_transfer", + types::ForceTransfer { + source, + dest, + value, + }, + [ + 154u8, 93u8, 222u8, 27u8, 12u8, 248u8, 63u8, 213u8, 224u8, 86u8, 250u8, + 153u8, 249u8, 102u8, 83u8, 160u8, 79u8, 125u8, 105u8, 222u8, 77u8, + 180u8, 90u8, 105u8, 81u8, 217u8, 60u8, 25u8, 213u8, 51u8, 185u8, 96u8, + ], + ) + } + #[doc = "Same as the [`transfer_allow_death`] call, but with a check that the transfer will not"] + #[doc = "kill the origin account."] + #[doc = ""] + #[doc = "99% of the time you want [`transfer_allow_death`] instead."] + #[doc = ""] + #[doc = "[`transfer_allow_death`]: struct.Pallet.html#method.transfer"] + pub fn transfer_keep_alive( + &self, + dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + value: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Balances", + "transfer_keep_alive", + types::TransferKeepAlive { dest, value }, + [ + 245u8, 14u8, 190u8, 193u8, 32u8, 210u8, 74u8, 92u8, 25u8, 182u8, 76u8, + 55u8, 247u8, 83u8, 114u8, 75u8, 143u8, 236u8, 117u8, 25u8, 54u8, 157u8, + 208u8, 207u8, 233u8, 89u8, 70u8, 161u8, 235u8, 242u8, 222u8, 59u8, + ], + ) + } + #[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)."] + pub fn transfer_all( + &self, + dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + keep_alive: ::core::primitive::bool, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Balances", + "transfer_all", + types::TransferAll { dest, keep_alive }, + [ + 105u8, 132u8, 49u8, 144u8, 195u8, 250u8, 34u8, 46u8, 213u8, 248u8, + 112u8, 188u8, 81u8, 228u8, 136u8, 18u8, 67u8, 172u8, 37u8, 38u8, 238u8, + 9u8, 34u8, 15u8, 67u8, 34u8, 148u8, 195u8, 223u8, 29u8, 154u8, 6u8, + ], + ) + } + #[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, ()>, + amount: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Balances", + "force_unreserve", + types::ForceUnreserve { who, amount }, + [ + 142u8, 151u8, 64u8, 205u8, 46u8, 64u8, 62u8, 122u8, 108u8, 49u8, 223u8, + 140u8, 120u8, 153u8, 35u8, 165u8, 187u8, 38u8, 157u8, 200u8, 123u8, + 199u8, 198u8, 168u8, 208u8, 159u8, 39u8, 134u8, 92u8, 103u8, 84u8, + 171u8, + ], + ) + } + #[doc = "Upgrade a specified account."] + #[doc = ""] + #[doc = "- `origin`: Must be `Signed`."] + #[doc = "- `who`: The account to be upgraded."] + #[doc = ""] + #[doc = "This will waive the transaction fee if at least all but 10% of the accounts needed to"] + #[doc = "be upgraded. (We let some not have to be upgraded just in order to allow for the"] + #[doc = "possibililty of churn)."] + pub fn upgrade_accounts( + &self, + who: ::std::vec::Vec<::subxt::utils::AccountId32>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Balances", + "upgrade_accounts", + types::UpgradeAccounts { who }, + [ + 66u8, 200u8, 179u8, 104u8, 65u8, 2u8, 101u8, 56u8, 130u8, 161u8, 224u8, + 233u8, 255u8, 124u8, 70u8, 122u8, 8u8, 49u8, 103u8, 178u8, 68u8, 47u8, + 214u8, 166u8, 217u8, 116u8, 178u8, 50u8, 212u8, 164u8, 98u8, 226u8, + ], + ) + } + #[doc = "Alias for `transfer_allow_death`, provided only for name-wise compatibility."] + #[doc = ""] + #[doc = "WARNING: DEPRECATED! Will be released in approximately 3 months."] + pub fn transfer( + &self, + dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + value: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Balances", + "transfer", + types::Transfer { dest, value }, + [ + 154u8, 145u8, 140u8, 54u8, 50u8, 123u8, 225u8, 249u8, 200u8, 217u8, + 172u8, 110u8, 233u8, 198u8, 77u8, 198u8, 211u8, 89u8, 8u8, 13u8, 240u8, + 94u8, 28u8, 13u8, 242u8, 217u8, 168u8, 23u8, 106u8, 254u8, 249u8, + 120u8, + ], + ) + } + #[doc = "Set the regular balance of a given account."] + #[doc = ""] + #[doc = "The dispatch origin for this call is `root`."] + pub fn force_set_balance( + &self, + who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + new_free: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Balances", + "force_set_balance", + types::ForceSetBalance { who, new_free }, + [ + 114u8, 229u8, 59u8, 204u8, 180u8, 83u8, 17u8, 4u8, 59u8, 4u8, 55u8, + 39u8, 151u8, 196u8, 124u8, 60u8, 209u8, 65u8, 193u8, 11u8, 44u8, 164u8, + 116u8, 93u8, 169u8, 30u8, 199u8, 165u8, 55u8, 231u8, 223u8, 43u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A balance was set by root."] + pub struct BalanceSet { + pub who: ::subxt::utils::AccountId32, + pub free: ::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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Some amount was minted into an account."] + pub struct Minted { + pub who: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Minted { + const PALLET: &'static str = "Balances"; + const EVENT: &'static str = "Minted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Some amount was burned from an account."] + pub struct Burned { + pub who: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Burned { + const PALLET: &'static str = "Balances"; + const EVENT: &'static str = "Burned"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Some amount was suspended from an account (it can be restored later)."] + pub struct Suspended { + pub who: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Suspended { + const PALLET: &'static str = "Balances"; + const EVENT: &'static str = "Suspended"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Some amount was restored into an account."] + pub struct Restored { + pub who: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Restored { + const PALLET: &'static str = "Balances"; + const EVENT: &'static str = "Restored"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An account was upgraded."] + pub struct Upgraded { + pub who: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for Upgraded { + const PALLET: &'static str = "Balances"; + const EVENT: &'static str = "Upgraded"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Total issuance was increased by `amount`, creating a credit to be balanced."] + pub struct Issued { + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Issued { + const PALLET: &'static str = "Balances"; + const EVENT: &'static str = "Issued"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Total issuance was decreased by `amount`, creating a debt to be balanced."] + pub struct Rescinded { + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Rescinded { + const PALLET: &'static str = "Balances"; + const EVENT: &'static str = "Rescinded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Some balance was locked."] + pub struct Locked { + pub who: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Locked { + const PALLET: &'static str = "Balances"; + const EVENT: &'static str = "Locked"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Some balance was unlocked."] + pub struct Unlocked { + pub who: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Unlocked { + const PALLET: &'static str = "Balances"; + const EVENT: &'static str = "Unlocked"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Some balance was frozen."] + pub struct Frozen { + pub who: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Frozen { + const PALLET: &'static str = "Balances"; + const EVENT: &'static str = "Frozen"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Some balance was thawed."] + pub struct Thawed { + pub who: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Thawed { + const PALLET: &'static str = "Balances"; + const EVENT: &'static str = "Thawed"; + } + } + 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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "TotalIssuance", + vec![], + [ + 116u8, 70u8, 119u8, 194u8, 69u8, 37u8, 116u8, 206u8, 171u8, 70u8, + 171u8, 210u8, 226u8, 111u8, 184u8, 204u8, 206u8, 11u8, 68u8, 72u8, + 255u8, 19u8, 194u8, 11u8, 27u8, 194u8, 81u8, 204u8, 59u8, 224u8, 202u8, + 185u8, + ], + ) + } + #[doc = " The total units of outstanding deactivated balance in the system."] + pub fn inactive_issuance( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "InactiveIssuance", + vec![], + [ + 212u8, 185u8, 19u8, 50u8, 250u8, 72u8, 173u8, 50u8, 4u8, 104u8, 161u8, + 249u8, 77u8, 247u8, 204u8, 248u8, 11u8, 18u8, 57u8, 4u8, 82u8, 110u8, + 30u8, 216u8, 16u8, 37u8, 87u8, 67u8, 189u8, 235u8, 214u8, 155u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_balances::types::AccountData<::core::primitive::u128>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "Account", + vec![], + [ + 213u8, 38u8, 200u8, 69u8, 218u8, 0u8, 112u8, 181u8, 160u8, 23u8, 96u8, + 90u8, 3u8, 88u8, 126u8, 22u8, 103u8, 74u8, 64u8, 69u8, 29u8, 247u8, + 18u8, 17u8, 234u8, 143u8, 189u8, 22u8, 247u8, 194u8, 154u8, 249u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_balances::types::AccountData<::core::primitive::u128>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "Account", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 213u8, 38u8, 200u8, 69u8, 218u8, 0u8, 112u8, 181u8, 160u8, 23u8, 96u8, + 90u8, 3u8, 88u8, 126u8, 22u8, 103u8, 74u8, 64u8, 69u8, 29u8, 247u8, + 18u8, 17u8, 234u8, 143u8, 189u8, 22u8, 247u8, 194u8, 154u8, 249u8, + ], + ) + } + #[doc = " Any liquidity locks on some account balances."] + #[doc = " NOTE: Should only be accessed when setting, changing and freeing a lock."] + pub fn locks_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::weak_bounded_vec::WeakBoundedVec< + runtime_types::pallet_balances::types::BalanceLock<::core::primitive::u128>, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "Locks", + vec![], + [ + 10u8, 223u8, 55u8, 0u8, 249u8, 69u8, 168u8, 41u8, 75u8, 35u8, 120u8, + 167u8, 18u8, 132u8, 9u8, 20u8, 91u8, 51u8, 27u8, 69u8, 136u8, 187u8, + 13u8, 220u8, 163u8, 122u8, 26u8, 141u8, 174u8, 249u8, 85u8, 37u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::weak_bounded_vec::WeakBoundedVec< + runtime_types::pallet_balances::types::BalanceLock<::core::primitive::u128>, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "Locks", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 10u8, 223u8, 55u8, 0u8, 249u8, 69u8, 168u8, 41u8, 75u8, 35u8, 120u8, + 167u8, 18u8, 132u8, 9u8, 20u8, 91u8, 51u8, 27u8, 69u8, 136u8, 187u8, + 13u8, 220u8, 163u8, 122u8, 26u8, 141u8, 174u8, 249u8, 85u8, 37u8, + ], + ) + } + #[doc = " Named reserves on some account balances."] + pub fn reserves_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_balances::types::ReserveData< + [::core::primitive::u8; 8usize], + ::core::primitive::u128, + >, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "Reserves", + vec![], + [ + 112u8, 10u8, 241u8, 77u8, 64u8, 187u8, 106u8, 159u8, 13u8, 153u8, + 140u8, 178u8, 182u8, 50u8, 1u8, 55u8, 149u8, 92u8, 196u8, 229u8, 170u8, + 106u8, 193u8, 88u8, 255u8, 244u8, 2u8, 193u8, 62u8, 235u8, 204u8, 91u8, + ], + ) + } + #[doc = " Named reserves on some account balances."] + pub fn reserves( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_balances::types::ReserveData< + [::core::primitive::u8; 8usize], + ::core::primitive::u128, + >, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "Reserves", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 112u8, 10u8, 241u8, 77u8, 64u8, 187u8, 106u8, 159u8, 13u8, 153u8, + 140u8, 178u8, 182u8, 50u8, 1u8, 55u8, 149u8, 92u8, 196u8, 229u8, 170u8, + 106u8, 193u8, 88u8, 255u8, 244u8, 2u8, 193u8, 62u8, 235u8, 204u8, 91u8, + ], + ) + } + #[doc = " Holds on account balances."] + pub fn holds_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_balances::types::IdAmount< + (), + ::core::primitive::u128, + >, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "Holds", + vec![], + [ + 53u8, 126u8, 215u8, 237u8, 42u8, 223u8, 188u8, 150u8, 230u8, 107u8, + 95u8, 24u8, 26u8, 235u8, 158u8, 149u8, 193u8, 191u8, 10u8, 194u8, + 231u8, 59u8, 35u8, 167u8, 186u8, 89u8, 43u8, 126u8, 215u8, 117u8, 1u8, + 202u8, + ], + ) + } + #[doc = " Holds on account balances."] + pub fn holds( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_balances::types::IdAmount< + (), + ::core::primitive::u128, + >, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "Holds", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 53u8, 126u8, 215u8, 237u8, 42u8, 223u8, 188u8, 150u8, 230u8, 107u8, + 95u8, 24u8, 26u8, 235u8, 158u8, 149u8, 193u8, 191u8, 10u8, 194u8, + 231u8, 59u8, 35u8, 167u8, 186u8, 89u8, 43u8, 126u8, 215u8, 117u8, 1u8, + 202u8, + ], + ) + } + #[doc = " Freeze locks on account balances."] + pub fn freezes_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_balances::types::IdAmount< + (), + ::core::primitive::u128, + >, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "Freezes", + vec![], + [ + 69u8, 49u8, 165u8, 76u8, 135u8, 142u8, 179u8, 118u8, 50u8, 109u8, 53u8, + 112u8, 110u8, 94u8, 30u8, 93u8, 173u8, 38u8, 27u8, 142u8, 19u8, 5u8, + 163u8, 4u8, 68u8, 218u8, 179u8, 224u8, 118u8, 218u8, 115u8, 64u8, + ], + ) + } + #[doc = " Freeze locks on account balances."] + pub fn freezes( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_balances::types::IdAmount< + (), + ::core::primitive::u128, + >, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Balances", + "Freezes", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 69u8, 49u8, 165u8, 76u8, 135u8, 142u8, 179u8, 118u8, 50u8, 109u8, 53u8, + 112u8, 110u8, 94u8, 30u8, 93u8, 173u8, 38u8, 27u8, 142u8, 19u8, 5u8, + 163u8, 4u8, 68u8, 218u8, 179u8, 224u8, 118u8, 218u8, 115u8, 64u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " The minimum amount required to keep an account open. MUST BE GREATER THAN ZERO!"] + #[doc = ""] + #[doc = " If you *really* need it to be zero, you can enable the feature `insecure_zero_ed` for"] + #[doc = " this pallet. However, you do so at your own risk: this will open up a major DoS vector."] + #[doc = " In case you have multiple sources of provider references, you may also get unexpected"] + #[doc = " behaviour if you set this to zero."] + #[doc = ""] + #[doc = " Bottom line: Do yourself a favour and make it at least one!"] + pub fn existential_deposit( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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, + ], + ) + } + #[doc = " The maximum number of holds that can exist on an account at any time."] + pub fn max_holds(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Balances", + "MaxHolds", + [ + 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 individual freeze locks that can exist on an account at any time."] + pub fn max_freezes(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Balances", + "MaxFreezes", + [ + 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 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + 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::Address::new_static( + "Offences", + "Reports", + vec![], + [ + 140u8, 14u8, 199u8, 180u8, 83u8, 5u8, 23u8, 57u8, 241u8, 41u8, 240u8, + 35u8, 80u8, 12u8, 115u8, 16u8, 2u8, 15u8, 22u8, 77u8, 25u8, 92u8, + 100u8, 39u8, 226u8, 55u8, 240u8, 80u8, 190u8, 196u8, 234u8, 177u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + 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::Address::new_static( + "Offences", + "Reports", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 140u8, 14u8, 199u8, 180u8, 83u8, 5u8, 23u8, 57u8, 241u8, 41u8, 240u8, + 35u8, 80u8, 12u8, 115u8, 16u8, 2u8, 15u8, 22u8, 77u8, 25u8, 92u8, + 100u8, 39u8, 226u8, 55u8, 240u8, 80u8, 190u8, 196u8, 234u8, 177u8, + ], + ) + } + #[doc = " A vector of reports of the same kind that happened at the same time slot."] + pub fn concurrent_reports_index_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::subxt::utils::H256>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Offences", + "ConcurrentReportsIndex", + vec![], + [ + 170u8, 186u8, 72u8, 29u8, 251u8, 38u8, 193u8, 195u8, 109u8, 86u8, 0u8, + 241u8, 20u8, 235u8, 108u8, 126u8, 215u8, 82u8, 73u8, 113u8, 199u8, + 138u8, 24u8, 58u8, 216u8, 72u8, 221u8, 232u8, 252u8, 244u8, 96u8, + 247u8, + ], + ) + } + #[doc = " A vector of reports of the same kind that happened at the same time slot."] + pub fn concurrent_reports_index_iter1( + &self, + _0: impl ::std::borrow::Borrow<[::core::primitive::u8; 16usize]>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::subxt::utils::H256>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Offences", + "ConcurrentReportsIndex", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 170u8, 186u8, 72u8, 29u8, 251u8, 38u8, 193u8, 195u8, 109u8, 86u8, 0u8, + 241u8, 20u8, 235u8, 108u8, 126u8, 215u8, 82u8, 73u8, 113u8, 199u8, + 138u8, 24u8, 58u8, 216u8, 72u8, 221u8, 232u8, 252u8, 244u8, 96u8, + 247u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::subxt::utils::H256>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Offences", + "ConcurrentReportsIndex", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 170u8, 186u8, 72u8, 29u8, 251u8, 38u8, 193u8, 195u8, 109u8, 86u8, 0u8, + 241u8, 20u8, 235u8, 108u8, 126u8, 215u8, 82u8, 73u8, 113u8, 199u8, + 138u8, 24u8, 58u8, 216u8, 72u8, 221u8, 232u8, 252u8, 244u8, 96u8, + 247u8, + ], + ) + } + } + } + } + pub mod election_provider_multi_phase { + use super::root_mod; + use super::runtime_types; + #[doc = "Error of the pallet that can be returned in response to dispatches."] + pub type Error = runtime_types::pallet_election_provider_multi_phase::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_election_provider_multi_phase::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SubmitUnsigned { + pub raw_solution: ::std::boxed::Box< + runtime_types::pallet_election_provider_multi_phase::RawSolution< + runtime_types::enjin_runtime::NposSolution16, + >, + >, + pub witness: + runtime_types::pallet_election_provider_multi_phase::SolutionOrSnapshotSize, + } + impl ::subxt::blocks::StaticExtrinsic for SubmitUnsigned { + const PALLET: &'static str = "ElectionProviderMultiPhase"; + const CALL: &'static str = "submit_unsigned"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMinimumUntrustedScore { + pub maybe_next_score: + ::core::option::Option, + } + impl ::subxt::blocks::StaticExtrinsic for SetMinimumUntrustedScore { + const PALLET: &'static str = "ElectionProviderMultiPhase"; + const CALL: &'static str = "set_minimum_untrusted_score"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetEmergencyElectionResult { + pub supports: ::std::vec::Vec<( + ::subxt::utils::AccountId32, + runtime_types::sp_npos_elections::Support<::subxt::utils::AccountId32>, + )>, + } + impl ::subxt::blocks::StaticExtrinsic for SetEmergencyElectionResult { + const PALLET: &'static str = "ElectionProviderMultiPhase"; + const CALL: &'static str = "set_emergency_election_result"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Submit { + pub raw_solution: ::std::boxed::Box< + runtime_types::pallet_election_provider_multi_phase::RawSolution< + runtime_types::enjin_runtime::NposSolution16, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Submit { + const PALLET: &'static str = "ElectionProviderMultiPhase"; + const CALL: &'static str = "submit"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct GovernanceFallback { + pub maybe_max_voters: ::core::option::Option<::core::primitive::u32>, + pub maybe_max_targets: ::core::option::Option<::core::primitive::u32>, + } + impl ::subxt::blocks::StaticExtrinsic for GovernanceFallback { + const PALLET: &'static str = "ElectionProviderMultiPhase"; + const CALL: &'static str = "governance_fallback"; + } + } + 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::enjin_runtime::NposSolution16, + >, + witness : runtime_types :: pallet_election_provider_multi_phase :: SolutionOrSnapshotSize, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ElectionProviderMultiPhase", + "submit_unsigned", + types::SubmitUnsigned { + raw_solution: ::std::boxed::Box::new(raw_solution), + witness, + }, + [ + 237u8, 199u8, 102u8, 43u8, 103u8, 215u8, 145u8, 93u8, 71u8, 191u8, + 61u8, 144u8, 21u8, 58u8, 30u8, 51u8, 190u8, 219u8, 45u8, 66u8, 216u8, + 19u8, 62u8, 123u8, 197u8, 53u8, 249u8, 205u8, 117u8, 35u8, 32u8, 13u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "ElectionProviderMultiPhase", + "set_minimum_untrusted_score", + types::SetMinimumUntrustedScore { maybe_next_score }, + [ + 244u8, 246u8, 85u8, 56u8, 156u8, 145u8, 169u8, 106u8, 16u8, 206u8, + 102u8, 216u8, 150u8, 180u8, 87u8, 153u8, 75u8, 177u8, 185u8, 55u8, + 37u8, 252u8, 214u8, 127u8, 103u8, 169u8, 198u8, 55u8, 10u8, 179u8, + 121u8, 219u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "ElectionProviderMultiPhase", + "set_emergency_election_result", + types::SetEmergencyElectionResult { supports }, + [ + 6u8, 170u8, 228u8, 255u8, 61u8, 131u8, 137u8, 36u8, 135u8, 91u8, 183u8, + 94u8, 172u8, 205u8, 113u8, 69u8, 191u8, 255u8, 223u8, 152u8, 255u8, + 160u8, 205u8, 51u8, 140u8, 183u8, 101u8, 38u8, 185u8, 100u8, 92u8, + 87u8, + ], + ) + } + #[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::enjin_runtime::NposSolution16, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ElectionProviderMultiPhase", + "submit", + types::Submit { + raw_solution: ::std::boxed::Box::new(raw_solution), + }, + [ + 55u8, 254u8, 53u8, 183u8, 136u8, 93u8, 56u8, 39u8, 98u8, 132u8, 8u8, + 38u8, 92u8, 38u8, 199u8, 43u8, 20u8, 86u8, 114u8, 240u8, 31u8, 72u8, + 141u8, 39u8, 73u8, 116u8, 250u8, 249u8, 119u8, 36u8, 244u8, 137u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "ElectionProviderMultiPhase", + "governance_fallback", + types::GovernanceFallback { + maybe_max_voters, + maybe_max_targets, + }, + [ + 10u8, 56u8, 159u8, 48u8, 56u8, 246u8, 49u8, 9u8, 132u8, 156u8, 86u8, + 162u8, 52u8, 58u8, 175u8, 128u8, 12u8, 185u8, 203u8, 18u8, 99u8, 219u8, + 75u8, 13u8, 52u8, 40u8, 125u8, 212u8, 84u8, 147u8, 222u8, 17u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ElectionProviderMultiPhase", + "Round", + vec![], + [ + 37u8, 2u8, 47u8, 240u8, 18u8, 213u8, 214u8, 74u8, 57u8, 4u8, 103u8, + 253u8, 45u8, 17u8, 123u8, 203u8, 173u8, 170u8, 234u8, 109u8, 139u8, + 143u8, 216u8, 3u8, 161u8, 5u8, 0u8, 106u8, 181u8, 214u8, 170u8, 105u8, + ], + ) + } + #[doc = " Current phase."] + pub fn current_phase( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_election_provider_multi_phase::Phase< + ::core::primitive::u32, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ElectionProviderMultiPhase", + "CurrentPhase", + vec![], + [ + 230u8, 7u8, 51u8, 158u8, 77u8, 36u8, 148u8, 175u8, 138u8, 205u8, 195u8, + 236u8, 66u8, 148u8, 0u8, 77u8, 160u8, 249u8, 128u8, 58u8, 189u8, 48u8, + 195u8, 198u8, 115u8, 251u8, 13u8, 206u8, 163u8, 180u8, 108u8, 10u8, + ], + ) + } + #[doc = " Current best solution, signed or unsigned, queued to be returned upon `elect`."] + #[doc = ""] + #[doc = " Always sorted by score."] + pub fn queued_solution( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_election_provider_multi_phase::ReadySolution, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ElectionProviderMultiPhase", + "QueuedSolution", + vec![], + [ + 70u8, 22u8, 249u8, 41u8, 72u8, 8u8, 99u8, 121u8, 102u8, 128u8, 244u8, + 104u8, 208u8, 244u8, 113u8, 122u8, 118u8, 17u8, 65u8, 78u8, 165u8, + 129u8, 117u8, 36u8, 244u8, 243u8, 153u8, 87u8, 46u8, 116u8, 103u8, + 43u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_election_provider_multi_phase::RoundSnapshot< + ::subxt::utils::AccountId32, + ( + ::subxt::utils::AccountId32, + ::core::primitive::u64, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::AccountId32, + >, + ), + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ElectionProviderMultiPhase", + "Snapshot", + vec![], + [ + 103u8, 204u8, 76u8, 156u8, 154u8, 95u8, 115u8, 109u8, 135u8, 17u8, 9u8, + 137u8, 3u8, 184u8, 111u8, 198u8, 216u8, 3u8, 78u8, 115u8, 101u8, 235u8, + 52u8, 235u8, 245u8, 58u8, 191u8, 144u8, 61u8, 204u8, 159u8, 55u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ElectionProviderMultiPhase", + "DesiredTargets", + vec![], + [ + 67u8, 241u8, 33u8, 113u8, 62u8, 173u8, 233u8, 76u8, 99u8, 12u8, 61u8, + 237u8, 21u8, 252u8, 39u8, 37u8, 86u8, 167u8, 173u8, 53u8, 238u8, 172u8, + 97u8, 59u8, 27u8, 164u8, 163u8, 76u8, 140u8, 37u8, 159u8, 250u8, + ], + ) + } + #[doc = " The metadata of the [`RoundSnapshot`]"] + #[doc = ""] + #[doc = " Only exists when [`Snapshot`] is present."] + pub fn snapshot_metadata( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_election_provider_multi_phase::SolutionOrSnapshotSize, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ElectionProviderMultiPhase", + "SnapshotMetadata", + vec![], + [ + 48u8, 121u8, 12u8, 130u8, 174u8, 100u8, 114u8, 183u8, 83u8, 63u8, 44u8, + 147u8, 242u8, 223u8, 22u8, 107u8, 175u8, 182u8, 178u8, 254u8, 12u8, + 189u8, 37u8, 117u8, 95u8, 21u8, 19u8, 167u8, 56u8, 205u8, 49u8, 100u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ElectionProviderMultiPhase", + "SignedSubmissionNextIndex", + vec![], + [ + 188u8, 126u8, 77u8, 166u8, 42u8, 81u8, 12u8, 239u8, 195u8, 16u8, 132u8, + 178u8, 217u8, 158u8, 28u8, 19u8, 201u8, 148u8, 47u8, 105u8, 178u8, + 115u8, 17u8, 78u8, 71u8, 178u8, 205u8, 171u8, 71u8, 52u8, 194u8, 82u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::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::Address::new_static( + "ElectionProviderMultiPhase", + "SignedSubmissionIndices", + vec![], + [ + 245u8, 24u8, 83u8, 165u8, 229u8, 167u8, 35u8, 107u8, 255u8, 77u8, 34u8, + 0u8, 188u8, 159u8, 175u8, 68u8, 232u8, 114u8, 238u8, 231u8, 252u8, + 169u8, 127u8, 232u8, 206u8, 183u8, 191u8, 227u8, 176u8, 46u8, 51u8, + 147u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_election_provider_multi_phase::signed::SignedSubmission< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::enjin_runtime::NposSolution16, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ElectionProviderMultiPhase", + "SignedSubmissionsMap", + vec![], + [ + 118u8, 12u8, 234u8, 73u8, 238u8, 134u8, 20u8, 105u8, 248u8, 39u8, 23u8, + 96u8, 157u8, 187u8, 14u8, 143u8, 135u8, 121u8, 77u8, 90u8, 154u8, + 221u8, 139u8, 28u8, 34u8, 8u8, 19u8, 246u8, 65u8, 155u8, 84u8, 53u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_election_provider_multi_phase::signed::SignedSubmission< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::enjin_runtime::NposSolution16, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ElectionProviderMultiPhase", + "SignedSubmissionsMap", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 118u8, 12u8, 234u8, 73u8, 238u8, 134u8, 20u8, 105u8, 248u8, 39u8, 23u8, + 96u8, 157u8, 187u8, 14u8, 143u8, 135u8, 121u8, 77u8, 90u8, 154u8, + 221u8, 139u8, 28u8, 34u8, 8u8, 19u8, 246u8, 65u8, 155u8, 84u8, 53u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_npos_elections::ElectionScore, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ElectionProviderMultiPhase", + "MinimumUntrustedScore", + vec![], + [ + 22u8, 253u8, 11u8, 17u8, 171u8, 145u8, 175u8, 97u8, 137u8, 148u8, 36u8, + 232u8, 55u8, 174u8, 75u8, 173u8, 133u8, 5u8, 227u8, 161u8, 28u8, 62u8, + 188u8, 249u8, 123u8, 102u8, 186u8, 180u8, 226u8, 216u8, 71u8, 249u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address + { + ::subxt::constants::Address::new_static( + "ElectionProviderMultiPhase", + "BetterSignedThreshold", + [ + 65u8, 93u8, 120u8, 165u8, 204u8, 81u8, 159u8, 163u8, 93u8, 135u8, + 114u8, 121u8, 147u8, 35u8, 215u8, 213u8, 4u8, 223u8, 83u8, 37u8, 225u8, + 200u8, 189u8, 156u8, 140u8, 36u8, 58u8, 46u8, 42u8, 232u8, 155u8, 0u8, + ], + ) + } + #[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::Address + { + ::subxt::constants::Address::new_static( + "ElectionProviderMultiPhase", + "BetterUnsignedThreshold", + [ + 65u8, 93u8, 120u8, 165u8, 204u8, 81u8, 159u8, 163u8, 93u8, 135u8, + 114u8, 121u8, 147u8, 35u8, 215u8, 213u8, 4u8, 223u8, 83u8, 37u8, 225u8, + 200u8, 189u8, 156u8, 140u8, 36u8, 58u8, 46u8, 42u8, 232u8, 155u8, 0u8, + ], + ) + } + #[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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u64> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address + { + ::subxt::constants::Address::new_static( + "ElectionProviderMultiPhase", + "SignedMaxWeight", + [ + 149u8, 252u8, 129u8, 80u8, 169u8, 36u8, 79u8, 127u8, 240u8, 156u8, + 56u8, 202u8, 219u8, 86u8, 5u8, 65u8, 245u8, 148u8, 138u8, 243u8, 210u8, + 128u8, 234u8, 216u8, 240u8, 219u8, 123u8, 235u8, 21u8, 158u8, 237u8, + 112u8, + ], + ) + } + #[doc = " The maximum amount of unchecked solutions to refund the call fee for."] + pub fn signed_max_refunds( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u16> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address + { + ::subxt::constants::Address::new_static( + "ElectionProviderMultiPhase", + "MinerMaxWeight", + [ + 149u8, 252u8, 129u8, 80u8, 169u8, 36u8, 79u8, 127u8, 240u8, 156u8, + 56u8, 202u8, 219u8, 86u8, 5u8, 65u8, 245u8, 148u8, 138u8, 243u8, 210u8, + 128u8, 234u8, 216u8, 240u8, 219u8, 123u8, 235u8, 21u8, 158u8, 237u8, + 112u8, + ], + ) + } + pub fn miner_max_votes_per_voter( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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 fn miner_max_winners( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "ElectionProviderMultiPhase", + "MinerMaxWinners", + [ + 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 = "\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 type Error = runtime_types::pallet_staking::pallet::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_staking::pallet::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Bond { + #[codec(compact)] + pub value: ::core::primitive::u128, + pub payee: runtime_types::pallet_staking::RewardDestination< + ::subxt::utils::AccountId32, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Bond { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "bond"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BondExtra { + #[codec(compact)] + pub max_additional: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for BondExtra { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "bond_extra"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Unbond { + #[codec(compact)] + pub value: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for Unbond { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "unbond"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct WithdrawUnbonded { + pub num_slashing_spans: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for WithdrawUnbonded { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "withdraw_unbonded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Validate { + pub prefs: runtime_types::pallet_staking::ValidatorPrefs, + } + impl ::subxt::blocks::StaticExtrinsic for Validate { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "validate"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Nominate { + pub targets: ::std::vec::Vec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Nominate { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "nominate"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Chill; + impl ::subxt::blocks::StaticExtrinsic for Chill { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "chill"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetPayee { + pub payee: runtime_types::pallet_staking::RewardDestination< + ::subxt::utils::AccountId32, + >, + } + impl ::subxt::blocks::StaticExtrinsic for SetPayee { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "set_payee"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetController; + impl ::subxt::blocks::StaticExtrinsic for SetController { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "set_controller"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetValidatorCount { + #[codec(compact)] + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetValidatorCount { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "set_validator_count"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct IncreaseValidatorCount { + #[codec(compact)] + pub additional: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for IncreaseValidatorCount { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "increase_validator_count"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ScaleValidatorCount { + pub factor: runtime_types::sp_arithmetic::per_things::Percent, + } + impl ::subxt::blocks::StaticExtrinsic for ScaleValidatorCount { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "scale_validator_count"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceNoEras; + impl ::subxt::blocks::StaticExtrinsic for ForceNoEras { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "force_no_eras"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceNewEra; + impl ::subxt::blocks::StaticExtrinsic for ForceNewEra { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "force_new_era"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetInvulnerables { + pub invulnerables: ::std::vec::Vec<::subxt::utils::AccountId32>, + } + impl ::subxt::blocks::StaticExtrinsic for SetInvulnerables { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "set_invulnerables"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceUnstake { + pub stash: ::subxt::utils::AccountId32, + pub num_slashing_spans: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ForceUnstake { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "force_unstake"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceNewEraAlways; + impl ::subxt::blocks::StaticExtrinsic for ForceNewEraAlways { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "force_new_era_always"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CancelDeferredSlash { + pub era: ::core::primitive::u32, + pub slash_indices: ::std::vec::Vec<::core::primitive::u32>, + } + impl ::subxt::blocks::StaticExtrinsic for CancelDeferredSlash { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "cancel_deferred_slash"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PayoutStakers { + pub validator_stash: ::subxt::utils::AccountId32, + pub era: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for PayoutStakers { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "payout_stakers"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Rebond { + #[codec(compact)] + pub value: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for Rebond { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "rebond"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ReapStash { + pub stash: ::subxt::utils::AccountId32, + pub num_slashing_spans: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ReapStash { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "reap_stash"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Kick { + pub who: ::std::vec::Vec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Kick { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "kick"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + >, + } + impl ::subxt::blocks::StaticExtrinsic for SetStakingConfigs { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "set_staking_configs"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ChillOther { + pub controller: ::subxt::utils::AccountId32, + } + impl ::subxt::blocks::StaticExtrinsic for ChillOther { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "chill_other"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceApplyMinCommission { + pub validator_stash: ::subxt::utils::AccountId32, + } + impl ::subxt::blocks::StaticExtrinsic for ForceApplyMinCommission { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "force_apply_min_commission"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMinCommission { + pub new: runtime_types::sp_arithmetic::per_things::Perbill, + } + impl ::subxt::blocks::StaticExtrinsic for SetMinCommission { + const PALLET: &'static str = "Staking"; + const CALL: &'static str = "set_min_commission"; + } + } + 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 = "## Complexity"] + #[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."] + pub fn bond( + &self, + value: ::core::primitive::u128, + payee: runtime_types::pallet_staking::RewardDestination< + ::subxt::utils::AccountId32, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "bond", + types::Bond { value, payee }, + [ + 45u8, 207u8, 34u8, 221u8, 252u8, 224u8, 162u8, 185u8, 67u8, 224u8, + 88u8, 91u8, 232u8, 114u8, 183u8, 44u8, 39u8, 5u8, 12u8, 163u8, 57u8, + 31u8, 251u8, 58u8, 37u8, 232u8, 206u8, 75u8, 164u8, 26u8, 170u8, 101u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- Independent of the arguments. Insignificant complexity."] + #[doc = "- O(1)."] + pub fn bond_extra( + &self, + max_additional: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "bond_extra", + types::BondExtra { max_additional }, + [ + 9u8, 143u8, 179u8, 99u8, 91u8, 254u8, 114u8, 189u8, 202u8, 245u8, 48u8, + 130u8, 103u8, 17u8, 183u8, 177u8, 172u8, 156u8, 227u8, 145u8, 191u8, + 134u8, 81u8, 3u8, 170u8, 85u8, 40u8, 56u8, 216u8, 95u8, 232u8, 52u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "unbond", + types::Unbond { value }, + [ + 70u8, 201u8, 146u8, 56u8, 51u8, 237u8, 90u8, 193u8, 69u8, 42u8, 168u8, + 96u8, 215u8, 128u8, 253u8, 22u8, 239u8, 14u8, 214u8, 103u8, 170u8, + 140u8, 2u8, 182u8, 3u8, 190u8, 184u8, 191u8, 231u8, 137u8, 50u8, 16u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "O(S) where S is the number of slashing spans to remove"] + #[doc = "NOTE: Weight annotation is the kill scenario, we refund otherwise."] + pub fn withdraw_unbonded( + &self, + num_slashing_spans: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "withdraw_unbonded", + types::WithdrawUnbonded { num_slashing_spans }, + [ + 229u8, 128u8, 177u8, 224u8, 197u8, 118u8, 239u8, 142u8, 179u8, 164u8, + 10u8, 205u8, 124u8, 254u8, 209u8, 157u8, 172u8, 87u8, 58u8, 120u8, + 74u8, 12u8, 150u8, 117u8, 234u8, 32u8, 191u8, 182u8, 92u8, 97u8, 77u8, + 59u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "validate", + types::Validate { prefs }, + [ + 63u8, 83u8, 12u8, 16u8, 56u8, 84u8, 41u8, 141u8, 202u8, 0u8, 37u8, + 30u8, 115u8, 2u8, 145u8, 101u8, 168u8, 89u8, 94u8, 98u8, 8u8, 45u8, + 140u8, 237u8, 101u8, 136u8, 179u8, 162u8, 205u8, 41u8, 88u8, 248u8, + ], + ) + } + #[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 = "## Complexity"] + #[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."] + pub fn nominate( + &self, + targets: ::std::vec::Vec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "nominate", + types::Nominate { targets }, + [ + 14u8, 209u8, 112u8, 222u8, 40u8, 211u8, 118u8, 188u8, 26u8, 88u8, + 135u8, 233u8, 36u8, 99u8, 68u8, 189u8, 184u8, 169u8, 146u8, 217u8, + 87u8, 198u8, 89u8, 32u8, 193u8, 135u8, 251u8, 88u8, 241u8, 151u8, + 205u8, 138u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- Independent of the arguments. Insignificant complexity."] + #[doc = "- Contains one read."] + #[doc = "- Writes are limited to the `origin` account key."] + pub fn chill(&self) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "chill", + types::Chill {}, + [ + 157u8, 75u8, 243u8, 69u8, 110u8, 192u8, 22u8, 27u8, 107u8, 68u8, 236u8, + 58u8, 179u8, 34u8, 118u8, 98u8, 131u8, 62u8, 242u8, 84u8, 149u8, 24u8, + 83u8, 223u8, 78u8, 12u8, 192u8, 22u8, 111u8, 11u8, 171u8, 149u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- O(1)"] + #[doc = "- Independent of the arguments. Insignificant complexity."] + #[doc = "- Contains a limited number of reads."] + #[doc = "- Writes are limited to the `origin` account key."] + #[doc = "---------"] + pub fn set_payee( + &self, + payee: runtime_types::pallet_staking::RewardDestination< + ::subxt::utils::AccountId32, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "set_payee", + types::SetPayee { payee }, + [ + 86u8, 172u8, 187u8, 98u8, 106u8, 240u8, 184u8, 60u8, 163u8, 244u8, 7u8, + 64u8, 147u8, 168u8, 192u8, 177u8, 211u8, 138u8, 73u8, 188u8, 159u8, + 154u8, 175u8, 219u8, 231u8, 235u8, 93u8, 195u8, 204u8, 100u8, 196u8, + 241u8, + ], + ) + } + #[doc = "(Re-)sets the controller of a stash to the stash itself. This function previously"] + #[doc = "accepted a `controller` argument to set the controller to an account other than the"] + #[doc = "stash itself. This functionality has now been removed, now only setting the controller"] + #[doc = "to the stash, if it is not already."] + #[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 = "## Complexity"] + #[doc = "O(1)"] + #[doc = "- Independent of the arguments. Insignificant complexity."] + #[doc = "- Contains a limited number of reads."] + #[doc = "- Writes are limited to the `origin` account key."] + pub fn set_controller(&self) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "set_controller", + types::SetController {}, + [ + 172u8, 27u8, 195u8, 188u8, 145u8, 203u8, 190u8, 174u8, 145u8, 43u8, + 253u8, 87u8, 11u8, 229u8, 112u8, 18u8, 57u8, 101u8, 84u8, 235u8, 109u8, + 228u8, 58u8, 129u8, 179u8, 174u8, 245u8, 169u8, 89u8, 240u8, 39u8, + 67u8, + ], + ) + } + #[doc = "Sets the ideal number of validators."] + #[doc = ""] + #[doc = "The dispatch origin must be Root."] + #[doc = ""] + #[doc = "## Complexity"] + #[doc = "O(1)"] + pub fn set_validator_count( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "set_validator_count", + types::SetValidatorCount { new }, + [ + 172u8, 225u8, 157u8, 48u8, 242u8, 217u8, 126u8, 206u8, 26u8, 156u8, + 203u8, 100u8, 116u8, 189u8, 98u8, 89u8, 151u8, 101u8, 77u8, 236u8, + 101u8, 8u8, 148u8, 236u8, 180u8, 175u8, 232u8, 146u8, 141u8, 141u8, + 78u8, 165u8, + ], + ) + } + #[doc = "Increments the ideal number of validators upto maximum of"] + #[doc = "`ElectionProviderBase::MaxWinners`."] + #[doc = ""] + #[doc = "The dispatch origin must be Root."] + #[doc = ""] + #[doc = "## Complexity"] + #[doc = "Same as [`Self::set_validator_count`]."] + pub fn increase_validator_count( + &self, + additional: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "increase_validator_count", + types::IncreaseValidatorCount { additional }, + [ + 108u8, 67u8, 131u8, 248u8, 139u8, 227u8, 224u8, 221u8, 248u8, 94u8, + 141u8, 104u8, 131u8, 250u8, 127u8, 164u8, 137u8, 211u8, 5u8, 27u8, + 185u8, 251u8, 120u8, 243u8, 165u8, 50u8, 197u8, 161u8, 125u8, 195u8, + 16u8, 29u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "Same as [`Self::set_validator_count`]."] + pub fn scale_validator_count( + &self, + factor: runtime_types::sp_arithmetic::per_things::Percent, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "scale_validator_count", + types::ScaleValidatorCount { factor }, + [ + 93u8, 200u8, 119u8, 240u8, 148u8, 144u8, 175u8, 135u8, 102u8, 130u8, + 183u8, 216u8, 28u8, 215u8, 155u8, 233u8, 152u8, 65u8, 49u8, 125u8, + 196u8, 79u8, 31u8, 195u8, 233u8, 79u8, 150u8, 138u8, 103u8, 161u8, + 78u8, 154u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- No arguments."] + #[doc = "- Weight: O(1)"] + pub fn force_no_eras(&self) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "force_no_eras", + types::ForceNoEras {}, + [ + 77u8, 5u8, 105u8, 167u8, 251u8, 78u8, 52u8, 80u8, 177u8, 226u8, 28u8, + 130u8, 106u8, 62u8, 40u8, 210u8, 110u8, 62u8, 21u8, 113u8, 234u8, + 227u8, 171u8, 205u8, 240u8, 46u8, 32u8, 84u8, 184u8, 208u8, 61u8, + 207u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- No arguments."] + #[doc = "- Weight: O(1)"] + pub fn force_new_era(&self) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "force_new_era", + types::ForceNewEra {}, + [ + 119u8, 45u8, 11u8, 87u8, 236u8, 189u8, 41u8, 142u8, 130u8, 10u8, 132u8, + 140u8, 210u8, 134u8, 66u8, 152u8, 149u8, 55u8, 60u8, 31u8, 190u8, 41u8, + 177u8, 103u8, 245u8, 193u8, 95u8, 255u8, 29u8, 79u8, 112u8, 188u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "set_invulnerables", + types::SetInvulnerables { invulnerables }, + [ + 31u8, 115u8, 221u8, 229u8, 187u8, 61u8, 33u8, 22u8, 126u8, 142u8, + 248u8, 190u8, 213u8, 35u8, 49u8, 208u8, 193u8, 0u8, 58u8, 18u8, 136u8, + 220u8, 32u8, 8u8, 121u8, 36u8, 184u8, 57u8, 6u8, 125u8, 199u8, 245u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "force_unstake", + types::ForceUnstake { + stash, + num_slashing_spans, + }, + [ + 205u8, 115u8, 222u8, 58u8, 168u8, 3u8, 59u8, 58u8, 220u8, 98u8, 204u8, + 90u8, 36u8, 250u8, 178u8, 45u8, 213u8, 158u8, 92u8, 107u8, 3u8, 94u8, + 118u8, 194u8, 187u8, 196u8, 101u8, 250u8, 36u8, 119u8, 21u8, 19u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "force_new_era_always", + types::ForceNewEraAlways {}, + [ + 102u8, 153u8, 116u8, 85u8, 80u8, 52u8, 89u8, 215u8, 173u8, 159u8, 96u8, + 99u8, 180u8, 5u8, 62u8, 142u8, 181u8, 101u8, 160u8, 57u8, 177u8, 182u8, + 6u8, 252u8, 107u8, 252u8, 225u8, 104u8, 147u8, 123u8, 244u8, 134u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "cancel_deferred_slash", + types::CancelDeferredSlash { era, slash_indices }, + [ + 49u8, 208u8, 248u8, 109u8, 25u8, 132u8, 73u8, 172u8, 232u8, 194u8, + 114u8, 23u8, 114u8, 4u8, 64u8, 156u8, 70u8, 41u8, 207u8, 208u8, 78u8, + 199u8, 81u8, 125u8, 101u8, 31u8, 17u8, 140u8, 190u8, 254u8, 64u8, + 101u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- At most O(MaxNominatorRewardedPerValidator)."] + pub fn payout_stakers( + &self, + validator_stash: ::subxt::utils::AccountId32, + era: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "payout_stakers", + types::PayoutStakers { + validator_stash, + era, + }, + [ + 69u8, 67u8, 140u8, 197u8, 89u8, 20u8, 59u8, 55u8, 142u8, 197u8, 62u8, + 107u8, 239u8, 50u8, 237u8, 52u8, 4u8, 65u8, 119u8, 73u8, 138u8, 57u8, + 46u8, 78u8, 252u8, 157u8, 187u8, 14u8, 232u8, 244u8, 217u8, 171u8, + ], + ) + } + #[doc = "Rebond a portion of the stash scheduled to be unlocked."] + #[doc = ""] + #[doc = "The dispatch origin must be signed by the controller."] + #[doc = ""] + #[doc = "## Complexity"] + #[doc = "- Time complexity: O(L), where L is unlocking chunks"] + #[doc = "- Bounded by `MaxUnlockingChunks`."] + pub fn rebond( + &self, + value: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "rebond", + types::Rebond { value }, + [ + 204u8, 209u8, 27u8, 219u8, 45u8, 129u8, 15u8, 39u8, 105u8, 165u8, + 255u8, 55u8, 0u8, 59u8, 115u8, 79u8, 139u8, 82u8, 163u8, 197u8, 44u8, + 89u8, 41u8, 234u8, 116u8, 214u8, 248u8, 123u8, 250u8, 49u8, 15u8, 77u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "reap_stash", + types::ReapStash { + stash, + num_slashing_spans, + }, + [ + 231u8, 240u8, 152u8, 33u8, 10u8, 60u8, 18u8, 233u8, 0u8, 229u8, 90u8, + 45u8, 118u8, 29u8, 98u8, 109u8, 89u8, 7u8, 228u8, 254u8, 119u8, 125u8, + 172u8, 209u8, 217u8, 107u8, 50u8, 226u8, 31u8, 5u8, 153u8, 93u8, + ], + ) + } + #[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, ()>, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "kick", + types::Kick { who }, + [ + 27u8, 64u8, 10u8, 21u8, 174u8, 6u8, 40u8, 249u8, 144u8, 247u8, 5u8, + 123u8, 225u8, 172u8, 143u8, 50u8, 192u8, 248u8, 160u8, 179u8, 119u8, + 122u8, 147u8, 92u8, 248u8, 123u8, 3u8, 154u8, 205u8, 199u8, 6u8, 126u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "set_staking_configs", + types::SetStakingConfigs { + min_nominator_bond, + min_validator_bond, + max_nominator_count, + max_validator_count, + chill_threshold, + min_commission, + }, + [ + 99u8, 61u8, 196u8, 68u8, 226u8, 64u8, 104u8, 70u8, 173u8, 108u8, 29u8, + 39u8, 61u8, 202u8, 72u8, 227u8, 190u8, 6u8, 138u8, 137u8, 207u8, 11u8, + 190u8, 79u8, 73u8, 7u8, 108u8, 131u8, 19u8, 7u8, 173u8, 60u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "chill_other", + types::ChillOther { controller }, + [ + 143u8, 82u8, 167u8, 43u8, 102u8, 136u8, 78u8, 139u8, 110u8, 159u8, + 235u8, 226u8, 237u8, 140u8, 142u8, 47u8, 77u8, 57u8, 209u8, 208u8, 9u8, + 193u8, 3u8, 77u8, 147u8, 41u8, 182u8, 122u8, 178u8, 185u8, 32u8, 182u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "force_apply_min_commission", + types::ForceApplyMinCommission { validator_stash }, + [ + 158u8, 27u8, 152u8, 23u8, 97u8, 53u8, 54u8, 49u8, 179u8, 236u8, 69u8, + 65u8, 253u8, 136u8, 232u8, 44u8, 207u8, 66u8, 5u8, 186u8, 49u8, 91u8, + 173u8, 5u8, 84u8, 45u8, 154u8, 91u8, 239u8, 97u8, 62u8, 42u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Staking", + "set_min_commission", + types::SetMinCommission { new }, + [ + 96u8, 168u8, 55u8, 79u8, 79u8, 49u8, 8u8, 127u8, 98u8, 158u8, 106u8, + 187u8, 177u8, 201u8, 68u8, 181u8, 219u8, 172u8, 63u8, 120u8, 172u8, + 173u8, 251u8, 167u8, 84u8, 165u8, 238u8, 115u8, 110u8, 97u8, 144u8, + 50u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ValidatorCount", + vec![], + [ + 105u8, 251u8, 193u8, 198u8, 232u8, 118u8, 73u8, 115u8, 205u8, 78u8, + 49u8, 253u8, 140u8, 193u8, 161u8, 205u8, 13u8, 147u8, 125u8, 102u8, + 142u8, 244u8, 210u8, 227u8, 225u8, 46u8, 144u8, 122u8, 254u8, 48u8, + 44u8, 169u8, + ], + ) + } + #[doc = " Minimum number of staking participants before emergency conditions are imposed."] + pub fn minimum_validator_count( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "MinimumValidatorCount", + vec![], + [ + 103u8, 178u8, 29u8, 91u8, 90u8, 31u8, 49u8, 9u8, 11u8, 58u8, 178u8, + 30u8, 219u8, 55u8, 58u8, 181u8, 80u8, 155u8, 9u8, 11u8, 38u8, 46u8, + 125u8, 179u8, 220u8, 20u8, 212u8, 181u8, 136u8, 103u8, 58u8, 48u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::subxt::utils::AccountId32>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "Invulnerables", + vec![], + [ + 199u8, 35u8, 0u8, 229u8, 160u8, 128u8, 139u8, 245u8, 27u8, 133u8, 47u8, + 240u8, 86u8, 195u8, 90u8, 169u8, 158u8, 231u8, 128u8, 58u8, 24u8, + 173u8, 138u8, 122u8, 226u8, 104u8, 239u8, 114u8, 91u8, 165u8, 207u8, + 150u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::AccountId32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "Bonded", + vec![], + [ + 99u8, 128u8, 108u8, 100u8, 235u8, 102u8, 243u8, 95u8, 61u8, 206u8, + 220u8, 49u8, 155u8, 85u8, 236u8, 110u8, 99u8, 21u8, 117u8, 127u8, + 157u8, 226u8, 108u8, 80u8, 126u8, 93u8, 203u8, 0u8, 160u8, 253u8, 56u8, + 101u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::AccountId32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "Bonded", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 99u8, 128u8, 108u8, 100u8, 235u8, 102u8, 243u8, 95u8, 61u8, 206u8, + 220u8, 49u8, 155u8, 85u8, 236u8, 110u8, 99u8, 21u8, 117u8, 127u8, + 157u8, 226u8, 108u8, 80u8, 126u8, 93u8, 203u8, 0u8, 160u8, 253u8, 56u8, + 101u8, + ], + ) + } + #[doc = " The minimum active bond to become and maintain the role of a nominator."] + pub fn min_nominator_bond( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "MinNominatorBond", + vec![], + [ + 102u8, 115u8, 254u8, 15u8, 191u8, 228u8, 85u8, 249u8, 112u8, 190u8, + 129u8, 243u8, 236u8, 39u8, 195u8, 232u8, 10u8, 230u8, 11u8, 144u8, + 115u8, 1u8, 45u8, 70u8, 181u8, 161u8, 17u8, 92u8, 19u8, 70u8, 100u8, + 94u8, + ], + ) + } + #[doc = " The minimum active bond to become and maintain the role of a validator."] + pub fn min_validator_bond( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "MinValidatorBond", + vec![], + [ + 146u8, 249u8, 26u8, 52u8, 224u8, 81u8, 85u8, 153u8, 118u8, 169u8, + 140u8, 37u8, 208u8, 242u8, 8u8, 29u8, 156u8, 73u8, 154u8, 162u8, 186u8, + 159u8, 119u8, 100u8, 109u8, 227u8, 6u8, 139u8, 155u8, 203u8, 167u8, + 244u8, + ], + ) + } + #[doc = " The minimum active nominator stake of the last successful election."] + pub fn minimum_active_stake( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "MinimumActiveStake", + vec![], + [ + 166u8, 211u8, 59u8, 23u8, 2u8, 160u8, 244u8, 52u8, 153u8, 12u8, 103u8, + 113u8, 51u8, 232u8, 145u8, 188u8, 54u8, 67u8, 227u8, 221u8, 186u8, 6u8, + 28u8, 63u8, 146u8, 212u8, 233u8, 173u8, 134u8, 41u8, 169u8, 153u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_arithmetic::per_things::Perbill, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "MinCommission", + vec![], + [ + 220u8, 197u8, 232u8, 212u8, 205u8, 242u8, 121u8, 165u8, 255u8, 199u8, + 122u8, 20u8, 145u8, 245u8, 175u8, 26u8, 45u8, 70u8, 207u8, 26u8, 112u8, + 234u8, 181u8, 167u8, 140u8, 75u8, 15u8, 1u8, 221u8, 168u8, 17u8, 211u8, + ], + ) + } + #[doc = " Map from all (unlocked) \"controller\" accounts to the info regarding the staking."] + pub fn ledger_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::StakingLedger, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "Ledger", + vec![], + [ + 210u8, 236u8, 6u8, 49u8, 200u8, 118u8, 116u8, 25u8, 66u8, 60u8, 18u8, + 75u8, 240u8, 156u8, 58u8, 48u8, 176u8, 10u8, 175u8, 0u8, 86u8, 7u8, + 16u8, 134u8, 64u8, 41u8, 46u8, 128u8, 33u8, 40u8, 10u8, 129u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::StakingLedger, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "Ledger", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 210u8, 236u8, 6u8, 49u8, 200u8, 118u8, 116u8, 25u8, 66u8, 60u8, 18u8, + 75u8, 240u8, 156u8, 58u8, 48u8, 176u8, 10u8, 175u8, 0u8, 86u8, 7u8, + 16u8, 134u8, 64u8, 41u8, 46u8, 128u8, 33u8, 40u8, 10u8, 129u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::RewardDestination<::subxt::utils::AccountId32>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "Payee", + vec![], + [ + 141u8, 225u8, 44u8, 134u8, 50u8, 229u8, 64u8, 186u8, 166u8, 88u8, + 213u8, 118u8, 32u8, 154u8, 151u8, 204u8, 104u8, 216u8, 198u8, 66u8, + 123u8, 143u8, 206u8, 245u8, 53u8, 67u8, 78u8, 82u8, 115u8, 31u8, 39u8, + 76u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::RewardDestination<::subxt::utils::AccountId32>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "Payee", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 141u8, 225u8, 44u8, 134u8, 50u8, 229u8, 64u8, 186u8, 166u8, 88u8, + 213u8, 118u8, 32u8, 154u8, 151u8, 204u8, 104u8, 216u8, 198u8, 66u8, + 123u8, 143u8, 206u8, 245u8, 53u8, 67u8, 78u8, 82u8, 115u8, 31u8, 39u8, + 76u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::ValidatorPrefs, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "Validators", + vec![], + [ + 149u8, 207u8, 68u8, 38u8, 24u8, 220u8, 207u8, 84u8, 236u8, 33u8, 210u8, + 124u8, 200u8, 99u8, 98u8, 29u8, 235u8, 46u8, 124u8, 4u8, 203u8, 6u8, + 209u8, 21u8, 124u8, 236u8, 112u8, 118u8, 180u8, 85u8, 78u8, 13u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::ValidatorPrefs, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "Validators", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 149u8, 207u8, 68u8, 38u8, 24u8, 220u8, 207u8, 84u8, 236u8, 33u8, 210u8, + 124u8, 200u8, 99u8, 98u8, 29u8, 235u8, 46u8, 124u8, 4u8, 203u8, 6u8, + 209u8, 21u8, 124u8, 236u8, 112u8, 118u8, 180u8, 85u8, 78u8, 13u8, + ], + ) + } + #[doc = "Counter for the related counted storage map"] + pub fn counter_for_validators( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "CounterForValidators", + vec![], + [ + 169u8, 146u8, 194u8, 114u8, 57u8, 232u8, 137u8, 93u8, 214u8, 98u8, + 176u8, 151u8, 237u8, 165u8, 176u8, 252u8, 73u8, 124u8, 22u8, 166u8, + 225u8, 217u8, 65u8, 56u8, 174u8, 12u8, 32u8, 2u8, 7u8, 173u8, 125u8, + 235u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "MaxValidatorsCount", + vec![], + [ + 139u8, 116u8, 236u8, 217u8, 110u8, 47u8, 140u8, 197u8, 184u8, 246u8, + 180u8, 188u8, 233u8, 99u8, 102u8, 21u8, 114u8, 23u8, 143u8, 163u8, + 224u8, 250u8, 248u8, 185u8, 235u8, 94u8, 110u8, 83u8, 170u8, 123u8, + 113u8, 168u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::Nominations, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "Nominators", + vec![], + [ + 244u8, 174u8, 214u8, 105u8, 215u8, 218u8, 241u8, 145u8, 155u8, 54u8, + 219u8, 34u8, 158u8, 224u8, 251u8, 17u8, 245u8, 9u8, 150u8, 36u8, 2u8, + 233u8, 222u8, 218u8, 136u8, 86u8, 37u8, 244u8, 18u8, 50u8, 91u8, 120u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::Nominations, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "Nominators", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 244u8, 174u8, 214u8, 105u8, 215u8, 218u8, 241u8, 145u8, 155u8, 54u8, + 219u8, 34u8, 158u8, 224u8, 251u8, 17u8, 245u8, 9u8, 150u8, 36u8, 2u8, + 233u8, 222u8, 218u8, 136u8, 86u8, 37u8, 244u8, 18u8, 50u8, 91u8, 120u8, + ], + ) + } + #[doc = "Counter for the related counted storage map"] + pub fn counter_for_nominators( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "CounterForNominators", + vec![], + [ + 150u8, 236u8, 184u8, 12u8, 224u8, 26u8, 13u8, 204u8, 208u8, 178u8, + 68u8, 148u8, 232u8, 85u8, 74u8, 248u8, 167u8, 61u8, 88u8, 126u8, 40u8, + 20u8, 73u8, 47u8, 94u8, 57u8, 144u8, 77u8, 156u8, 179u8, 55u8, 49u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "MaxNominatorsCount", + vec![], + [ + 11u8, 234u8, 179u8, 254u8, 95u8, 119u8, 35u8, 255u8, 141u8, 95u8, + 148u8, 209u8, 43u8, 202u8, 19u8, 57u8, 185u8, 50u8, 152u8, 192u8, 95u8, + 13u8, 158u8, 245u8, 113u8, 199u8, 255u8, 187u8, 37u8, 44u8, 8u8, 119u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "CurrentEra", + vec![], + [ + 247u8, 239u8, 171u8, 18u8, 137u8, 240u8, 213u8, 3u8, 173u8, 173u8, + 236u8, 141u8, 202u8, 191u8, 228u8, 120u8, 196u8, 188u8, 13u8, 66u8, + 253u8, 117u8, 90u8, 8u8, 158u8, 11u8, 236u8, 141u8, 178u8, 44u8, 119u8, + 25u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::ActiveEraInfo, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ActiveEra", + vec![], + [ + 24u8, 229u8, 66u8, 56u8, 111u8, 234u8, 139u8, 93u8, 245u8, 137u8, + 110u8, 110u8, 121u8, 15u8, 216u8, 207u8, 97u8, 120u8, 125u8, 45u8, + 61u8, 2u8, 50u8, 100u8, 3u8, 106u8, 12u8, 233u8, 123u8, 156u8, 145u8, + 38u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasStartSessionIndex", + vec![], + [ + 104u8, 76u8, 102u8, 20u8, 9u8, 146u8, 55u8, 204u8, 12u8, 15u8, 117u8, + 22u8, 54u8, 230u8, 98u8, 105u8, 191u8, 136u8, 140u8, 65u8, 48u8, 29u8, + 19u8, 144u8, 159u8, 241u8, 158u8, 77u8, 4u8, 230u8, 216u8, 52u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasStartSessionIndex", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 104u8, 76u8, 102u8, 20u8, 9u8, 146u8, 55u8, 204u8, 12u8, 15u8, 117u8, + 22u8, 54u8, 230u8, 98u8, 105u8, 191u8, 136u8, 140u8, 65u8, 48u8, 29u8, + 19u8, 144u8, 159u8, 241u8, 158u8, 77u8, 4u8, 230u8, 216u8, 52u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::Exposure< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasStakers", + vec![], + [ + 120u8, 64u8, 232u8, 134u8, 109u8, 212u8, 242u8, 64u8, 68u8, 196u8, + 108u8, 91u8, 255u8, 123u8, 245u8, 27u8, 55u8, 254u8, 60u8, 74u8, 183u8, + 183u8, 226u8, 159u8, 244u8, 56u8, 139u8, 34u8, 228u8, 176u8, 241u8, + 76u8, + ], + ) + } + #[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_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::Exposure< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasStakers", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 120u8, 64u8, 232u8, 134u8, 109u8, 212u8, 242u8, 64u8, 68u8, 196u8, + 108u8, 91u8, 255u8, 123u8, 245u8, 27u8, 55u8, 254u8, 60u8, 74u8, 183u8, + 183u8, 226u8, 159u8, 244u8, 56u8, 139u8, 34u8, 228u8, 176u8, 241u8, + 76u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::Exposure< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasStakers", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 120u8, 64u8, 232u8, 134u8, 109u8, 212u8, 242u8, 64u8, 68u8, 196u8, + 108u8, 91u8, 255u8, 123u8, 245u8, 27u8, 55u8, 254u8, 60u8, 74u8, 183u8, + 183u8, 226u8, 159u8, 244u8, 56u8, 139u8, 34u8, 228u8, 176u8, 241u8, + 76u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::Exposure< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasStakersClipped", + vec![], + [ + 85u8, 192u8, 164u8, 53u8, 181u8, 61u8, 132u8, 255u8, 144u8, 41u8, 44u8, + 199u8, 34u8, 11u8, 248u8, 81u8, 203u8, 204u8, 152u8, 138u8, 112u8, + 229u8, 145u8, 253u8, 111u8, 111u8, 38u8, 74u8, 199u8, 164u8, 16u8, + 45u8, + ], + ) + } + #[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_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::Exposure< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasStakersClipped", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 85u8, 192u8, 164u8, 53u8, 181u8, 61u8, 132u8, 255u8, 144u8, 41u8, 44u8, + 199u8, 34u8, 11u8, 248u8, 81u8, 203u8, 204u8, 152u8, 138u8, 112u8, + 229u8, 145u8, 253u8, 111u8, 111u8, 38u8, 74u8, 199u8, 164u8, 16u8, + 45u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::Exposure< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasStakersClipped", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 85u8, 192u8, 164u8, 53u8, 181u8, 61u8, 132u8, 255u8, 144u8, 41u8, 44u8, + 199u8, 34u8, 11u8, 248u8, 81u8, 203u8, 204u8, 152u8, 138u8, 112u8, + 229u8, 145u8, 253u8, 111u8, 111u8, 38u8, 74u8, 199u8, 164u8, 16u8, + 45u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::ValidatorPrefs, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasValidatorPrefs", + vec![], + [ + 134u8, 250u8, 229u8, 21u8, 44u8, 119u8, 43u8, 99u8, 69u8, 94u8, 177u8, + 180u8, 174u8, 134u8, 54u8, 25u8, 56u8, 144u8, 194u8, 149u8, 56u8, + 234u8, 78u8, 238u8, 78u8, 247u8, 205u8, 43u8, 16u8, 159u8, 92u8, 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_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::ValidatorPrefs, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasValidatorPrefs", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 134u8, 250u8, 229u8, 21u8, 44u8, 119u8, 43u8, 99u8, 69u8, 94u8, 177u8, + 180u8, 174u8, 134u8, 54u8, 25u8, 56u8, 144u8, 194u8, 149u8, 56u8, + 234u8, 78u8, 238u8, 78u8, 247u8, 205u8, 43u8, 16u8, 159u8, 92u8, 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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::ValidatorPrefs, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasValidatorPrefs", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 134u8, 250u8, 229u8, 21u8, 44u8, 119u8, 43u8, 99u8, 69u8, 94u8, 177u8, + 180u8, 174u8, 134u8, 54u8, 25u8, 56u8, 144u8, 194u8, 149u8, 56u8, + 234u8, 78u8, 238u8, 78u8, 247u8, 205u8, 43u8, 16u8, 159u8, 92u8, 169u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasValidatorReward", + vec![], + [ + 185u8, 85u8, 179u8, 163u8, 178u8, 168u8, 141u8, 200u8, 59u8, 77u8, 2u8, + 197u8, 36u8, 188u8, 133u8, 117u8, 2u8, 25u8, 105u8, 132u8, 44u8, 75u8, + 15u8, 82u8, 57u8, 89u8, 242u8, 234u8, 70u8, 244u8, 198u8, 126u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasValidatorReward", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 185u8, 85u8, 179u8, 163u8, 178u8, 168u8, 141u8, 200u8, 59u8, 77u8, 2u8, + 197u8, 36u8, 188u8, 133u8, 117u8, 2u8, 25u8, 105u8, 132u8, 44u8, 75u8, + 15u8, 82u8, 57u8, 89u8, 242u8, 234u8, 70u8, 244u8, 198u8, 126u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::EraRewardPoints<::subxt::utils::AccountId32>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasRewardPoints", + vec![], + [ + 135u8, 0u8, 85u8, 241u8, 213u8, 133u8, 30u8, 192u8, 251u8, 191u8, 41u8, + 38u8, 233u8, 236u8, 218u8, 246u8, 166u8, 93u8, 46u8, 37u8, 48u8, 187u8, + 172u8, 48u8, 251u8, 178u8, 75u8, 203u8, 60u8, 188u8, 204u8, 207u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::EraRewardPoints<::subxt::utils::AccountId32>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasRewardPoints", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 135u8, 0u8, 85u8, 241u8, 213u8, 133u8, 30u8, 192u8, 251u8, 191u8, 41u8, + 38u8, 233u8, 236u8, 218u8, 246u8, 166u8, 93u8, 46u8, 37u8, 48u8, 187u8, + 172u8, 48u8, 251u8, 178u8, 75u8, 203u8, 60u8, 188u8, 204u8, 207u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasTotalStake", + vec![], + [ + 8u8, 78u8, 101u8, 62u8, 124u8, 126u8, 66u8, 26u8, 47u8, 126u8, 239u8, + 204u8, 222u8, 104u8, 19u8, 108u8, 238u8, 160u8, 112u8, 242u8, 56u8, + 2u8, 250u8, 164u8, 250u8, 213u8, 201u8, 84u8, 193u8, 117u8, 108u8, + 146u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ErasTotalStake", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 8u8, 78u8, 101u8, 62u8, 124u8, 126u8, 66u8, 26u8, 47u8, 126u8, 239u8, + 204u8, 222u8, 104u8, 19u8, 108u8, 238u8, 160u8, 112u8, 242u8, 56u8, + 2u8, 250u8, 164u8, 250u8, 213u8, 201u8, 84u8, 193u8, 117u8, 108u8, + 146u8, + ], + ) + } + #[doc = " Mode of era forcing."] + pub fn force_era( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::Forcing, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ForceEra", + vec![], + [ + 177u8, 148u8, 73u8, 108u8, 136u8, 126u8, 89u8, 18u8, 124u8, 66u8, 30u8, + 102u8, 133u8, 164u8, 78u8, 214u8, 184u8, 163u8, 75u8, 164u8, 117u8, + 233u8, 209u8, 158u8, 99u8, 208u8, 21u8, 194u8, 152u8, 82u8, 16u8, + 222u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_arithmetic::per_things::Perbill, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "SlashRewardFraction", + vec![], + [ + 53u8, 88u8, 253u8, 237u8, 84u8, 228u8, 187u8, 130u8, 108u8, 195u8, + 135u8, 25u8, 75u8, 52u8, 238u8, 62u8, 133u8, 38u8, 139u8, 129u8, 216u8, + 193u8, 197u8, 216u8, 245u8, 171u8, 128u8, 207u8, 125u8, 246u8, 248u8, + 7u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "CanceledSlashPayout", + vec![], + [ + 221u8, 88u8, 134u8, 81u8, 22u8, 229u8, 100u8, 27u8, 86u8, 244u8, 229u8, + 107u8, 251u8, 119u8, 58u8, 153u8, 19u8, 20u8, 254u8, 169u8, 248u8, + 220u8, 98u8, 118u8, 48u8, 213u8, 22u8, 79u8, 242u8, 250u8, 147u8, + 173u8, + ], + ) + } + #[doc = " All unapplied slashes that are queued for later."] + pub fn unapplied_slashes_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::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::Address::new_static( + "Staking", + "UnappliedSlashes", + vec![], + [ + 158u8, 134u8, 7u8, 21u8, 200u8, 222u8, 197u8, 166u8, 199u8, 39u8, 1u8, + 167u8, 164u8, 154u8, 165u8, 118u8, 92u8, 223u8, 219u8, 136u8, 196u8, + 155u8, 243u8, 20u8, 198u8, 92u8, 198u8, 61u8, 252u8, 176u8, 175u8, + 172u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::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::Address::new_static( + "Staking", + "UnappliedSlashes", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 158u8, 134u8, 7u8, 21u8, 200u8, 222u8, 197u8, 166u8, 199u8, 39u8, 1u8, + 167u8, 164u8, 154u8, 165u8, 118u8, 92u8, 223u8, 219u8, 136u8, 196u8, + 155u8, 243u8, 20u8, 198u8, 92u8, 198u8, 61u8, 252u8, 176u8, 175u8, + 172u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<(::core::primitive::u32, ::core::primitive::u32)>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "BondedEras", + vec![], + [ + 20u8, 0u8, 164u8, 169u8, 183u8, 130u8, 242u8, 167u8, 92u8, 254u8, + 191u8, 206u8, 177u8, 182u8, 219u8, 162u8, 7u8, 116u8, 223u8, 166u8, + 239u8, 216u8, 140u8, 42u8, 174u8, 237u8, 134u8, 186u8, 180u8, 62u8, + 175u8, 239u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ( + runtime_types::sp_arithmetic::per_things::Perbill, + ::core::primitive::u128, + ), + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ValidatorSlashInEra", + vec![], + [ + 245u8, 72u8, 52u8, 22u8, 10u8, 177u8, 127u8, 83u8, 180u8, 246u8, 17u8, + 82u8, 6u8, 231u8, 131u8, 68u8, 73u8, 92u8, 241u8, 251u8, 32u8, 97u8, + 121u8, 137u8, 190u8, 227u8, 162u8, 16u8, 224u8, 207u8, 63u8, 184u8, + ], + ) + } + #[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_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ( + runtime_types::sp_arithmetic::per_things::Perbill, + ::core::primitive::u128, + ), + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ValidatorSlashInEra", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 245u8, 72u8, 52u8, 22u8, 10u8, 177u8, 127u8, 83u8, 180u8, 246u8, 17u8, + 82u8, 6u8, 231u8, 131u8, 68u8, 73u8, 92u8, 241u8, 251u8, 32u8, 97u8, + 121u8, 137u8, 190u8, 227u8, 162u8, 16u8, 224u8, 207u8, 63u8, 184u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ( + runtime_types::sp_arithmetic::per_things::Perbill, + ::core::primitive::u128, + ), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ValidatorSlashInEra", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 245u8, 72u8, 52u8, 22u8, 10u8, 177u8, 127u8, 83u8, 180u8, 246u8, 17u8, + 82u8, 6u8, 231u8, 131u8, 68u8, 73u8, 92u8, 241u8, 251u8, 32u8, 97u8, + 121u8, 137u8, 190u8, 227u8, 162u8, 16u8, 224u8, 207u8, 63u8, 184u8, + ], + ) + } + #[doc = " All slashing events on nominators, mapped by era to the highest slash value of the era."] + pub fn nominator_slash_in_era_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "NominatorSlashInEra", + vec![], + [ + 8u8, 89u8, 171u8, 183u8, 64u8, 29u8, 44u8, 185u8, 11u8, 204u8, 67u8, + 60u8, 208u8, 132u8, 9u8, 214u8, 13u8, 148u8, 205u8, 26u8, 5u8, 7u8, + 250u8, 191u8, 83u8, 118u8, 95u8, 17u8, 40u8, 126u8, 16u8, 135u8, + ], + ) + } + #[doc = " All slashing events on nominators, mapped by era to the highest slash value of the era."] + pub fn nominator_slash_in_era_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "NominatorSlashInEra", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 8u8, 89u8, 171u8, 183u8, 64u8, 29u8, 44u8, 185u8, 11u8, 204u8, 67u8, + 60u8, 208u8, 132u8, 9u8, 214u8, 13u8, 148u8, 205u8, 26u8, 5u8, 7u8, + 250u8, 191u8, 83u8, 118u8, 95u8, 17u8, 40u8, 126u8, 16u8, 135u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "NominatorSlashInEra", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 8u8, 89u8, 171u8, 183u8, 64u8, 29u8, 44u8, 185u8, 11u8, 204u8, 67u8, + 60u8, 208u8, 132u8, 9u8, 214u8, 13u8, 148u8, 205u8, 26u8, 5u8, 7u8, + 250u8, 191u8, 83u8, 118u8, 95u8, 17u8, 40u8, 126u8, 16u8, 135u8, + ], + ) + } + #[doc = " Slashing spans for stash accounts."] + pub fn slashing_spans_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::slashing::SlashingSpans, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "SlashingSpans", + vec![], + [ + 74u8, 169u8, 189u8, 252u8, 193u8, 191u8, 114u8, 107u8, 158u8, 125u8, + 252u8, 35u8, 177u8, 129u8, 99u8, 24u8, 77u8, 223u8, 238u8, 24u8, 237u8, + 225u8, 5u8, 117u8, 163u8, 180u8, 139u8, 22u8, 169u8, 185u8, 60u8, + 217u8, + ], + ) + } + #[doc = " Slashing spans for stash accounts."] + pub fn slashing_spans( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::slashing::SlashingSpans, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "SlashingSpans", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 74u8, 169u8, 189u8, 252u8, 193u8, 191u8, 114u8, 107u8, 158u8, 125u8, + 252u8, 35u8, 177u8, 129u8, 99u8, 24u8, 77u8, 223u8, 238u8, 24u8, 237u8, + 225u8, 5u8, 117u8, 163u8, 180u8, 139u8, 22u8, 169u8, 185u8, 60u8, + 217u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::slashing::SpanRecord<::core::primitive::u128>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "SpanSlash", + vec![], + [ + 158u8, 168u8, 151u8, 108u8, 4u8, 168u8, 253u8, 28u8, 69u8, 111u8, 99u8, + 235u8, 175u8, 72u8, 48u8, 238u8, 239u8, 142u8, 40u8, 142u8, 97u8, 77u8, + 72u8, 123u8, 210u8, 157u8, 119u8, 180u8, 205u8, 98u8, 110u8, 215u8, + ], + ) + } + #[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_iter1( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::slashing::SpanRecord<::core::primitive::u128>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "SpanSlash", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 158u8, 168u8, 151u8, 108u8, 4u8, 168u8, 253u8, 28u8, 69u8, 111u8, 99u8, + 235u8, 175u8, 72u8, 48u8, 238u8, 239u8, 142u8, 40u8, 142u8, 97u8, 77u8, + 72u8, 123u8, 210u8, 157u8, 119u8, 180u8, 205u8, 98u8, 110u8, 215u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_staking::slashing::SpanRecord<::core::primitive::u128>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "SpanSlash", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 158u8, 168u8, 151u8, 108u8, 4u8, 168u8, 253u8, 28u8, 69u8, 111u8, 99u8, + 235u8, 175u8, 72u8, 48u8, 238u8, 239u8, 142u8, 40u8, 142u8, 97u8, 77u8, + 72u8, 123u8, 210u8, 157u8, 119u8, 180u8, 205u8, 98u8, 110u8, 215u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "CurrentPlannedSession", + vec![], + [ + 12u8, 47u8, 20u8, 104u8, 155u8, 181u8, 35u8, 91u8, 172u8, 97u8, 206u8, + 135u8, 185u8, 142u8, 46u8, 72u8, 32u8, 118u8, 225u8, 191u8, 28u8, + 130u8, 7u8, 38u8, 181u8, 233u8, 201u8, 8u8, 160u8, 161u8, 86u8, 204u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<(::core::primitive::u32, ::core::primitive::bool)>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "OffendingValidators", + vec![], + [ + 201u8, 31u8, 141u8, 182u8, 160u8, 180u8, 37u8, 226u8, 50u8, 65u8, + 103u8, 11u8, 38u8, 120u8, 200u8, 219u8, 219u8, 98u8, 185u8, 137u8, + 154u8, 20u8, 130u8, 163u8, 126u8, 185u8, 33u8, 194u8, 76u8, 172u8, + 70u8, 220u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_arithmetic::per_things::Percent, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Staking", + "ChillThreshold", + vec![], + [ + 133u8, 222u8, 1u8, 208u8, 212u8, 216u8, 247u8, 66u8, 178u8, 96u8, 35u8, + 112u8, 33u8, 245u8, 11u8, 249u8, 255u8, 212u8, 204u8, 161u8, 44u8, + 38u8, 126u8, 151u8, 140u8, 42u8, 253u8, 101u8, 1u8, 23u8, 239u8, 39u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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 = "Error for the session pallet."] + pub type Error = runtime_types::pallet_session::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_session::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetKeys { + pub keys: runtime_types::enjin_runtime::opaque::SessionKeys, + pub proof: ::std::vec::Vec<::core::primitive::u8>, + } + impl ::subxt::blocks::StaticExtrinsic for SetKeys { + const PALLET: &'static str = "Session"; + const CALL: &'static str = "set_keys"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PurgeKeys; + impl ::subxt::blocks::StaticExtrinsic for PurgeKeys { + const PALLET: &'static str = "Session"; + const CALL: &'static str = "purge_keys"; + } + } + 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 = "## Complexity"] + #[doc = "- `O(1)`. Actual cost depends on the number of length of `T::Keys::key_ids()` which is"] + #[doc = " fixed."] + pub fn set_keys( + &self, + keys: runtime_types::enjin_runtime::opaque::SessionKeys, + proof: ::std::vec::Vec<::core::primitive::u8>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Session", + "set_keys", + types::SetKeys { keys, proof }, + [ + 34u8, 174u8, 125u8, 16u8, 173u8, 107u8, 253u8, 141u8, 27u8, 177u8, + 211u8, 118u8, 29u8, 108u8, 84u8, 116u8, 138u8, 212u8, 123u8, 27u8, + 87u8, 60u8, 198u8, 48u8, 4u8, 150u8, 230u8, 8u8, 36u8, 1u8, 74u8, 13u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- `O(1)` in number of key types. Actual cost depends on the number of length of"] + #[doc = " `T::Keys::key_ids()` which is fixed."] + pub fn purge_keys(&self) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Session", + "purge_keys", + types::PurgeKeys {}, + [ + 215u8, 204u8, 146u8, 236u8, 32u8, 78u8, 198u8, 79u8, 85u8, 214u8, 15u8, + 151u8, 158u8, 31u8, 146u8, 119u8, 119u8, 204u8, 151u8, 169u8, 226u8, + 67u8, 217u8, 39u8, 241u8, 245u8, 203u8, 240u8, 203u8, 172u8, 16u8, + 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_session::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::subxt::utils::AccountId32>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Session", + "Validators", + vec![], + [ + 50u8, 86u8, 154u8, 222u8, 249u8, 209u8, 156u8, 22u8, 155u8, 25u8, + 133u8, 194u8, 210u8, 50u8, 38u8, 28u8, 139u8, 201u8, 90u8, 139u8, + 115u8, 12u8, 12u8, 141u8, 4u8, 178u8, 201u8, 241u8, 223u8, 234u8, 6u8, + 86u8, + ], + ) + } + #[doc = " Current index of the session."] + pub fn current_index( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Session", + "CurrentIndex", + vec![], + [ + 167u8, 151u8, 125u8, 150u8, 159u8, 21u8, 78u8, 217u8, 237u8, 183u8, + 135u8, 65u8, 187u8, 114u8, 188u8, 206u8, 16u8, 32u8, 69u8, 208u8, + 134u8, 159u8, 232u8, 224u8, 243u8, 27u8, 31u8, 166u8, 145u8, 44u8, + 221u8, 230u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::bool, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Session", + "QueuedChanged", + vec![], + [ + 184u8, 137u8, 224u8, 137u8, 31u8, 236u8, 95u8, 164u8, 102u8, 225u8, + 198u8, 227u8, 140u8, 37u8, 113u8, 57u8, 59u8, 4u8, 202u8, 102u8, 117u8, + 36u8, 226u8, 64u8, 113u8, 141u8, 199u8, 111u8, 99u8, 144u8, 198u8, + 153u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<( + ::subxt::utils::AccountId32, + runtime_types::enjin_runtime::opaque::SessionKeys, + )>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Session", + "QueuedKeys", + vec![], + [ + 112u8, 98u8, 60u8, 1u8, 187u8, 198u8, 207u8, 148u8, 164u8, 235u8, + 211u8, 169u8, 230u8, 39u8, 145u8, 166u8, 131u8, 53u8, 85u8, 171u8, + 223u8, 147u8, 137u8, 135u8, 42u8, 203u8, 37u8, 27u8, 67u8, 129u8, + 103u8, 129u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::core::primitive::u32>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Session", + "DisabledValidators", + vec![], + [ + 213u8, 19u8, 168u8, 234u8, 187u8, 200u8, 180u8, 97u8, 234u8, 189u8, + 36u8, 233u8, 158u8, 184u8, 45u8, 35u8, 129u8, 213u8, 133u8, 8u8, 104u8, + 183u8, 46u8, 68u8, 154u8, 240u8, 132u8, 22u8, 247u8, 11u8, 54u8, 221u8, + ], + ) + } + #[doc = " The next session keys for a validator."] + pub fn next_keys_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::enjin_runtime::opaque::SessionKeys, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Session", + "NextKeys", + vec![], + [ + 204u8, 75u8, 94u8, 239u8, 45u8, 174u8, 177u8, 27u8, 185u8, 143u8, 4u8, + 2u8, 157u8, 212u8, 9u8, 103u8, 51u8, 160u8, 35u8, 61u8, 118u8, 144u8, + 32u8, 217u8, 9u8, 159u8, 15u8, 177u8, 91u8, 108u8, 0u8, 219u8, + ], + ) + } + #[doc = " The next session keys for a validator."] + pub fn next_keys( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::enjin_runtime::opaque::SessionKeys, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Session", + "NextKeys", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 204u8, 75u8, 94u8, 239u8, 45u8, 174u8, 177u8, 27u8, 185u8, 143u8, 4u8, + 2u8, 157u8, 212u8, 9u8, 103u8, 51u8, 160u8, 35u8, 61u8, 118u8, 144u8, + 32u8, 217u8, 9u8, 159u8, 15u8, 177u8, 91u8, 108u8, 0u8, 219u8, + ], + ) + } + #[doc = " The owner of a key. The key is the `KeyTypeId` + the encoded key."] + pub fn key_owner_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::AccountId32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Session", + "KeyOwner", + vec![], + [ + 217u8, 204u8, 21u8, 114u8, 247u8, 129u8, 32u8, 242u8, 93u8, 91u8, + 253u8, 253u8, 248u8, 90u8, 12u8, 202u8, 195u8, 25u8, 18u8, 100u8, + 253u8, 109u8, 88u8, 77u8, 217u8, 140u8, 51u8, 40u8, 118u8, 35u8, 107u8, + 206u8, + ], + ) + } + #[doc = " The owner of a key. The key is the `KeyTypeId` + the encoded key."] + pub fn key_owner_iter1( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::AccountId32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Session", + "KeyOwner", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 217u8, 204u8, 21u8, 114u8, 247u8, 129u8, 32u8, 242u8, 93u8, 91u8, + 253u8, 253u8, 248u8, 90u8, 12u8, 202u8, 195u8, 25u8, 18u8, 100u8, + 253u8, 109u8, 88u8, 77u8, 217u8, 140u8, 51u8, 40u8, 118u8, 35u8, 107u8, + 206u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::AccountId32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Session", + "KeyOwner", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 217u8, 204u8, 21u8, 114u8, 247u8, 129u8, 32u8, 242u8, 93u8, 91u8, + 253u8, 253u8, 248u8, 90u8, 12u8, 202u8, 195u8, 25u8, 18u8, 100u8, + 253u8, 109u8, 88u8, 77u8, 217u8, 140u8, 51u8, 40u8, 118u8, 35u8, 107u8, + 206u8, + ], + ) + } + } + } + } + pub mod grandpa { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_grandpa::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_grandpa::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ReportEquivocation { + pub equivocation_proof: ::std::boxed::Box< + runtime_types::sp_consensus_grandpa::EquivocationProof< + ::subxt::utils::H256, + ::core::primitive::u32, + >, + >, + pub key_owner_proof: runtime_types::sp_session::MembershipProof, + } + impl ::subxt::blocks::StaticExtrinsic for ReportEquivocation { + const PALLET: &'static str = "Grandpa"; + const CALL: &'static str = "report_equivocation"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ReportEquivocationUnsigned { + pub equivocation_proof: ::std::boxed::Box< + runtime_types::sp_consensus_grandpa::EquivocationProof< + ::subxt::utils::H256, + ::core::primitive::u32, + >, + >, + pub key_owner_proof: runtime_types::sp_session::MembershipProof, + } + impl ::subxt::blocks::StaticExtrinsic for ReportEquivocationUnsigned { + const PALLET: &'static str = "Grandpa"; + const CALL: &'static str = "report_equivocation_unsigned"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct NoteStalled { + pub delay: ::core::primitive::u32, + pub best_finalized_block_number: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for NoteStalled { + const PALLET: &'static str = "Grandpa"; + const CALL: &'static str = "note_stalled"; + } + } + 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_consensus_grandpa::EquivocationProof< + ::subxt::utils::H256, + ::core::primitive::u32, + >, + key_owner_proof: runtime_types::sp_session::MembershipProof, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Grandpa", + "report_equivocation", + types::ReportEquivocation { + equivocation_proof: ::std::boxed::Box::new(equivocation_proof), + key_owner_proof, + }, + [ + 11u8, 183u8, 81u8, 93u8, 41u8, 7u8, 70u8, 155u8, 8u8, 57u8, 177u8, + 245u8, 131u8, 79u8, 236u8, 118u8, 147u8, 114u8, 40u8, 204u8, 177u8, + 2u8, 43u8, 42u8, 2u8, 201u8, 202u8, 120u8, 150u8, 109u8, 108u8, 156u8, + ], + ) + } + #[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_consensus_grandpa::EquivocationProof< + ::subxt::utils::H256, + ::core::primitive::u32, + >, + key_owner_proof: runtime_types::sp_session::MembershipProof, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Grandpa", + "report_equivocation_unsigned", + types::ReportEquivocationUnsigned { + equivocation_proof: ::std::boxed::Box::new(equivocation_proof), + key_owner_proof, + }, + [ + 141u8, 133u8, 227u8, 65u8, 22u8, 181u8, 108u8, 9u8, 157u8, 27u8, 124u8, + 53u8, 177u8, 27u8, 5u8, 16u8, 193u8, 66u8, 59u8, 87u8, 143u8, 238u8, + 251u8, 167u8, 117u8, 138u8, 246u8, 236u8, 65u8, 148u8, 20u8, 131u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Grandpa", + "note_stalled", + types::NoteStalled { + delay, + best_finalized_block_number, + }, + [ + 158u8, 25u8, 64u8, 114u8, 131u8, 139u8, 227u8, 132u8, 42u8, 107u8, + 40u8, 249u8, 18u8, 93u8, 254u8, 86u8, 37u8, 67u8, 250u8, 35u8, 241u8, + 194u8, 209u8, 20u8, 39u8, 75u8, 186u8, 21u8, 48u8, 124u8, 151u8, 31u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "New authority set has been applied."] + pub struct NewAuthorities { + pub authority_set: ::std::vec::Vec<( + runtime_types::sp_consensus_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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_grandpa::StoredState<::core::primitive::u32>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Grandpa", + "State", + vec![], + [ + 73u8, 71u8, 112u8, 83u8, 238u8, 75u8, 44u8, 9u8, 180u8, 33u8, 30u8, + 121u8, 98u8, 96u8, 61u8, 133u8, 16u8, 70u8, 30u8, 249u8, 34u8, 148u8, + 15u8, 239u8, 164u8, 157u8, 52u8, 27u8, 144u8, 52u8, 223u8, 109u8, + ], + ) + } + #[doc = " Pending change: (signaled at, scheduled change)."] + pub fn pending_change( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_grandpa::StoredPendingChange<::core::primitive::u32>, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Grandpa", + "PendingChange", + vec![], + [ + 150u8, 194u8, 185u8, 248u8, 239u8, 43u8, 141u8, 253u8, 61u8, 106u8, + 74u8, 164u8, 209u8, 204u8, 206u8, 200u8, 32u8, 38u8, 11u8, 78u8, 84u8, + 243u8, 181u8, 142u8, 179u8, 151u8, 81u8, 204u8, 244u8, 150u8, 137u8, + 250u8, + ], + ) + } + #[doc = " next block number where we can force a change."] + pub fn next_forced( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Grandpa", + "NextForced", + vec![], + [ + 3u8, 231u8, 56u8, 18u8, 87u8, 112u8, 227u8, 126u8, 180u8, 131u8, 255u8, + 141u8, 82u8, 34u8, 61u8, 47u8, 234u8, 37u8, 95u8, 62u8, 33u8, 235u8, + 231u8, 122u8, 125u8, 8u8, 223u8, 95u8, 255u8, 204u8, 40u8, 97u8, + ], + ) + } + #[doc = " `true` if we are currently stalled."] + pub fn stalled( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (::core::primitive::u32, ::core::primitive::u32), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Grandpa", + "Stalled", + vec![], + [ + 6u8, 81u8, 205u8, 142u8, 195u8, 48u8, 0u8, 247u8, 108u8, 170u8, 10u8, + 249u8, 72u8, 206u8, 32u8, 103u8, 109u8, 57u8, 51u8, 21u8, 144u8, 204u8, + 79u8, 8u8, 191u8, 185u8, 38u8, 34u8, 118u8, 223u8, 75u8, 241u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u64, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Grandpa", + "CurrentSetId", + vec![], + [ + 234u8, 215u8, 218u8, 42u8, 30u8, 76u8, 129u8, 40u8, 125u8, 137u8, + 207u8, 47u8, 46u8, 213u8, 159u8, 50u8, 175u8, 81u8, 155u8, 123u8, + 246u8, 175u8, 156u8, 68u8, 22u8, 113u8, 135u8, 137u8, 163u8, 18u8, + 115u8, 73u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Grandpa", + "SetIdSession", + vec![], + [ + 47u8, 0u8, 239u8, 121u8, 187u8, 213u8, 254u8, 50u8, 238u8, 10u8, 162u8, + 65u8, 189u8, 166u8, 37u8, 74u8, 82u8, 81u8, 160u8, 20u8, 180u8, 253u8, + 238u8, 18u8, 209u8, 203u8, 38u8, 148u8, 16u8, 105u8, 72u8, 169u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Grandpa", + "SetIdSession", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 47u8, 0u8, 239u8, 121u8, 187u8, 213u8, 254u8, 50u8, 238u8, 10u8, 162u8, + 65u8, 189u8, 166u8, 37u8, 74u8, 82u8, 81u8, 160u8, 20u8, 180u8, 253u8, + 238u8, 18u8, 209u8, 203u8, 38u8, 148u8, 16u8, 105u8, 72u8, 169u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " Max Authorities in use"] + pub fn max_authorities( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u64> { + ::subxt::constants::Address::new_static( + "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 = "Error for the treasury pallet."] + pub type Error = runtime_types::pallet_treasury::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_treasury::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ProposeSpend { + #[codec(compact)] + pub value: ::core::primitive::u128, + pub beneficiary: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for ProposeSpend { + const PALLET: &'static str = "Treasury"; + const CALL: &'static str = "propose_spend"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RejectProposal { + #[codec(compact)] + pub proposal_id: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RejectProposal { + const PALLET: &'static str = "Treasury"; + const CALL: &'static str = "reject_proposal"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ApproveProposal { + #[codec(compact)] + pub proposal_id: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ApproveProposal { + const PALLET: &'static str = "Treasury"; + const CALL: &'static str = "approve_proposal"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Spend { + #[codec(compact)] + pub amount: ::core::primitive::u128, + pub beneficiary: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for Spend { + const PALLET: &'static str = "Treasury"; + const CALL: &'static str = "spend"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveApproval { + #[codec(compact)] + pub proposal_id: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveApproval { + const PALLET: &'static str = "Treasury"; + const CALL: &'static str = "remove_approval"; + } + } + 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 = "## Complexity"] + #[doc = "- O(1)"] + pub fn propose_spend( + &self, + value: ::core::primitive::u128, + beneficiary: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Treasury", + "propose_spend", + types::ProposeSpend { value, beneficiary }, + [ + 250u8, 230u8, 64u8, 10u8, 93u8, 132u8, 194u8, 69u8, 91u8, 50u8, 98u8, + 212u8, 72u8, 218u8, 29u8, 149u8, 2u8, 190u8, 219u8, 4u8, 25u8, 110u8, + 5u8, 199u8, 196u8, 37u8, 64u8, 57u8, 207u8, 235u8, 164u8, 226u8, + ], + ) + } + #[doc = "Reject a proposed spend. The original deposit will be slashed."] + #[doc = ""] + #[doc = "May only be called from `T::RejectOrigin`."] + #[doc = ""] + #[doc = "## Complexity"] + #[doc = "- O(1)"] + pub fn reject_proposal( + &self, + proposal_id: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Treasury", + "reject_proposal", + types::RejectProposal { proposal_id }, + [ + 18u8, 166u8, 80u8, 141u8, 222u8, 230u8, 4u8, 36u8, 7u8, 76u8, 12u8, + 40u8, 145u8, 114u8, 12u8, 43u8, 223u8, 78u8, 189u8, 222u8, 120u8, 80u8, + 225u8, 215u8, 119u8, 68u8, 200u8, 15u8, 25u8, 172u8, 192u8, 173u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = " - O(1)."] + pub fn approve_proposal( + &self, + proposal_id: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Treasury", + "approve_proposal", + types::ApproveProposal { proposal_id }, + [ + 154u8, 176u8, 152u8, 97u8, 167u8, 177u8, 78u8, 9u8, 235u8, 229u8, + 199u8, 193u8, 214u8, 3u8, 16u8, 30u8, 4u8, 104u8, 27u8, 184u8, 100u8, + 65u8, 179u8, 13u8, 91u8, 62u8, 115u8, 5u8, 219u8, 211u8, 251u8, 153u8, + ], + ) + } + #[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, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Treasury", + "spend", + types::Spend { + amount, + beneficiary, + }, + [ + 67u8, 164u8, 134u8, 175u8, 103u8, 211u8, 117u8, 233u8, 164u8, 176u8, + 180u8, 84u8, 147u8, 120u8, 81u8, 75u8, 167u8, 98u8, 218u8, 173u8, 67u8, + 0u8, 21u8, 190u8, 134u8, 18u8, 183u8, 6u8, 161u8, 43u8, 50u8, 83u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- O(A) where `A` is the number of approvals"] + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Treasury", + "remove_approval", + types::RemoveApproval { proposal_id }, + [ + 180u8, 20u8, 39u8, 227u8, 29u8, 228u8, 234u8, 36u8, 155u8, 114u8, + 197u8, 135u8, 185u8, 31u8, 56u8, 247u8, 224u8, 168u8, 254u8, 233u8, + 250u8, 134u8, 186u8, 155u8, 108u8, 84u8, 94u8, 226u8, 207u8, 130u8, + 196u8, 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_treasury::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Treasury", + "ProposalCount", + vec![], + [ + 91u8, 238u8, 246u8, 106u8, 95u8, 66u8, 83u8, 134u8, 1u8, 225u8, 164u8, + 216u8, 113u8, 101u8, 203u8, 200u8, 113u8, 97u8, 246u8, 228u8, 140u8, + 29u8, 29u8, 48u8, 176u8, 137u8, 93u8, 230u8, 56u8, 75u8, 51u8, 149u8, + ], + ) + } + #[doc = " Proposals that have been made."] + pub fn proposals_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_treasury::Proposal< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Treasury", + "Proposals", + vec![], + [ + 207u8, 135u8, 145u8, 146u8, 48u8, 10u8, 252u8, 40u8, 20u8, 115u8, + 205u8, 41u8, 173u8, 83u8, 115u8, 46u8, 106u8, 40u8, 130u8, 157u8, + 213u8, 87u8, 45u8, 23u8, 14u8, 167u8, 99u8, 208u8, 153u8, 163u8, 141u8, + 55u8, + ], + ) + } + #[doc = " Proposals that have been made."] + pub fn proposals( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_treasury::Proposal< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Treasury", + "Proposals", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 207u8, 135u8, 145u8, 146u8, 48u8, 10u8, 252u8, 40u8, 20u8, 115u8, + 205u8, 41u8, 173u8, 83u8, 115u8, 46u8, 106u8, 40u8, 130u8, 157u8, + 213u8, 87u8, 45u8, 23u8, 14u8, 167u8, 99u8, 208u8, 153u8, 163u8, 141u8, + 55u8, + ], + ) + } + #[doc = " The amount which has been reported as inactive to Currency."] + pub fn deactivated( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Treasury", + "Deactivated", + vec![], + [ + 120u8, 221u8, 159u8, 56u8, 161u8, 44u8, 54u8, 233u8, 47u8, 114u8, + 170u8, 150u8, 52u8, 24u8, 137u8, 212u8, 122u8, 247u8, 40u8, 17u8, + 208u8, 130u8, 42u8, 154u8, 33u8, 222u8, 59u8, 116u8, 0u8, 15u8, 79u8, + 123u8, + ], + ) + } + #[doc = " Proposal indices that have been approved but not yet awarded."] + pub fn approvals( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u32, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Treasury", + "Approvals", + vec![], + [ + 78u8, 147u8, 186u8, 235u8, 17u8, 40u8, 247u8, 235u8, 67u8, 222u8, 3u8, + 14u8, 248u8, 17u8, 67u8, 180u8, 93u8, 161u8, 64u8, 35u8, 119u8, 194u8, + 187u8, 226u8, 135u8, 162u8, 147u8, 174u8, 139u8, 72u8, 99u8, 212u8, + ], + ) + } + } + } + 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::Address + { + ::subxt::constants::Address::new_static( + "Treasury", + "ProposalBond", + [ + 65u8, 93u8, 120u8, 165u8, 204u8, 81u8, 159u8, 163u8, 93u8, 135u8, + 114u8, 121u8, 147u8, 35u8, 215u8, 213u8, 4u8, 223u8, 83u8, 37u8, 225u8, + 200u8, 189u8, 156u8, 140u8, 36u8, 58u8, 46u8, 42u8, 232u8, 155u8, 0u8, + ], + ) + } + #[doc = " Minimum amount of funds that should be placed in a deposit for making a proposal."] + pub fn proposal_bond_minimum( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::option::Option<::core::primitive::u128>> + { + ::subxt::constants::Address::new_static( + "Treasury", + "ProposalBondMaximum", + [ + 198u8, 51u8, 89u8, 159u8, 124u8, 251u8, 51u8, 80u8, 167u8, 193u8, 44u8, + 199u8, 80u8, 36u8, 41u8, 130u8, 137u8, 229u8, 178u8, 208u8, 37u8, + 215u8, 169u8, 183u8, 180u8, 191u8, 140u8, 240u8, 250u8, 61u8, 42u8, + 147u8, + ], + ) + } + #[doc = " Period between successive spends."] + pub fn spend_period(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address + { + ::subxt::constants::Address::new_static( + "Treasury", + "Burn", + [ + 65u8, 93u8, 120u8, 165u8, 204u8, 81u8, 159u8, 163u8, 93u8, 135u8, + 114u8, 121u8, 147u8, 35u8, 215u8, 213u8, 4u8, 223u8, 83u8, 37u8, 225u8, + 200u8, 189u8, 156u8, 140u8, 36u8, 58u8, 46u8, 42u8, 232u8, 155u8, 0u8, + ], + ) + } + #[doc = " The treasury's pallet id, used for deriving its sovereign account ID."] + pub fn pallet_id( + &self, + ) -> ::subxt::constants::Address + { + ::subxt::constants::Address::new_static( + "Treasury", + "PalletId", + [ + 56u8, 243u8, 53u8, 83u8, 154u8, 179u8, 170u8, 80u8, 133u8, 173u8, 61u8, + 161u8, 47u8, 225u8, 146u8, 21u8, 50u8, 229u8, 248u8, 27u8, 104u8, 58u8, + 129u8, 197u8, 102u8, 160u8, 168u8, 205u8, 154u8, 42u8, 217u8, 53u8, + ], + ) + } + #[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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_arithmetic::fixed_point::FixedU128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "TransactionPayment", + "NextFeeMultiplier", + vec![], + [ + 247u8, 39u8, 81u8, 170u8, 225u8, 226u8, 82u8, 147u8, 34u8, 113u8, + 147u8, 213u8, 59u8, 80u8, 139u8, 35u8, 36u8, 196u8, 152u8, 19u8, 9u8, + 159u8, 176u8, 79u8, 249u8, 201u8, 170u8, 1u8, 129u8, 79u8, 146u8, + 197u8, + ], + ) + } + pub fn storage_version( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_transaction_payment::Releases, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "TransactionPayment", + "StorageVersion", + vec![], + [ + 105u8, 243u8, 158u8, 241u8, 159u8, 231u8, 253u8, 6u8, 4u8, 32u8, 85u8, + 178u8, 126u8, 31u8, 203u8, 134u8, 154u8, 38u8, 122u8, 155u8, 150u8, + 251u8, 174u8, 15u8, 74u8, 134u8, 216u8, 244u8, 168u8, 175u8, 158u8, + 144u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u8> { + ::subxt::constants::Address::new_static( + "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 sudo { + use super::root_mod; + use super::runtime_types; + #[doc = "Error for the Sudo pallet"] + pub type Error = runtime_types::pallet_sudo::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_sudo::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Sudo { + pub call: ::std::boxed::Box, + } + impl ::subxt::blocks::StaticExtrinsic for Sudo { + const PALLET: &'static str = "Sudo"; + const CALL: &'static str = "sudo"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SudoUncheckedWeight { + pub call: ::std::boxed::Box, + pub weight: runtime_types::sp_weights::weight_v2::Weight, + } + impl ::subxt::blocks::StaticExtrinsic for SudoUncheckedWeight { + const PALLET: &'static str = "Sudo"; + const CALL: &'static str = "sudo_unchecked_weight"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetKey { + pub new: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for SetKey { + const PALLET: &'static str = "Sudo"; + const CALL: &'static str = "set_key"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SudoAs { + pub who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub call: ::std::boxed::Box, + } + impl ::subxt::blocks::StaticExtrinsic for SudoAs { + const PALLET: &'static str = "Sudo"; + const CALL: &'static str = "sudo_as"; + } + } + 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 = "## Complexity"] + #[doc = "- O(1)."] + pub fn sudo( + &self, + call: runtime_types::enjin_runtime::RuntimeCall, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Sudo", + "sudo", + types::Sudo { + call: ::std::boxed::Box::new(call), + }, + [ + 82u8, 240u8, 64u8, 227u8, 1u8, 239u8, 195u8, 170u8, 122u8, 179u8, + 255u8, 26u8, 238u8, 208u8, 0u8, 55u8, 122u8, 140u8, 72u8, 199u8, 216u8, + 218u8, 251u8, 30u8, 117u8, 18u8, 251u8, 9u8, 200u8, 255u8, 106u8, + 202u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- O(1)."] + pub fn sudo_unchecked_weight( + &self, + call: runtime_types::enjin_runtime::RuntimeCall, + weight: runtime_types::sp_weights::weight_v2::Weight, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Sudo", + "sudo_unchecked_weight", + types::SudoUncheckedWeight { + call: ::std::boxed::Box::new(call), + weight, + }, + [ + 65u8, 129u8, 245u8, 196u8, 215u8, 228u8, 37u8, 28u8, 82u8, 172u8, + 136u8, 60u8, 128u8, 31u8, 228u8, 133u8, 88u8, 156u8, 77u8, 186u8, + 181u8, 2u8, 223u8, 97u8, 220u8, 45u8, 246u8, 80u8, 250u8, 105u8, 97u8, + 177u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- O(1)."] + pub fn set_key( + &self, + new: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Sudo", + "set_key", + types::SetKey { new }, + [ + 9u8, 73u8, 39u8, 205u8, 188u8, 127u8, 143u8, 54u8, 128u8, 94u8, 8u8, + 227u8, 197u8, 44u8, 70u8, 93u8, 228u8, 196u8, 64u8, 165u8, 226u8, + 158u8, 101u8, 192u8, 22u8, 193u8, 102u8, 84u8, 21u8, 35u8, 92u8, 198u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- O(1)."] + pub fn sudo_as( + &self, + who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + call: runtime_types::enjin_runtime::RuntimeCall, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Sudo", + "sudo_as", + types::SudoAs { + who, + call: ::std::boxed::Box::new(call), + }, + [ + 103u8, 111u8, 134u8, 129u8, 141u8, 242u8, 237u8, 170u8, 32u8, 234u8, + 80u8, 26u8, 188u8, 1u8, 127u8, 42u8, 167u8, 8u8, 212u8, 123u8, 76u8, + 63u8, 77u8, 182u8, 224u8, 252u8, 192u8, 99u8, 231u8, 173u8, 52u8, + 138u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::AccountId32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Sudo", + "Key", + vec![], + [ + 72u8, 14u8, 225u8, 162u8, 205u8, 247u8, 227u8, 105u8, 116u8, 57u8, 4u8, + 31u8, 84u8, 137u8, 227u8, 228u8, 133u8, 245u8, 206u8, 227u8, 117u8, + 36u8, 252u8, 151u8, 107u8, 15u8, 180u8, 4u8, 4u8, 152u8, 195u8, 144u8, + ], + ) + } + } + } + } + pub mod im_online { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_im_online::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_im_online::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + } + impl ::subxt::blocks::StaticExtrinsic for Heartbeat { + const PALLET: &'static str = "ImOnline"; + const CALL: &'static str = "heartbeat"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "## Complexity:"] + #[doc = "- `O(K + E)` where K is length of `Keys` (heartbeat.validators_len) and E is length of"] + #[doc = " `heartbeat.network_state.external_address`"] + #[doc = " - `O(K)`: decoding of length `K`"] + #[doc = " - `O(E)`: decoding/encoding of length `E`"] + 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::Payload { + ::subxt::tx::Payload::new_static( + "ImOnline", + "heartbeat", + types::Heartbeat { + heartbeat, + signature, + }, + [ + 24u8, 24u8, 223u8, 6u8, 162u8, 170u8, 69u8, 242u8, 215u8, 74u8, 140u8, + 123u8, 123u8, 10u8, 163u8, 19u8, 63u8, 121u8, 22u8, 12u8, 192u8, 69u8, + 48u8, 223u8, 39u8, 129u8, 236u8, 87u8, 142u8, 167u8, 129u8, 184u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ImOnline", + "HeartbeatAfter", + vec![], + [ + 36u8, 179u8, 76u8, 254u8, 3u8, 184u8, 154u8, 142u8, 70u8, 104u8, 44u8, + 244u8, 39u8, 97u8, 31u8, 31u8, 93u8, 228u8, 185u8, 224u8, 13u8, 160u8, + 231u8, 210u8, 110u8, 143u8, 116u8, 29u8, 0u8, 215u8, 217u8, 137u8, + ], + ) + } + #[doc = " The current set of keys that may issue a heartbeat."] + pub fn keys( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::weak_bounded_vec::WeakBoundedVec< + runtime_types::pallet_im_online::sr25519::app_sr25519::Public, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ImOnline", + "Keys", + vec![], + [ + 111u8, 104u8, 188u8, 46u8, 152u8, 140u8, 137u8, 244u8, 52u8, 214u8, + 115u8, 156u8, 39u8, 239u8, 15u8, 168u8, 193u8, 125u8, 57u8, 195u8, + 250u8, 156u8, 234u8, 222u8, 222u8, 253u8, 135u8, 232u8, 196u8, 163u8, + 29u8, 218u8, + ], + ) + } + #[doc = " For each session index, we keep a mapping of `SessionIndex` and `AuthIndex` to"] + #[doc = " `WrapperOpaque`."] + pub fn received_heartbeats_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::frame_support::traits::misc::WrapperOpaque< + runtime_types::pallet_im_online::BoundedOpaqueNetworkState, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ImOnline", + "ReceivedHeartbeats", + vec![], + [ + 50u8, 203u8, 165u8, 39u8, 243u8, 200u8, 26u8, 241u8, 83u8, 248u8, + 200u8, 104u8, 79u8, 169u8, 170u8, 120u8, 74u8, 195u8, 58u8, 235u8, + 39u8, 177u8, 215u8, 47u8, 155u8, 8u8, 164u8, 9u8, 91u8, 3u8, 71u8, + 242u8, + ], + ) + } + #[doc = " For each session index, we keep a mapping of `SessionIndex` and `AuthIndex` to"] + #[doc = " `WrapperOpaque`."] + pub fn received_heartbeats_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::frame_support::traits::misc::WrapperOpaque< + runtime_types::pallet_im_online::BoundedOpaqueNetworkState, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ImOnline", + "ReceivedHeartbeats", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 50u8, 203u8, 165u8, 39u8, 243u8, 200u8, 26u8, 241u8, 83u8, 248u8, + 200u8, 104u8, 79u8, 169u8, 170u8, 120u8, 74u8, 195u8, 58u8, 235u8, + 39u8, 177u8, 215u8, 47u8, 155u8, 8u8, 164u8, 9u8, 91u8, 3u8, 71u8, + 242u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::frame_support::traits::misc::WrapperOpaque< + runtime_types::pallet_im_online::BoundedOpaqueNetworkState, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ImOnline", + "ReceivedHeartbeats", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 50u8, 203u8, 165u8, 39u8, 243u8, 200u8, 26u8, 241u8, 83u8, 248u8, + 200u8, 104u8, 79u8, 169u8, 170u8, 120u8, 74u8, 195u8, 58u8, 235u8, + 39u8, 177u8, 215u8, 47u8, 155u8, 8u8, 164u8, 9u8, 91u8, 3u8, 71u8, + 242u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ImOnline", + "AuthoredBlocks", + vec![], + [ + 123u8, 76u8, 230u8, 113u8, 65u8, 255u8, 99u8, 79u8, 131u8, 139u8, + 218u8, 20u8, 174u8, 191u8, 224u8, 67u8, 137u8, 48u8, 146u8, 209u8, + 148u8, 69u8, 130u8, 9u8, 173u8, 253u8, 206u8, 196u8, 68u8, 160u8, + 233u8, 126u8, + ], + ) + } + #[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_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ImOnline", + "AuthoredBlocks", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 123u8, 76u8, 230u8, 113u8, 65u8, 255u8, 99u8, 79u8, 131u8, 139u8, + 218u8, 20u8, 174u8, 191u8, 224u8, 67u8, 137u8, 48u8, 146u8, 209u8, + 148u8, 69u8, 130u8, 9u8, 173u8, 253u8, 206u8, 196u8, 68u8, 160u8, + 233u8, 126u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ImOnline", + "AuthoredBlocks", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 123u8, 76u8, 230u8, 113u8, 65u8, 255u8, 99u8, 79u8, 131u8, 139u8, + 218u8, 20u8, 174u8, 191u8, 224u8, 67u8, 137u8, 48u8, 146u8, 209u8, + 148u8, 69u8, 130u8, 9u8, 173u8, 253u8, 206u8, 196u8, 68u8, 160u8, + 233u8, 126u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u64> { + ::subxt::constants::Address::new_static( + "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 voter_list { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_bags_list::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_bags_list::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Rebag { + pub dislocated: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for Rebag { + const PALLET: &'static str = "VoterList"; + const CALL: &'static str = "rebag"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PutInFrontOf { + pub lighter: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for PutInFrontOf { + const PALLET: &'static str = "VoterList"; + const CALL: &'static str = "put_in_front_of"; + } + } + 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, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "VoterList", + "rebag", + types::Rebag { dislocated }, + [ + 9u8, 111u8, 68u8, 237u8, 32u8, 21u8, 214u8, 84u8, 11u8, 39u8, 94u8, + 43u8, 198u8, 46u8, 91u8, 147u8, 194u8, 3u8, 35u8, 171u8, 95u8, 248u8, + 78u8, 0u8, 7u8, 99u8, 2u8, 124u8, 139u8, 42u8, 109u8, 226u8, + ], + ) + } + #[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, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "VoterList", + "put_in_front_of", + types::PutInFrontOf { lighter }, + [ + 61u8, 76u8, 164u8, 177u8, 140u8, 44u8, 127u8, 198u8, 195u8, 241u8, + 36u8, 80u8, 32u8, 85u8, 183u8, 130u8, 137u8, 128u8, 16u8, 203u8, 184u8, + 19u8, 151u8, 55u8, 10u8, 194u8, 162u8, 8u8, 211u8, 110u8, 126u8, 75u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_bags_list::list::Node, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "VoterList", + "ListNodes", + vec![], + [ + 240u8, 139u8, 78u8, 185u8, 159u8, 185u8, 33u8, 229u8, 171u8, 222u8, + 54u8, 81u8, 104u8, 170u8, 49u8, 232u8, 29u8, 117u8, 193u8, 68u8, 225u8, + 180u8, 46u8, 199u8, 100u8, 26u8, 99u8, 216u8, 74u8, 248u8, 73u8, 144u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_bags_list::list::Node, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "VoterList", + "ListNodes", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 240u8, 139u8, 78u8, 185u8, 159u8, 185u8, 33u8, 229u8, 171u8, 222u8, + 54u8, 81u8, 104u8, 170u8, 49u8, 232u8, 29u8, 117u8, 193u8, 68u8, 225u8, + 180u8, 46u8, 199u8, 100u8, 26u8, 99u8, 216u8, 74u8, 248u8, 73u8, 144u8, + ], + ) + } + #[doc = "Counter for the related counted storage map"] + pub fn counter_for_list_nodes( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "VoterList", + "CounterForListNodes", + vec![], + [ + 126u8, 150u8, 201u8, 81u8, 155u8, 79u8, 50u8, 48u8, 120u8, 170u8, 3u8, + 104u8, 112u8, 254u8, 106u8, 46u8, 108u8, 126u8, 158u8, 245u8, 95u8, + 88u8, 236u8, 89u8, 79u8, 172u8, 13u8, 146u8, 202u8, 151u8, 122u8, + 132u8, + ], + ) + } + #[doc = " A bag stored in storage."] + #[doc = ""] + #[doc = " Stores a `Bag` struct, which stores head and tail pointers to itself."] + pub fn list_bags_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_bags_list::list::Bag, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "VoterList", + "ListBags", + vec![], + [ + 98u8, 52u8, 177u8, 147u8, 244u8, 169u8, 45u8, 213u8, 76u8, 163u8, 47u8, + 96u8, 197u8, 245u8, 17u8, 208u8, 86u8, 15u8, 233u8, 156u8, 165u8, 44u8, + 164u8, 202u8, 117u8, 167u8, 209u8, 193u8, 218u8, 235u8, 140u8, 158u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_bags_list::list::Bag, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "VoterList", + "ListBags", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 98u8, 52u8, 177u8, 147u8, 244u8, 169u8, 45u8, 213u8, 76u8, 163u8, 47u8, + 96u8, 197u8, 245u8, 17u8, 208u8, 86u8, 15u8, 233u8, 156u8, 165u8, 44u8, + 164u8, 202u8, 117u8, 167u8, 209u8, 193u8, 218u8, 235u8, 140u8, 158u8, + ], + ) + } + } + } + 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::Address<::std::vec::Vec<::core::primitive::u64>> + { + ::subxt::constants::Address::new_static( + "VoterList", + "BagThresholds", + [ + 215u8, 118u8, 183u8, 172u8, 4u8, 42u8, 248u8, 108u8, 4u8, 110u8, 43u8, + 165u8, 228u8, 7u8, 36u8, 30u8, 135u8, 184u8, 56u8, 201u8, 107u8, 68u8, + 25u8, 164u8, 134u8, 32u8, 82u8, 107u8, 200u8, 219u8, 212u8, 198u8, + ], + ) + } + } + } + } + pub mod nomination_pools { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_nomination_pools::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_nomination_pools::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Bond { + pub pool_id: ::core::primitive::u32, + pub amount: runtime_types::pallet_nomination_pools::types::BondValue< + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Bond { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "bond"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Unbond { + pub pool_id: ::core::primitive::u32, + pub member_account: + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub unbonding_points: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for Unbond { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "unbond"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PoolWithdrawUnbonded { + pub pool_id: ::core::primitive::u32, + pub num_slashing_spans: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for PoolWithdrawUnbonded { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "pool_withdraw_unbonded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct WithdrawUnbonded { + pub pool_id: ::core::primitive::u32, + pub member_account: + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub num_slashing_spans: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for WithdrawUnbonded { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "withdraw_unbonded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Create { + pub token_id: ::core::primitive::u128, + #[codec(compact)] + pub deposit: ::core::primitive::u128, + #[codec(compact)] + pub capacity: ::core::primitive::u128, + #[codec(compact)] + pub duration: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for Create { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "create"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Nominate { + pub pool_id: ::core::primitive::u32, + pub validators: ::std::vec::Vec<::subxt::utils::AccountId32>, + } + impl ::subxt::blocks::StaticExtrinsic for Nominate { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "nominate"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetConfigs { + pub min_join_bond: runtime_types::pallet_nomination_pools::types::ConfigOp< + ::core::primitive::u128, + >, + pub min_create_bond: runtime_types::pallet_nomination_pools::types::ConfigOp< + ::core::primitive::u128, + >, + pub global_max_commission: + runtime_types::pallet_nomination_pools::types::ConfigOp< + runtime_types::sp_arithmetic::per_things::Perbill, + >, + pub required_payout_count: + runtime_types::pallet_nomination_pools::types::ConfigOp< + runtime_types::sp_arithmetic::per_things::Perbill, + >, + } + impl ::subxt::blocks::StaticExtrinsic for SetConfigs { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "set_configs"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Chill { + pub pool_id: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for Chill { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "chill"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Destroy { + pub pool_id: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for Destroy { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "destroy"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PayoutRewards { + pub validator_stash: ::subxt::utils::AccountId32, + pub era: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for PayoutRewards { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "payout_rewards"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ProcessPayouts { + pub pool_count: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ProcessPayouts { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "process_payouts"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Mutate { + pub pool_id: ::core::primitive::u32, + pub mutation: runtime_types::pallet_nomination_pools::types::PoolMutation< + ::core::primitive::u32, + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Mutate { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "mutate"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UnbondDeposit { + pub pool_id: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for UnbondDeposit { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "unbond_deposit"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct WithdrawDeposit { + pub pool_id: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for WithdrawDeposit { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "withdraw_deposit"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct WithdrawFreeBalance { + pub pool_id: ::core::primitive::u32, + pub destination: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub amount: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for WithdrawFreeBalance { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "withdraw_free_balance"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetStakingInfo { + pub info: runtime_types::pallet_nomination_pools::types::StakingInfo, + } + impl ::subxt::blocks::StaticExtrinsic for SetStakingInfo { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "set_staking_info"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct QueueEarlyBirdBonus { + pub pool_count: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for QueueEarlyBirdBonus { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "queue_early_bird_bonus"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DistributeEarlyBirdBonus { + pub transfer_count: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for DistributeEarlyBirdBonus { + const PALLET: &'static str = "NominationPools"; + const CALL: &'static str = "distribute_early_bird_bonus"; + } + } + 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. The sENJ token will be minted"] + #[doc = "and transferred to `origin`."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = "- `origin`: the caller"] + #[doc = "- `pool_id`: the pool id to bond"] + #[doc = "- `amount`: the amount of tokens deposited into the pool"] + #[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 bond( + &self, + pool_id: ::core::primitive::u32, + amount: runtime_types::pallet_nomination_pools::types::BondValue< + ::core::primitive::u128, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "bond", + types::Bond { pool_id, amount }, + [ + 71u8, 36u8, 14u8, 127u8, 225u8, 195u8, 20u8, 168u8, 200u8, 173u8, 38u8, + 56u8, 194u8, 49u8, 8u8, 76u8, 154u8, 130u8, 71u8, 219u8, 185u8, 196u8, + 96u8, 131u8, 153u8, 174u8, 20u8, 7u8, 117u8, 82u8, 104u8, 72u8, + ], + ) + } + #[doc = "Unbond up to `unbonding_points` of the `member_account`'s funds from the pool by burning"] + #[doc = "sENJ."] + #[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 holding the pool's token. This is refereed to as"] + #[doc = " a kick."] + #[doc = "* The pool is destroying."] + #[doc = "* The pool is destroying and no other members are in the pool."] + #[doc = ""] + #[doc = "## Conditions for permissioned dispatch (i.e. the caller is also the"] + #[doc = "`member_account`):"] + #[doc = ""] + #[doc = "* The caller is not the last member."] + #[doc = "* The caller is the last member and the pool is destroying."] + #[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, + pool_id: ::core::primitive::u32, + member_account: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + unbonding_points: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "unbond", + types::Unbond { + pool_id, + member_account, + unbonding_points, + }, + [ + 255u8, 185u8, 8u8, 130u8, 176u8, 207u8, 116u8, 186u8, 244u8, 98u8, + 14u8, 30u8, 7u8, 75u8, 237u8, 222u8, 154u8, 66u8, 249u8, 234u8, 177u8, + 28u8, 88u8, 159u8, 222u8, 157u8, 187u8, 196u8, 199u8, 114u8, 32u8, + 207u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "pool_withdraw_unbonded", + types::PoolWithdrawUnbonded { + pool_id, + num_slashing_spans, + }, + [ + 145u8, 39u8, 154u8, 109u8, 24u8, 233u8, 144u8, 66u8, 28u8, 252u8, + 180u8, 5u8, 54u8, 123u8, 28u8, 182u8, 26u8, 156u8, 69u8, 105u8, 226u8, + 208u8, 154u8, 34u8, 22u8, 201u8, 139u8, 104u8, 198u8, 195u8, 247u8, + 49u8, + ], + ) + } + #[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."] + #[doc = "* The target is the only member in the sub pools."] + #[doc = "* The pool is blocked and the caller is either the admin or state-toggler."] + #[doc = ""] + #[doc = "# Conditions for permissioned dispatch"] + #[doc = ""] + #[doc = "* The caller is the target and they are not the last member."] + #[doc = ""] + #[doc = "# Note"] + #[doc = ""] + #[doc = "If the target is the last member, the pool will be destroyed."] + pub fn withdraw_unbonded( + &self, + pool_id: ::core::primitive::u32, + member_account: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + num_slashing_spans: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "withdraw_unbonded", + types::WithdrawUnbonded { + pool_id, + member_account, + num_slashing_spans, + }, + [ + 249u8, 20u8, 234u8, 157u8, 184u8, 122u8, 253u8, 255u8, 118u8, 176u8, + 11u8, 193u8, 187u8, 63u8, 238u8, 25u8, 239u8, 254u8, 159u8, 98u8, 39u8, + 32u8, 67u8, 104u8, 240u8, 143u8, 212u8, 4u8, 56u8, 46u8, 24u8, 78u8, + ], + ) + } + #[doc = "Create a new nomination pool."] + #[doc = ""] + #[doc = "# Arguments"] + #[doc = ""] + #[doc = "* `token_id` - Token that that will control the pool. This token must be from the"] + #[doc = " [`Config::PoolCollectionId`] collection and it must be held by the caller."] + #[doc = "* `deposit` - The amount of funds to delegate to the pool. This also acts as a deposit"] + #[doc = " because the pool's creator cannot fully unbond funds until the pool is destroyed."] + #[doc = "* `capacity` - The maximum total balance allowed in the pool. This is measured in sENJ."] + #[doc = " It must be below the pool's capacity. See `Capacity` section in crate level docs."] + #[doc = "* `duration` - The duration in blocks of the pool's bonus cycle"] + #[doc = ""] + #[doc = "# Note"] + #[doc = ""] + #[doc = "In addition to `deposit`, the caller will transfer the existential deposit for the"] + #[doc = "pool's accounts; so the caller needs at have at least `deposit + existential_deposit *"] + #[doc = "2` transferable."] + pub fn create( + &self, + token_id: ::core::primitive::u128, + deposit: ::core::primitive::u128, + capacity: ::core::primitive::u128, + duration: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "create", + types::Create { + token_id, + deposit, + capacity, + duration, + }, + [ + 232u8, 182u8, 4u8, 226u8, 86u8, 50u8, 112u8, 160u8, 130u8, 94u8, 123u8, + 86u8, 63u8, 10u8, 138u8, 177u8, 39u8, 107u8, 75u8, 57u8, 192u8, 154u8, + 244u8, 150u8, 206u8, 162u8, 162u8, 81u8, 169u8, 69u8, 132u8, 106u8, + ], + ) + } + #[doc = "Nominate on behalf of the pool."] + #[doc = ""] + #[doc = "The dispatch origin of this call must be signed by the holder of the pool token."] + #[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::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "nominate", + types::Nominate { + pool_id, + validators, + }, + [ + 118u8, 80u8, 137u8, 47u8, 102u8, 9u8, 20u8, 136u8, 76u8, 164u8, 161u8, + 114u8, 33u8, 159u8, 204u8, 49u8, 233u8, 199u8, 246u8, 67u8, 144u8, + 169u8, 211u8, 67u8, 12u8, 68u8, 198u8, 149u8, 87u8, 62u8, 226u8, 72u8, + ], + ) + } + #[doc = "Update configurations for the nomination pools. Callable only by"] + #[doc = "[`Config::ForceOrigin`]."] + #[doc = ""] + #[doc = "# Arguments"] + #[doc = ""] + #[doc = "* `min_join_bond` - Set [`MinJoinBond`]."] + #[doc = "* `min_create_bond` - Set [`MinCreateBond`]."] + #[doc = "* `global_max_commission` - Set [`GlobalMaxCommission`]."] + pub fn set_configs( + &self, + min_join_bond: runtime_types::pallet_nomination_pools::types::ConfigOp< + ::core::primitive::u128, + >, + min_create_bond: runtime_types::pallet_nomination_pools::types::ConfigOp< + ::core::primitive::u128, + >, + global_max_commission: runtime_types::pallet_nomination_pools::types::ConfigOp< + runtime_types::sp_arithmetic::per_things::Perbill, + >, + required_payout_count: runtime_types::pallet_nomination_pools::types::ConfigOp< + runtime_types::sp_arithmetic::per_things::Perbill, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "set_configs", + types::SetConfigs { + min_join_bond, + min_create_bond, + global_max_commission, + required_payout_count, + }, + [ + 101u8, 18u8, 236u8, 31u8, 242u8, 117u8, 44u8, 93u8, 127u8, 235u8, + 229u8, 123u8, 235u8, 86u8, 64u8, 209u8, 198u8, 151u8, 14u8, 69u8, 40u8, + 36u8, 40u8, 137u8, 64u8, 116u8, 242u8, 153u8, 68u8, 237u8, 70u8, 150u8, + ], + ) + } + #[doc = "Chill on behalf of the pool."] + #[doc = ""] + #[doc = "The dispatch origin of this call must be signed by the pool token holder, same as"] + #[doc = "[`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::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "chill", + types::Chill { pool_id }, + [ + 65u8, 206u8, 54u8, 53u8, 37u8, 97u8, 161u8, 104u8, 62u8, 9u8, 93u8, + 236u8, 61u8, 185u8, 204u8, 245u8, 234u8, 218u8, 213u8, 40u8, 154u8, + 29u8, 244u8, 19u8, 207u8, 172u8, 142u8, 221u8, 38u8, 70u8, 39u8, 10u8, + ], + ) + } + #[doc = "Destroy the pool."] + #[doc = ""] + #[doc = "The dispatch origin of this call must be signed by the account holding the pool token"] + #[doc = "of the given pool_id."] + pub fn destroy( + &self, + pool_id: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "destroy", + types::Destroy { pool_id }, + [ + 112u8, 126u8, 66u8, 95u8, 58u8, 91u8, 230u8, 33u8, 153u8, 97u8, 31u8, + 34u8, 175u8, 25u8, 191u8, 187u8, 48u8, 71u8, 64u8, 40u8, 155u8, 95u8, + 78u8, 91u8, 96u8, 43u8, 121u8, 167u8, 144u8, 199u8, 15u8, 228u8, + ], + ) + } + #[doc = "Pays rewards to `validator_stash` and also distributes rewards to the reward accounts of"] + #[doc = "the pools nominating it. The appropriate bonus is also calculated and stored in the"] + #[doc = "bonus account."] + #[doc = ""] + #[doc = "This should be called once per era per validator. It is a permissionless call. It also"] + #[doc = "processes rewards for the previous era if [`Self::process_payouts`] was not called."] + #[doc = ""] + #[doc = "## Bonus Calculation"] + #[doc = ""] + #[doc = "1. Minimum duration and max duration are found for all pools nominating"] + #[doc = " `validator_stash`"] + #[doc = "2. [`Config::BonusPercentage`] is set aside from rewards for bonus"] + #[doc = "3. Normalized weight is calculated and then scaled according to the total bonus. See"] + #[doc = " `functions::calculate_real_weight`."] + #[doc = "4. The scaled weight is offset according to [`Config::BaseBonusRewardPercentage`] so"] + #[doc = " that all pools at least get the minimum weight"] + #[doc = "5. Final calculation is done in [`traits::Bonus::calculate_bonus`] and then transferred"] + #[doc = " to the bonus account"] + pub fn payout_rewards( + &self, + validator_stash: ::subxt::utils::AccountId32, + era: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "payout_rewards", + types::PayoutRewards { + validator_stash, + era, + }, + [ + 136u8, 61u8, 222u8, 219u8, 245u8, 206u8, 122u8, 120u8, 45u8, 108u8, + 235u8, 110u8, 208u8, 168u8, 100u8, 251u8, 88u8, 22u8, 70u8, 214u8, + 151u8, 18u8, 247u8, 195u8, 224u8, 38u8, 238u8, 202u8, 126u8, 131u8, + 47u8, 117u8, + ], + ) + } + #[doc = "Processes the rewards for all pools that were distributed in [`Self::payout_rewards`]."] + #[doc = "It will only succeed if it is called on the same era that payouts were made. It uses the"] + #[doc = "[`EraPayoutInfo`] storage to verify this. This extrinsic is permissionless."] + #[doc = ""] + #[doc = "The following is done for each pool:"] + #[doc = "1. If the pool has reached the end of its cycle, it cycles the pool."] + #[doc = "2. Sends bonus for the current era from the bonus account to the rewards account."] + #[doc = "3. Sends reward commission to the depositor."] + #[doc = "4. It bonds the pool's reward balance."] + #[doc = ""] + #[doc = "It is not required to call this extrinsic. If it is not called, the rewards will be"] + #[doc = "processed when `payout_rewards` is called in the next era."] + pub fn process_payouts( + &self, + pool_count: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "process_payouts", + types::ProcessPayouts { pool_count }, + [ + 244u8, 109u8, 87u8, 32u8, 133u8, 162u8, 18u8, 146u8, 254u8, 239u8, + 181u8, 62u8, 20u8, 241u8, 116u8, 243u8, 192u8, 62u8, 167u8, 203u8, + 41u8, 252u8, 219u8, 73u8, 55u8, 176u8, 205u8, 53u8, 199u8, 152u8, + 251u8, 104u8, + ], + ) + } + #[doc = "Mutate the nomination pool data."] + #[doc = ""] + #[doc = "The dispatch origin of this call must be signed by the account holding the pool token"] + #[doc = "of the given pool_id."] + pub fn mutate( + &self, + pool_id: ::core::primitive::u32, + mutation: runtime_types::pallet_nomination_pools::types::PoolMutation< + ::core::primitive::u32, + ::core::primitive::u128, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "mutate", + types::Mutate { pool_id, mutation }, + [ + 18u8, 116u8, 206u8, 60u8, 245u8, 178u8, 49u8, 178u8, 41u8, 141u8, + 105u8, 179u8, 66u8, 94u8, 49u8, 183u8, 148u8, 56u8, 50u8, 192u8, 193u8, + 106u8, 116u8, 221u8, 43u8, 127u8, 52u8, 25u8, 101u8, 134u8, 34u8, 48u8, + ], + ) + } + #[doc = "Unbonds the deposit"] + #[doc = ""] + #[doc = "This call is permissionless but certain conditions must be met before the deposit can"] + #[doc = "be unbonded:"] + #[doc = ""] + #[doc = "- Pool must be in [`PoolState::Destroying`] mode"] + #[doc = "- Deposit points must be the only points in the pool"] + #[doc = "- [`UnbondingMembers`] must be empty"] + #[doc = ""] + #[doc = "This will unbond the deposit from the pool."] + pub fn unbond_deposit( + &self, + pool_id: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "unbond_deposit", + types::UnbondDeposit { pool_id }, + [ + 108u8, 198u8, 48u8, 31u8, 159u8, 58u8, 189u8, 206u8, 13u8, 165u8, 73u8, + 248u8, 43u8, 73u8, 197u8, 106u8, 46u8, 228u8, 109u8, 23u8, 156u8, + 169u8, 22u8, 137u8, 114u8, 39u8, 99u8, 189u8, 213u8, 39u8, 133u8, + 172u8, + ], + ) + } + #[doc = "Withdraws the deposit"] + #[doc = ""] + #[doc = "This call is permissionless and should be called after the deposit has been unbonded."] + pub fn withdraw_deposit( + &self, + pool_id: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "withdraw_deposit", + types::WithdrawDeposit { pool_id }, + [ + 22u8, 220u8, 113u8, 187u8, 17u8, 87u8, 74u8, 224u8, 207u8, 97u8, 173u8, + 230u8, 23u8, 126u8, 254u8, 243u8, 115u8, 215u8, 87u8, 200u8, 147u8, + 70u8, 180u8, 9u8, 109u8, 127u8, 251u8, 246u8, 113u8, 97u8, 246u8, + 214u8, + ], + ) + } + #[doc = "Transfers `amount` from the pool's free balance to `destination`. Only callable by"] + #[doc = "[`Config::ForceOrigin`]."] + pub fn withdraw_free_balance( + &self, + pool_id: ::core::primitive::u32, + destination: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + amount: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "withdraw_free_balance", + types::WithdrawFreeBalance { + pool_id, + destination, + amount, + }, + [ + 178u8, 197u8, 222u8, 46u8, 116u8, 84u8, 199u8, 233u8, 23u8, 99u8, + 174u8, 200u8, 201u8, 19u8, 84u8, 120u8, 194u8, 133u8, 65u8, 109u8, + 36u8, 53u8, 8u8, 36u8, 217u8, 172u8, 45u8, 161u8, 142u8, 51u8, 57u8, + 61u8, + ], + ) + } + #[doc = "Set the annual inflation rate and collator payout cut"] + #[doc = ""] + #[doc = "Callable only by [`Config::ForceOrigin`]"] + pub fn set_staking_info( + &self, + info: runtime_types::pallet_nomination_pools::types::StakingInfo, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "set_staking_info", + types::SetStakingInfo { info }, + [ + 250u8, 251u8, 247u8, 16u8, 178u8, 162u8, 243u8, 114u8, 197u8, 205u8, + 233u8, 72u8, 72u8, 220u8, 205u8, 60u8, 124u8, 175u8, 164u8, 234u8, + 123u8, 224u8, 24u8, 141u8, 108u8, 107u8, 28u8, 205u8, 226u8, 236u8, + 129u8, 57u8, + ], + ) + } + #[doc = "Calculate and prepare early bird bonus if it is ready to be queued."] + #[doc = ""] + #[doc = "Callable by any signed origin after [`Config::EarlyBirdBonusDistributionBlock`]."] + #[doc = ""] + #[doc = "## Details"] + #[doc = ""] + #[doc = "1. Calculates the normalized weights for each pool by calling"] + #[doc = " [`Pallet::early_bird_normalized_weight`]. Factors for the weight are each pool's"] + #[doc = " total points and the creation date."] + #[doc = "2. Each pool's weight is multiplied by the total reward to determine each pool's reward."] + #[doc = "3. The rewards are stored in [`EarlyBirdBonusInfo`] and can be distributed by calling"] + #[doc = " [`Self::distribute_early_bird_bonus`]."] + pub fn queue_early_bird_bonus( + &self, + pool_count: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "queue_early_bird_bonus", + types::QueueEarlyBirdBonus { pool_count }, + [ + 45u8, 217u8, 254u8, 108u8, 197u8, 229u8, 97u8, 14u8, 126u8, 203u8, + 57u8, 42u8, 136u8, 70u8, 13u8, 58u8, 122u8, 102u8, 76u8, 141u8, 106u8, + 12u8, 121u8, 1u8, 127u8, 28u8, 60u8, 108u8, 91u8, 15u8, 17u8, 241u8, + ], + ) + } + #[doc = "Distribute early bird bonus to pools. The `transfer_count` parameter is the max number"] + #[doc = "of transfers to be made in this call. If there are less items in the queue, it will end"] + #[doc = "early."] + #[doc = ""] + #[doc = "Callable by any signed origin after the bonus has been queued."] + pub fn distribute_early_bird_bonus( + &self, + transfer_count: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "NominationPools", + "distribute_early_bird_bonus", + types::DistributeEarlyBirdBonus { transfer_count }, + [ + 106u8, 53u8, 36u8, 112u8, 73u8, 35u8, 170u8, 252u8, 177u8, 112u8, + 113u8, 143u8, 221u8, 61u8, 208u8, 241u8, 184u8, 232u8, 208u8, 96u8, + 98u8, 234u8, 193u8, 104u8, 221u8, 197u8, 128u8, 58u8, 181u8, 244u8, + 64u8, 118u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A pool has been created."] + pub struct Created { + pub creator: ::subxt::utils::AccountId32, + pub pool_id: ::core::primitive::u32, + pub capacity: ::core::primitive::u128, + } + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + } + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A member has unbonded from their pool."] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::types::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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A pool's commission rate has been changed."] + pub struct CommissionUpdated { + pub pool_id: ::core::primitive::u32, + pub current: + ::core::option::Option, + } + impl ::subxt::events::StaticEvent for CommissionUpdated { + const PALLET: &'static str = "NominationPools"; + const EVENT: &'static str = "CommissionUpdated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "This event happens once per era on the previous era that rewards are paid out for. It"] + #[doc = "pays commission, distributes bonus, and reinvests rewards."] + pub struct EraRewardsProcessed { + pub pool_id: ::core::primitive::u32, + pub era: ::core::primitive::u32, + pub commission: ::core::option::Option< + runtime_types::pallet_nomination_pools::types::CommissionPayment< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + >, + pub bonus: ::core::primitive::u128, + pub reinvested: ::core::primitive::u128, + pub bonus_cycle_ended: ::core::primitive::bool, + } + impl ::subxt::events::StaticEvent for EraRewardsProcessed { + const PALLET: &'static str = "NominationPools"; + const EVENT: &'static str = "EraRewardsProcessed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Rewards were paid to a pool"] + pub struct RewardPaid { + pub pool_id: ::core::primitive::u32, + pub era: ::core::primitive::u32, + pub validator_stash: ::subxt::utils::AccountId32, + pub reward: ::core::primitive::u128, + pub bonus: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for RewardPaid { + const PALLET: &'static str = "NominationPools"; + const EVENT: &'static str = "RewardPaid"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Pool has been mutated."] + pub struct PoolMutated { + pub pool_id: ::core::primitive::u32, + pub mutation: runtime_types::pallet_nomination_pools::types::PoolMutation< + ::core::primitive::u32, + ::core::primitive::u128, + >, + } + impl ::subxt::events::StaticEvent for PoolMutated { + const PALLET: &'static str = "NominationPools"; + const EVENT: &'static str = "PoolMutated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A nomination took place"] + pub struct Nominated { + pub pool_id: ::core::primitive::u32, + pub validators: ::std::vec::Vec<::subxt::utils::AccountId32>, + } + impl ::subxt::events::StaticEvent for Nominated { + const PALLET: &'static str = "NominationPools"; + const EVENT: &'static str = "Nominated"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct EarlyBirdBonusQueued { + pub total_amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for EarlyBirdBonusQueued { + const PALLET: &'static str = "NominationPools"; + const EVENT: &'static str = "EarlyBirdBonusQueued"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The early bird bonus has been distributed"] + pub struct EarlyBirdBonusDistributed { + pub pool_id: ::core::primitive::u32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for EarlyBirdBonusDistributed { + const PALLET: &'static str = "NominationPools"; + const EVENT: &'static str = "EarlyBirdBonusDistributed"; + } + } + 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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "MinJoinBond", + vec![], + [ + 64u8, 180u8, 71u8, 185u8, 81u8, 46u8, 155u8, 26u8, 251u8, 84u8, 108u8, + 80u8, 128u8, 44u8, 163u8, 118u8, 107u8, 79u8, 250u8, 211u8, 194u8, + 71u8, 87u8, 16u8, 247u8, 9u8, 76u8, 95u8, 103u8, 227u8, 180u8, 231u8, + ], + ) + } + #[doc = " Minimum bond required to create a pool."] + #[doc = ""] + #[doc = " This is the amount that the pool creator 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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "MinCreateBond", + vec![], + [ + 210u8, 67u8, 92u8, 230u8, 231u8, 105u8, 54u8, 249u8, 154u8, 192u8, + 29u8, 217u8, 233u8, 79u8, 170u8, 126u8, 133u8, 98u8, 253u8, 153u8, + 248u8, 189u8, 63u8, 107u8, 170u8, 224u8, 12u8, 42u8, 198u8, 185u8, + 85u8, 46u8, + ], + ) + } + #[doc = " Pool Members who are Unbonding."] + #[doc = ""] + #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] + pub fn unbonding_members_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_nomination_pools::types::PoolMember, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "UnbondingMembers", + vec![], + [ + 124u8, 77u8, 157u8, 87u8, 209u8, 117u8, 169u8, 243u8, 200u8, 240u8, + 128u8, 220u8, 163u8, 240u8, 135u8, 215u8, 59u8, 171u8, 57u8, 21u8, + 215u8, 245u8, 117u8, 171u8, 135u8, 118u8, 179u8, 229u8, 87u8, 32u8, + 148u8, 222u8, + ], + ) + } + #[doc = " Pool Members who are Unbonding."] + #[doc = ""] + #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] + pub fn unbonding_members_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_nomination_pools::types::PoolMember, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "UnbondingMembers", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 124u8, 77u8, 157u8, 87u8, 209u8, 117u8, 169u8, 243u8, 200u8, 240u8, + 128u8, 220u8, 163u8, 240u8, 135u8, 215u8, 59u8, 171u8, 57u8, 21u8, + 215u8, 245u8, 117u8, 171u8, 135u8, 118u8, 179u8, 229u8, 87u8, 32u8, + 148u8, 222u8, + ], + ) + } + #[doc = " Pool Members who are Unbonding."] + #[doc = ""] + #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] + pub fn unbonding_members( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_nomination_pools::types::PoolMember, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "UnbondingMembers", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 124u8, 77u8, 157u8, 87u8, 209u8, 117u8, 169u8, 243u8, 200u8, 240u8, + 128u8, 220u8, 163u8, 240u8, 135u8, 215u8, 59u8, 171u8, 57u8, 21u8, + 215u8, 245u8, 117u8, 171u8, 135u8, 118u8, 179u8, 229u8, 87u8, 32u8, + 148u8, 222u8, + ], + ) + } + #[doc = " Storage for bonded pools."] + pub fn bonded_pools_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_nomination_pools::types::BondedPoolInner, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "BondedPools", + vec![], + [ + 120u8, 45u8, 15u8, 251u8, 251u8, 241u8, 68u8, 75u8, 129u8, 73u8, 101u8, + 116u8, 164u8, 204u8, 58u8, 244u8, 46u8, 140u8, 242u8, 148u8, 217u8, + 29u8, 254u8, 216u8, 236u8, 123u8, 74u8, 120u8, 78u8, 74u8, 66u8, 226u8, + ], + ) + } + #[doc = " Storage for bonded pools."] + pub fn bonded_pools( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_nomination_pools::types::BondedPoolInner, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "BondedPools", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 120u8, 45u8, 15u8, 251u8, 251u8, 241u8, 68u8, 75u8, 129u8, 73u8, 101u8, + 116u8, 164u8, 204u8, 58u8, 244u8, 46u8, 140u8, 242u8, 148u8, 217u8, + 29u8, 254u8, 216u8, 236u8, 123u8, 74u8, 120u8, 78u8, 74u8, 66u8, 226u8, + ], + ) + } + #[doc = "Counter for the related counted storage map"] + pub fn counter_for_bonded_pools( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "CounterForBondedPools", + vec![], + [ + 198u8, 6u8, 213u8, 92u8, 4u8, 114u8, 164u8, 244u8, 51u8, 55u8, 157u8, + 20u8, 224u8, 183u8, 40u8, 236u8, 115u8, 86u8, 171u8, 207u8, 31u8, + 111u8, 0u8, 210u8, 48u8, 198u8, 243u8, 153u8, 5u8, 216u8, 107u8, 113u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_nomination_pools::types::SubPools, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "SubPoolsStorage", + vec![], + [ + 43u8, 35u8, 94u8, 197u8, 201u8, 86u8, 21u8, 118u8, 230u8, 10u8, 66u8, + 180u8, 104u8, 146u8, 250u8, 207u8, 159u8, 153u8, 203u8, 58u8, 20u8, + 247u8, 102u8, 155u8, 47u8, 58u8, 136u8, 150u8, 167u8, 83u8, 81u8, 44u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_nomination_pools::types::SubPools, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "SubPoolsStorage", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 43u8, 35u8, 94u8, 197u8, 201u8, 86u8, 21u8, 118u8, 230u8, 10u8, 66u8, + 180u8, 104u8, 146u8, 250u8, 207u8, 159u8, 153u8, 203u8, 58u8, 20u8, + 247u8, 102u8, 155u8, 47u8, 58u8, 136u8, 150u8, 167u8, 83u8, 81u8, 44u8, + ], + ) + } + #[doc = "Counter for the related counted storage map"] + pub fn counter_for_sub_pools_storage( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "CounterForSubPoolsStorage", + vec![], + [ + 137u8, 162u8, 32u8, 44u8, 163u8, 30u8, 54u8, 158u8, 169u8, 118u8, + 196u8, 101u8, 78u8, 28u8, 184u8, 78u8, 185u8, 225u8, 226u8, 207u8, + 14u8, 119u8, 0u8, 116u8, 140u8, 141u8, 116u8, 106u8, 71u8, 161u8, + 200u8, 228u8, + ], + ) + } + #[doc = " The next pool id that will be used in [`create`](Pallet::create). Increments by one with"] + #[doc = " each pool created."] + pub fn next_pool_id( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "NextPoolId", + vec![], + [ + 30u8, 97u8, 209u8, 99u8, 136u8, 248u8, 152u8, 111u8, 140u8, 167u8, + 187u8, 87u8, 94u8, 45u8, 50u8, 249u8, 211u8, 136u8, 37u8, 7u8, 116u8, + 225u8, 30u8, 16u8, 254u8, 133u8, 111u8, 15u8, 99u8, 45u8, 161u8, 137u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "ReversePoolIdLookup", + vec![], + [ + 76u8, 76u8, 150u8, 33u8, 64u8, 81u8, 90u8, 75u8, 212u8, 221u8, 59u8, + 83u8, 178u8, 45u8, 86u8, 206u8, 196u8, 221u8, 117u8, 94u8, 229u8, + 160u8, 52u8, 54u8, 11u8, 64u8, 0u8, 103u8, 85u8, 86u8, 5u8, 71u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "ReversePoolIdLookup", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 76u8, 76u8, 150u8, 33u8, 64u8, 81u8, 90u8, 75u8, 212u8, 221u8, 59u8, + 83u8, 178u8, 45u8, 86u8, 206u8, 196u8, 221u8, 117u8, 94u8, 229u8, + 160u8, 52u8, 54u8, 11u8, 64u8, 0u8, 103u8, 85u8, 86u8, 5u8, 71u8, + ], + ) + } + #[doc = "Counter for the related counted storage map"] + pub fn counter_for_reverse_pool_id_lookup( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "CounterForReversePoolIdLookup", + vec![], + [ + 135u8, 72u8, 203u8, 197u8, 101u8, 135u8, 114u8, 202u8, 122u8, 231u8, + 128u8, 17u8, 81u8, 70u8, 22u8, 146u8, 100u8, 138u8, 16u8, 74u8, 31u8, + 250u8, 110u8, 184u8, 250u8, 75u8, 249u8, 71u8, 171u8, 77u8, 95u8, + 251u8, + ], + ) + } + #[doc = " A reverse lookup from the token_id to pool_id."] + #[doc = ""] + #[doc = " This is used for making sure the same token is not used to create multiple pools"] + pub fn used_pool_token_ids_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "UsedPoolTokenIds", + vec![], + [ + 83u8, 86u8, 247u8, 219u8, 46u8, 223u8, 64u8, 175u8, 191u8, 209u8, + 246u8, 43u8, 151u8, 236u8, 65u8, 202u8, 210u8, 67u8, 206u8, 185u8, + 229u8, 206u8, 59u8, 234u8, 190u8, 16u8, 25u8, 111u8, 75u8, 189u8, 99u8, + 27u8, + ], + ) + } + #[doc = " A reverse lookup from the token_id to pool_id."] + #[doc = ""] + #[doc = " This is used for making sure the same token is not used to create multiple pools"] + pub fn used_pool_token_ids( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "UsedPoolTokenIds", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 83u8, 86u8, 247u8, 219u8, 46u8, 223u8, 64u8, 175u8, 191u8, 209u8, + 246u8, 43u8, 151u8, 236u8, 65u8, 202u8, 210u8, 67u8, 206u8, 185u8, + 229u8, 206u8, 59u8, 234u8, 190u8, 16u8, 25u8, 111u8, 75u8, 189u8, 99u8, + 27u8, + ], + ) + } + #[doc = " The maximum commission that can be charged by a pool. Used on commission payouts to bound"] + #[doc = " pool commissions that are > `GlobalMaxCommission`, necessary if a future"] + pub fn global_max_commission( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_arithmetic::per_things::Perbill, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "GlobalMaxCommission", + vec![], + [ + 2u8, 112u8, 8u8, 116u8, 114u8, 97u8, 250u8, 106u8, 170u8, 215u8, 218u8, + 217u8, 80u8, 235u8, 149u8, 81u8, 85u8, 185u8, 201u8, 127u8, 107u8, + 251u8, 191u8, 231u8, 142u8, 74u8, 8u8, 70u8, 151u8, 238u8, 117u8, + 173u8, + ], + ) + } + #[doc = " The general staking parameters"] + pub fn staking_information( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_nomination_pools::types::StakingInfo, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "StakingInformation", + vec![], + [ + 211u8, 0u8, 103u8, 187u8, 133u8, 230u8, 41u8, 79u8, 31u8, 22u8, 172u8, + 65u8, 13u8, 176u8, 102u8, 115u8, 25u8, 195u8, 30u8, 235u8, 172u8, + 210u8, 17u8, 116u8, 193u8, 209u8, 185u8, 142u8, 13u8, 167u8, 41u8, + 101u8, + ], + ) + } + #[doc = " The queue of bonuses that should be distributed to the pools"] + pub fn early_bird_bonus_info( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_nomination_pools::types::EarlyBirdInfo< + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "EarlyBirdBonusInfo", + vec![], + [ + 29u8, 242u8, 141u8, 229u8, 46u8, 127u8, 117u8, 241u8, 103u8, 162u8, + 198u8, 170u8, 102u8, 214u8, 245u8, 97u8, 146u8, 43u8, 73u8, 73u8, + 240u8, 61u8, 21u8, 111u8, 28u8, 157u8, 99u8, 145u8, 112u8, 198u8, + 177u8, 161u8, + ], + ) + } + #[doc = " Tracks payout information for an era"] + pub fn era_payout_info( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_nomination_pools::types::EraPayout, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "NominationPools", + "EraPayoutInfo", + vec![], + [ + 27u8, 128u8, 169u8, 192u8, 37u8, 232u8, 56u8, 254u8, 195u8, 126u8, + 122u8, 122u8, 153u8, 232u8, 46u8, 193u8, 83u8, 25u8, 137u8, 194u8, + 192u8, 3u8, 209u8, 1u8, 200u8, 161u8, 11u8, 128u8, 143u8, 243u8, 220u8, + 232u8, + ], + ) + } + } + } + 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::Address + { + ::subxt::constants::Address::new_static( + "NominationPools", + "PalletId", + [ + 56u8, 243u8, 53u8, 83u8, 154u8, 179u8, 170u8, 80u8, 133u8, 173u8, 61u8, + 161u8, 47u8, 225u8, 146u8, 21u8, 50u8, 229u8, 248u8, 27u8, 104u8, 58u8, + 129u8, 197u8, 102u8, 160u8, 168u8, 205u8, 154u8, 42u8, 217u8, 53u8, + ], + ) + } + #[doc = " The pool ID for system account holding the collator rewards."] + pub fn collator_reward_pool( + &self, + ) -> ::subxt::constants::Address + { + ::subxt::constants::Address::new_static( + "NominationPools", + "CollatorRewardPool", + [ + 56u8, 243u8, 53u8, 83u8, 154u8, 179u8, 170u8, 80u8, 133u8, 173u8, 61u8, + 161u8, 47u8, 225u8, 146u8, 21u8, 50u8, 229u8, 248u8, 27u8, 104u8, 58u8, + 129u8, 197u8, 102u8, 160u8, 168u8, 205u8, 154u8, 42u8, 217u8, 53u8, + ], + ) + } + #[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::Address<::core::primitive::u8> { + ::subxt::constants::Address::new_static( + "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, + ], + ) + } + #[doc = " The amount of eras a `SubPools::with_era` pool can exist before it gets merged into the"] + #[doc = " `SubPools::no_era` pool. In other words, this is the amount of eras a member will be"] + #[doc = " able to withdraw from an unbonding pool which is guaranteed to have the correct ratio of"] + #[doc = " points to balance; once the `with_era` pool is merged into the `no_era` pool, the ratio"] + #[doc = " can become skewed due to some slashed ratio getting merged in at some point."] + pub fn post_unbonding_pools_window( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "PostUnbondingPoolsWindow", + [ + 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 simultaneous unbonding chunks that can exist per member."] + pub fn max_unbonding(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "MaxUnbonding", + [ + 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 = " Min duration of a pool's bonus cycle in eras"] + pub fn min_duration(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "MinDuration", + [ + 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 = " Max duration of a pool's bonus cycle in eras"] + pub fn max_duration(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "MaxDuration", + [ + 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 collection id that is used for pool NFTs"] + pub fn pool_collection_id( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "NominationPools", + "PoolCollectionId", + [ + 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 collection id that is used for sENJ tokens"] + pub fn staked_enj_collection_id( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "NominationPools", + "StakedEnjCollectionId", + [ + 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 owner of the sENJ collection"] + pub fn staked_enj_collection_owner( + &self, + ) -> ::subxt::constants::Address<::subxt::utils::AccountId32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "StakedEnjCollectionOwner", + [ + 115u8, 233u8, 13u8, 223u8, 88u8, 20u8, 202u8, 139u8, 153u8, 28u8, + 155u8, 157u8, 224u8, 66u8, 3u8, 250u8, 23u8, 53u8, 88u8, 168u8, 211u8, + 204u8, 122u8, 166u8, 248u8, 23u8, 174u8, 225u8, 99u8, 108u8, 89u8, + 135u8, + ], + ) + } + #[doc = " The percentage of each pool's rewards that goes to the bonus"] + pub fn bonus_percentage( + &self, + ) -> ::subxt::constants::Address + { + ::subxt::constants::Address::new_static( + "NominationPools", + "BonusPercentage", + [ + 65u8, 93u8, 120u8, 165u8, 204u8, 81u8, 159u8, 163u8, 93u8, 135u8, + 114u8, 121u8, 147u8, 35u8, 215u8, 213u8, 4u8, 223u8, 83u8, 37u8, 225u8, + 200u8, 189u8, 156u8, 140u8, 36u8, 58u8, 46u8, 42u8, 232u8, 155u8, 0u8, + ], + ) + } + #[doc = " Share of bonus reward that is distributed to everyone regardless of their weight"] + pub fn base_bonus_reward_percentage( + &self, + ) -> ::subxt::constants::Address + { + ::subxt::constants::Address::new_static( + "NominationPools", + "BaseBonusRewardPercentage", + [ + 65u8, 93u8, 120u8, 165u8, 204u8, 81u8, 159u8, 163u8, 93u8, 135u8, + 114u8, 121u8, 147u8, 35u8, 215u8, 213u8, 4u8, 223u8, 83u8, 37u8, 225u8, + 200u8, 189u8, 156u8, 140u8, 36u8, 58u8, 46u8, 42u8, 232u8, 155u8, 0u8, + ], + ) + } + #[doc = " The account that will receive the deposit and commission if the pool's token is burned."] + #[doc = " It also receives the leftover bonus if a pool is destroyed."] + pub fn unclaimed_balance_receiver( + &self, + ) -> ::subxt::constants::Address<::subxt::utils::AccountId32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "UnclaimedBalanceReceiver", + [ + 115u8, 233u8, 13u8, 223u8, 88u8, 20u8, 202u8, 139u8, 153u8, 28u8, + 155u8, 157u8, 224u8, 66u8, 3u8, 250u8, 23u8, 53u8, 88u8, 168u8, 211u8, + 204u8, 122u8, 166u8, 248u8, 23u8, 174u8, 225u8, 99u8, 108u8, 89u8, + 135u8, + ], + ) + } + #[doc = " The number of eras its allowed to mutate the pools capacity"] + pub fn capacity_mutation_period( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "CapacityMutationPeriod", + [ + 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 block number after which the early bird bonus can be distributed"] + pub fn early_bird_bonus_distribution_block( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "EarlyBirdBonusDistributionBlock", + [ + 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 in the early bird bonus queue"] + pub fn max_early_bird_bonus_queue_items( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "MaxEarlyBirdBonusQueueItems", + [ + 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 account id that holds early bird bonus"] + pub fn early_bird_bonus_account( + &self, + ) -> ::subxt::constants::Address<::subxt::utils::AccountId32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "EarlyBirdBonusAccount", + [ + 115u8, 233u8, 13u8, 223u8, 88u8, 20u8, 202u8, 139u8, 153u8, 28u8, + 155u8, 157u8, 224u8, 66u8, 3u8, 250u8, 23u8, 53u8, 88u8, 168u8, 211u8, + 204u8, 122u8, 166u8, 248u8, 23u8, 174u8, 225u8, 99u8, 108u8, 89u8, + 135u8, + ], + ) + } + #[doc = " The global maximum pool capacity"] + pub fn global_max_capacity( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "NominationPools", + "GlobalMaxCapacity", + [ + 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 default maximum pool capacity"] + pub fn default_max_capacity( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "NominationPools", + "DefaultMaxCapacity", + [ + 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 max attribute key length"] + pub fn attribute_key_max_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "AttributeKeyMaxLength", + [ + 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 attribute value length"] + pub fn attribute_value_max_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "NominationPools", + "AttributeValueMaxLength", + [ + 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 = " Max pool capacity attribute key"] + pub fn max_capacity_attribute_key( + &self, + ) -> ::subxt::constants::Address< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + > { + ::subxt::constants::Address::new_static( + "NominationPools", + "MaxCapacityAttributeKey", + [ + 111u8, 193u8, 190u8, 101u8, 134u8, 90u8, 189u8, 162u8, 149u8, 131u8, + 26u8, 156u8, 242u8, 7u8, 95u8, 140u8, 189u8, 46u8, 231u8, 178u8, 140u8, + 33u8, 222u8, 55u8, 229u8, 12u8, 32u8, 142u8, 69u8, 195u8, 205u8, 193u8, + ], + ) + } + } + } + } + pub mod stake_exchange { + use super::root_mod; + use super::runtime_types; + #[doc = "Pallet's error type."] + pub type Error = runtime_types::pallet_stake_exchange::pallet::Error; + #[doc = "The pallet's extrinsics."] + pub type Call = runtime_types::pallet_stake_exchange::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CreateOffer { + pub offer: runtime_types::pallet_stake_exchange::types::CreateOffer< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for CreateOffer { + const PALLET: &'static str = "StakeExchange"; + const CALL: &'static str = "create_offer"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CancelOffer { + #[codec(compact)] + pub offer_id: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for CancelOffer { + const PALLET: &'static str = "StakeExchange"; + const CALL: &'static str = "cancel_offer"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ConfigureLiquidityAccount { + pub config: runtime_types::pallet_stake_exchange::types::LiquidityAccountConfig< + ::core::primitive::u128, + runtime_types::enjin_runtime::MaxFilteredTokenCount, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ConfigureLiquidityAccount { + const PALLET: &'static str = "StakeExchange"; + const CALL: &'static str = "configure_liquidity_account"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct WithdrawLiquidity { + #[codec(compact)] + pub offer_id: ::core::primitive::u128, + #[codec(compact)] + pub amount: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for WithdrawLiquidity { + const PALLET: &'static str = "StakeExchange"; + const CALL: &'static str = "withdraw_liquidity"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AddLiquidity { + #[codec(compact)] + pub offer_id: ::core::primitive::u128, + #[codec(compact)] + pub amount: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for AddLiquidity { + const PALLET: &'static str = "StakeExchange"; + const CALL: &'static str = "add_liquidity"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Buy { + #[codec(compact)] + pub offer_id: ::core::primitive::u128, + #[codec(compact)] + pub amount: ::core::primitive::u128, + #[codec(compact)] + pub token_id: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for Buy { + const PALLET: &'static str = "StakeExchange"; + const CALL: &'static str = "buy"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Place a new offer with the given parameters"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CallerNotOfferCreator`] if the caller account does not match offer account."] + #[doc = "- [`Error::ZeroOffer`] if offer amount is zero."] + #[doc = "- [`Error::ZeroRate`] if rate amount is zero."] + #[doc = "- [`Error::Overflow`] if arithmetic overflow occurs"] + pub fn create_offer( + &self, + offer: runtime_types::pallet_stake_exchange::types::CreateOffer< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "StakeExchange", + "create_offer", + types::CreateOffer { offer }, + [ + 130u8, 30u8, 162u8, 219u8, 219u8, 240u8, 179u8, 224u8, 186u8, 156u8, + 175u8, 59u8, 120u8, 12u8, 202u8, 73u8, 57u8, 142u8, 178u8, 209u8, + 223u8, 243u8, 139u8, 60u8, 13u8, 90u8, 112u8, 215u8, 27u8, 145u8, + 223u8, 128u8, + ], + ) + } + #[doc = "Cancel an existing offer with `offer_id`"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CallerNotOfferCreator`] if the caller account does not match offer account."] + #[doc = "- [`Error::OfferNotFound`] if the `offer_id` does not exist"] + pub fn cancel_offer( + &self, + offer_id: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "StakeExchange", + "cancel_offer", + types::CancelOffer { offer_id }, + [ + 68u8, 213u8, 139u8, 13u8, 75u8, 0u8, 10u8, 74u8, 226u8, 144u8, 120u8, + 233u8, 91u8, 231u8, 92u8, 94u8, 127u8, 134u8, 126u8, 205u8, 228u8, + 149u8, 42u8, 157u8, 18u8, 82u8, 108u8, 213u8, 57u8, 64u8, 107u8, 122u8, + ], + ) + } + #[doc = "Set the liquidity config for the caller account"] + pub fn configure_liquidity_account( + &self, + config: runtime_types::pallet_stake_exchange::types::LiquidityAccountConfig< + ::core::primitive::u128, + runtime_types::enjin_runtime::MaxFilteredTokenCount, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "StakeExchange", + "configure_liquidity_account", + types::ConfigureLiquidityAccount { config }, + [ + 49u8, 128u8, 5u8, 224u8, 68u8, 207u8, 14u8, 56u8, 50u8, 133u8, 59u8, + 191u8, 70u8, 231u8, 188u8, 34u8, 106u8, 188u8, 252u8, 123u8, 92u8, + 130u8, 9u8, 169u8, 126u8, 42u8, 156u8, 182u8, 22u8, 150u8, 198u8, 21u8, + ], + ) + } + #[doc = "Withdraw liquidity from a current active offer"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CallerNotOfferCreator`] if the caller account does not match offer account."] + #[doc = "- [`Error::OfferNotFound`] if the offerId does not exist"] + pub fn withdraw_liquidity( + &self, + offer_id: ::core::primitive::u128, + amount: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "StakeExchange", + "withdraw_liquidity", + types::WithdrawLiquidity { offer_id, amount }, + [ + 166u8, 216u8, 242u8, 2u8, 153u8, 135u8, 89u8, 235u8, 46u8, 68u8, 53u8, + 160u8, 208u8, 104u8, 3u8, 79u8, 142u8, 233u8, 182u8, 22u8, 50u8, 63u8, + 101u8, 195u8, 73u8, 219u8, 116u8, 139u8, 41u8, 168u8, 74u8, 112u8, + ], + ) + } + #[doc = "Add liquidity to a current active offer"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CallerNotOfferCreator`] if the caller account does not match bidding account."] + #[doc = "- [`Error::OfferNotFound`] if the offerId does not exist"] + pub fn add_liquidity( + &self, + offer_id: ::core::primitive::u128, + amount: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "StakeExchange", + "add_liquidity", + types::AddLiquidity { offer_id, amount }, + [ + 17u8, 90u8, 130u8, 113u8, 9u8, 80u8, 108u8, 2u8, 195u8, 92u8, 212u8, + 119u8, 121u8, 105u8, 67u8, 12u8, 174u8, 3u8, 5u8, 225u8, 89u8, 149u8, + 167u8, 14u8, 83u8, 38u8, 103u8, 65u8, 18u8, 85u8, 126u8, 52u8, + ], + ) + } + #[doc = "Buy from a current active offer, returning the native currency by exchanging the staked"] + #[doc = "tokens"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CallerNotOfferCreator`] if the caller account does not match bidding account."] + #[doc = "- [`Error::TokenRestriction`] if the tokenId is restricted by the LP"] + #[doc = "- [`Error::NotEnoughLiquidity`] if the offer cannot cover the amount requested"] + #[doc = "- [`Error::TransferParamCreationFailed`] if the multitokens transfer failed"] + pub fn buy( + &self, + offer_id: ::core::primitive::u128, + amount: ::core::primitive::u128, + token_id: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "StakeExchange", + "buy", + types::Buy { + offer_id, + amount, + token_id, + }, + [ + 144u8, 108u8, 9u8, 120u8, 109u8, 23u8, 53u8, 192u8, 208u8, 55u8, 61u8, + 146u8, 122u8, 106u8, 143u8, 199u8, 187u8, 47u8, 59u8, 147u8, 79u8, + 150u8, 177u8, 8u8, 238u8, 50u8, 86u8, 217u8, 44u8, 181u8, 217u8, 214u8, + ], + ) + } + } + } + #[doc = "The pallet's event type."] + pub type Event = runtime_types::pallet_stake_exchange::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A offer was placed"] + pub struct OfferCreated { + pub offer_id: ::core::primitive::u128, + pub offer: runtime_types::pallet_stake_exchange::types::Offer< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + } + impl ::subxt::events::StaticEvent for OfferCreated { + const PALLET: &'static str = "StakeExchange"; + const EVENT: &'static str = "OfferCreated"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A offer was cancelled"] + pub struct OfferCancelled { + pub offer_id: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for OfferCancelled { + const PALLET: &'static str = "StakeExchange"; + const EVENT: &'static str = "OfferCancelled"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Liquidity config was set for account"] + pub struct LiquidityConfigUpdated { + pub who: ::subxt::utils::AccountId32, + pub config: runtime_types::pallet_stake_exchange::types::LiquidityAccountConfig< + ::core::primitive::u128, + runtime_types::enjin_runtime::MaxFilteredTokenCount, + >, + } + impl ::subxt::events::StaticEvent for LiquidityConfigUpdated { + const PALLET: &'static str = "StakeExchange"; + const EVENT: &'static str = "LiquidityConfigUpdated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Liquidity was withdrawn from a offer"] + pub struct LiquidityWithdrawn { + pub who: ::subxt::utils::AccountId32, + pub offer_id: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for LiquidityWithdrawn { + const PALLET: &'static str = "StakeExchange"; + const EVENT: &'static str = "LiquidityWithdrawn"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Liquidity was added to a offer"] + pub struct LiquidityAdded { + pub who: ::subxt::utils::AccountId32, + pub offer_id: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for LiquidityAdded { + const PALLET: &'static str = "StakeExchange"; + const EVENT: &'static str = "LiquidityAdded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Buy order was completed"] + pub struct BuyOrderCompleted { + pub who: ::subxt::utils::AccountId32, + pub token_id: ::core::primitive::u128, + pub amount: ::core::primitive::u128, + pub rate: runtime_types::sp_arithmetic::per_things::Perbill, + } + impl ::subxt::events::StaticEvent for BuyOrderCompleted { + const PALLET: &'static str = "StakeExchange"; + const EVENT: &'static str = "BuyOrderCompleted"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A offer was completed and removed"] + pub struct OfferCompleted { + pub offer_id: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for OfferCompleted { + const PALLET: &'static str = "StakeExchange"; + const EVENT: &'static str = "OfferCompleted"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Mapping of LP accounts to their configuration"] + pub fn liquidity_configs_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_stake_exchange::types::LiquidityAccountConfig< + ::core::primitive::u128, + runtime_types::enjin_runtime::MaxFilteredTokenCount, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "StakeExchange", + "LiquidityConfigs", + vec![], + [ + 178u8, 179u8, 92u8, 82u8, 57u8, 100u8, 206u8, 233u8, 13u8, 153u8, 47u8, + 21u8, 227u8, 39u8, 87u8, 165u8, 89u8, 91u8, 253u8, 67u8, 200u8, 80u8, + 246u8, 104u8, 45u8, 211u8, 109u8, 233u8, 131u8, 121u8, 148u8, 226u8, + ], + ) + } + #[doc = " Mapping of LP accounts to their configuration"] + pub fn liquidity_configs( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_stake_exchange::types::LiquidityAccountConfig< + ::core::primitive::u128, + runtime_types::enjin_runtime::MaxFilteredTokenCount, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "StakeExchange", + "LiquidityConfigs", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 178u8, 179u8, 92u8, 82u8, 57u8, 100u8, 206u8, 233u8, 13u8, 153u8, 47u8, + 21u8, 227u8, 39u8, 87u8, 165u8, 89u8, 91u8, 253u8, 67u8, 200u8, 80u8, + 246u8, 104u8, 45u8, 211u8, 109u8, 233u8, 131u8, 121u8, 148u8, 226u8, + ], + ) + } + #[doc = " Mapping of LPAccountId to their active offer"] + pub fn offers_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_stake_exchange::types::Offer< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "StakeExchange", + "Offers", + vec![], + [ + 70u8, 16u8, 227u8, 74u8, 9u8, 83u8, 37u8, 98u8, 137u8, 107u8, 181u8, + 27u8, 234u8, 86u8, 63u8, 30u8, 158u8, 37u8, 231u8, 34u8, 89u8, 145u8, + 139u8, 101u8, 61u8, 178u8, 80u8, 94u8, 182u8, 93u8, 90u8, 209u8, + ], + ) + } + #[doc = " Mapping of LPAccountId to their active offer"] + pub fn offers( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_stake_exchange::types::Offer< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "StakeExchange", + "Offers", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 70u8, 16u8, 227u8, 74u8, 9u8, 83u8, 37u8, 98u8, 137u8, 107u8, 181u8, + 27u8, 234u8, 86u8, 63u8, 30u8, 158u8, 37u8, 231u8, 34u8, 89u8, 145u8, + 139u8, 101u8, 61u8, 178u8, 80u8, 94u8, 182u8, 93u8, 90u8, 209u8, + ], + ) + } + #[doc = " Value to use for Next offer Id"] + pub fn next_offer_id( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "StakeExchange", + "NextOfferId", + vec![], + [ + 199u8, 244u8, 45u8, 188u8, 196u8, 179u8, 86u8, 34u8, 112u8, 178u8, + 98u8, 42u8, 29u8, 1u8, 68u8, 180u8, 91u8, 205u8, 249u8, 232u8, 50u8, + 55u8, 131u8, 88u8, 192u8, 82u8, 203u8, 165u8, 252u8, 193u8, 218u8, 9u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " The id used for making reservations with this pallet"] + pub fn reserve_identifier( + &self, + ) -> ::subxt::constants::Address<[::core::primitive::u8; 8usize]> { + ::subxt::constants::Address::new_static( + "StakeExchange", + "ReserveIdentifier", + [ + 157u8, 118u8, 79u8, 88u8, 241u8, 22u8, 185u8, 37u8, 42u8, 20u8, 133u8, + 240u8, 11u8, 25u8, 66u8, 154u8, 84u8, 163u8, 78u8, 92u8, 171u8, 82u8, + 248u8, 76u8, 189u8, 70u8, 142u8, 249u8, 153u8, 84u8, 180u8, 60u8, + ], + ) + } + #[doc = " The maximum number of tokens that can be whitelisted/blacklisted"] + pub fn max_filtered_token_count( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "StakeExchange", + "MaxFilteredTokenCount", + [ + 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 for creating an offer"] + pub fn offer_deposit( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "StakeExchange", + "OfferDeposit", + [ + 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 utility { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_utility::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_utility::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Batch { + pub calls: ::std::vec::Vec, + } + impl ::subxt::blocks::StaticExtrinsic for Batch { + const PALLET: &'static str = "Utility"; + const CALL: &'static str = "batch"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AsDerivative { + pub index: ::core::primitive::u16, + pub call: ::std::boxed::Box, + } + impl ::subxt::blocks::StaticExtrinsic for AsDerivative { + const PALLET: &'static str = "Utility"; + const CALL: &'static str = "as_derivative"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BatchAll { + pub calls: ::std::vec::Vec, + } + impl ::subxt::blocks::StaticExtrinsic for BatchAll { + const PALLET: &'static str = "Utility"; + const CALL: &'static str = "batch_all"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DispatchAs { + pub as_origin: ::std::boxed::Box, + pub call: ::std::boxed::Box, + } + impl ::subxt::blocks::StaticExtrinsic for DispatchAs { + const PALLET: &'static str = "Utility"; + const CALL: &'static str = "dispatch_as"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceBatch { + pub calls: ::std::vec::Vec, + } + impl ::subxt::blocks::StaticExtrinsic for ForceBatch { + const PALLET: &'static str = "Utility"; + const CALL: &'static str = "force_batch"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct WithWeight { + pub call: ::std::boxed::Box, + pub weight: runtime_types::sp_weights::weight_v2::Weight, + } + impl ::subxt::blocks::StaticExtrinsic for WithWeight { + const PALLET: &'static str = "Utility"; + const CALL: &'static str = "with_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 = "## Complexity"] + #[doc = "- O(C) where C is the number of calls to be batched."] + #[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, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Utility", + "batch", + types::Batch { calls }, + [ + 209u8, 253u8, 215u8, 134u8, 127u8, 52u8, 204u8, 40u8, 51u8, 252u8, + 192u8, 96u8, 254u8, 226u8, 62u8, 202u8, 53u8, 26u8, 42u8, 225u8, 179u8, + 138u8, 114u8, 91u8, 131u8, 166u8, 251u8, 224u8, 95u8, 159u8, 59u8, + 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::enjin_runtime::RuntimeCall, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Utility", + "as_derivative", + types::AsDerivative { + index, + call: ::std::boxed::Box::new(call), + }, + [ + 33u8, 219u8, 203u8, 84u8, 64u8, 157u8, 44u8, 22u8, 129u8, 108u8, 166u8, + 136u8, 106u8, 12u8, 119u8, 234u8, 198u8, 16u8, 41u8, 237u8, 189u8, + 221u8, 41u8, 161u8, 31u8, 230u8, 206u8, 241u8, 59u8, 241u8, 85u8, 97u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- O(C) where C is the number of calls to be batched."] + pub fn batch_all( + &self, + calls: ::std::vec::Vec, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Utility", + "batch_all", + types::BatchAll { calls }, + [ + 162u8, 29u8, 101u8, 154u8, 190u8, 63u8, 85u8, 108u8, 57u8, 170u8, + 207u8, 94u8, 130u8, 96u8, 200u8, 60u8, 53u8, 97u8, 102u8, 231u8, 191u8, + 194u8, 75u8, 213u8, 38u8, 196u8, 45u8, 176u8, 104u8, 173u8, 130u8, + 111u8, + ], + ) + } + #[doc = "Dispatches a function call with a provided origin."] + #[doc = ""] + #[doc = "The dispatch origin for this call must be _Root_."] + #[doc = ""] + #[doc = "## Complexity"] + #[doc = "- O(1)."] + pub fn dispatch_as( + &self, + as_origin: runtime_types::enjin_runtime::OriginCaller, + call: runtime_types::enjin_runtime::RuntimeCall, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Utility", + "dispatch_as", + types::DispatchAs { + as_origin: ::std::boxed::Box::new(as_origin), + call: ::std::boxed::Box::new(call), + }, + [ + 254u8, 216u8, 170u8, 100u8, 177u8, 96u8, 138u8, 224u8, 234u8, 220u8, + 174u8, 251u8, 0u8, 121u8, 170u8, 228u8, 92u8, 33u8, 118u8, 177u8, 88u8, + 155u8, 185u8, 150u8, 162u8, 174u8, 179u8, 150u8, 202u8, 169u8, 132u8, + 203u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- O(C) where C is the number of calls to be batched."] + pub fn force_batch( + &self, + calls: ::std::vec::Vec, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Utility", + "force_batch", + types::ForceBatch { calls }, + [ + 57u8, 119u8, 131u8, 13u8, 219u8, 224u8, 252u8, 170u8, 22u8, 87u8, + 201u8, 206u8, 253u8, 211u8, 197u8, 167u8, 239u8, 212u8, 251u8, 43u8, + 50u8, 227u8, 41u8, 24u8, 162u8, 74u8, 96u8, 107u8, 15u8, 235u8, 183u8, + 62u8, + ], + ) + } + #[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::enjin_runtime::RuntimeCall, + weight: runtime_types::sp_weights::weight_v2::Weight, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Utility", + "with_weight", + types::WithWeight { + call: ::std::boxed::Box::new(call), + weight, + }, + [ + 195u8, 168u8, 78u8, 28u8, 9u8, 37u8, 166u8, 159u8, 125u8, 246u8, 246u8, + 144u8, 95u8, 199u8, 189u8, 140u8, 199u8, 49u8, 58u8, 183u8, 120u8, + 120u8, 36u8, 228u8, 65u8, 248u8, 67u8, 107u8, 163u8, 250u8, 42u8, + 173u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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 multisig { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_multisig::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_multisig::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AsMultiThreshold1 { + pub other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, + pub call: ::std::boxed::Box, + } + impl ::subxt::blocks::StaticExtrinsic for AsMultiThreshold1 { + const PALLET: &'static str = "Multisig"; + const CALL: &'static str = "as_multi_threshold_1"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + } + impl ::subxt::blocks::StaticExtrinsic for AsMulti { + const PALLET: &'static str = "Multisig"; + const CALL: &'static str = "as_multi"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + } + impl ::subxt::blocks::StaticExtrinsic for ApproveAsMulti { + const PALLET: &'static str = "Multisig"; + const CALL: &'static str = "approve_as_multi"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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], + } + impl ::subxt::blocks::StaticExtrinsic for CancelAsMulti { + const PALLET: &'static str = "Multisig"; + const CALL: &'static str = "cancel_as_multi"; + } + } + 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 = "## Complexity"] + #[doc = "O(Z + C) where Z is the length of the call and C its execution weight."] + pub fn as_multi_threshold_1( + &self, + other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, + call: runtime_types::enjin_runtime::RuntimeCall, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Multisig", + "as_multi_threshold_1", + types::AsMultiThreshold1 { + other_signatories, + call: ::std::boxed::Box::new(call), + }, + [ + 8u8, 251u8, 82u8, 68u8, 115u8, 218u8, 114u8, 182u8, 184u8, 25u8, 22u8, + 128u8, 139u8, 42u8, 37u8, 194u8, 125u8, 97u8, 212u8, 38u8, 233u8, + 149u8, 169u8, 23u8, 173u8, 35u8, 112u8, 99u8, 89u8, 84u8, 134u8, 62u8, + ], + ) + } + #[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 = "## Complexity"] + #[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`."] + 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::enjin_runtime::RuntimeCall, + max_weight: runtime_types::sp_weights::weight_v2::Weight, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Multisig", + "as_multi", + types::AsMulti { + threshold, + other_signatories, + maybe_timepoint, + call: ::std::boxed::Box::new(call), + max_weight, + }, + [ + 249u8, 8u8, 146u8, 108u8, 24u8, 103u8, 230u8, 50u8, 83u8, 59u8, 7u8, + 223u8, 31u8, 69u8, 76u8, 116u8, 169u8, 6u8, 235u8, 112u8, 155u8, 199u8, + 179u8, 46u8, 255u8, 106u8, 149u8, 188u8, 205u8, 183u8, 78u8, 194u8, + ], + ) + } + #[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 = "## Complexity"] + #[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`."] + 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::Payload { + ::subxt::tx::Payload::new_static( + "Multisig", + "approve_as_multi", + types::ApproveAsMulti { + threshold, + other_signatories, + maybe_timepoint, + call_hash, + max_weight, + }, + [ + 248u8, 46u8, 131u8, 35u8, 204u8, 12u8, 218u8, 150u8, 88u8, 131u8, 89u8, + 13u8, 95u8, 122u8, 87u8, 107u8, 136u8, 154u8, 92u8, 199u8, 108u8, 92u8, + 207u8, 171u8, 113u8, 8u8, 47u8, 248u8, 65u8, 26u8, 203u8, 135u8, + ], + ) + } + #[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 = "## Complexity"] + #[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."] + 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::Payload { + ::subxt::tx::Payload::new_static( + "Multisig", + "cancel_as_multi", + types::CancelAsMulti { + threshold, + other_signatories, + timepoint, + call_hash, + }, + [ + 212u8, 179u8, 123u8, 40u8, 209u8, 228u8, 181u8, 0u8, 109u8, 28u8, 27u8, + 48u8, 15u8, 47u8, 203u8, 54u8, 106u8, 114u8, 28u8, 118u8, 101u8, 201u8, + 95u8, 187u8, 46u8, 182u8, 4u8, 30u8, 227u8, 105u8, 14u8, 81u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_multisig::Multisig< + ::core::primitive::u32, + ::core::primitive::u128, + ::subxt::utils::AccountId32, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Multisig", + "Multisigs", + vec![], + [ + 154u8, 109u8, 45u8, 18u8, 155u8, 151u8, 81u8, 28u8, 86u8, 127u8, 189u8, + 151u8, 49u8, 61u8, 12u8, 149u8, 84u8, 61u8, 110u8, 197u8, 200u8, 140u8, + 37u8, 100u8, 14u8, 162u8, 158u8, 161u8, 48u8, 117u8, 102u8, 61u8, + ], + ) + } + #[doc = " The set of open multisig operations."] + pub fn multisigs_iter1( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_multisig::Multisig< + ::core::primitive::u32, + ::core::primitive::u128, + ::subxt::utils::AccountId32, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Multisig", + "Multisigs", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 154u8, 109u8, 45u8, 18u8, 155u8, 151u8, 81u8, 28u8, 86u8, 127u8, 189u8, + 151u8, 49u8, 61u8, 12u8, 149u8, 84u8, 61u8, 110u8, 197u8, 200u8, 140u8, + 37u8, 100u8, 14u8, 162u8, 158u8, 161u8, 48u8, 117u8, 102u8, 61u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_multisig::Multisig< + ::core::primitive::u32, + ::core::primitive::u128, + ::subxt::utils::AccountId32, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Multisig", + "Multisigs", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 154u8, 109u8, 45u8, 18u8, 155u8, 151u8, 81u8, 28u8, 86u8, 127u8, 189u8, + 151u8, 49u8, 61u8, 12u8, 149u8, 84u8, 61u8, 110u8, 197u8, 200u8, 140u8, + 37u8, 100u8, 14u8, 162u8, 158u8, 161u8, 48u8, 117u8, 102u8, 61u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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 parachains_origin { + use super::root_mod; + use super::runtime_types; + } + pub mod configuration { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_parachains::configuration::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_parachains::configuration::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetValidationUpgradeCooldown { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetValidationUpgradeCooldown { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_validation_upgrade_cooldown"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetValidationUpgradeDelay { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetValidationUpgradeDelay { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_validation_upgrade_delay"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetCodeRetentionPeriod { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetCodeRetentionPeriod { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_code_retention_period"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMaxCodeSize { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetMaxCodeSize { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_max_code_size"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMaxPovSize { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetMaxPovSize { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_max_pov_size"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMaxHeadDataSize { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetMaxHeadDataSize { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_max_head_data_size"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetParathreadCores { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetParathreadCores { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_parathread_cores"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetParathreadRetries { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetParathreadRetries { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_parathread_retries"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetGroupRotationFrequency { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetGroupRotationFrequency { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_group_rotation_frequency"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetChainAvailabilityPeriod { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetChainAvailabilityPeriod { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_chain_availability_period"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetThreadAvailabilityPeriod { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetThreadAvailabilityPeriod { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_thread_availability_period"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetSchedulingLookahead { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetSchedulingLookahead { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_scheduling_lookahead"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMaxValidatorsPerCore { + pub new: ::core::option::Option<::core::primitive::u32>, + } + impl ::subxt::blocks::StaticExtrinsic for SetMaxValidatorsPerCore { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_max_validators_per_core"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMaxValidators { + pub new: ::core::option::Option<::core::primitive::u32>, + } + impl ::subxt::blocks::StaticExtrinsic for SetMaxValidators { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_max_validators"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetDisputePeriod { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetDisputePeriod { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_dispute_period"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetDisputePostConclusionAcceptancePeriod { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetDisputePostConclusionAcceptancePeriod { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_dispute_post_conclusion_acceptance_period"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetNoShowSlots { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetNoShowSlots { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_no_show_slots"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetNDelayTranches { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetNDelayTranches { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_n_delay_tranches"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetZerothDelayTrancheWidth { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetZerothDelayTrancheWidth { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_zeroth_delay_tranche_width"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetNeededApprovals { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetNeededApprovals { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_needed_approvals"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetRelayVrfModuloSamples { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetRelayVrfModuloSamples { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_relay_vrf_modulo_samples"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMaxUpwardQueueCount { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetMaxUpwardQueueCount { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_max_upward_queue_count"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMaxUpwardQueueSize { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetMaxUpwardQueueSize { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_max_upward_queue_size"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMaxDownwardMessageSize { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetMaxDownwardMessageSize { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_max_downward_message_size"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMaxUpwardMessageSize { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetMaxUpwardMessageSize { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_max_upward_message_size"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMaxUpwardMessageNumPerCandidate { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetMaxUpwardMessageNumPerCandidate { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_max_upward_message_num_per_candidate"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHrmpOpenRequestTtl { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetHrmpOpenRequestTtl { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_hrmp_open_request_ttl"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHrmpSenderDeposit { + pub new: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for SetHrmpSenderDeposit { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_hrmp_sender_deposit"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHrmpRecipientDeposit { + pub new: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for SetHrmpRecipientDeposit { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_hrmp_recipient_deposit"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHrmpChannelMaxCapacity { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetHrmpChannelMaxCapacity { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_hrmp_channel_max_capacity"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHrmpChannelMaxTotalSize { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetHrmpChannelMaxTotalSize { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_hrmp_channel_max_total_size"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHrmpMaxParachainInboundChannels { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetHrmpMaxParachainInboundChannels { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_hrmp_max_parachain_inbound_channels"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHrmpMaxParathreadInboundChannels { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetHrmpMaxParathreadInboundChannels { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_hrmp_max_parathread_inbound_channels"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHrmpChannelMaxMessageSize { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetHrmpChannelMaxMessageSize { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_hrmp_channel_max_message_size"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHrmpMaxParachainOutboundChannels { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetHrmpMaxParachainOutboundChannels { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_hrmp_max_parachain_outbound_channels"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHrmpMaxParathreadOutboundChannels { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetHrmpMaxParathreadOutboundChannels { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_hrmp_max_parathread_outbound_channels"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetHrmpMaxMessageNumPerCandidate { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetHrmpMaxMessageNumPerCandidate { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_hrmp_max_message_num_per_candidate"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetPvfCheckingEnabled { + pub new: ::core::primitive::bool, + } + impl ::subxt::blocks::StaticExtrinsic for SetPvfCheckingEnabled { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_pvf_checking_enabled"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetPvfVotingTtl { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetPvfVotingTtl { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_pvf_voting_ttl"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMinimumValidationUpgradeDelay { + pub new: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SetMinimumValidationUpgradeDelay { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_minimum_validation_upgrade_delay"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetBypassConsistencyCheck { + pub new: ::core::primitive::bool, + } + impl ::subxt::blocks::StaticExtrinsic for SetBypassConsistencyCheck { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_bypass_consistency_check"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetAsyncBackingParams { + pub new: runtime_types::polkadot_primitives::vstaging::AsyncBackingParams, + } + impl ::subxt::blocks::StaticExtrinsic for SetAsyncBackingParams { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_async_backing_params"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetExecutorParams { + pub new: + runtime_types::polkadot_primitives::v4::executor_params::ExecutorParams, + } + impl ::subxt::blocks::StaticExtrinsic for SetExecutorParams { + const PALLET: &'static str = "Configuration"; + const CALL: &'static str = "set_executor_params"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Set the validation upgrade cooldown."] + pub fn set_validation_upgrade_cooldown( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_validation_upgrade_cooldown", + types::SetValidationUpgradeCooldown { new }, + [ + 233u8, 224u8, 19u8, 198u8, 27u8, 104u8, 64u8, 248u8, 223u8, 51u8, + 175u8, 162u8, 183u8, 43u8, 108u8, 246u8, 162u8, 210u8, 53u8, 56u8, + 174u8, 203u8, 79u8, 143u8, 13u8, 101u8, 100u8, 11u8, 127u8, 76u8, 71u8, + 228u8, + ], + ) + } + #[doc = "Set the validation upgrade delay."] + pub fn set_validation_upgrade_delay( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_validation_upgrade_delay", + types::SetValidationUpgradeDelay { new }, + [ + 13u8, 139u8, 210u8, 115u8, 20u8, 121u8, 55u8, 118u8, 101u8, 236u8, + 95u8, 79u8, 46u8, 44u8, 129u8, 129u8, 60u8, 198u8, 13u8, 17u8, 115u8, + 187u8, 181u8, 37u8, 75u8, 153u8, 13u8, 196u8, 49u8, 204u8, 26u8, 198u8, + ], + ) + } + #[doc = "Set the acceptance period for an included candidate."] + pub fn set_code_retention_period( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_code_retention_period", + types::SetCodeRetentionPeriod { new }, + [ + 169u8, 77u8, 107u8, 175u8, 172u8, 177u8, 169u8, 194u8, 219u8, 6u8, + 192u8, 40u8, 55u8, 241u8, 128u8, 111u8, 95u8, 67u8, 173u8, 247u8, + 220u8, 66u8, 45u8, 76u8, 108u8, 137u8, 220u8, 194u8, 86u8, 41u8, 245u8, + 226u8, + ], + ) + } + #[doc = "Set the max validation code size for incoming upgrades."] + pub fn set_max_code_size( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_max_code_size", + types::SetMaxCodeSize { new }, + [ + 122u8, 74u8, 244u8, 226u8, 89u8, 175u8, 191u8, 163u8, 34u8, 79u8, + 118u8, 254u8, 236u8, 215u8, 8u8, 182u8, 71u8, 180u8, 224u8, 165u8, + 226u8, 242u8, 124u8, 34u8, 38u8, 27u8, 29u8, 140u8, 187u8, 93u8, 131u8, + 168u8, + ], + ) + } + #[doc = "Set the max POV block size for incoming upgrades."] + pub fn set_max_pov_size( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_max_pov_size", + types::SetMaxPovSize { new }, + [ + 170u8, 106u8, 163u8, 4u8, 27u8, 72u8, 250u8, 59u8, 133u8, 128u8, 177u8, + 209u8, 22u8, 42u8, 230u8, 40u8, 192u8, 198u8, 56u8, 195u8, 31u8, 20u8, + 35u8, 196u8, 119u8, 183u8, 141u8, 38u8, 52u8, 54u8, 31u8, 122u8, + ], + ) + } + #[doc = "Set the max head data size for paras."] + pub fn set_max_head_data_size( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_max_head_data_size", + types::SetMaxHeadDataSize { new }, + [ + 216u8, 146u8, 104u8, 253u8, 123u8, 192u8, 123u8, 82u8, 149u8, 22u8, + 31u8, 107u8, 67u8, 102u8, 163u8, 239u8, 57u8, 183u8, 93u8, 20u8, 126u8, + 39u8, 36u8, 242u8, 252u8, 68u8, 150u8, 121u8, 147u8, 186u8, 39u8, + 181u8, + ], + ) + } + #[doc = "Set the number of parathread execution cores."] + pub fn set_parathread_cores( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_parathread_cores", + types::SetParathreadCores { new }, + [ + 230u8, 175u8, 182u8, 232u8, 5u8, 251u8, 196u8, 197u8, 246u8, 111u8, + 65u8, 165u8, 39u8, 174u8, 17u8, 30u8, 147u8, 116u8, 53u8, 254u8, 243u8, + 53u8, 110u8, 122u8, 211u8, 69u8, 122u8, 225u8, 16u8, 128u8, 250u8, + 172u8, + ], + ) + } + #[doc = "Set the number of retries for a particular parathread."] + pub fn set_parathread_retries( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_parathread_retries", + types::SetParathreadRetries { new }, + [ + 12u8, 100u8, 94u8, 156u8, 161u8, 134u8, 229u8, 28u8, 106u8, 41u8, + 138u8, 162u8, 196u8, 224u8, 56u8, 149u8, 42u8, 141u8, 184u8, 192u8, + 53u8, 9u8, 18u8, 21u8, 143u8, 188u8, 244u8, 254u8, 101u8, 206u8, 102u8, + 187u8, + ], + ) + } + #[doc = "Set the parachain validator-group rotation frequency"] + pub fn set_group_rotation_frequency( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_group_rotation_frequency", + types::SetGroupRotationFrequency { new }, + [ + 33u8, 142u8, 63u8, 205u8, 128u8, 109u8, 157u8, 33u8, 122u8, 91u8, 57u8, + 223u8, 134u8, 80u8, 108u8, 187u8, 147u8, 120u8, 104u8, 170u8, 32u8, + 135u8, 102u8, 38u8, 82u8, 20u8, 123u8, 211u8, 245u8, 91u8, 134u8, 44u8, + ], + ) + } + #[doc = "Set the availability period for parachains."] + pub fn set_chain_availability_period( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_chain_availability_period", + types::SetChainAvailabilityPeriod { new }, + [ + 117u8, 26u8, 125u8, 221u8, 25u8, 252u8, 92u8, 61u8, 28u8, 172u8, 164u8, + 43u8, 55u8, 7u8, 100u8, 219u8, 234u8, 157u8, 180u8, 216u8, 165u8, + 145u8, 1u8, 43u8, 133u8, 203u8, 160u8, 147u8, 46u8, 227u8, 153u8, + 112u8, + ], + ) + } + #[doc = "Set the availability period for parathreads."] + pub fn set_thread_availability_period( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_thread_availability_period", + types::SetThreadAvailabilityPeriod { new }, + [ + 223u8, 248u8, 231u8, 210u8, 234u8, 168u8, 224u8, 226u8, 175u8, 76u8, + 161u8, 222u8, 45u8, 238u8, 232u8, 169u8, 11u8, 210u8, 22u8, 13u8, + 145u8, 61u8, 17u8, 203u8, 132u8, 105u8, 196u8, 18u8, 12u8, 156u8, + 243u8, 231u8, + ], + ) + } + #[doc = "Set the scheduling lookahead, in expected number of blocks at peak throughput."] + pub fn set_scheduling_lookahead( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_scheduling_lookahead", + types::SetSchedulingLookahead { new }, + [ + 176u8, 115u8, 251u8, 197u8, 19u8, 106u8, 253u8, 224u8, 149u8, 96u8, + 238u8, 106u8, 19u8, 19u8, 89u8, 249u8, 186u8, 89u8, 144u8, 116u8, + 251u8, 30u8, 157u8, 237u8, 125u8, 153u8, 86u8, 6u8, 251u8, 170u8, 73u8, + 216u8, + ], + ) + } + #[doc = "Set the maximum number of validators to assign to any core."] + pub fn set_max_validators_per_core( + &self, + new: ::core::option::Option<::core::primitive::u32>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_max_validators_per_core", + types::SetMaxValidatorsPerCore { new }, + [ + 152u8, 112u8, 244u8, 133u8, 209u8, 166u8, 55u8, 155u8, 12u8, 216u8, + 62u8, 111u8, 81u8, 52u8, 194u8, 121u8, 172u8, 201u8, 204u8, 139u8, + 198u8, 238u8, 9u8, 49u8, 119u8, 236u8, 46u8, 0u8, 179u8, 234u8, 92u8, + 45u8, + ], + ) + } + #[doc = "Set the maximum number of validators to use in parachain consensus."] + pub fn set_max_validators( + &self, + new: ::core::option::Option<::core::primitive::u32>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_max_validators", + types::SetMaxValidators { new }, + [ + 219u8, 76u8, 191u8, 139u8, 250u8, 154u8, 232u8, 176u8, 248u8, 154u8, + 185u8, 89u8, 135u8, 151u8, 183u8, 132u8, 72u8, 63u8, 101u8, 183u8, + 142u8, 169u8, 163u8, 226u8, 24u8, 139u8, 78u8, 155u8, 3u8, 136u8, + 142u8, 137u8, + ], + ) + } + #[doc = "Set the dispute period, in number of sessions to keep for disputes."] + pub fn set_dispute_period( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_dispute_period", + types::SetDisputePeriod { new }, + [ + 104u8, 229u8, 235u8, 207u8, 136u8, 207u8, 181u8, 99u8, 0u8, 84u8, + 200u8, 244u8, 220u8, 52u8, 64u8, 26u8, 232u8, 212u8, 242u8, 190u8, + 67u8, 180u8, 171u8, 200u8, 181u8, 23u8, 32u8, 240u8, 231u8, 217u8, + 23u8, 146u8, + ], + ) + } + #[doc = "Set the dispute post conclusion acceptance period."] + pub fn set_dispute_post_conclusion_acceptance_period( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload + { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_dispute_post_conclusion_acceptance_period", + types::SetDisputePostConclusionAcceptancePeriod { new }, + [ + 251u8, 176u8, 139u8, 76u8, 7u8, 246u8, 198u8, 190u8, 39u8, 249u8, 95u8, + 226u8, 53u8, 186u8, 112u8, 101u8, 229u8, 80u8, 240u8, 185u8, 108u8, + 228u8, 91u8, 103u8, 128u8, 218u8, 231u8, 210u8, 164u8, 197u8, 84u8, + 149u8, + ], + ) + } + #[doc = "Set the no show slots, in number of number of consensus slots."] + #[doc = "Must be at least 1."] + pub fn set_no_show_slots( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_no_show_slots", + types::SetNoShowSlots { new }, + [ + 123u8, 204u8, 253u8, 222u8, 224u8, 215u8, 247u8, 154u8, 225u8, 79u8, + 29u8, 171u8, 107u8, 216u8, 215u8, 14u8, 8u8, 230u8, 49u8, 97u8, 20u8, + 84u8, 70u8, 33u8, 254u8, 63u8, 186u8, 7u8, 184u8, 135u8, 74u8, 139u8, + ], + ) + } + #[doc = "Set the total number of delay tranches."] + pub fn set_n_delay_tranches( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_n_delay_tranches", + types::SetNDelayTranches { new }, + [ + 157u8, 177u8, 251u8, 227u8, 118u8, 250u8, 129u8, 254u8, 33u8, 250u8, + 61u8, 148u8, 189u8, 92u8, 49u8, 119u8, 107u8, 40u8, 255u8, 119u8, + 241u8, 188u8, 109u8, 240u8, 229u8, 169u8, 31u8, 62u8, 174u8, 14u8, + 247u8, 235u8, + ], + ) + } + #[doc = "Set the zeroth delay tranche width."] + pub fn set_zeroth_delay_tranche_width( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_zeroth_delay_tranche_width", + types::SetZerothDelayTrancheWidth { new }, + [ + 30u8, 195u8, 15u8, 51u8, 210u8, 159u8, 254u8, 207u8, 121u8, 172u8, + 107u8, 241u8, 55u8, 100u8, 159u8, 55u8, 76u8, 47u8, 86u8, 93u8, 221u8, + 34u8, 136u8, 97u8, 224u8, 141u8, 46u8, 181u8, 246u8, 137u8, 79u8, 57u8, + ], + ) + } + #[doc = "Set the number of validators needed to approve a block."] + pub fn set_needed_approvals( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_needed_approvals", + types::SetNeededApprovals { new }, + [ + 245u8, 105u8, 16u8, 120u8, 28u8, 231u8, 6u8, 50u8, 143u8, 102u8, 1u8, + 97u8, 224u8, 232u8, 187u8, 164u8, 200u8, 31u8, 129u8, 139u8, 79u8, + 170u8, 14u8, 147u8, 117u8, 13u8, 98u8, 16u8, 64u8, 169u8, 46u8, 41u8, + ], + ) + } + #[doc = "Set the number of samples to do of the `RelayVRFModulo` approval assignment criterion."] + pub fn set_relay_vrf_modulo_samples( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_relay_vrf_modulo_samples", + types::SetRelayVrfModuloSamples { new }, + [ + 96u8, 100u8, 42u8, 61u8, 244u8, 226u8, 135u8, 187u8, 56u8, 193u8, + 247u8, 236u8, 38u8, 40u8, 242u8, 222u8, 176u8, 209u8, 211u8, 217u8, + 178u8, 32u8, 160u8, 56u8, 23u8, 60u8, 222u8, 166u8, 134u8, 72u8, 153u8, + 14u8, + ], + ) + } + #[doc = "Sets the maximum items that can present in a upward dispatch queue at once."] + pub fn set_max_upward_queue_count( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_max_upward_queue_count", + types::SetMaxUpwardQueueCount { new }, + [ + 187u8, 102u8, 178u8, 141u8, 245u8, 8u8, 221u8, 174u8, 128u8, 239u8, + 104u8, 120u8, 202u8, 220u8, 46u8, 27u8, 175u8, 26u8, 1u8, 170u8, 193u8, + 70u8, 176u8, 13u8, 223u8, 57u8, 153u8, 161u8, 228u8, 175u8, 226u8, + 202u8, + ], + ) + } + #[doc = "Sets the maximum total size of items that can present in a upward dispatch queue at once."] + pub fn set_max_upward_queue_size( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_max_upward_queue_size", + types::SetMaxUpwardQueueSize { new }, + [ + 245u8, 234u8, 151u8, 232u8, 49u8, 193u8, 60u8, 21u8, 103u8, 238u8, + 194u8, 73u8, 238u8, 160u8, 48u8, 88u8, 143u8, 197u8, 110u8, 230u8, + 213u8, 149u8, 171u8, 94u8, 77u8, 6u8, 139u8, 191u8, 158u8, 62u8, 181u8, + 32u8, + ], + ) + } + #[doc = "Set the critical downward message size."] + pub fn set_max_downward_message_size( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_max_downward_message_size", + types::SetMaxDownwardMessageSize { new }, + [ + 63u8, 112u8, 231u8, 193u8, 226u8, 6u8, 119u8, 35u8, 60u8, 34u8, 85u8, + 15u8, 168u8, 16u8, 176u8, 116u8, 169u8, 114u8, 42u8, 208u8, 89u8, + 188u8, 22u8, 145u8, 248u8, 87u8, 74u8, 168u8, 0u8, 202u8, 112u8, 13u8, + ], + ) + } + #[doc = "Sets the maximum size of an upward message that can be sent by a candidate."] + pub fn set_max_upward_message_size( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_max_upward_message_size", + types::SetMaxUpwardMessageSize { new }, + [ + 237u8, 108u8, 33u8, 245u8, 65u8, 209u8, 201u8, 97u8, 126u8, 194u8, + 195u8, 8u8, 144u8, 223u8, 148u8, 242u8, 97u8, 214u8, 38u8, 231u8, + 123u8, 143u8, 34u8, 199u8, 100u8, 183u8, 211u8, 111u8, 250u8, 245u8, + 10u8, 38u8, + ], + ) + } + #[doc = "Sets the maximum number of messages that a candidate can contain."] + pub fn set_max_upward_message_num_per_candidate( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload + { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_max_upward_message_num_per_candidate", + types::SetMaxUpwardMessageNumPerCandidate { new }, + [ + 183u8, 121u8, 87u8, 193u8, 8u8, 160u8, 107u8, 80u8, 50u8, 8u8, 75u8, + 185u8, 195u8, 248u8, 75u8, 174u8, 210u8, 108u8, 149u8, 20u8, 66u8, + 153u8, 20u8, 203u8, 92u8, 99u8, 27u8, 69u8, 212u8, 212u8, 35u8, 49u8, + ], + ) + } + #[doc = "Sets the number of sessions after which an HRMP open channel request expires."] + pub fn set_hrmp_open_request_ttl( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_hrmp_open_request_ttl", + types::SetHrmpOpenRequestTtl { new }, + [ + 233u8, 46u8, 165u8, 59u8, 196u8, 77u8, 161u8, 124u8, 252u8, 98u8, 8u8, + 52u8, 80u8, 17u8, 12u8, 50u8, 25u8, 127u8, 143u8, 252u8, 230u8, 10u8, + 193u8, 251u8, 167u8, 73u8, 40u8, 63u8, 203u8, 119u8, 208u8, 254u8, + ], + ) + } + #[doc = "Sets the amount of funds that the sender should provide for opening an HRMP channel."] + pub fn set_hrmp_sender_deposit( + &self, + new: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_hrmp_sender_deposit", + types::SetHrmpSenderDeposit { new }, + [ + 4u8, 141u8, 15u8, 87u8, 237u8, 39u8, 225u8, 108u8, 159u8, 240u8, 121u8, + 212u8, 225u8, 155u8, 168u8, 28u8, 61u8, 119u8, 232u8, 216u8, 194u8, + 172u8, 147u8, 16u8, 50u8, 100u8, 146u8, 146u8, 69u8, 252u8, 94u8, 47u8, + ], + ) + } + #[doc = "Sets the amount of funds that the recipient should provide for accepting opening an HRMP"] + #[doc = "channel."] + pub fn set_hrmp_recipient_deposit( + &self, + new: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_hrmp_recipient_deposit", + types::SetHrmpRecipientDeposit { new }, + [ + 242u8, 193u8, 202u8, 91u8, 69u8, 252u8, 101u8, 52u8, 162u8, 107u8, + 165u8, 69u8, 90u8, 150u8, 62u8, 239u8, 167u8, 2u8, 221u8, 3u8, 231u8, + 252u8, 82u8, 125u8, 212u8, 174u8, 47u8, 216u8, 219u8, 237u8, 242u8, + 144u8, + ], + ) + } + #[doc = "Sets the maximum number of messages allowed in an HRMP channel at once."] + pub fn set_hrmp_channel_max_capacity( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_hrmp_channel_max_capacity", + types::SetHrmpChannelMaxCapacity { new }, + [ + 140u8, 138u8, 197u8, 45u8, 144u8, 102u8, 150u8, 172u8, 110u8, 6u8, + 99u8, 130u8, 62u8, 217u8, 119u8, 110u8, 180u8, 132u8, 102u8, 161u8, + 78u8, 59u8, 209u8, 44u8, 120u8, 183u8, 13u8, 88u8, 89u8, 15u8, 224u8, + 224u8, + ], + ) + } + #[doc = "Sets the maximum total size of messages in bytes allowed in an HRMP channel at once."] + pub fn set_hrmp_channel_max_total_size( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_hrmp_channel_max_total_size", + types::SetHrmpChannelMaxTotalSize { new }, + [ + 149u8, 21u8, 229u8, 107u8, 125u8, 28u8, 17u8, 155u8, 45u8, 230u8, 50u8, + 64u8, 16u8, 171u8, 24u8, 58u8, 246u8, 57u8, 247u8, 20u8, 34u8, 217u8, + 206u8, 157u8, 40u8, 205u8, 187u8, 205u8, 199u8, 24u8, 115u8, 214u8, + ], + ) + } + #[doc = "Sets the maximum number of inbound HRMP channels a parachain is allowed to accept."] + pub fn set_hrmp_max_parachain_inbound_channels( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload + { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_hrmp_max_parachain_inbound_channels", + types::SetHrmpMaxParachainInboundChannels { new }, + [ + 203u8, 10u8, 55u8, 21u8, 21u8, 254u8, 74u8, 97u8, 34u8, 117u8, 160u8, + 183u8, 168u8, 235u8, 11u8, 9u8, 137u8, 141u8, 150u8, 80u8, 32u8, 41u8, + 118u8, 40u8, 28u8, 74u8, 155u8, 7u8, 63u8, 217u8, 39u8, 104u8, + ], + ) + } + #[doc = "Sets the maximum number of inbound HRMP channels a parathread is allowed to accept."] + pub fn set_hrmp_max_parathread_inbound_channels( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload + { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_hrmp_max_parathread_inbound_channels", + types::SetHrmpMaxParathreadInboundChannels { new }, + [ + 229u8, 236u8, 209u8, 63u8, 160u8, 95u8, 117u8, 90u8, 240u8, 144u8, + 238u8, 227u8, 129u8, 77u8, 234u8, 208u8, 217u8, 186u8, 54u8, 49u8, 6u8, + 142u8, 3u8, 0u8, 90u8, 199u8, 237u8, 37u8, 89u8, 201u8, 76u8, 224u8, + ], + ) + } + #[doc = "Sets the maximum size of a message that could ever be put into an HRMP channel."] + pub fn set_hrmp_channel_max_message_size( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_hrmp_channel_max_message_size", + types::SetHrmpChannelMaxMessageSize { new }, + [ + 153u8, 216u8, 55u8, 31u8, 189u8, 173u8, 23u8, 6u8, 213u8, 103u8, 205u8, + 154u8, 115u8, 105u8, 84u8, 133u8, 94u8, 254u8, 47u8, 128u8, 130u8, + 114u8, 227u8, 102u8, 214u8, 146u8, 215u8, 183u8, 179u8, 151u8, 43u8, + 187u8, + ], + ) + } + #[doc = "Sets the maximum number of outbound HRMP channels a parachain is allowed to open."] + pub fn set_hrmp_max_parachain_outbound_channels( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload + { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_hrmp_max_parachain_outbound_channels", + types::SetHrmpMaxParachainOutboundChannels { new }, + [ + 91u8, 100u8, 158u8, 17u8, 123u8, 31u8, 6u8, 92u8, 80u8, 92u8, 83u8, + 195u8, 234u8, 207u8, 55u8, 88u8, 75u8, 81u8, 219u8, 131u8, 234u8, 5u8, + 75u8, 236u8, 57u8, 93u8, 70u8, 145u8, 255u8, 171u8, 25u8, 174u8, + ], + ) + } + #[doc = "Sets the maximum number of outbound HRMP channels a parathread is allowed to open."] + pub fn set_hrmp_max_parathread_outbound_channels( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload + { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_hrmp_max_parathread_outbound_channels", + types::SetHrmpMaxParathreadOutboundChannels { new }, + [ + 147u8, 44u8, 219u8, 160u8, 208u8, 228u8, 97u8, 106u8, 247u8, 254u8, + 48u8, 90u8, 62u8, 151u8, 207u8, 214u8, 98u8, 163u8, 76u8, 175u8, 47u8, + 218u8, 52u8, 88u8, 165u8, 159u8, 169u8, 165u8, 192u8, 163u8, 37u8, + 110u8, + ], + ) + } + #[doc = "Sets the maximum number of outbound HRMP messages can be sent by a candidate."] + pub fn set_hrmp_max_message_num_per_candidate( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_hrmp_max_message_num_per_candidate", + types::SetHrmpMaxMessageNumPerCandidate { new }, + [ + 179u8, 44u8, 231u8, 12u8, 166u8, 160u8, 223u8, 164u8, 218u8, 173u8, + 157u8, 49u8, 16u8, 220u8, 0u8, 224u8, 67u8, 194u8, 210u8, 207u8, 237u8, + 96u8, 96u8, 24u8, 71u8, 237u8, 30u8, 152u8, 105u8, 245u8, 157u8, 218u8, + ], + ) + } + #[doc = "Enable or disable PVF pre-checking. Consult the field documentation prior executing."] + pub fn set_pvf_checking_enabled( + &self, + new: ::core::primitive::bool, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_pvf_checking_enabled", + types::SetPvfCheckingEnabled { new }, + [ + 27u8, 146u8, 204u8, 24u8, 52u8, 183u8, 126u8, 151u8, 243u8, 172u8, + 175u8, 96u8, 36u8, 210u8, 162u8, 142u8, 71u8, 211u8, 51u8, 12u8, 105u8, + 148u8, 181u8, 111u8, 182u8, 161u8, 196u8, 163u8, 99u8, 149u8, 139u8, + 12u8, + ], + ) + } + #[doc = "Set the number of session changes after which a PVF pre-checking voting is rejected."] + pub fn set_pvf_voting_ttl( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_pvf_voting_ttl", + types::SetPvfVotingTtl { new }, + [ + 115u8, 135u8, 76u8, 222u8, 214u8, 80u8, 103u8, 250u8, 194u8, 34u8, + 129u8, 245u8, 216u8, 69u8, 166u8, 247u8, 138u8, 94u8, 135u8, 228u8, + 90u8, 145u8, 2u8, 244u8, 73u8, 178u8, 61u8, 251u8, 21u8, 197u8, 202u8, + 246u8, + ], + ) + } + #[doc = "Sets the minimum delay between announcing the upgrade block for a parachain until the"] + #[doc = "upgrade taking place."] + #[doc = ""] + #[doc = "See the field documentation for information and constraints for the new value."] + pub fn set_minimum_validation_upgrade_delay( + &self, + new: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_minimum_validation_upgrade_delay", + types::SetMinimumValidationUpgradeDelay { new }, + [ + 143u8, 217u8, 201u8, 206u8, 206u8, 244u8, 116u8, 118u8, 13u8, 169u8, + 132u8, 125u8, 253u8, 178u8, 196u8, 12u8, 251u8, 32u8, 201u8, 133u8, + 50u8, 59u8, 37u8, 169u8, 198u8, 112u8, 136u8, 47u8, 205u8, 141u8, + 191u8, 212u8, + ], + ) + } + #[doc = "Setting this to true will disable consistency checks for the configuration setters."] + #[doc = "Use with caution."] + pub fn set_bypass_consistency_check( + &self, + new: ::core::primitive::bool, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_bypass_consistency_check", + types::SetBypassConsistencyCheck { new }, + [ + 11u8, 211u8, 68u8, 221u8, 178u8, 108u8, 101u8, 55u8, 107u8, 135u8, + 203u8, 112u8, 173u8, 161u8, 23u8, 104u8, 95u8, 200u8, 46u8, 231u8, + 114u8, 3u8, 8u8, 89u8, 147u8, 141u8, 55u8, 65u8, 125u8, 45u8, 218u8, + 78u8, + ], + ) + } + #[doc = "Set the asynchronous backing parameters."] + pub fn set_async_backing_params( + &self, + new: runtime_types::polkadot_primitives::vstaging::AsyncBackingParams, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_async_backing_params", + types::SetAsyncBackingParams { new }, + [ + 28u8, 148u8, 243u8, 41u8, 68u8, 91u8, 113u8, 162u8, 126u8, 115u8, + 122u8, 220u8, 126u8, 19u8, 119u8, 236u8, 20u8, 112u8, 181u8, 76u8, + 191u8, 225u8, 44u8, 207u8, 85u8, 246u8, 10u8, 167u8, 132u8, 211u8, + 14u8, 83u8, + ], + ) + } + #[doc = "Set PVF executor parameters."] + pub fn set_executor_params( + &self, + new: runtime_types::polkadot_primitives::v4::executor_params::ExecutorParams, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Configuration", + "set_executor_params", + types::SetExecutorParams { new }, + [ + 219u8, 27u8, 25u8, 162u8, 61u8, 189u8, 61u8, 32u8, 101u8, 139u8, 89u8, + 51u8, 191u8, 223u8, 94u8, 145u8, 109u8, 247u8, 22u8, 64u8, 178u8, 97u8, + 239u8, 0u8, 125u8, 20u8, 62u8, 210u8, 110u8, 79u8, 225u8, 43u8, + ], + ) + } + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " The active configuration for the current session."] + pub fn active_config( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::configuration::HostConfiguration< + ::core::primitive::u32, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Configuration", + "ActiveConfig", + vec![], + [ + 205u8, 102u8, 42u8, 9u8, 144u8, 0u8, 31u8, 85u8, 111u8, 44u8, 145u8, + 123u8, 200u8, 195u8, 163u8, 59u8, 202u8, 66u8, 156u8, 196u8, 32u8, + 204u8, 209u8, 201u8, 133u8, 103u8, 66u8, 179u8, 28u8, 41u8, 196u8, + 154u8, + ], + ) + } + #[doc = " Pending configuration changes."] + #[doc = ""] + #[doc = " This is a list of configuration changes, each with a session index at which it should"] + #[doc = " be applied."] + #[doc = ""] + #[doc = " The list is sorted ascending by session index. Also, this list can only contain at most"] + #[doc = " 2 items: for the next session and for the `scheduled_session`."] pub fn pending_configs (& self ,) -> :: subxt :: storage :: address :: Address :: < :: subxt :: storage :: address :: StaticStorageMapKey , :: std :: vec :: Vec < (:: core :: primitive :: u32 , runtime_types :: polkadot_runtime_parachains :: configuration :: HostConfiguration < :: core :: primitive :: u32 > ,) > , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes , () >{ + ::subxt::storage::address::Address::new_static( + "Configuration", + "PendingConfigs", + vec![], + [ + 18u8, 179u8, 253u8, 26u8, 153u8, 33u8, 99u8, 167u8, 90u8, 57u8, 97u8, + 114u8, 99u8, 71u8, 69u8, 76u8, 176u8, 90u8, 240u8, 137u8, 231u8, 24u8, + 75u8, 138u8, 149u8, 176u8, 197u8, 96u8, 90u8, 154u8, 109u8, 218u8, + ], + ) + } + #[doc = " If this is set, then the configuration setters will bypass the consistency checks. This"] + #[doc = " is meant to be used only as the last resort."] + pub fn bypass_consistency_check( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::bool, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Configuration", + "BypassConsistencyCheck", + vec![], + [ + 109u8, 201u8, 130u8, 189u8, 167u8, 112u8, 171u8, 180u8, 100u8, 146u8, + 23u8, 174u8, 199u8, 230u8, 185u8, 155u8, 178u8, 45u8, 24u8, 66u8, + 211u8, 234u8, 11u8, 103u8, 148u8, 12u8, 247u8, 101u8, 147u8, 18u8, + 11u8, 89u8, + ], + ) + } + } + } + } + pub mod paras_shared { + use super::root_mod; + use super::runtime_types; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_parachains::shared::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + } + pub struct TransactionApi; + impl TransactionApi {} + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " The current session index."] + pub fn current_session_index( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParasShared", + "CurrentSessionIndex", + vec![], + [ + 250u8, 164u8, 179u8, 84u8, 199u8, 245u8, 116u8, 48u8, 86u8, 127u8, + 50u8, 117u8, 236u8, 41u8, 107u8, 238u8, 151u8, 236u8, 68u8, 78u8, + 152u8, 5u8, 155u8, 107u8, 69u8, 197u8, 222u8, 94u8, 150u8, 2u8, 31u8, + 191u8, + ], + ) + } + #[doc = " All the validators actively participating in parachain consensus."] + #[doc = " Indices are into the broader validator set."] + pub fn active_validator_indices( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParasShared", + "ActiveValidatorIndices", + vec![], + [ + 80u8, 207u8, 217u8, 195u8, 69u8, 151u8, 27u8, 205u8, 227u8, 89u8, 71u8, + 180u8, 91u8, 116u8, 82u8, 193u8, 108u8, 115u8, 40u8, 247u8, 160u8, + 39u8, 85u8, 99u8, 42u8, 87u8, 54u8, 168u8, 230u8, 201u8, 212u8, 39u8, + ], + ) + } + #[doc = " The parachain attestation keys of the validators actively participating in parachain consensus."] + #[doc = " This should be the same length as `ActiveValidatorIndices`."] + pub fn active_validator_keys( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParasShared", + "ActiveValidatorKeys", + vec![], + [ + 155u8, 151u8, 155u8, 8u8, 23u8, 38u8, 91u8, 12u8, 94u8, 69u8, 228u8, + 185u8, 14u8, 219u8, 215u8, 98u8, 235u8, 222u8, 157u8, 180u8, 230u8, + 121u8, 205u8, 167u8, 156u8, 134u8, 180u8, 213u8, 87u8, 61u8, 174u8, + 222u8, + ], + ) + } + } + } + } + pub mod para_inclusion { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_parachains::inclusion::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_parachains::inclusion::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + } + pub struct TransactionApi; + impl TransactionApi {} + } + #[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::polkadot_runtime_parachains::inclusion::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A candidate was backed. `[candidate, head_data]`"] + pub struct CandidateBacked( + pub runtime_types::polkadot_primitives::v4::CandidateReceipt<::subxt::utils::H256>, + pub runtime_types::polkadot_parachain::primitives::HeadData, + pub runtime_types::polkadot_primitives::v4::CoreIndex, + pub runtime_types::polkadot_primitives::v4::GroupIndex, + ); + impl ::subxt::events::StaticEvent for CandidateBacked { + const PALLET: &'static str = "ParaInclusion"; + const EVENT: &'static str = "CandidateBacked"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A candidate was included. `[candidate, head_data]`"] + pub struct CandidateIncluded( + pub runtime_types::polkadot_primitives::v4::CandidateReceipt<::subxt::utils::H256>, + pub runtime_types::polkadot_parachain::primitives::HeadData, + pub runtime_types::polkadot_primitives::v4::CoreIndex, + pub runtime_types::polkadot_primitives::v4::GroupIndex, + ); + impl ::subxt::events::StaticEvent for CandidateIncluded { + const PALLET: &'static str = "ParaInclusion"; + const EVENT: &'static str = "CandidateIncluded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A candidate timed out. `[candidate, head_data]`"] + pub struct CandidateTimedOut( + pub runtime_types::polkadot_primitives::v4::CandidateReceipt<::subxt::utils::H256>, + pub runtime_types::polkadot_parachain::primitives::HeadData, + pub runtime_types::polkadot_primitives::v4::CoreIndex, + ); + impl ::subxt::events::StaticEvent for CandidateTimedOut { + const PALLET: &'static str = "ParaInclusion"; + const EVENT: &'static str = "CandidateTimedOut"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Some upward messages have been received and will be processed."] + pub struct UpwardMessagesReceived { + pub from: runtime_types::polkadot_parachain::primitives::Id, + pub count: ::core::primitive::u32, + } + impl ::subxt::events::StaticEvent for UpwardMessagesReceived { + const PALLET: &'static str = "ParaInclusion"; + const EVENT: &'static str = "UpwardMessagesReceived"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " The latest bitfield for each validator, referred to by their index in the validator set."] pub fn availability_bitfields_iter (& self ,) -> :: subxt :: storage :: address :: Address :: < :: subxt :: storage :: address :: StaticStorageMapKey , runtime_types :: polkadot_runtime_parachains :: inclusion :: AvailabilityBitfieldRecord < :: core :: primitive :: u32 > , () , () , :: subxt :: storage :: address :: Yes >{ + ::subxt::storage::address::Address::new_static( + "ParaInclusion", + "AvailabilityBitfields", + vec![], + [ + 163u8, 169u8, 217u8, 160u8, 147u8, 165u8, 186u8, 21u8, 171u8, 177u8, + 74u8, 69u8, 55u8, 205u8, 46u8, 13u8, 253u8, 83u8, 55u8, 190u8, 22u8, + 61u8, 32u8, 209u8, 54u8, 120u8, 187u8, 39u8, 114u8, 70u8, 212u8, 170u8, + ], + ) + } + #[doc = " The latest bitfield for each validator, referred to by their index in the validator set."] pub fn availability_bitfields (& self , _0 : impl :: std :: borrow :: Borrow < runtime_types :: polkadot_primitives :: v4 :: ValidatorIndex > ,) -> :: subxt :: storage :: address :: Address :: < :: subxt :: storage :: address :: StaticStorageMapKey , runtime_types :: polkadot_runtime_parachains :: inclusion :: AvailabilityBitfieldRecord < :: core :: primitive :: u32 > , :: subxt :: storage :: address :: Yes , () , () >{ + ::subxt::storage::address::Address::new_static( + "ParaInclusion", + "AvailabilityBitfields", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 163u8, 169u8, 217u8, 160u8, 147u8, 165u8, 186u8, 21u8, 171u8, 177u8, + 74u8, 69u8, 55u8, 205u8, 46u8, 13u8, 253u8, 83u8, 55u8, 190u8, 22u8, + 61u8, 32u8, 209u8, 54u8, 120u8, 187u8, 39u8, 114u8, 70u8, 212u8, 170u8, + ], + ) + } + #[doc = " Candidates pending availability by `ParaId`."] pub fn pending_availability_iter (& self ,) -> :: subxt :: storage :: address :: Address :: < :: subxt :: storage :: address :: StaticStorageMapKey , runtime_types :: polkadot_runtime_parachains :: inclusion :: CandidatePendingAvailability < :: subxt :: utils :: H256 , :: core :: primitive :: u32 > , () , () , :: subxt :: storage :: address :: Yes >{ + ::subxt::storage::address::Address::new_static( + "ParaInclusion", + "PendingAvailability", + vec![], + [ + 164u8, 175u8, 34u8, 182u8, 190u8, 147u8, 42u8, 185u8, 162u8, 130u8, + 33u8, 159u8, 234u8, 242u8, 90u8, 119u8, 2u8, 195u8, 48u8, 150u8, 135u8, + 87u8, 8u8, 142u8, 243u8, 142u8, 57u8, 121u8, 225u8, 218u8, 22u8, 132u8, + ], + ) + } + #[doc = " Candidates pending availability by `ParaId`."] pub fn pending_availability (& self , _0 : impl :: std :: borrow :: Borrow < runtime_types :: polkadot_parachain :: primitives :: Id > ,) -> :: subxt :: storage :: address :: Address :: < :: subxt :: storage :: address :: StaticStorageMapKey , runtime_types :: polkadot_runtime_parachains :: inclusion :: CandidatePendingAvailability < :: subxt :: utils :: H256 , :: core :: primitive :: u32 > , :: subxt :: storage :: address :: Yes , () , () >{ + ::subxt::storage::address::Address::new_static( + "ParaInclusion", + "PendingAvailability", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 164u8, 175u8, 34u8, 182u8, 190u8, 147u8, 42u8, 185u8, 162u8, 130u8, + 33u8, 159u8, 234u8, 242u8, 90u8, 119u8, 2u8, 195u8, 48u8, 150u8, 135u8, + 87u8, 8u8, 142u8, 243u8, 142u8, 57u8, 121u8, 225u8, 218u8, 22u8, 132u8, + ], + ) + } + #[doc = " The commitments of candidates pending availability, by `ParaId`."] + pub fn pending_availability_commitments_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::CandidateCommitments< + ::core::primitive::u32, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParaInclusion", + "PendingAvailabilityCommitments", + vec![], + [ + 196u8, 210u8, 210u8, 16u8, 246u8, 105u8, 121u8, 178u8, 5u8, 48u8, 40u8, + 183u8, 63u8, 147u8, 48u8, 74u8, 20u8, 83u8, 76u8, 84u8, 41u8, 30u8, + 182u8, 246u8, 164u8, 108u8, 113u8, 16u8, 169u8, 64u8, 97u8, 202u8, + ], + ) + } + #[doc = " The commitments of candidates pending availability, by `ParaId`."] + pub fn pending_availability_commitments( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::CandidateCommitments< + ::core::primitive::u32, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaInclusion", + "PendingAvailabilityCommitments", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 196u8, 210u8, 210u8, 16u8, 246u8, 105u8, 121u8, 178u8, 5u8, 48u8, 40u8, + 183u8, 63u8, 147u8, 48u8, 74u8, 20u8, 83u8, 76u8, 84u8, 41u8, 30u8, + 182u8, 246u8, 164u8, 108u8, 113u8, 16u8, 169u8, 64u8, 97u8, 202u8, + ], + ) + } + } + } + } + pub mod para_inherent { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_parachains::paras_inherent::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_parachains::paras_inherent::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Enter { + pub data: runtime_types::polkadot_primitives::v4::InherentData< + runtime_types::sp_runtime::generic::header::Header< + ::core::primitive::u32, + runtime_types::sp_runtime::traits::BlakeTwo256, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Enter { + const PALLET: &'static str = "ParaInherent"; + const CALL: &'static str = "enter"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Enter the paras inherent. This will process bitfields and backed candidates."] + pub fn enter( + &self, + data: runtime_types::polkadot_primitives::v4::InherentData< + runtime_types::sp_runtime::generic::header::Header< + ::core::primitive::u32, + runtime_types::sp_runtime::traits::BlakeTwo256, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ParaInherent", + "enter", + types::Enter { data }, + [ + 145u8, 120u8, 158u8, 39u8, 139u8, 223u8, 236u8, 209u8, 253u8, 108u8, + 188u8, 21u8, 23u8, 61u8, 25u8, 171u8, 30u8, 203u8, 161u8, 117u8, 90u8, + 55u8, 50u8, 107u8, 26u8, 52u8, 26u8, 158u8, 56u8, 218u8, 186u8, 142u8, + ], + ) + } + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Whether the paras inherent was included within this block."] + #[doc = ""] + #[doc = " The `Option<()>` is effectively a `bool`, but it never hits storage in the `None` variant"] + #[doc = " due to the guarantees of FRAME's storage APIs."] + #[doc = ""] + #[doc = " If this is `None` at the end of the block, we panic and render the block invalid."] + pub fn included( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaInherent", + "Included", + vec![], + [ + 108u8, 164u8, 163u8, 34u8, 27u8, 124u8, 202u8, 167u8, 48u8, 130u8, + 155u8, 211u8, 148u8, 130u8, 76u8, 16u8, 5u8, 250u8, 211u8, 174u8, 90u8, + 77u8, 198u8, 153u8, 175u8, 168u8, 131u8, 244u8, 27u8, 93u8, 60u8, 46u8, + ], + ) + } + #[doc = " Scraped on chain data for extracting resolved disputes as well as backing votes."] + pub fn on_chain_votes( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::ScrapedOnChainVotes< + ::subxt::utils::H256, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaInherent", + "OnChainVotes", + vec![], + [ + 200u8, 210u8, 42u8, 153u8, 85u8, 71u8, 171u8, 108u8, 148u8, 212u8, + 108u8, 61u8, 178u8, 77u8, 129u8, 90u8, 120u8, 218u8, 228u8, 152u8, + 120u8, 226u8, 29u8, 82u8, 239u8, 146u8, 41u8, 164u8, 193u8, 207u8, + 246u8, 115u8, + ], + ) + } + } + } + } + pub mod para_scheduler { + use super::root_mod; + use super::runtime_types; + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " All the validator groups. One for each core. Indices are into `ActiveValidators` - not the"] + #[doc = " broader set of Polkadot validators, but instead just the subset used for parachains during"] + #[doc = " this session."] + #[doc = ""] + #[doc = " Bound: The number of cores is the sum of the numbers of parachains and parathread multiplexers."] + #[doc = " Reasonably, 100-1000. The dominant factor is the number of validators: safe upper bound at 10k."] + pub fn validator_groups( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec< + ::std::vec::Vec, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaScheduler", + "ValidatorGroups", + vec![], + [ + 129u8, 58u8, 65u8, 112u8, 4u8, 172u8, 167u8, 19u8, 96u8, 154u8, 159u8, + 83u8, 94u8, 125u8, 60u8, 43u8, 60u8, 70u8, 1u8, 58u8, 222u8, 31u8, + 73u8, 53u8, 71u8, 181u8, 49u8, 64u8, 212u8, 90u8, 128u8, 185u8, + ], + ) + } + #[doc = " A queue of upcoming claims and which core they should be mapped onto."] + #[doc = ""] + #[doc = " The number of queued claims is bounded at the `scheduling_lookahead`"] + #[doc = " multiplied by the number of parathread multiplexer cores. Reasonably, 10 * 50 = 500."] + pub fn parathread_queue( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::scheduler::ParathreadClaimQueue, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaScheduler", + "ParathreadQueue", + vec![], + [ + 66u8, 237u8, 244u8, 120u8, 58u8, 185u8, 225u8, 198u8, 83u8, 7u8, 254u8, + 95u8, 104u8, 128u8, 105u8, 225u8, 117u8, 35u8, 231u8, 64u8, 46u8, + 169u8, 9u8, 35u8, 89u8, 199u8, 239u8, 51u8, 165u8, 115u8, 226u8, 60u8, + ], + ) + } + #[doc = " One entry for each availability core. Entries are `None` if the core is not currently occupied. Can be"] + #[doc = " temporarily `Some` if scheduled but not occupied."] + #[doc = " The i'th parachain belongs to the i'th core, with the remaining cores all being"] + #[doc = " parathread-multiplexers."] + #[doc = ""] + #[doc = " Bounded by the maximum of either of these two values:"] + #[doc = " * The number of parachains and parathread multiplexers"] + #[doc = " * The number of validators divided by `configuration.max_validators_per_core`."] + pub fn availability_cores( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec< + ::core::option::Option< + runtime_types::polkadot_primitives::v4::CoreOccupied, + >, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaScheduler", + "AvailabilityCores", + vec![], + [ + 22u8, 238u8, 81u8, 4u8, 74u8, 143u8, 125u8, 245u8, 54u8, 117u8, 128u8, + 142u8, 214u8, 162u8, 106u8, 86u8, 151u8, 45u8, 33u8, 153u8, 164u8, + 182u8, 223u8, 19u8, 44u8, 211u8, 206u8, 95u8, 249u8, 36u8, 188u8, + 129u8, + ], + ) + } + #[doc = " An index used to ensure that only one claim on a parathread exists in the queue or is"] + #[doc = " currently being handled by an occupied core."] + #[doc = ""] + #[doc = " Bounded by the number of parathread cores and scheduling lookahead. Reasonably, 10 * 50 = 500."] + pub fn parathread_claim_index( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaScheduler", + "ParathreadClaimIndex", + vec![], + [ + 40u8, 118u8, 124u8, 168u8, 174u8, 131u8, 61u8, 35u8, 175u8, 100u8, + 69u8, 184u8, 191u8, 17u8, 151u8, 219u8, 81u8, 160u8, 199u8, 33u8, + 227u8, 20u8, 48u8, 90u8, 61u8, 157u8, 136u8, 60u8, 25u8, 45u8, 81u8, + 208u8, + ], + ) + } + #[doc = " The block number where the session start occurred. Used to track how many group rotations have occurred."] + #[doc = ""] + #[doc = " Note that in the context of parachains modules the session change is signaled during"] + #[doc = " the block and enacted at the end of the block (at the finalization stage, to be exact)."] + #[doc = " Thus for all intents and purposes the effect of the session change is observed at the"] + #[doc = " block following the session change, block number of which we save in this storage value."] + pub fn session_start_block( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaScheduler", + "SessionStartBlock", + vec![], + [ + 185u8, 76u8, 120u8, 75u8, 154u8, 31u8, 33u8, 243u8, 16u8, 77u8, 100u8, + 249u8, 21u8, 44u8, 199u8, 195u8, 37u8, 9u8, 218u8, 148u8, 222u8, 90u8, + 113u8, 34u8, 152u8, 215u8, 114u8, 134u8, 81u8, 139u8, 164u8, 71u8, + ], + ) + } + #[doc = " Currently scheduled cores - free but up to be occupied."] + #[doc = ""] + #[doc = " Bounded by the number of cores: one for each parachain and parathread multiplexer."] + #[doc = ""] + #[doc = " The value contained here will not be valid after the end of a block. Runtime APIs should be used to determine scheduled cores/"] + #[doc = " for the upcoming block."] + pub fn scheduled( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec< + runtime_types::polkadot_runtime_parachains::scheduler::CoreAssignment, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaScheduler", + "Scheduled", + vec![], + [ + 180u8, 21u8, 56u8, 68u8, 56u8, 82u8, 50u8, 7u8, 71u8, 167u8, 6u8, 2u8, + 235u8, 39u8, 78u8, 23u8, 173u8, 129u8, 112u8, 131u8, 35u8, 147u8, 80u8, + 173u8, 47u8, 108u8, 170u8, 247u8, 213u8, 71u8, 247u8, 151u8, + ], + ) + } + } + } + } + pub mod paras { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_parachains::paras::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_parachains::paras::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetCurrentCode { + pub para: runtime_types::polkadot_parachain::primitives::Id, + pub new_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSetCurrentCode { + const PALLET: &'static str = "Paras"; + const CALL: &'static str = "force_set_current_code"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetCurrentHead { + pub para: runtime_types::polkadot_parachain::primitives::Id, + pub new_head: runtime_types::polkadot_parachain::primitives::HeadData, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSetCurrentHead { + const PALLET: &'static str = "Paras"; + const CALL: &'static str = "force_set_current_head"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceScheduleCodeUpgrade { + pub para: runtime_types::polkadot_parachain::primitives::Id, + pub new_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + pub relay_parent_number: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ForceScheduleCodeUpgrade { + const PALLET: &'static str = "Paras"; + const CALL: &'static str = "force_schedule_code_upgrade"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceNoteNewHead { + pub para: runtime_types::polkadot_parachain::primitives::Id, + pub new_head: runtime_types::polkadot_parachain::primitives::HeadData, + } + impl ::subxt::blocks::StaticExtrinsic for ForceNoteNewHead { + const PALLET: &'static str = "Paras"; + const CALL: &'static str = "force_note_new_head"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceQueueAction { + pub para: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for ForceQueueAction { + const PALLET: &'static str = "Paras"; + const CALL: &'static str = "force_queue_action"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AddTrustedValidationCode { + pub validation_code: + runtime_types::polkadot_parachain::primitives::ValidationCode, + } + impl ::subxt::blocks::StaticExtrinsic for AddTrustedValidationCode { + const PALLET: &'static str = "Paras"; + const CALL: &'static str = "add_trusted_validation_code"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PokeUnusedValidationCode { + pub validation_code_hash: + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + } + impl ::subxt::blocks::StaticExtrinsic for PokeUnusedValidationCode { + const PALLET: &'static str = "Paras"; + const CALL: &'static str = "poke_unused_validation_code"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct IncludePvfCheckStatement { + pub stmt: runtime_types::polkadot_primitives::v4::PvfCheckStatement, + pub signature: runtime_types::polkadot_primitives::v4::validator_app::Signature, + } + impl ::subxt::blocks::StaticExtrinsic for IncludePvfCheckStatement { + const PALLET: &'static str = "Paras"; + const CALL: &'static str = "include_pvf_check_statement"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Set the storage for the parachain validation code immediately."] + pub fn force_set_current_code( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + new_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Paras", + "force_set_current_code", + types::ForceSetCurrentCode { para, new_code }, + [ + 204u8, 159u8, 184u8, 235u8, 65u8, 225u8, 223u8, 130u8, 139u8, 140u8, + 219u8, 58u8, 142u8, 253u8, 236u8, 239u8, 148u8, 190u8, 27u8, 234u8, + 165u8, 125u8, 129u8, 235u8, 98u8, 33u8, 172u8, 71u8, 90u8, 41u8, 182u8, + 80u8, + ], + ) + } + #[doc = "Set the storage for the current parachain head data immediately."] + pub fn force_set_current_head( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + new_head: runtime_types::polkadot_parachain::primitives::HeadData, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Paras", + "force_set_current_head", + types::ForceSetCurrentHead { para, new_head }, + [ + 184u8, 247u8, 184u8, 248u8, 89u8, 64u8, 18u8, 193u8, 254u8, 71u8, + 220u8, 195u8, 124u8, 212u8, 178u8, 169u8, 155u8, 189u8, 11u8, 135u8, + 247u8, 39u8, 253u8, 196u8, 111u8, 242u8, 189u8, 91u8, 226u8, 219u8, + 232u8, 238u8, + ], + ) + } + #[doc = "Schedule an upgrade as if it was scheduled in the given relay parent block."] + pub fn force_schedule_code_upgrade( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + new_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + relay_parent_number: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Paras", + "force_schedule_code_upgrade", + types::ForceScheduleCodeUpgrade { + para, + new_code, + relay_parent_number, + }, + [ + 131u8, 179u8, 138u8, 151u8, 167u8, 191u8, 2u8, 68u8, 85u8, 111u8, + 166u8, 65u8, 67u8, 52u8, 201u8, 41u8, 132u8, 128u8, 35u8, 177u8, 91u8, + 185u8, 114u8, 2u8, 123u8, 133u8, 164u8, 121u8, 170u8, 243u8, 223u8, + 61u8, + ], + ) + } + #[doc = "Note a new block head for para within the context of the current block."] + pub fn force_note_new_head( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + new_head: runtime_types::polkadot_parachain::primitives::HeadData, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Paras", + "force_note_new_head", + types::ForceNoteNewHead { para, new_head }, + [ + 215u8, 12u8, 228u8, 208u8, 7u8, 24u8, 207u8, 60u8, 183u8, 241u8, 212u8, + 203u8, 139u8, 149u8, 9u8, 236u8, 77u8, 15u8, 242u8, 70u8, 62u8, 204u8, + 187u8, 91u8, 110u8, 73u8, 210u8, 2u8, 8u8, 118u8, 182u8, 171u8, + ], + ) + } + #[doc = "Put a parachain directly into the next session's action queue."] + #[doc = "We can't queue it any sooner than this without going into the"] + #[doc = "initializer..."] + pub fn force_queue_action( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Paras", + "force_queue_action", + types::ForceQueueAction { para }, + [ + 112u8, 247u8, 239u8, 8u8, 91u8, 23u8, 111u8, 84u8, 179u8, 61u8, 235u8, + 49u8, 140u8, 110u8, 40u8, 226u8, 150u8, 253u8, 146u8, 193u8, 136u8, + 133u8, 100u8, 127u8, 38u8, 165u8, 159u8, 17u8, 205u8, 190u8, 6u8, + 117u8, + ], + ) + } + #[doc = "Adds the validation code to the storage."] + #[doc = ""] + #[doc = "The code will not be added if it is already present. Additionally, if PVF pre-checking"] + #[doc = "is running for that code, it will be instantly accepted."] + #[doc = ""] + #[doc = "Otherwise, the code will be added into the storage. Note that the code will be added"] + #[doc = "into storage with reference count 0. This is to account the fact that there are no users"] + #[doc = "for this code yet. The caller will have to make sure that this code eventually gets"] + #[doc = "used by some parachain or removed from the storage to avoid storage leaks. For the latter"] + #[doc = "prefer to use the `poke_unused_validation_code` dispatchable to raw storage manipulation."] + #[doc = ""] + #[doc = "This function is mainly meant to be used for upgrading parachains that do not follow"] + #[doc = "the go-ahead signal while the PVF pre-checking feature is enabled."] + pub fn add_trusted_validation_code( + &self, + validation_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Paras", + "add_trusted_validation_code", + types::AddTrustedValidationCode { validation_code }, + [ + 196u8, 123u8, 133u8, 223u8, 3u8, 205u8, 127u8, 23u8, 82u8, 201u8, + 107u8, 47u8, 23u8, 75u8, 139u8, 198u8, 178u8, 171u8, 160u8, 61u8, + 132u8, 250u8, 76u8, 110u8, 3u8, 144u8, 90u8, 253u8, 89u8, 141u8, 162u8, + 135u8, + ], + ) + } + #[doc = "Remove the validation code from the storage iff the reference count is 0."] + #[doc = ""] + #[doc = "This is better than removing the storage directly, because it will not remove the code"] + #[doc = "that was suddenly got used by some parachain while this dispatchable was pending"] + #[doc = "dispatching."] + pub fn poke_unused_validation_code( + &self, + validation_code_hash : runtime_types :: polkadot_parachain :: primitives :: ValidationCodeHash, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Paras", + "poke_unused_validation_code", + types::PokeUnusedValidationCode { + validation_code_hash, + }, + [ + 180u8, 53u8, 213u8, 27u8, 150u8, 195u8, 50u8, 1u8, 62u8, 246u8, 244u8, + 229u8, 115u8, 202u8, 55u8, 140u8, 108u8, 28u8, 245u8, 66u8, 165u8, + 128u8, 105u8, 221u8, 7u8, 87u8, 242u8, 19u8, 88u8, 132u8, 36u8, 32u8, + ], + ) + } + #[doc = "Includes a statement for a PVF pre-checking vote. Potentially, finalizes the vote and"] + #[doc = "enacts the results if that was the last vote before achieving the supermajority."] + pub fn include_pvf_check_statement( + &self, + stmt: runtime_types::polkadot_primitives::v4::PvfCheckStatement, + signature: runtime_types::polkadot_primitives::v4::validator_app::Signature, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Paras", + "include_pvf_check_statement", + types::IncludePvfCheckStatement { stmt, signature }, + [ + 104u8, 113u8, 121u8, 186u8, 41u8, 70u8, 254u8, 44u8, 207u8, 94u8, 61u8, + 148u8, 106u8, 240u8, 165u8, 223u8, 231u8, 190u8, 157u8, 97u8, 55u8, + 90u8, 229u8, 112u8, 129u8, 224u8, 29u8, 180u8, 242u8, 203u8, 195u8, + 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::polkadot_runtime_parachains::paras::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Current code has been updated for a Para. `para_id`"] + pub struct CurrentCodeUpdated(pub runtime_types::polkadot_parachain::primitives::Id); + impl ::subxt::events::StaticEvent for CurrentCodeUpdated { + const PALLET: &'static str = "Paras"; + const EVENT: &'static str = "CurrentCodeUpdated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Current head has been updated for a Para. `para_id`"] + pub struct CurrentHeadUpdated(pub runtime_types::polkadot_parachain::primitives::Id); + impl ::subxt::events::StaticEvent for CurrentHeadUpdated { + const PALLET: &'static str = "Paras"; + const EVENT: &'static str = "CurrentHeadUpdated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A code upgrade has been scheduled for a Para. `para_id`"] + pub struct CodeUpgradeScheduled(pub runtime_types::polkadot_parachain::primitives::Id); + impl ::subxt::events::StaticEvent for CodeUpgradeScheduled { + const PALLET: &'static str = "Paras"; + const EVENT: &'static str = "CodeUpgradeScheduled"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A new head has been noted for a Para. `para_id`"] + pub struct NewHeadNoted(pub runtime_types::polkadot_parachain::primitives::Id); + impl ::subxt::events::StaticEvent for NewHeadNoted { + const PALLET: &'static str = "Paras"; + const EVENT: &'static str = "NewHeadNoted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A para has been queued to execute pending actions. `para_id`"] + pub struct ActionQueued( + pub runtime_types::polkadot_parachain::primitives::Id, + pub ::core::primitive::u32, + ); + impl ::subxt::events::StaticEvent for ActionQueued { + const PALLET: &'static str = "Paras"; + const EVENT: &'static str = "ActionQueued"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The given para either initiated or subscribed to a PVF check for the given validation"] + #[doc = "code. `code_hash` `para_id`"] + pub struct PvfCheckStarted( + pub runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + pub runtime_types::polkadot_parachain::primitives::Id, + ); + impl ::subxt::events::StaticEvent for PvfCheckStarted { + const PALLET: &'static str = "Paras"; + const EVENT: &'static str = "PvfCheckStarted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The given validation code was accepted by the PVF pre-checking vote."] + #[doc = "`code_hash` `para_id`"] + pub struct PvfCheckAccepted( + pub runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + pub runtime_types::polkadot_parachain::primitives::Id, + ); + impl ::subxt::events::StaticEvent for PvfCheckAccepted { + const PALLET: &'static str = "Paras"; + const EVENT: &'static str = "PvfCheckAccepted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The given validation code was rejected by the PVF pre-checking vote."] + #[doc = "`code_hash` `para_id`"] + pub struct PvfCheckRejected( + pub runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + pub runtime_types::polkadot_parachain::primitives::Id, + ); + impl ::subxt::events::StaticEvent for PvfCheckRejected { + const PALLET: &'static str = "Paras"; + const EVENT: &'static str = "PvfCheckRejected"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " All currently active PVF pre-checking votes."] + #[doc = ""] + #[doc = " Invariant:"] + #[doc = " - There are no PVF pre-checking votes that exists in list but not in the set and vice versa."] + pub fn pvf_active_vote_map_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::paras::PvfCheckActiveVoteState< + ::core::primitive::u32, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "PvfActiveVoteMap", + vec![], + [ + 216u8, 212u8, 234u8, 214u8, 209u8, 164u8, 99u8, 74u8, 18u8, 189u8, + 61u8, 178u8, 189u8, 246u8, 208u8, 50u8, 53u8, 183u8, 200u8, 146u8, + 19u8, 120u8, 209u8, 118u8, 129u8, 115u8, 248u8, 7u8, 188u8, 78u8, + 186u8, 181u8, + ], + ) + } + #[doc = " All currently active PVF pre-checking votes."] + #[doc = ""] + #[doc = " Invariant:"] + #[doc = " - There are no PVF pre-checking votes that exists in list but not in the set and vice versa."] + pub fn pvf_active_vote_map( + &self, + _0: impl ::std::borrow::Borrow< + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::paras::PvfCheckActiveVoteState< + ::core::primitive::u32, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "PvfActiveVoteMap", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 216u8, 212u8, 234u8, 214u8, 209u8, 164u8, 99u8, 74u8, 18u8, 189u8, + 61u8, 178u8, 189u8, 246u8, 208u8, 50u8, 53u8, 183u8, 200u8, 146u8, + 19u8, 120u8, 209u8, 118u8, 129u8, 115u8, 248u8, 7u8, 188u8, 78u8, + 186u8, 181u8, + ], + ) + } + #[doc = " The list of all currently active PVF votes. Auxiliary to `PvfActiveVoteMap`."] + pub fn pvf_active_vote_list( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec< + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "PvfActiveVoteList", + vec![], + [ + 172u8, 215u8, 137u8, 191u8, 52u8, 104u8, 106u8, 118u8, 134u8, 82u8, + 137u8, 6u8, 175u8, 158u8, 58u8, 230u8, 231u8, 152u8, 195u8, 17u8, 51u8, + 133u8, 10u8, 205u8, 212u8, 6u8, 24u8, 59u8, 114u8, 222u8, 96u8, 42u8, + ], + ) + } + #[doc = " All parachains. Ordered ascending by `ParaId`. Parathreads are not included."] + #[doc = ""] + #[doc = " Consider using the [`ParachainsCache`] type of modifying."] + pub fn parachains( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "Parachains", + vec![], + [ + 242u8, 228u8, 175u8, 107u8, 242u8, 39u8, 52u8, 181u8, 32u8, 171u8, + 21u8, 169u8, 204u8, 19u8, 21u8, 217u8, 121u8, 239u8, 218u8, 252u8, + 80u8, 188u8, 119u8, 157u8, 235u8, 218u8, 221u8, 113u8, 0u8, 108u8, + 245u8, 210u8, + ], + ) + } + #[doc = " The current lifecycle of a all known Para IDs."] + pub fn para_lifecycles_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::paras::ParaLifecycle, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "ParaLifecycles", + vec![], + [ + 2u8, 203u8, 32u8, 194u8, 76u8, 227u8, 250u8, 9u8, 168u8, 201u8, 171u8, + 180u8, 18u8, 169u8, 206u8, 183u8, 48u8, 189u8, 204u8, 192u8, 237u8, + 233u8, 156u8, 255u8, 102u8, 22u8, 101u8, 110u8, 194u8, 55u8, 118u8, + 81u8, + ], + ) + } + #[doc = " The current lifecycle of a all known Para IDs."] + pub fn para_lifecycles( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::paras::ParaLifecycle, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "ParaLifecycles", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 2u8, 203u8, 32u8, 194u8, 76u8, 227u8, 250u8, 9u8, 168u8, 201u8, 171u8, + 180u8, 18u8, 169u8, 206u8, 183u8, 48u8, 189u8, 204u8, 192u8, 237u8, + 233u8, 156u8, 255u8, 102u8, 22u8, 101u8, 110u8, 194u8, 55u8, 118u8, + 81u8, + ], + ) + } + #[doc = " The head-data of every registered para."] + pub fn heads_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::HeadData, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "Heads", + vec![], + [ + 222u8, 116u8, 180u8, 190u8, 172u8, 192u8, 174u8, 132u8, 225u8, 180u8, + 119u8, 90u8, 5u8, 39u8, 92u8, 230u8, 116u8, 202u8, 92u8, 99u8, 135u8, + 201u8, 10u8, 58u8, 55u8, 211u8, 209u8, 86u8, 93u8, 133u8, 99u8, 139u8, + ], + ) + } + #[doc = " The head-data of every registered para."] + pub fn heads( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::HeadData, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "Heads", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 222u8, 116u8, 180u8, 190u8, 172u8, 192u8, 174u8, 132u8, 225u8, 180u8, + 119u8, 90u8, 5u8, 39u8, 92u8, 230u8, 116u8, 202u8, 92u8, 99u8, 135u8, + 201u8, 10u8, 58u8, 55u8, 211u8, 209u8, 86u8, 93u8, 133u8, 99u8, 139u8, + ], + ) + } + #[doc = " The validation code hash of every live para."] + #[doc = ""] + #[doc = " Corresponding code can be retrieved with [`CodeByHash`]."] + pub fn current_code_hash_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "CurrentCodeHash", + vec![], + [ + 251u8, 100u8, 30u8, 46u8, 191u8, 60u8, 45u8, 221u8, 218u8, 20u8, 154u8, + 233u8, 211u8, 198u8, 151u8, 195u8, 99u8, 210u8, 126u8, 165u8, 240u8, + 129u8, 183u8, 252u8, 104u8, 119u8, 38u8, 155u8, 150u8, 198u8, 127u8, + 103u8, + ], + ) + } + #[doc = " The validation code hash of every live para."] + #[doc = ""] + #[doc = " Corresponding code can be retrieved with [`CodeByHash`]."] + pub fn current_code_hash( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "CurrentCodeHash", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 251u8, 100u8, 30u8, 46u8, 191u8, 60u8, 45u8, 221u8, 218u8, 20u8, 154u8, + 233u8, 211u8, 198u8, 151u8, 195u8, 99u8, 210u8, 126u8, 165u8, 240u8, + 129u8, 183u8, 252u8, 104u8, 119u8, 38u8, 155u8, 150u8, 198u8, 127u8, + 103u8, + ], + ) + } + #[doc = " Actual past code hash, indicated by the para id as well as the block number at which it"] + #[doc = " became outdated."] + #[doc = ""] + #[doc = " Corresponding code can be retrieved with [`CodeByHash`]."] + pub fn past_code_hash_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "PastCodeHash", + vec![], + [ + 73u8, 209u8, 188u8, 36u8, 127u8, 42u8, 171u8, 136u8, 29u8, 126u8, + 220u8, 209u8, 230u8, 22u8, 12u8, 63u8, 8u8, 102u8, 45u8, 158u8, 178u8, + 232u8, 8u8, 6u8, 71u8, 188u8, 140u8, 41u8, 10u8, 215u8, 22u8, 153u8, + ], + ) + } + #[doc = " Actual past code hash, indicated by the para id as well as the block number at which it"] + #[doc = " became outdated."] + #[doc = ""] + #[doc = " Corresponding code can be retrieved with [`CodeByHash`]."] + pub fn past_code_hash_iter1( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "PastCodeHash", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 73u8, 209u8, 188u8, 36u8, 127u8, 42u8, 171u8, 136u8, 29u8, 126u8, + 220u8, 209u8, 230u8, 22u8, 12u8, 63u8, 8u8, 102u8, 45u8, 158u8, 178u8, + 232u8, 8u8, 6u8, 71u8, 188u8, 140u8, 41u8, 10u8, 215u8, 22u8, 153u8, + ], + ) + } + #[doc = " Actual past code hash, indicated by the para id as well as the block number at which it"] + #[doc = " became outdated."] + #[doc = ""] + #[doc = " Corresponding code can be retrieved with [`CodeByHash`]."] + pub fn past_code_hash( + &self, + _0: impl ::std::borrow::Borrow, + _1: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "PastCodeHash", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 73u8, 209u8, 188u8, 36u8, 127u8, 42u8, 171u8, 136u8, 29u8, 126u8, + 220u8, 209u8, 230u8, 22u8, 12u8, 63u8, 8u8, 102u8, 45u8, 158u8, 178u8, + 232u8, 8u8, 6u8, 71u8, 188u8, 140u8, 41u8, 10u8, 215u8, 22u8, 153u8, + ], + ) + } + #[doc = " Past code of parachains. The parachains themselves may not be registered anymore,"] + #[doc = " but we also keep their code on-chain for the same amount of time as outdated code"] + #[doc = " to keep it available for approval checkers."] + pub fn past_code_meta_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::paras::ParaPastCodeMeta< + ::core::primitive::u32, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "PastCodeMeta", + vec![], + [ + 233u8, 47u8, 137u8, 174u8, 98u8, 64u8, 11u8, 75u8, 93u8, 222u8, 78u8, + 58u8, 66u8, 245u8, 151u8, 39u8, 144u8, 36u8, 84u8, 176u8, 239u8, 183u8, + 197u8, 176u8, 158u8, 139u8, 121u8, 189u8, 29u8, 244u8, 229u8, 73u8, + ], + ) + } + #[doc = " Past code of parachains. The parachains themselves may not be registered anymore,"] + #[doc = " but we also keep their code on-chain for the same amount of time as outdated code"] + #[doc = " to keep it available for approval checkers."] + pub fn past_code_meta( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::paras::ParaPastCodeMeta< + ::core::primitive::u32, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "PastCodeMeta", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 233u8, 47u8, 137u8, 174u8, 98u8, 64u8, 11u8, 75u8, 93u8, 222u8, 78u8, + 58u8, 66u8, 245u8, 151u8, 39u8, 144u8, 36u8, 84u8, 176u8, 239u8, 183u8, + 197u8, 176u8, 158u8, 139u8, 121u8, 189u8, 29u8, 244u8, 229u8, 73u8, + ], + ) + } + #[doc = " Which paras have past code that needs pruning and the relay-chain block at which the code was replaced."] + #[doc = " Note that this is the actual height of the included block, not the expected height at which the"] + #[doc = " code upgrade would be applied, although they may be equal."] + #[doc = " This is to ensure the entire acceptance period is covered, not an offset acceptance period starting"] + #[doc = " from the time at which the parachain perceives a code upgrade as having occurred."] + #[doc = " Multiple entries for a single para are permitted. Ordered ascending by block number."] + pub fn past_code_pruning( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<( + runtime_types::polkadot_parachain::primitives::Id, + ::core::primitive::u32, + )>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "PastCodePruning", + vec![], + [ + 67u8, 190u8, 51u8, 133u8, 173u8, 24u8, 151u8, 111u8, 108u8, 152u8, + 106u8, 18u8, 29u8, 80u8, 104u8, 120u8, 91u8, 138u8, 209u8, 49u8, 255u8, + 211u8, 53u8, 195u8, 61u8, 188u8, 183u8, 53u8, 37u8, 230u8, 53u8, 183u8, + ], + ) + } + #[doc = " The block number at which the planned code change is expected for a para."] + #[doc = " The change will be applied after the first parablock for this ID included which executes"] + #[doc = " in the context of a relay chain block with a number >= `expected_at`."] + pub fn future_code_upgrades_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "FutureCodeUpgrades", + vec![], + [ + 163u8, 168u8, 23u8, 138u8, 198u8, 70u8, 135u8, 221u8, 167u8, 187u8, + 15u8, 144u8, 228u8, 8u8, 138u8, 125u8, 101u8, 154u8, 11u8, 74u8, 173u8, + 167u8, 17u8, 97u8, 240u8, 6u8, 20u8, 161u8, 25u8, 111u8, 242u8, 9u8, + ], + ) + } + #[doc = " The block number at which the planned code change is expected for a para."] + #[doc = " The change will be applied after the first parablock for this ID included which executes"] + #[doc = " in the context of a relay chain block with a number >= `expected_at`."] + pub fn future_code_upgrades( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "FutureCodeUpgrades", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 163u8, 168u8, 23u8, 138u8, 198u8, 70u8, 135u8, 221u8, 167u8, 187u8, + 15u8, 144u8, 228u8, 8u8, 138u8, 125u8, 101u8, 154u8, 11u8, 74u8, 173u8, + 167u8, 17u8, 97u8, 240u8, 6u8, 20u8, 161u8, 25u8, 111u8, 242u8, 9u8, + ], + ) + } + #[doc = " The actual future code hash of a para."] + #[doc = ""] + #[doc = " Corresponding code can be retrieved with [`CodeByHash`]."] + pub fn future_code_hash_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "FutureCodeHash", + vec![], + [ + 62u8, 238u8, 183u8, 12u8, 197u8, 119u8, 163u8, 239u8, 192u8, 228u8, + 110u8, 58u8, 128u8, 223u8, 32u8, 137u8, 109u8, 127u8, 41u8, 83u8, 91u8, + 98u8, 156u8, 118u8, 96u8, 147u8, 16u8, 31u8, 5u8, 92u8, 227u8, 230u8, + ], + ) + } + #[doc = " The actual future code hash of a para."] + #[doc = ""] + #[doc = " Corresponding code can be retrieved with [`CodeByHash`]."] + pub fn future_code_hash( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "FutureCodeHash", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 62u8, 238u8, 183u8, 12u8, 197u8, 119u8, 163u8, 239u8, 192u8, 228u8, + 110u8, 58u8, 128u8, 223u8, 32u8, 137u8, 109u8, 127u8, 41u8, 83u8, 91u8, + 98u8, 156u8, 118u8, 96u8, 147u8, 16u8, 31u8, 5u8, 92u8, 227u8, 230u8, + ], + ) + } + #[doc = " This is used by the relay-chain to communicate to a parachain a go-ahead with in the upgrade procedure."] + #[doc = ""] + #[doc = " This value is absent when there are no upgrades scheduled or during the time the relay chain"] + #[doc = " performs the checks. It is set at the first relay-chain block when the corresponding parachain"] + #[doc = " can switch its upgrade function. As soon as the parachain's block is included, the value"] + #[doc = " gets reset to `None`."] + #[doc = ""] + #[doc = " NOTE that this field is used by parachains via merkle storage proofs, therefore changing"] + #[doc = " the format will require migration of parachains."] + pub fn upgrade_go_ahead_signal_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::UpgradeGoAhead, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "UpgradeGoAheadSignal", + vec![], + [ + 41u8, 80u8, 120u8, 6u8, 98u8, 85u8, 36u8, 37u8, 170u8, 189u8, 56u8, + 127u8, 155u8, 180u8, 112u8, 195u8, 135u8, 214u8, 235u8, 87u8, 197u8, + 247u8, 125u8, 26u8, 232u8, 82u8, 250u8, 90u8, 126u8, 106u8, 62u8, + 217u8, + ], + ) + } + #[doc = " This is used by the relay-chain to communicate to a parachain a go-ahead with in the upgrade procedure."] + #[doc = ""] + #[doc = " This value is absent when there are no upgrades scheduled or during the time the relay chain"] + #[doc = " performs the checks. It is set at the first relay-chain block when the corresponding parachain"] + #[doc = " can switch its upgrade function. As soon as the parachain's block is included, the value"] + #[doc = " gets reset to `None`."] + #[doc = ""] + #[doc = " NOTE that this field is used by parachains via merkle storage proofs, therefore changing"] + #[doc = " the format will require migration of parachains."] + pub fn upgrade_go_ahead_signal( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::UpgradeGoAhead, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "UpgradeGoAheadSignal", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 41u8, 80u8, 120u8, 6u8, 98u8, 85u8, 36u8, 37u8, 170u8, 189u8, 56u8, + 127u8, 155u8, 180u8, 112u8, 195u8, 135u8, 214u8, 235u8, 87u8, 197u8, + 247u8, 125u8, 26u8, 232u8, 82u8, 250u8, 90u8, 126u8, 106u8, 62u8, + 217u8, + ], + ) + } + #[doc = " This is used by the relay-chain to communicate that there are restrictions for performing"] + #[doc = " an upgrade for this parachain."] + #[doc = ""] + #[doc = " This may be a because the parachain waits for the upgrade cooldown to expire. Another"] + #[doc = " potential use case is when we want to perform some maintenance (such as storage migration)"] + #[doc = " we could restrict upgrades to make the process simpler."] + #[doc = ""] + #[doc = " NOTE that this field is used by parachains via merkle storage proofs, therefore changing"] + #[doc = " the format will require migration of parachains."] + pub fn upgrade_restriction_signal_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::UpgradeRestriction, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "UpgradeRestrictionSignal", + vec![], + [ + 158u8, 105u8, 62u8, 252u8, 149u8, 145u8, 34u8, 92u8, 119u8, 204u8, + 46u8, 96u8, 117u8, 183u8, 134u8, 20u8, 172u8, 243u8, 145u8, 113u8, + 74u8, 119u8, 96u8, 107u8, 129u8, 109u8, 96u8, 143u8, 77u8, 14u8, 56u8, + 117u8, + ], + ) + } + #[doc = " This is used by the relay-chain to communicate that there are restrictions for performing"] + #[doc = " an upgrade for this parachain."] + #[doc = ""] + #[doc = " This may be a because the parachain waits for the upgrade cooldown to expire. Another"] + #[doc = " potential use case is when we want to perform some maintenance (such as storage migration)"] + #[doc = " we could restrict upgrades to make the process simpler."] + #[doc = ""] + #[doc = " NOTE that this field is used by parachains via merkle storage proofs, therefore changing"] + #[doc = " the format will require migration of parachains."] + pub fn upgrade_restriction_signal( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::UpgradeRestriction, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "UpgradeRestrictionSignal", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 158u8, 105u8, 62u8, 252u8, 149u8, 145u8, 34u8, 92u8, 119u8, 204u8, + 46u8, 96u8, 117u8, 183u8, 134u8, 20u8, 172u8, 243u8, 145u8, 113u8, + 74u8, 119u8, 96u8, 107u8, 129u8, 109u8, 96u8, 143u8, 77u8, 14u8, 56u8, + 117u8, + ], + ) + } + #[doc = " The list of parachains that are awaiting for their upgrade restriction to cooldown."] + #[doc = ""] + #[doc = " Ordered ascending by block number."] + pub fn upgrade_cooldowns( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<( + runtime_types::polkadot_parachain::primitives::Id, + ::core::primitive::u32, + )>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "UpgradeCooldowns", + vec![], + [ + 180u8, 197u8, 115u8, 209u8, 126u8, 120u8, 133u8, 54u8, 232u8, 192u8, + 47u8, 17u8, 21u8, 8u8, 231u8, 67u8, 1u8, 89u8, 127u8, 38u8, 179u8, + 190u8, 169u8, 110u8, 20u8, 92u8, 139u8, 227u8, 26u8, 59u8, 245u8, + 174u8, + ], + ) + } + #[doc = " The list of upcoming code upgrades. Each item is a pair of which para performs a code"] + #[doc = " upgrade and at which relay-chain block it is expected at."] + #[doc = ""] + #[doc = " Ordered ascending by block number."] + pub fn upcoming_upgrades( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<( + runtime_types::polkadot_parachain::primitives::Id, + ::core::primitive::u32, + )>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "UpcomingUpgrades", + vec![], + [ + 38u8, 195u8, 15u8, 56u8, 225u8, 199u8, 105u8, 84u8, 128u8, 51u8, 44u8, + 248u8, 237u8, 32u8, 36u8, 72u8, 77u8, 137u8, 124u8, 88u8, 242u8, 185u8, + 50u8, 148u8, 216u8, 156u8, 209u8, 101u8, 207u8, 127u8, 66u8, 95u8, + ], + ) + } + #[doc = " The actions to perform during the start of a specific session index."] + pub fn actions_queue_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "ActionsQueue", + vec![], + [ + 13u8, 25u8, 129u8, 203u8, 95u8, 206u8, 254u8, 240u8, 170u8, 209u8, + 55u8, 117u8, 70u8, 220u8, 139u8, 102u8, 9u8, 229u8, 139u8, 120u8, 67u8, + 246u8, 214u8, 59u8, 81u8, 116u8, 54u8, 67u8, 129u8, 32u8, 67u8, 92u8, + ], + ) + } + #[doc = " The actions to perform during the start of a specific session index."] + pub fn actions_queue( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "ActionsQueue", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 13u8, 25u8, 129u8, 203u8, 95u8, 206u8, 254u8, 240u8, 170u8, 209u8, + 55u8, 117u8, 70u8, 220u8, 139u8, 102u8, 9u8, 229u8, 139u8, 120u8, 67u8, + 246u8, 214u8, 59u8, 81u8, 116u8, 54u8, 67u8, 129u8, 32u8, 67u8, 92u8, + ], + ) + } + #[doc = " Upcoming paras instantiation arguments."] + #[doc = ""] + #[doc = " NOTE that after PVF pre-checking is enabled the para genesis arg will have it's code set"] + #[doc = " to empty. Instead, the code will be saved into the storage right away via `CodeByHash`."] + pub fn upcoming_paras_genesis_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::paras::ParaGenesisArgs, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "UpcomingParasGenesis", + vec![], + [ + 215u8, 121u8, 106u8, 13u8, 102u8, 47u8, 129u8, 221u8, 153u8, 91u8, + 23u8, 94u8, 11u8, 39u8, 19u8, 180u8, 136u8, 136u8, 254u8, 152u8, 250u8, + 150u8, 40u8, 87u8, 135u8, 121u8, 219u8, 151u8, 111u8, 35u8, 43u8, + 195u8, + ], + ) + } + #[doc = " Upcoming paras instantiation arguments."] + #[doc = ""] + #[doc = " NOTE that after PVF pre-checking is enabled the para genesis arg will have it's code set"] + #[doc = " to empty. Instead, the code will be saved into the storage right away via `CodeByHash`."] + pub fn upcoming_paras_genesis( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::paras::ParaGenesisArgs, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "UpcomingParasGenesis", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 215u8, 121u8, 106u8, 13u8, 102u8, 47u8, 129u8, 221u8, 153u8, 91u8, + 23u8, 94u8, 11u8, 39u8, 19u8, 180u8, 136u8, 136u8, 254u8, 152u8, 250u8, + 150u8, 40u8, 87u8, 135u8, 121u8, 219u8, 151u8, 111u8, 35u8, 43u8, + 195u8, + ], + ) + } + #[doc = " The number of reference on the validation code in [`CodeByHash`] storage."] + pub fn code_by_hash_refs_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "CodeByHashRefs", + vec![], + [ + 47u8, 50u8, 103u8, 161u8, 130u8, 252u8, 157u8, 35u8, 174u8, 37u8, + 102u8, 60u8, 195u8, 30u8, 164u8, 203u8, 67u8, 129u8, 107u8, 181u8, + 166u8, 205u8, 230u8, 91u8, 36u8, 187u8, 253u8, 150u8, 39u8, 168u8, + 223u8, 16u8, + ], + ) + } + #[doc = " The number of reference on the validation code in [`CodeByHash`] storage."] + pub fn code_by_hash_refs( + &self, + _0: impl ::std::borrow::Borrow< + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "CodeByHashRefs", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 47u8, 50u8, 103u8, 161u8, 130u8, 252u8, 157u8, 35u8, 174u8, 37u8, + 102u8, 60u8, 195u8, 30u8, 164u8, 203u8, 67u8, 129u8, 107u8, 181u8, + 166u8, 205u8, 230u8, 91u8, 36u8, 187u8, 253u8, 150u8, 39u8, 168u8, + 223u8, 16u8, + ], + ) + } + #[doc = " Validation code stored by its hash."] + #[doc = ""] + #[doc = " This storage is consistent with [`FutureCodeHash`], [`CurrentCodeHash`] and"] + #[doc = " [`PastCodeHash`]."] + pub fn code_by_hash_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::ValidationCode, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "CodeByHash", + vec![], + [ + 155u8, 102u8, 73u8, 180u8, 127u8, 211u8, 181u8, 44u8, 56u8, 235u8, + 49u8, 4u8, 25u8, 213u8, 116u8, 200u8, 232u8, 203u8, 190u8, 90u8, 93u8, + 6u8, 57u8, 227u8, 240u8, 92u8, 157u8, 129u8, 3u8, 148u8, 45u8, 143u8, + ], + ) + } + #[doc = " Validation code stored by its hash."] + #[doc = ""] + #[doc = " This storage is consistent with [`FutureCodeHash`], [`CurrentCodeHash`] and"] + #[doc = " [`PastCodeHash`]."] + pub fn code_by_hash( + &self, + _0: impl ::std::borrow::Borrow< + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::ValidationCode, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Paras", + "CodeByHash", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 155u8, 102u8, 73u8, 180u8, 127u8, 211u8, 181u8, 44u8, 56u8, 235u8, + 49u8, 4u8, 25u8, 213u8, 116u8, 200u8, 232u8, 203u8, 190u8, 90u8, 93u8, + 6u8, 57u8, 227u8, 240u8, 92u8, 157u8, 129u8, 3u8, 148u8, 45u8, 143u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + pub fn unsigned_priority( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u64> { + ::subxt::constants::Address::new_static( + "Paras", + "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 initializer { + use super::root_mod; + use super::runtime_types; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_parachains::initializer::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceApprove { + pub up_to: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ForceApprove { + const PALLET: &'static str = "Initializer"; + const CALL: &'static str = "force_approve"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Issue a signal to the consensus engine to forcibly act as though all parachain"] + #[doc = "blocks in all relay chain blocks up to and including the given number in the current"] + #[doc = "chain are valid and should be finalized."] + pub fn force_approve( + &self, + up_to: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Initializer", + "force_approve", + types::ForceApprove { up_to }, + [ + 232u8, 166u8, 27u8, 229u8, 157u8, 240u8, 18u8, 137u8, 5u8, 159u8, + 179u8, 239u8, 218u8, 41u8, 181u8, 42u8, 159u8, 243u8, 246u8, 214u8, + 227u8, 77u8, 58u8, 70u8, 241u8, 114u8, 175u8, 124u8, 77u8, 102u8, + 105u8, 199u8, + ], + ) + } + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Whether the parachains modules have been initialized within this block."] + #[doc = ""] + #[doc = " Semantically a `bool`, but this guarantees it should never hit the trie,"] + #[doc = " as this is cleared in `on_finalize` and Frame optimizes `None` values to be empty values."] + #[doc = ""] + #[doc = " As a `bool`, `set(false)` and `remove()` both lead to the next `get()` being false, but one of"] + #[doc = " them writes to the trie and one does not. This confusion makes `Option<()>` more suitable for"] + #[doc = " the semantics of this variable."] + pub fn has_initialized( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Initializer", + "HasInitialized", + vec![], + [ + 156u8, 208u8, 212u8, 86u8, 105u8, 148u8, 252u8, 11u8, 140u8, 67u8, + 231u8, 86u8, 1u8, 147u8, 178u8, 79u8, 27u8, 249u8, 137u8, 103u8, 178u8, + 50u8, 114u8, 157u8, 239u8, 86u8, 89u8, 233u8, 86u8, 58u8, 37u8, 67u8, + ], + ) + } + #[doc = " Buffered session changes along with the block number at which they should be applied."] + #[doc = ""] + #[doc = " Typically this will be empty or one element long. Apart from that this item never hits"] + #[doc = " the storage."] + #[doc = ""] + #[doc = " However this is a `Vec` regardless to handle various edge cases that may occur at runtime"] + #[doc = " upgrade boundaries or if governance intervenes."] pub fn buffered_session_changes (& self ,) -> :: subxt :: storage :: address :: Address :: < :: subxt :: storage :: address :: StaticStorageMapKey , :: std :: vec :: Vec < runtime_types :: polkadot_runtime_parachains :: initializer :: BufferedSessionChange > , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes , () >{ + ::subxt::storage::address::Address::new_static( + "Initializer", + "BufferedSessionChanges", + vec![], + [ + 99u8, 153u8, 100u8, 11u8, 28u8, 62u8, 163u8, 239u8, 177u8, 55u8, 151u8, + 242u8, 227u8, 59u8, 176u8, 10u8, 227u8, 51u8, 252u8, 191u8, 233u8, + 36u8, 1u8, 131u8, 255u8, 56u8, 6u8, 65u8, 5u8, 185u8, 114u8, 139u8, + ], + ) + } + } + } + } + pub mod dmp { + use super::root_mod; + use super::runtime_types; + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " The downward messages addressed for a certain para."] + pub fn downward_message_queues_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec< + runtime_types::polkadot_core_primitives::InboundDownwardMessage< + ::core::primitive::u32, + >, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Dmp", + "DownwardMessageQueues", + vec![], + [ + 38u8, 183u8, 133u8, 200u8, 199u8, 135u8, 68u8, 232u8, 189u8, 168u8, + 3u8, 219u8, 201u8, 180u8, 156u8, 79u8, 134u8, 164u8, 94u8, 114u8, + 102u8, 25u8, 108u8, 53u8, 219u8, 155u8, 102u8, 100u8, 58u8, 28u8, + 246u8, 20u8, + ], + ) + } + #[doc = " The downward messages addressed for a certain para."] + pub fn downward_message_queues( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec< + runtime_types::polkadot_core_primitives::InboundDownwardMessage< + ::core::primitive::u32, + >, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Dmp", + "DownwardMessageQueues", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 38u8, 183u8, 133u8, 200u8, 199u8, 135u8, 68u8, 232u8, 189u8, 168u8, + 3u8, 219u8, 201u8, 180u8, 156u8, 79u8, 134u8, 164u8, 94u8, 114u8, + 102u8, 25u8, 108u8, 53u8, 219u8, 155u8, 102u8, 100u8, 58u8, 28u8, + 246u8, 20u8, + ], + ) + } + #[doc = " A mapping that stores the downward message queue MQC head for each para."] + #[doc = ""] + #[doc = " Each link in this chain has a form:"] + #[doc = " `(prev_head, B, H(M))`, where"] + #[doc = " - `prev_head`: is the previous head hash or zero if none."] + #[doc = " - `B`: is the relay-chain block number in which a message was appended."] + #[doc = " - `H(M)`: is the hash of the message being appended."] + pub fn downward_message_queue_heads_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Dmp", + "DownwardMessageQueueHeads", + vec![], + [ + 135u8, 165u8, 240u8, 0u8, 25u8, 110u8, 9u8, 108u8, 251u8, 225u8, 109u8, + 184u8, 90u8, 132u8, 9u8, 151u8, 12u8, 118u8, 153u8, 212u8, 140u8, + 205u8, 94u8, 98u8, 110u8, 167u8, 155u8, 43u8, 61u8, 35u8, 52u8, 56u8, + ], + ) + } + #[doc = " A mapping that stores the downward message queue MQC head for each para."] + #[doc = ""] + #[doc = " Each link in this chain has a form:"] + #[doc = " `(prev_head, B, H(M))`, where"] + #[doc = " - `prev_head`: is the previous head hash or zero if none."] + #[doc = " - `B`: is the relay-chain block number in which a message was appended."] + #[doc = " - `H(M)`: is the hash of the message being appended."] + pub fn downward_message_queue_heads( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Dmp", + "DownwardMessageQueueHeads", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 135u8, 165u8, 240u8, 0u8, 25u8, 110u8, 9u8, 108u8, 251u8, 225u8, 109u8, + 184u8, 90u8, 132u8, 9u8, 151u8, 12u8, 118u8, 153u8, 212u8, 140u8, + 205u8, 94u8, 98u8, 110u8, 167u8, 155u8, 43u8, 61u8, 35u8, 52u8, 56u8, + ], + ) + } + #[doc = " The number to multiply the base delivery fee by."] + pub fn delivery_fee_factor_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_arithmetic::fixed_point::FixedU128, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Dmp", + "DeliveryFeeFactor", + vec![], + [ + 43u8, 5u8, 63u8, 235u8, 115u8, 155u8, 130u8, 27u8, 75u8, 216u8, 177u8, + 135u8, 203u8, 147u8, 167u8, 95u8, 208u8, 188u8, 25u8, 14u8, 84u8, 63u8, + 116u8, 41u8, 148u8, 110u8, 115u8, 215u8, 196u8, 36u8, 75u8, 102u8, + ], + ) + } + #[doc = " The number to multiply the base delivery fee by."] + pub fn delivery_fee_factor( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_arithmetic::fixed_point::FixedU128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Dmp", + "DeliveryFeeFactor", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 43u8, 5u8, 63u8, 235u8, 115u8, 155u8, 130u8, 27u8, 75u8, 216u8, 177u8, + 135u8, 203u8, 147u8, 167u8, 95u8, 208u8, 188u8, 25u8, 14u8, 84u8, 63u8, + 116u8, 41u8, 148u8, 110u8, 115u8, 215u8, 196u8, 36u8, 75u8, 102u8, + ], + ) + } + } + } + } + pub mod hrmp { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_parachains::hrmp::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_parachains::hrmp::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct HrmpInitOpenChannel { + pub recipient: runtime_types::polkadot_parachain::primitives::Id, + pub proposed_max_capacity: ::core::primitive::u32, + pub proposed_max_message_size: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for HrmpInitOpenChannel { + const PALLET: &'static str = "Hrmp"; + const CALL: &'static str = "hrmp_init_open_channel"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct HrmpAcceptOpenChannel { + pub sender: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for HrmpAcceptOpenChannel { + const PALLET: &'static str = "Hrmp"; + const CALL: &'static str = "hrmp_accept_open_channel"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct HrmpCloseChannel { + pub channel_id: runtime_types::polkadot_parachain::primitives::HrmpChannelId, + } + impl ::subxt::blocks::StaticExtrinsic for HrmpCloseChannel { + const PALLET: &'static str = "Hrmp"; + const CALL: &'static str = "hrmp_close_channel"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceCleanHrmp { + pub para: runtime_types::polkadot_parachain::primitives::Id, + pub inbound: ::core::primitive::u32, + pub outbound: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ForceCleanHrmp { + const PALLET: &'static str = "Hrmp"; + const CALL: &'static str = "force_clean_hrmp"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceProcessHrmpOpen { + pub channels: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ForceProcessHrmpOpen { + const PALLET: &'static str = "Hrmp"; + const CALL: &'static str = "force_process_hrmp_open"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceProcessHrmpClose { + pub channels: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ForceProcessHrmpClose { + const PALLET: &'static str = "Hrmp"; + const CALL: &'static str = "force_process_hrmp_close"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct HrmpCancelOpenRequest { + pub channel_id: runtime_types::polkadot_parachain::primitives::HrmpChannelId, + pub open_requests: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for HrmpCancelOpenRequest { + const PALLET: &'static str = "Hrmp"; + const CALL: &'static str = "hrmp_cancel_open_request"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceOpenHrmpChannel { + pub sender: runtime_types::polkadot_parachain::primitives::Id, + pub recipient: runtime_types::polkadot_parachain::primitives::Id, + pub max_capacity: ::core::primitive::u32, + pub max_message_size: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ForceOpenHrmpChannel { + const PALLET: &'static str = "Hrmp"; + const CALL: &'static str = "force_open_hrmp_channel"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Initiate opening a channel from a parachain to a given recipient with given channel"] + #[doc = "parameters."] + #[doc = ""] + #[doc = "- `proposed_max_capacity` - specifies how many messages can be in the channel at once."] + #[doc = "- `proposed_max_message_size` - specifies the maximum size of the messages."] + #[doc = ""] + #[doc = "These numbers are a subject to the relay-chain configuration limits."] + #[doc = ""] + #[doc = "The channel can be opened only after the recipient confirms it and only on a session"] + #[doc = "change."] + pub fn hrmp_init_open_channel( + &self, + recipient: runtime_types::polkadot_parachain::primitives::Id, + proposed_max_capacity: ::core::primitive::u32, + proposed_max_message_size: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Hrmp", + "hrmp_init_open_channel", + types::HrmpInitOpenChannel { + recipient, + proposed_max_capacity, + proposed_max_message_size, + }, + [ + 89u8, 39u8, 43u8, 191u8, 235u8, 40u8, 253u8, 129u8, 174u8, 108u8, 26u8, + 206u8, 7u8, 146u8, 206u8, 56u8, 53u8, 104u8, 138u8, 203u8, 108u8, + 195u8, 190u8, 231u8, 223u8, 33u8, 32u8, 157u8, 148u8, 235u8, 67u8, + 82u8, + ], + ) + } + #[doc = "Accept a pending open channel request from the given sender."] + #[doc = ""] + #[doc = "The channel will be opened only on the next session boundary."] + pub fn hrmp_accept_open_channel( + &self, + sender: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Hrmp", + "hrmp_accept_open_channel", + types::HrmpAcceptOpenChannel { sender }, + [ + 133u8, 77u8, 88u8, 40u8, 47u8, 81u8, 95u8, 206u8, 165u8, 41u8, 191u8, + 241u8, 130u8, 244u8, 70u8, 227u8, 69u8, 80u8, 130u8, 126u8, 34u8, 69u8, + 214u8, 81u8, 7u8, 199u8, 249u8, 162u8, 234u8, 233u8, 195u8, 156u8, + ], + ) + } + #[doc = "Initiate unilateral closing of a channel. The origin must be either the sender or the"] + #[doc = "recipient in the channel being closed."] + #[doc = ""] + #[doc = "The closure can only happen on a session change."] + pub fn hrmp_close_channel( + &self, + channel_id: runtime_types::polkadot_parachain::primitives::HrmpChannelId, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Hrmp", + "hrmp_close_channel", + types::HrmpCloseChannel { channel_id }, + [ + 174u8, 225u8, 93u8, 69u8, 133u8, 145u8, 156u8, 94u8, 185u8, 254u8, + 60u8, 209u8, 232u8, 79u8, 237u8, 173u8, 180u8, 45u8, 117u8, 165u8, + 202u8, 195u8, 84u8, 68u8, 241u8, 164u8, 151u8, 216u8, 96u8, 20u8, 7u8, + 45u8, + ], + ) + } + #[doc = "This extrinsic triggers the cleanup of all the HRMP storage items that"] + #[doc = "a para may have. Normally this happens once per session, but this allows"] + #[doc = "you to trigger the cleanup immediately for a specific parachain."] + #[doc = ""] + #[doc = "Origin must be Root."] + #[doc = ""] + #[doc = "Number of inbound and outbound channels for `para` must be provided as witness data of weighing."] + pub fn force_clean_hrmp( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + inbound: ::core::primitive::u32, + outbound: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Hrmp", + "force_clean_hrmp", + types::ForceCleanHrmp { + para, + inbound, + outbound, + }, + [ + 0u8, 31u8, 178u8, 86u8, 30u8, 161u8, 50u8, 113u8, 51u8, 212u8, 175u8, + 144u8, 43u8, 127u8, 10u8, 168u8, 127u8, 39u8, 101u8, 67u8, 96u8, 29u8, + 117u8, 79u8, 184u8, 228u8, 182u8, 53u8, 55u8, 142u8, 225u8, 212u8, + ], + ) + } + #[doc = "Force process HRMP open channel requests."] + #[doc = ""] + #[doc = "If there are pending HRMP open channel requests, you can use this"] + #[doc = "function process all of those requests immediately."] + #[doc = ""] + #[doc = "Total number of opening channels must be provided as witness data of weighing."] + pub fn force_process_hrmp_open( + &self, + channels: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Hrmp", + "force_process_hrmp_open", + types::ForceProcessHrmpOpen { channels }, + [ + 66u8, 138u8, 220u8, 119u8, 251u8, 148u8, 72u8, 167u8, 49u8, 156u8, + 227u8, 174u8, 153u8, 145u8, 190u8, 195u8, 192u8, 183u8, 41u8, 213u8, + 134u8, 8u8, 114u8, 30u8, 191u8, 81u8, 208u8, 54u8, 120u8, 36u8, 195u8, + 246u8, + ], + ) + } + #[doc = "Force process HRMP close channel requests."] + #[doc = ""] + #[doc = "If there are pending HRMP close channel requests, you can use this"] + #[doc = "function process all of those requests immediately."] + #[doc = ""] + #[doc = "Total number of closing channels must be provided as witness data of weighing."] + pub fn force_process_hrmp_close( + &self, + channels: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Hrmp", + "force_process_hrmp_close", + types::ForceProcessHrmpClose { channels }, + [ + 22u8, 60u8, 113u8, 94u8, 199u8, 101u8, 204u8, 34u8, 158u8, 77u8, 228u8, + 29u8, 180u8, 249u8, 46u8, 103u8, 206u8, 155u8, 164u8, 229u8, 70u8, + 189u8, 218u8, 171u8, 173u8, 22u8, 210u8, 73u8, 232u8, 99u8, 225u8, + 176u8, + ], + ) + } + #[doc = "This cancels a pending open channel request. It can be canceled by either of the sender"] + #[doc = "or the recipient for that request. The origin must be either of those."] + #[doc = ""] + #[doc = "The cancellation happens immediately. It is not possible to cancel the request if it is"] + #[doc = "already accepted."] + #[doc = ""] + #[doc = "Total number of open requests (i.e. `HrmpOpenChannelRequestsList`) must be provided as"] + #[doc = "witness data."] + pub fn hrmp_cancel_open_request( + &self, + channel_id: runtime_types::polkadot_parachain::primitives::HrmpChannelId, + open_requests: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Hrmp", + "hrmp_cancel_open_request", + types::HrmpCancelOpenRequest { + channel_id, + open_requests, + }, + [ + 10u8, 192u8, 79u8, 120u8, 6u8, 88u8, 139u8, 75u8, 87u8, 32u8, 125u8, + 47u8, 178u8, 132u8, 156u8, 232u8, 28u8, 123u8, 74u8, 10u8, 180u8, 90u8, + 145u8, 123u8, 40u8, 89u8, 235u8, 25u8, 237u8, 137u8, 114u8, 173u8, + ], + ) + } + #[doc = "Open a channel from a `sender` to a `recipient` `ParaId` using the Root origin. Although"] + #[doc = "opened by Root, the `max_capacity` and `max_message_size` are still subject to the Relay"] + #[doc = "Chain's configured limits."] + #[doc = ""] + #[doc = "Expected use is when one of the `ParaId`s involved in the channel is governed by the"] + #[doc = "Relay Chain, e.g. a common good parachain."] + pub fn force_open_hrmp_channel( + &self, + sender: runtime_types::polkadot_parachain::primitives::Id, + recipient: runtime_types::polkadot_parachain::primitives::Id, + max_capacity: ::core::primitive::u32, + max_message_size: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Hrmp", + "force_open_hrmp_channel", + types::ForceOpenHrmpChannel { + sender, + recipient, + max_capacity, + max_message_size, + }, + [ + 37u8, 251u8, 1u8, 201u8, 129u8, 217u8, 193u8, 179u8, 98u8, 153u8, + 226u8, 139u8, 107u8, 222u8, 3u8, 76u8, 104u8, 248u8, 31u8, 241u8, 90u8, + 189u8, 56u8, 92u8, 118u8, 68u8, 177u8, 70u8, 5u8, 44u8, 234u8, 27u8, + ], + ) + } + } + } + #[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::polkadot_runtime_parachains::hrmp::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Open HRMP channel requested."] + #[doc = "`[sender, recipient, proposed_max_capacity, proposed_max_message_size]`"] + pub struct OpenChannelRequested( + pub runtime_types::polkadot_parachain::primitives::Id, + pub runtime_types::polkadot_parachain::primitives::Id, + pub ::core::primitive::u32, + pub ::core::primitive::u32, + ); + impl ::subxt::events::StaticEvent for OpenChannelRequested { + const PALLET: &'static str = "Hrmp"; + const EVENT: &'static str = "OpenChannelRequested"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An HRMP channel request sent by the receiver was canceled by either party."] + #[doc = "`[by_parachain, channel_id]`"] + pub struct OpenChannelCanceled( + pub runtime_types::polkadot_parachain::primitives::Id, + pub runtime_types::polkadot_parachain::primitives::HrmpChannelId, + ); + impl ::subxt::events::StaticEvent for OpenChannelCanceled { + const PALLET: &'static str = "Hrmp"; + const EVENT: &'static str = "OpenChannelCanceled"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Open HRMP channel accepted. `[sender, recipient]`"] + pub struct OpenChannelAccepted( + pub runtime_types::polkadot_parachain::primitives::Id, + pub runtime_types::polkadot_parachain::primitives::Id, + ); + impl ::subxt::events::StaticEvent for OpenChannelAccepted { + const PALLET: &'static str = "Hrmp"; + const EVENT: &'static str = "OpenChannelAccepted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "HRMP channel closed. `[by_parachain, channel_id]`"] + pub struct ChannelClosed( + pub runtime_types::polkadot_parachain::primitives::Id, + pub runtime_types::polkadot_parachain::primitives::HrmpChannelId, + ); + impl ::subxt::events::StaticEvent for ChannelClosed { + const PALLET: &'static str = "Hrmp"; + const EVENT: &'static str = "ChannelClosed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An HRMP channel was opened via Root origin."] + #[doc = "`[sender, recipient, proposed_max_capacity, proposed_max_message_size]`"] + pub struct HrmpChannelForceOpened( + pub runtime_types::polkadot_parachain::primitives::Id, + pub runtime_types::polkadot_parachain::primitives::Id, + pub ::core::primitive::u32, + pub ::core::primitive::u32, + ); + impl ::subxt::events::StaticEvent for HrmpChannelForceOpened { + const PALLET: &'static str = "Hrmp"; + const EVENT: &'static str = "HrmpChannelForceOpened"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " The set of pending HRMP open channel requests."] + #[doc = ""] + #[doc = " The set is accompanied by a list for iteration."] + #[doc = ""] + #[doc = " Invariant:"] + #[doc = " - There are no channels that exists in list but not in the set and vice versa."] + pub fn hrmp_open_channel_requests_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::hrmp::HrmpOpenChannelRequest, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpOpenChannelRequests", + vec![], + [ + 164u8, 97u8, 52u8, 242u8, 255u8, 67u8, 248u8, 170u8, 204u8, 92u8, 81u8, + 144u8, 11u8, 63u8, 145u8, 167u8, 8u8, 174u8, 221u8, 147u8, 125u8, + 144u8, 243u8, 33u8, 235u8, 104u8, 240u8, 99u8, 96u8, 211u8, 163u8, + 121u8, + ], + ) + } + #[doc = " The set of pending HRMP open channel requests."] + #[doc = ""] + #[doc = " The set is accompanied by a list for iteration."] + #[doc = ""] + #[doc = " Invariant:"] + #[doc = " - There are no channels that exists in list but not in the set and vice versa."] + pub fn hrmp_open_channel_requests( + &self, + _0: impl ::std::borrow::Borrow< + runtime_types::polkadot_parachain::primitives::HrmpChannelId, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::hrmp::HrmpOpenChannelRequest, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpOpenChannelRequests", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 164u8, 97u8, 52u8, 242u8, 255u8, 67u8, 248u8, 170u8, 204u8, 92u8, 81u8, + 144u8, 11u8, 63u8, 145u8, 167u8, 8u8, 174u8, 221u8, 147u8, 125u8, + 144u8, 243u8, 33u8, 235u8, 104u8, 240u8, 99u8, 96u8, 211u8, 163u8, + 121u8, + ], + ) + } + pub fn hrmp_open_channel_requests_list( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpOpenChannelRequestsList", + vec![], + [ + 45u8, 190u8, 124u8, 26u8, 37u8, 249u8, 140u8, 254u8, 101u8, 249u8, + 27u8, 117u8, 218u8, 3u8, 126u8, 114u8, 143u8, 65u8, 122u8, 246u8, + 237u8, 173u8, 145u8, 175u8, 133u8, 119u8, 127u8, 81u8, 59u8, 206u8, + 159u8, 39u8, + ], + ) + } + #[doc = " This mapping tracks how many open channel requests are initiated by a given sender para."] + #[doc = " Invariant: `HrmpOpenChannelRequests` should contain the same number of items that has"] + #[doc = " `(X, _)` as the number of `HrmpOpenChannelRequestCount` for `X`."] + pub fn hrmp_open_channel_request_count_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpOpenChannelRequestCount", + vec![], + [ + 136u8, 72u8, 56u8, 31u8, 229u8, 99u8, 241u8, 14u8, 159u8, 243u8, 179u8, + 222u8, 252u8, 56u8, 63u8, 24u8, 204u8, 130u8, 47u8, 161u8, 133u8, + 227u8, 237u8, 146u8, 239u8, 46u8, 127u8, 113u8, 190u8, 230u8, 61u8, + 182u8, + ], + ) + } + #[doc = " This mapping tracks how many open channel requests are initiated by a given sender para."] + #[doc = " Invariant: `HrmpOpenChannelRequests` should contain the same number of items that has"] + #[doc = " `(X, _)` as the number of `HrmpOpenChannelRequestCount` for `X`."] + pub fn hrmp_open_channel_request_count( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpOpenChannelRequestCount", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 136u8, 72u8, 56u8, 31u8, 229u8, 99u8, 241u8, 14u8, 159u8, 243u8, 179u8, + 222u8, 252u8, 56u8, 63u8, 24u8, 204u8, 130u8, 47u8, 161u8, 133u8, + 227u8, 237u8, 146u8, 239u8, 46u8, 127u8, 113u8, 190u8, 230u8, 61u8, + 182u8, + ], + ) + } + #[doc = " This mapping tracks how many open channel requests were accepted by a given recipient para."] + #[doc = " Invariant: `HrmpOpenChannelRequests` should contain the same number of items `(_, X)` with"] + #[doc = " `confirmed` set to true, as the number of `HrmpAcceptedChannelRequestCount` for `X`."] + pub fn hrmp_accepted_channel_request_count_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpAcceptedChannelRequestCount", + vec![], + [ + 29u8, 100u8, 52u8, 28u8, 180u8, 84u8, 132u8, 120u8, 117u8, 172u8, + 169u8, 40u8, 237u8, 92u8, 89u8, 87u8, 230u8, 148u8, 140u8, 226u8, 60u8, + 169u8, 100u8, 162u8, 139u8, 205u8, 180u8, 92u8, 0u8, 110u8, 55u8, + 158u8, + ], + ) + } + #[doc = " This mapping tracks how many open channel requests were accepted by a given recipient para."] + #[doc = " Invariant: `HrmpOpenChannelRequests` should contain the same number of items `(_, X)` with"] + #[doc = " `confirmed` set to true, as the number of `HrmpAcceptedChannelRequestCount` for `X`."] + pub fn hrmp_accepted_channel_request_count( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpAcceptedChannelRequestCount", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 29u8, 100u8, 52u8, 28u8, 180u8, 84u8, 132u8, 120u8, 117u8, 172u8, + 169u8, 40u8, 237u8, 92u8, 89u8, 87u8, 230u8, 148u8, 140u8, 226u8, 60u8, + 169u8, 100u8, 162u8, 139u8, 205u8, 180u8, 92u8, 0u8, 110u8, 55u8, + 158u8, + ], + ) + } + #[doc = " A set of pending HRMP close channel requests that are going to be closed during the session"] + #[doc = " change. Used for checking if a given channel is registered for closure."] + #[doc = ""] + #[doc = " The set is accompanied by a list for iteration."] + #[doc = ""] + #[doc = " Invariant:"] + #[doc = " - There are no channels that exists in list but not in the set and vice versa."] + pub fn hrmp_close_channel_requests_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (), + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpCloseChannelRequests", + vec![], + [ + 155u8, 13u8, 73u8, 166u8, 58u8, 67u8, 138u8, 58u8, 215u8, 172u8, 241u8, + 168u8, 57u8, 4u8, 230u8, 248u8, 31u8, 183u8, 227u8, 224u8, 139u8, + 172u8, 229u8, 228u8, 16u8, 120u8, 124u8, 81u8, 213u8, 253u8, 102u8, + 226u8, + ], + ) + } + #[doc = " A set of pending HRMP close channel requests that are going to be closed during the session"] + #[doc = " change. Used for checking if a given channel is registered for closure."] + #[doc = ""] + #[doc = " The set is accompanied by a list for iteration."] + #[doc = ""] + #[doc = " Invariant:"] + #[doc = " - There are no channels that exists in list but not in the set and vice versa."] + pub fn hrmp_close_channel_requests( + &self, + _0: impl ::std::borrow::Borrow< + runtime_types::polkadot_parachain::primitives::HrmpChannelId, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpCloseChannelRequests", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 155u8, 13u8, 73u8, 166u8, 58u8, 67u8, 138u8, 58u8, 215u8, 172u8, 241u8, + 168u8, 57u8, 4u8, 230u8, 248u8, 31u8, 183u8, 227u8, 224u8, 139u8, + 172u8, 229u8, 228u8, 16u8, 120u8, 124u8, 81u8, 213u8, 253u8, 102u8, + 226u8, + ], + ) + } + pub fn hrmp_close_channel_requests_list( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpCloseChannelRequestsList", + vec![], + [ + 78u8, 194u8, 214u8, 232u8, 91u8, 72u8, 109u8, 113u8, 88u8, 86u8, 136u8, + 26u8, 226u8, 30u8, 11u8, 188u8, 57u8, 77u8, 169u8, 64u8, 14u8, 187u8, + 27u8, 127u8, 76u8, 99u8, 114u8, 73u8, 221u8, 23u8, 208u8, 69u8, + ], + ) + } + #[doc = " The HRMP watermark associated with each para."] + #[doc = " Invariant:"] + #[doc = " - each para `P` used here as a key should satisfy `Paras::is_valid_para(P)` within a session."] + pub fn hrmp_watermarks_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpWatermarks", + vec![], + [ + 245u8, 104u8, 137u8, 120u8, 131u8, 7u8, 178u8, 85u8, 96u8, 124u8, + 241u8, 2u8, 86u8, 63u8, 116u8, 77u8, 217u8, 235u8, 162u8, 38u8, 104u8, + 248u8, 121u8, 1u8, 111u8, 191u8, 191u8, 115u8, 65u8, 67u8, 2u8, 238u8, + ], + ) + } + #[doc = " The HRMP watermark associated with each para."] + #[doc = " Invariant:"] + #[doc = " - each para `P` used here as a key should satisfy `Paras::is_valid_para(P)` within a session."] + pub fn hrmp_watermarks( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpWatermarks", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 245u8, 104u8, 137u8, 120u8, 131u8, 7u8, 178u8, 85u8, 96u8, 124u8, + 241u8, 2u8, 86u8, 63u8, 116u8, 77u8, 217u8, 235u8, 162u8, 38u8, 104u8, + 248u8, 121u8, 1u8, 111u8, 191u8, 191u8, 115u8, 65u8, 67u8, 2u8, 238u8, + ], + ) + } + #[doc = " HRMP channel data associated with each para."] + #[doc = " Invariant:"] + #[doc = " - each participant in the channel should satisfy `Paras::is_valid_para(P)` within a session."] + pub fn hrmp_channels_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::hrmp::HrmpChannel, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpChannels", + vec![], + [ + 174u8, 90u8, 72u8, 93u8, 43u8, 140u8, 181u8, 170u8, 138u8, 171u8, + 179u8, 156u8, 33u8, 87u8, 63u8, 1u8, 131u8, 59u8, 230u8, 14u8, 40u8, + 240u8, 186u8, 66u8, 191u8, 130u8, 48u8, 218u8, 225u8, 22u8, 33u8, + 122u8, + ], + ) + } + #[doc = " HRMP channel data associated with each para."] + #[doc = " Invariant:"] + #[doc = " - each participant in the channel should satisfy `Paras::is_valid_para(P)` within a session."] + pub fn hrmp_channels( + &self, + _0: impl ::std::borrow::Borrow< + runtime_types::polkadot_parachain::primitives::HrmpChannelId, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::hrmp::HrmpChannel, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpChannels", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 174u8, 90u8, 72u8, 93u8, 43u8, 140u8, 181u8, 170u8, 138u8, 171u8, + 179u8, 156u8, 33u8, 87u8, 63u8, 1u8, 131u8, 59u8, 230u8, 14u8, 40u8, + 240u8, 186u8, 66u8, 191u8, 130u8, 48u8, 218u8, 225u8, 22u8, 33u8, + 122u8, + ], + ) + } + #[doc = " Ingress/egress indexes allow to find all the senders and receivers given the opposite side."] + #[doc = " I.e."] + #[doc = ""] + #[doc = " (a) ingress index allows to find all the senders for a given recipient."] + #[doc = " (b) egress index allows to find all the recipients for a given sender."] + #[doc = ""] + #[doc = " Invariants:"] + #[doc = " - for each ingress index entry for `P` each item `I` in the index should present in"] + #[doc = " `HrmpChannels` as `(I, P)`."] + #[doc = " - for each egress index entry for `P` each item `E` in the index should present in"] + #[doc = " `HrmpChannels` as `(P, E)`."] + #[doc = " - there should be no other dangling channels in `HrmpChannels`."] + #[doc = " - the vectors are sorted."] + pub fn hrmp_ingress_channels_index_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpIngressChannelsIndex", + vec![], + [ + 125u8, 229u8, 102u8, 230u8, 74u8, 109u8, 173u8, 67u8, 176u8, 169u8, + 57u8, 24u8, 75u8, 129u8, 246u8, 198u8, 63u8, 49u8, 56u8, 102u8, 149u8, + 139u8, 138u8, 207u8, 150u8, 220u8, 29u8, 208u8, 203u8, 0u8, 93u8, + 105u8, + ], + ) + } + #[doc = " Ingress/egress indexes allow to find all the senders and receivers given the opposite side."] + #[doc = " I.e."] + #[doc = ""] + #[doc = " (a) ingress index allows to find all the senders for a given recipient."] + #[doc = " (b) egress index allows to find all the recipients for a given sender."] + #[doc = ""] + #[doc = " Invariants:"] + #[doc = " - for each ingress index entry for `P` each item `I` in the index should present in"] + #[doc = " `HrmpChannels` as `(I, P)`."] + #[doc = " - for each egress index entry for `P` each item `E` in the index should present in"] + #[doc = " `HrmpChannels` as `(P, E)`."] + #[doc = " - there should be no other dangling channels in `HrmpChannels`."] + #[doc = " - the vectors are sorted."] + pub fn hrmp_ingress_channels_index( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpIngressChannelsIndex", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 125u8, 229u8, 102u8, 230u8, 74u8, 109u8, 173u8, 67u8, 176u8, 169u8, + 57u8, 24u8, 75u8, 129u8, 246u8, 198u8, 63u8, 49u8, 56u8, 102u8, 149u8, + 139u8, 138u8, 207u8, 150u8, 220u8, 29u8, 208u8, 203u8, 0u8, 93u8, + 105u8, + ], + ) + } + pub fn hrmp_egress_channels_index_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpEgressChannelsIndex", + vec![], + [ + 237u8, 183u8, 188u8, 57u8, 20u8, 238u8, 166u8, 7u8, 94u8, 155u8, 22u8, + 9u8, 173u8, 209u8, 210u8, 17u8, 160u8, 79u8, 243u8, 4u8, 245u8, 240u8, + 65u8, 195u8, 116u8, 98u8, 206u8, 104u8, 53u8, 64u8, 241u8, 41u8, + ], + ) + } + pub fn hrmp_egress_channels_index( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpEgressChannelsIndex", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 237u8, 183u8, 188u8, 57u8, 20u8, 238u8, 166u8, 7u8, 94u8, 155u8, 22u8, + 9u8, 173u8, 209u8, 210u8, 17u8, 160u8, 79u8, 243u8, 4u8, 245u8, 240u8, + 65u8, 195u8, 116u8, 98u8, 206u8, 104u8, 53u8, 64u8, 241u8, 41u8, + ], + ) + } + #[doc = " Storage for the messages for each channel."] + #[doc = " Invariant: cannot be non-empty if the corresponding channel in `HrmpChannels` is `None`."] + pub fn hrmp_channel_contents_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec< + runtime_types::polkadot_core_primitives::InboundHrmpMessage< + ::core::primitive::u32, + >, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpChannelContents", + vec![], + [ + 55u8, 16u8, 135u8, 69u8, 54u8, 180u8, 246u8, 124u8, 104u8, 92u8, 45u8, + 18u8, 223u8, 145u8, 43u8, 190u8, 121u8, 59u8, 35u8, 195u8, 234u8, + 219u8, 30u8, 246u8, 168u8, 187u8, 45u8, 171u8, 254u8, 204u8, 60u8, + 121u8, + ], + ) + } + #[doc = " Storage for the messages for each channel."] + #[doc = " Invariant: cannot be non-empty if the corresponding channel in `HrmpChannels` is `None`."] + pub fn hrmp_channel_contents( + &self, + _0: impl ::std::borrow::Borrow< + runtime_types::polkadot_parachain::primitives::HrmpChannelId, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec< + runtime_types::polkadot_core_primitives::InboundHrmpMessage< + ::core::primitive::u32, + >, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpChannelContents", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 55u8, 16u8, 135u8, 69u8, 54u8, 180u8, 246u8, 124u8, 104u8, 92u8, 45u8, + 18u8, 223u8, 145u8, 43u8, 190u8, 121u8, 59u8, 35u8, 195u8, 234u8, + 219u8, 30u8, 246u8, 168u8, 187u8, 45u8, 171u8, 254u8, 204u8, 60u8, + 121u8, + ], + ) + } + #[doc = " Maintains a mapping that can be used to answer the question: What paras sent a message at"] + #[doc = " the given block number for a given receiver. Invariants:"] + #[doc = " - The inner `Vec` is never empty."] + #[doc = " - The inner `Vec` cannot store two same `ParaId`."] + #[doc = " - The outer vector is sorted ascending by block number and cannot store two items with the"] + #[doc = " same block number."] + pub fn hrmp_channel_digests_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<( + ::core::primitive::u32, + ::std::vec::Vec, + )>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpChannelDigests", + vec![], + [ + 90u8, 90u8, 139u8, 78u8, 47u8, 2u8, 104u8, 211u8, 42u8, 246u8, 193u8, + 210u8, 142u8, 223u8, 17u8, 136u8, 3u8, 182u8, 25u8, 56u8, 72u8, 72u8, + 162u8, 131u8, 36u8, 34u8, 162u8, 176u8, 159u8, 113u8, 7u8, 207u8, + ], + ) + } + #[doc = " Maintains a mapping that can be used to answer the question: What paras sent a message at"] + #[doc = " the given block number for a given receiver. Invariants:"] + #[doc = " - The inner `Vec` is never empty."] + #[doc = " - The inner `Vec` cannot store two same `ParaId`."] + #[doc = " - The outer vector is sorted ascending by block number and cannot store two items with the"] + #[doc = " same block number."] + pub fn hrmp_channel_digests( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<( + ::core::primitive::u32, + ::std::vec::Vec, + )>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Hrmp", + "HrmpChannelDigests", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 90u8, 90u8, 139u8, 78u8, 47u8, 2u8, 104u8, 211u8, 42u8, 246u8, 193u8, + 210u8, 142u8, 223u8, 17u8, 136u8, 3u8, 182u8, 25u8, 56u8, 72u8, 72u8, + 162u8, 131u8, 36u8, 34u8, 162u8, 176u8, 159u8, 113u8, 7u8, 207u8, + ], + ) + } + } + } + } + pub mod para_session_info { + use super::root_mod; + use super::runtime_types; + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Assignment keys for the current session."] + #[doc = " Note that this API is private due to it being prone to 'off-by-one' at session boundaries."] + #[doc = " When in doubt, use `Sessions` API instead."] + pub fn assignment_keys_unsafe( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaSessionInfo", + "AssignmentKeysUnsafe", + vec![], + [ + 51u8, 155u8, 91u8, 101u8, 118u8, 243u8, 134u8, 138u8, 147u8, 59u8, + 195u8, 186u8, 54u8, 187u8, 36u8, 14u8, 91u8, 141u8, 60u8, 139u8, 28u8, + 74u8, 111u8, 232u8, 198u8, 229u8, 61u8, 63u8, 72u8, 214u8, 152u8, 2u8, + ], + ) + } + #[doc = " The earliest session for which previous session info is stored."] + pub fn earliest_stored_session( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaSessionInfo", + "EarliestStoredSession", + vec![], + [ + 139u8, 176u8, 46u8, 139u8, 217u8, 35u8, 62u8, 91u8, 183u8, 7u8, 114u8, + 226u8, 60u8, 237u8, 105u8, 73u8, 20u8, 216u8, 194u8, 205u8, 178u8, + 237u8, 84u8, 66u8, 181u8, 29u8, 31u8, 218u8, 48u8, 60u8, 198u8, 86u8, + ], + ) + } + #[doc = " Session information in a rolling window."] + #[doc = " Should have an entry in range `EarliestStoredSession..=CurrentSessionIndex`."] + #[doc = " Does not have any entries before the session index in the first session change notification."] + pub fn sessions_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::SessionInfo, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParaSessionInfo", + "Sessions", + vec![], + [ + 254u8, 40u8, 169u8, 18u8, 252u8, 203u8, 49u8, 182u8, 123u8, 19u8, + 241u8, 150u8, 227u8, 153u8, 108u8, 109u8, 66u8, 129u8, 157u8, 27u8, + 130u8, 215u8, 105u8, 18u8, 163u8, 72u8, 182u8, 243u8, 31u8, 157u8, + 103u8, 111u8, + ], + ) + } + #[doc = " Session information in a rolling window."] + #[doc = " Should have an entry in range `EarliestStoredSession..=CurrentSessionIndex`."] + #[doc = " Does not have any entries before the session index in the first session change notification."] + pub fn sessions( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::SessionInfo, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaSessionInfo", + "Sessions", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 254u8, 40u8, 169u8, 18u8, 252u8, 203u8, 49u8, 182u8, 123u8, 19u8, + 241u8, 150u8, 227u8, 153u8, 108u8, 109u8, 66u8, 129u8, 157u8, 27u8, + 130u8, 215u8, 105u8, 18u8, 163u8, 72u8, 182u8, 243u8, 31u8, 157u8, + 103u8, 111u8, + ], + ) + } + #[doc = " The validator account keys of the validators actively participating in parachain consensus."] + pub fn account_keys_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::subxt::utils::AccountId32>, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParaSessionInfo", + "AccountKeys", + vec![], + [ + 30u8, 98u8, 58u8, 140u8, 96u8, 231u8, 205u8, 111u8, 194u8, 100u8, + 185u8, 242u8, 210u8, 143u8, 110u8, 144u8, 170u8, 187u8, 62u8, 196u8, + 73u8, 88u8, 118u8, 168u8, 117u8, 116u8, 153u8, 229u8, 108u8, 46u8, + 154u8, 220u8, + ], + ) + } + #[doc = " The validator account keys of the validators actively participating in parachain consensus."] + pub fn account_keys( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::subxt::utils::AccountId32>, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaSessionInfo", + "AccountKeys", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 30u8, 98u8, 58u8, 140u8, 96u8, 231u8, 205u8, 111u8, 194u8, 100u8, + 185u8, 242u8, 210u8, 143u8, 110u8, 144u8, 170u8, 187u8, 62u8, 196u8, + 73u8, 88u8, 118u8, 168u8, 117u8, 116u8, 153u8, 229u8, 108u8, 46u8, + 154u8, 220u8, + ], + ) + } + #[doc = " Executor parameter set for a given session index"] + pub fn session_executor_params_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::executor_params::ExecutorParams, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParaSessionInfo", + "SessionExecutorParams", + vec![], + [ + 102u8, 51u8, 28u8, 199u8, 238u8, 229u8, 99u8, 38u8, 116u8, 154u8, + 250u8, 136u8, 240u8, 122u8, 82u8, 13u8, 139u8, 160u8, 149u8, 218u8, + 162u8, 130u8, 109u8, 251u8, 10u8, 109u8, 200u8, 158u8, 32u8, 157u8, + 84u8, 234u8, + ], + ) + } + #[doc = " Executor parameter set for a given session index"] + pub fn session_executor_params( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::executor_params::ExecutorParams, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParaSessionInfo", + "SessionExecutorParams", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 102u8, 51u8, 28u8, 199u8, 238u8, 229u8, 99u8, 38u8, 116u8, 154u8, + 250u8, 136u8, 240u8, 122u8, 82u8, 13u8, 139u8, 160u8, 149u8, 218u8, + 162u8, 130u8, 109u8, 251u8, 10u8, 109u8, 200u8, 158u8, 32u8, 157u8, + 84u8, 234u8, + ], + ) + } + } + } + } + pub mod paras_disputes { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_parachains::disputes::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_parachains::disputes::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceUnfreeze; + impl ::subxt::blocks::StaticExtrinsic for ForceUnfreeze { + const PALLET: &'static str = "ParasDisputes"; + const CALL: &'static str = "force_unfreeze"; + } + } + pub struct TransactionApi; + impl TransactionApi { + pub fn force_unfreeze(&self) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ParasDisputes", + "force_unfreeze", + types::ForceUnfreeze {}, + [ + 148u8, 19u8, 139u8, 154u8, 111u8, 166u8, 74u8, 136u8, 127u8, 157u8, + 20u8, 47u8, 220u8, 108u8, 152u8, 108u8, 24u8, 232u8, 11u8, 53u8, 26u8, + 4u8, 23u8, 58u8, 195u8, 61u8, 159u8, 6u8, 139u8, 7u8, 197u8, 88u8, + ], + ) + } + } + } + #[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::polkadot_runtime_parachains::disputes::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A dispute has been initiated. \\[candidate hash, dispute location\\]"] + pub struct DisputeInitiated( + pub runtime_types::polkadot_core_primitives::CandidateHash, + pub runtime_types::polkadot_runtime_parachains::disputes::DisputeLocation, + ); + impl ::subxt::events::StaticEvent for DisputeInitiated { + const PALLET: &'static str = "ParasDisputes"; + const EVENT: &'static str = "DisputeInitiated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A dispute has concluded for or against a candidate."] + #[doc = "`\\[para id, candidate hash, dispute result\\]`"] + pub struct DisputeConcluded( + pub runtime_types::polkadot_core_primitives::CandidateHash, + pub runtime_types::polkadot_runtime_parachains::disputes::DisputeResult, + ); + impl ::subxt::events::StaticEvent for DisputeConcluded { + const PALLET: &'static str = "ParasDisputes"; + const EVENT: &'static str = "DisputeConcluded"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A dispute has concluded with supermajority against a candidate."] + #[doc = "Block authors should no longer build on top of this head and should"] + #[doc = "instead revert the block at the given height. This should be the"] + #[doc = "number of the child of the last known valid block in the chain."] + pub struct Revert(pub ::core::primitive::u32); + impl ::subxt::events::StaticEvent for Revert { + const PALLET: &'static str = "ParasDisputes"; + const EVENT: &'static str = "Revert"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " The last pruned session, if any. All data stored by this module"] + #[doc = " references sessions."] + pub fn last_pruned_session( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParasDisputes", + "LastPrunedSession", + vec![], + [ + 98u8, 107u8, 200u8, 158u8, 182u8, 120u8, 24u8, 242u8, 24u8, 163u8, + 237u8, 72u8, 153u8, 19u8, 38u8, 85u8, 239u8, 208u8, 194u8, 22u8, 173u8, + 100u8, 219u8, 10u8, 194u8, 42u8, 120u8, 146u8, 225u8, 62u8, 80u8, + 229u8, + ], + ) + } + #[doc = " All ongoing or concluded disputes for the last several sessions."] + pub fn disputes_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::DisputeState<::core::primitive::u32>, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParasDisputes", + "Disputes", + vec![], + [ + 38u8, 237u8, 141u8, 222u8, 135u8, 82u8, 210u8, 166u8, 192u8, 122u8, + 175u8, 96u8, 91u8, 1u8, 225u8, 182u8, 128u8, 4u8, 159u8, 56u8, 180u8, + 176u8, 157u8, 20u8, 105u8, 202u8, 192u8, 213u8, 164u8, 24u8, 227u8, + 15u8, + ], + ) + } + #[doc = " All ongoing or concluded disputes for the last several sessions."] + pub fn disputes_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::DisputeState<::core::primitive::u32>, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParasDisputes", + "Disputes", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 38u8, 237u8, 141u8, 222u8, 135u8, 82u8, 210u8, 166u8, 192u8, 122u8, + 175u8, 96u8, 91u8, 1u8, 225u8, 182u8, 128u8, 4u8, 159u8, 56u8, 180u8, + 176u8, 157u8, 20u8, 105u8, 202u8, 192u8, 213u8, 164u8, 24u8, 227u8, + 15u8, + ], + ) + } + #[doc = " All ongoing or concluded disputes for the last several sessions."] + pub fn disputes( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + _1: impl ::std::borrow::Borrow< + runtime_types::polkadot_core_primitives::CandidateHash, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_primitives::v4::DisputeState<::core::primitive::u32>, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParasDisputes", + "Disputes", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 38u8, 237u8, 141u8, 222u8, 135u8, 82u8, 210u8, 166u8, 192u8, 122u8, + 175u8, 96u8, 91u8, 1u8, 225u8, 182u8, 128u8, 4u8, 159u8, 56u8, 180u8, + 176u8, 157u8, 20u8, 105u8, 202u8, 192u8, 213u8, 164u8, 24u8, 227u8, + 15u8, + ], + ) + } + #[doc = " Backing votes stored for each dispute."] + #[doc = " This storage is used for slashing."] + pub fn backers_on_disputes_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParasDisputes", + "BackersOnDisputes", + vec![], + [ + 136u8, 171u8, 20u8, 204u8, 135u8, 153u8, 144u8, 241u8, 46u8, 193u8, + 65u8, 22u8, 116u8, 161u8, 144u8, 186u8, 31u8, 194u8, 202u8, 225u8, + 14u8, 137u8, 240u8, 243u8, 119u8, 144u8, 102u8, 245u8, 133u8, 126u8, + 103u8, 32u8, + ], + ) + } + #[doc = " Backing votes stored for each dispute."] + #[doc = " This storage is used for slashing."] + pub fn backers_on_disputes_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParasDisputes", + "BackersOnDisputes", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 136u8, 171u8, 20u8, 204u8, 135u8, 153u8, 144u8, 241u8, 46u8, 193u8, + 65u8, 22u8, 116u8, 161u8, 144u8, 186u8, 31u8, 194u8, 202u8, 225u8, + 14u8, 137u8, 240u8, 243u8, 119u8, 144u8, 102u8, 245u8, 133u8, 126u8, + 103u8, 32u8, + ], + ) + } + #[doc = " Backing votes stored for each dispute."] + #[doc = " This storage is used for slashing."] + pub fn backers_on_disputes( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + _1: impl ::std::borrow::Borrow< + runtime_types::polkadot_core_primitives::CandidateHash, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParasDisputes", + "BackersOnDisputes", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 136u8, 171u8, 20u8, 204u8, 135u8, 153u8, 144u8, 241u8, 46u8, 193u8, + 65u8, 22u8, 116u8, 161u8, 144u8, 186u8, 31u8, 194u8, 202u8, 225u8, + 14u8, 137u8, 240u8, 243u8, 119u8, 144u8, 102u8, 245u8, 133u8, 126u8, + 103u8, 32u8, + ], + ) + } + #[doc = " All included blocks on the chain, as well as the block number in this chain that"] + #[doc = " should be reverted back to if the candidate is disputed and determined to be invalid."] + pub fn included_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParasDisputes", + "Included", + vec![], + [ + 47u8, 105u8, 189u8, 233u8, 206u8, 153u8, 162u8, 217u8, 141u8, 118u8, + 31u8, 85u8, 87u8, 53u8, 100u8, 187u8, 31u8, 245u8, 50u8, 171u8, 4u8, + 203u8, 163u8, 109u8, 212u8, 162u8, 86u8, 124u8, 172u8, 157u8, 165u8, + 21u8, + ], + ) + } + #[doc = " All included blocks on the chain, as well as the block number in this chain that"] + #[doc = " should be reverted back to if the candidate is disputed and determined to be invalid."] + pub fn included_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParasDisputes", + "Included", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 47u8, 105u8, 189u8, 233u8, 206u8, 153u8, 162u8, 217u8, 141u8, 118u8, + 31u8, 85u8, 87u8, 53u8, 100u8, 187u8, 31u8, 245u8, 50u8, 171u8, 4u8, + 203u8, 163u8, 109u8, 212u8, 162u8, 86u8, 124u8, 172u8, 157u8, 165u8, + 21u8, + ], + ) + } + #[doc = " All included blocks on the chain, as well as the block number in this chain that"] + #[doc = " should be reverted back to if the candidate is disputed and determined to be invalid."] + pub fn included( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + _1: impl ::std::borrow::Borrow< + runtime_types::polkadot_core_primitives::CandidateHash, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParasDisputes", + "Included", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 47u8, 105u8, 189u8, 233u8, 206u8, 153u8, 162u8, 217u8, 141u8, 118u8, + 31u8, 85u8, 87u8, 53u8, 100u8, 187u8, 31u8, 245u8, 50u8, 171u8, 4u8, + 203u8, 163u8, 109u8, 212u8, 162u8, 86u8, 124u8, 172u8, 157u8, 165u8, + 21u8, + ], + ) + } + #[doc = " Whether the chain is frozen. Starts as `None`. When this is `Some`,"] + #[doc = " the chain will not accept any new parachain blocks for backing or inclusion,"] + #[doc = " and its value indicates the last valid block number in the chain."] + #[doc = " It can only be set back to `None` by governance intervention."] + pub fn frozen( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::option::Option<::core::primitive::u32>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ParasDisputes", + "Frozen", + vec![], + [ + 245u8, 136u8, 43u8, 156u8, 7u8, 74u8, 31u8, 190u8, 184u8, 119u8, 182u8, + 66u8, 18u8, 136u8, 30u8, 248u8, 24u8, 121u8, 26u8, 177u8, 169u8, 208u8, + 218u8, 208u8, 80u8, 116u8, 31u8, 144u8, 49u8, 201u8, 198u8, 197u8, + ], + ) + } + } + } + } + pub mod paras_slashing { + use super::root_mod; + use super::runtime_types; + #[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 type Error = + runtime_types::polkadot_runtime_parachains::disputes::slashing::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = + runtime_types::polkadot_runtime_parachains::disputes::slashing::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ReportDisputeLostUnsigned { pub dispute_proof : :: std :: boxed :: Box < runtime_types :: polkadot_runtime_parachains :: disputes :: slashing :: DisputeProof > , pub key_owner_proof : runtime_types :: sp_session :: MembershipProof , } + impl ::subxt::blocks::StaticExtrinsic for ReportDisputeLostUnsigned { + const PALLET: &'static str = "ParasSlashing"; + const CALL: &'static str = "report_dispute_lost_unsigned"; + } + } + pub struct TransactionApi; + impl TransactionApi { + pub fn report_dispute_lost_unsigned( + &self, + dispute_proof : runtime_types :: polkadot_runtime_parachains :: disputes :: slashing :: DisputeProof, + key_owner_proof: runtime_types::sp_session::MembershipProof, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ParasSlashing", + "report_dispute_lost_unsigned", + types::ReportDisputeLostUnsigned { + dispute_proof: ::std::boxed::Box::new(dispute_proof), + key_owner_proof, + }, + [ + 57u8, 99u8, 246u8, 126u8, 203u8, 239u8, 64u8, 182u8, 167u8, 204u8, + 96u8, 221u8, 126u8, 94u8, 254u8, 210u8, 18u8, 182u8, 207u8, 32u8, + 250u8, 249u8, 116u8, 156u8, 210u8, 63u8, 254u8, 74u8, 86u8, 101u8, + 28u8, 229u8, + ], + ) + } + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Validators pending dispute slashes."] + pub fn unapplied_slashes_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::disputes::slashing::PendingSlashes, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParasSlashing", + "UnappliedSlashes", + vec![], + [ + 114u8, 171u8, 137u8, 142u8, 180u8, 125u8, 226u8, 240u8, 99u8, 181u8, + 68u8, 221u8, 91u8, 124u8, 172u8, 93u8, 103u8, 12u8, 95u8, 43u8, 67u8, + 59u8, 29u8, 133u8, 140u8, 17u8, 141u8, 228u8, 145u8, 201u8, 82u8, + 126u8, + ], + ) + } + #[doc = " Validators pending dispute slashes."] + pub fn unapplied_slashes_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::disputes::slashing::PendingSlashes, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParasSlashing", + "UnappliedSlashes", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 114u8, 171u8, 137u8, 142u8, 180u8, 125u8, 226u8, 240u8, 99u8, 181u8, + 68u8, 221u8, 91u8, 124u8, 172u8, 93u8, 103u8, 12u8, 95u8, 43u8, 67u8, + 59u8, 29u8, 133u8, 140u8, 17u8, 141u8, 228u8, 145u8, 201u8, 82u8, + 126u8, + ], + ) + } + #[doc = " Validators pending dispute slashes."] + pub fn unapplied_slashes( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + _1: impl ::std::borrow::Borrow< + runtime_types::polkadot_core_primitives::CandidateHash, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::disputes::slashing::PendingSlashes, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParasSlashing", + "UnappliedSlashes", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 114u8, 171u8, 137u8, 142u8, 180u8, 125u8, 226u8, 240u8, 99u8, 181u8, + 68u8, 221u8, 91u8, 124u8, 172u8, 93u8, 103u8, 12u8, 95u8, 43u8, 67u8, + 59u8, 29u8, 133u8, 140u8, 17u8, 141u8, 228u8, 145u8, 201u8, 82u8, + 126u8, + ], + ) + } + #[doc = " `ValidatorSetCount` per session."] + pub fn validator_set_counts_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ParasSlashing", + "ValidatorSetCounts", + vec![], + [ + 195u8, 220u8, 79u8, 140u8, 114u8, 80u8, 241u8, 103u8, 4u8, 7u8, 53u8, + 100u8, 16u8, 78u8, 104u8, 171u8, 134u8, 110u8, 158u8, 191u8, 37u8, + 94u8, 211u8, 26u8, 17u8, 70u8, 50u8, 34u8, 70u8, 234u8, 186u8, 69u8, + ], + ) + } + #[doc = " `ValidatorSetCount` per session."] + pub fn validator_set_counts( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ParasSlashing", + "ValidatorSetCounts", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 195u8, 220u8, 79u8, 140u8, 114u8, 80u8, 241u8, 103u8, 4u8, 7u8, 53u8, + 100u8, 16u8, 78u8, 104u8, 171u8, 134u8, 110u8, 158u8, 191u8, 37u8, + 94u8, 211u8, 26u8, 17u8, 70u8, 50u8, 34u8, 70u8, 234u8, 186u8, 69u8, + ], + ) + } + } + } + } + pub mod registrar { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_common::paras_registrar::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_common::paras_registrar::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Register { + pub id: runtime_types::polkadot_parachain::primitives::Id, + pub genesis_head: runtime_types::polkadot_parachain::primitives::HeadData, + pub validation_code: + runtime_types::polkadot_parachain::primitives::ValidationCode, + } + impl ::subxt::blocks::StaticExtrinsic for Register { + const PALLET: &'static str = "Registrar"; + const CALL: &'static str = "register"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceRegister { + pub who: ::subxt::utils::AccountId32, + pub deposit: ::core::primitive::u128, + pub id: runtime_types::polkadot_parachain::primitives::Id, + pub genesis_head: runtime_types::polkadot_parachain::primitives::HeadData, + pub validation_code: + runtime_types::polkadot_parachain::primitives::ValidationCode, + } + impl ::subxt::blocks::StaticExtrinsic for ForceRegister { + const PALLET: &'static str = "Registrar"; + const CALL: &'static str = "force_register"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Deregister { + pub id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for Deregister { + const PALLET: &'static str = "Registrar"; + const CALL: &'static str = "deregister"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Swap { + pub id: runtime_types::polkadot_parachain::primitives::Id, + pub other: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for Swap { + const PALLET: &'static str = "Registrar"; + const CALL: &'static str = "swap"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveLock { + pub para: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveLock { + const PALLET: &'static str = "Registrar"; + const CALL: &'static str = "remove_lock"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Reserve; + impl ::subxt::blocks::StaticExtrinsic for Reserve { + const PALLET: &'static str = "Registrar"; + const CALL: &'static str = "reserve"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AddLock { + pub para: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for AddLock { + const PALLET: &'static str = "Registrar"; + const CALL: &'static str = "add_lock"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ScheduleCodeUpgrade { + pub para: runtime_types::polkadot_parachain::primitives::Id, + pub new_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + } + impl ::subxt::blocks::StaticExtrinsic for ScheduleCodeUpgrade { + const PALLET: &'static str = "Registrar"; + const CALL: &'static str = "schedule_code_upgrade"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetCurrentHead { + pub para: runtime_types::polkadot_parachain::primitives::Id, + pub new_head: runtime_types::polkadot_parachain::primitives::HeadData, + } + impl ::subxt::blocks::StaticExtrinsic for SetCurrentHead { + const PALLET: &'static str = "Registrar"; + const CALL: &'static str = "set_current_head"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Register head data and validation code for a reserved Para Id."] + #[doc = ""] + #[doc = "## Arguments"] + #[doc = "- `origin`: Must be called by a `Signed` origin."] + #[doc = "- `id`: The para ID. Must be owned/managed by the `origin` signing account."] + #[doc = "- `genesis_head`: The genesis head data of the parachain/thread."] + #[doc = "- `validation_code`: The initial validation code of the parachain/thread."] + #[doc = ""] + #[doc = "## Deposits/Fees"] + #[doc = "The origin signed account must reserve a corresponding deposit for the registration. Anything already"] + #[doc = "reserved previously for this para ID is accounted for."] + #[doc = ""] + #[doc = "## Events"] + #[doc = "The `Registered` event is emitted in case of success."] + pub fn register( + &self, + id: runtime_types::polkadot_parachain::primitives::Id, + genesis_head: runtime_types::polkadot_parachain::primitives::HeadData, + validation_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Registrar", + "register", + types::Register { + id, + genesis_head, + validation_code, + }, + [ + 208u8, 1u8, 38u8, 95u8, 53u8, 67u8, 148u8, 138u8, 189u8, 212u8, 250u8, + 160u8, 99u8, 220u8, 231u8, 55u8, 220u8, 21u8, 188u8, 81u8, 162u8, + 219u8, 93u8, 136u8, 255u8, 22u8, 5u8, 147u8, 40u8, 46u8, 141u8, 77u8, + ], + ) + } + #[doc = "Force the registration of a Para Id on the relay chain."] + #[doc = ""] + #[doc = "This function must be called by a Root origin."] + #[doc = ""] + #[doc = "The deposit taken can be specified for this registration. Any `ParaId`"] + #[doc = "can be registered, including sub-1000 IDs which are System Parachains."] + pub fn force_register( + &self, + who: ::subxt::utils::AccountId32, + deposit: ::core::primitive::u128, + id: runtime_types::polkadot_parachain::primitives::Id, + genesis_head: runtime_types::polkadot_parachain::primitives::HeadData, + validation_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Registrar", + "force_register", + types::ForceRegister { + who, + deposit, + id, + genesis_head, + validation_code, + }, + [ + 73u8, 118u8, 161u8, 95u8, 234u8, 106u8, 174u8, 143u8, 34u8, 235u8, + 140u8, 166u8, 210u8, 101u8, 53u8, 191u8, 194u8, 17u8, 189u8, 187u8, + 86u8, 91u8, 112u8, 248u8, 109u8, 208u8, 37u8, 70u8, 26u8, 195u8, 90u8, + 207u8, + ], + ) + } + #[doc = "Deregister a Para Id, freeing all data and returning any deposit."] + #[doc = ""] + #[doc = "The caller must be Root, the `para` owner, or the `para` itself. The para must be a parathread."] + pub fn deregister( + &self, + id: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Registrar", + "deregister", + types::Deregister { id }, + [ + 212u8, 38u8, 98u8, 234u8, 146u8, 188u8, 71u8, 244u8, 238u8, 255u8, 3u8, + 89u8, 52u8, 242u8, 126u8, 187u8, 185u8, 193u8, 174u8, 187u8, 196u8, + 3u8, 66u8, 77u8, 173u8, 115u8, 52u8, 210u8, 69u8, 221u8, 109u8, 112u8, + ], + ) + } + #[doc = "Swap a parachain with another parachain or parathread."] + #[doc = ""] + #[doc = "The origin must be Root, the `para` owner, or the `para` itself."] + #[doc = ""] + #[doc = "The swap will happen only if there is already an opposite swap pending. If there is not,"] + #[doc = "the swap will be stored in the pending swaps map, ready for a later confirmatory swap."] + #[doc = ""] + #[doc = "The `ParaId`s remain mapped to the same head data and code so external code can rely on"] + #[doc = "`ParaId` to be a long-term identifier of a notional \"parachain\". However, their"] + #[doc = "scheduling info (i.e. whether they're a parathread or parachain), auction information"] + #[doc = "and the auction deposit are switched."] + pub fn swap( + &self, + id: runtime_types::polkadot_parachain::primitives::Id, + other: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Registrar", + "swap", + types::Swap { id, other }, + [ + 235u8, 169u8, 16u8, 199u8, 107u8, 54u8, 35u8, 160u8, 219u8, 156u8, + 177u8, 205u8, 83u8, 45u8, 30u8, 233u8, 8u8, 143u8, 27u8, 123u8, 156u8, + 65u8, 128u8, 233u8, 218u8, 230u8, 98u8, 206u8, 231u8, 95u8, 224u8, + 35u8, + ], + ) + } + #[doc = "Remove a manager lock from a para. This will allow the manager of a"] + #[doc = "previously locked para to deregister or swap a para without using governance."] + #[doc = ""] + #[doc = "Can only be called by the Root origin or the parachain."] + pub fn remove_lock( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Registrar", + "remove_lock", + types::RemoveLock { para }, + [ + 239u8, 207u8, 248u8, 246u8, 244u8, 128u8, 113u8, 114u8, 6u8, 232u8, + 218u8, 123u8, 241u8, 190u8, 255u8, 48u8, 26u8, 248u8, 33u8, 86u8, 87u8, + 219u8, 65u8, 104u8, 66u8, 68u8, 34u8, 201u8, 43u8, 159u8, 141u8, 100u8, + ], + ) + } + #[doc = "Reserve a Para Id on the relay chain."] + #[doc = ""] + #[doc = "This function will reserve a new Para Id to be owned/managed by the origin account."] + #[doc = "The origin account is able to register head data and validation code using `register` to create"] + #[doc = "a parathread. Using the Slots pallet, a parathread can then be upgraded to get a parachain slot."] + #[doc = ""] + #[doc = "## Arguments"] + #[doc = "- `origin`: Must be called by a `Signed` origin. Becomes the manager/owner of the new para ID."] + #[doc = ""] + #[doc = "## Deposits/Fees"] + #[doc = "The origin must reserve a deposit of `ParaDeposit` for the registration."] + #[doc = ""] + #[doc = "## Events"] + #[doc = "The `Reserved` event is emitted in case of success, which provides the ID reserved for use."] + pub fn reserve(&self) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Registrar", + "reserve", + types::Reserve {}, + [ + 50u8, 72u8, 218u8, 145u8, 224u8, 93u8, 219u8, 220u8, 121u8, 35u8, + 104u8, 11u8, 139u8, 114u8, 171u8, 101u8, 40u8, 13u8, 33u8, 39u8, 245u8, + 146u8, 138u8, 159u8, 245u8, 236u8, 26u8, 0u8, 20u8, 243u8, 128u8, 81u8, + ], + ) + } + #[doc = "Add a manager lock from a para. This will prevent the manager of a"] + #[doc = "para to deregister or swap a para."] + #[doc = ""] + #[doc = "Can be called by Root, the parachain, or the parachain manager if the parachain is unlocked."] + pub fn add_lock( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Registrar", + "add_lock", + types::AddLock { para }, + [ + 158u8, 27u8, 55u8, 53u8, 71u8, 221u8, 37u8, 73u8, 23u8, 165u8, 129u8, + 17u8, 167u8, 79u8, 112u8, 35u8, 231u8, 8u8, 241u8, 151u8, 207u8, 235u8, + 224u8, 104u8, 102u8, 108u8, 10u8, 244u8, 33u8, 67u8, 45u8, 13u8, + ], + ) + } + #[doc = "Schedule a parachain upgrade."] + #[doc = ""] + #[doc = "Can be called by Root, the parachain, or the parachain manager if the parachain is unlocked."] + pub fn schedule_code_upgrade( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + new_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Registrar", + "schedule_code_upgrade", + types::ScheduleCodeUpgrade { para, new_code }, + [ + 234u8, 22u8, 133u8, 175u8, 218u8, 250u8, 119u8, 175u8, 23u8, 250u8, + 175u8, 48u8, 247u8, 208u8, 235u8, 167u8, 24u8, 248u8, 247u8, 236u8, + 239u8, 9u8, 78u8, 195u8, 146u8, 172u8, 41u8, 105u8, 183u8, 253u8, 1u8, + 170u8, + ], + ) + } + #[doc = "Set the parachain's current head."] + #[doc = ""] + #[doc = "Can be called by Root, the parachain, or the parachain manager if the parachain is unlocked."] + pub fn set_current_head( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + new_head: runtime_types::polkadot_parachain::primitives::HeadData, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Registrar", + "set_current_head", + types::SetCurrentHead { para, new_head }, + [ + 201u8, 49u8, 104u8, 135u8, 80u8, 233u8, 154u8, 193u8, 143u8, 209u8, + 10u8, 209u8, 234u8, 252u8, 142u8, 216u8, 220u8, 249u8, 23u8, 252u8, + 73u8, 169u8, 204u8, 242u8, 59u8, 19u8, 18u8, 35u8, 115u8, 209u8, 79u8, + 112u8, + ], + ) + } + } + } + #[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::polkadot_runtime_common::paras_registrar::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Registered { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + pub manager: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for Registered { + const PALLET: &'static str = "Registrar"; + const EVENT: &'static str = "Registered"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Deregistered { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::events::StaticEvent for Deregistered { + const PALLET: &'static str = "Registrar"; + const EVENT: &'static str = "Deregistered"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Reserved { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + pub who: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for Reserved { + const PALLET: &'static str = "Registrar"; + const EVENT: &'static str = "Reserved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Swapped { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + pub other_id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::events::StaticEvent for Swapped { + const PALLET: &'static str = "Registrar"; + const EVENT: &'static str = "Swapped"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Pending swap operations."] + pub fn pending_swap_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::Id, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Registrar", + "PendingSwap", + vec![], + [ + 75u8, 6u8, 68u8, 43u8, 108u8, 147u8, 220u8, 90u8, 190u8, 86u8, 209u8, + 141u8, 9u8, 254u8, 103u8, 10u8, 94u8, 187u8, 155u8, 249u8, 140u8, + 167u8, 248u8, 196u8, 67u8, 169u8, 186u8, 192u8, 139u8, 188u8, 48u8, + 221u8, + ], + ) + } + #[doc = " Pending swap operations."] + pub fn pending_swap( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::Id, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Registrar", + "PendingSwap", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 75u8, 6u8, 68u8, 43u8, 108u8, 147u8, 220u8, 90u8, 190u8, 86u8, 209u8, + 141u8, 9u8, 254u8, 103u8, 10u8, 94u8, 187u8, 155u8, 249u8, 140u8, + 167u8, 248u8, 196u8, 67u8, 169u8, 186u8, 192u8, 139u8, 188u8, 48u8, + 221u8, + ], + ) + } + #[doc = " Amount held on deposit for each para and the original depositor."] + #[doc = ""] + #[doc = " The given account ID is responsible for registering the code and initial head data, but may only do"] + #[doc = " so if it isn't yet registered. (After that, it's up to governance to do so.)"] + pub fn paras_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_common::paras_registrar::ParaInfo< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Registrar", + "Paras", + vec![], + [ + 187u8, 63u8, 130u8, 102u8, 222u8, 144u8, 126u8, 130u8, 82u8, 22u8, + 64u8, 237u8, 229u8, 91u8, 66u8, 52u8, 9u8, 40u8, 254u8, 60u8, 55u8, + 42u8, 144u8, 254u8, 102u8, 21u8, 86u8, 136u8, 49u8, 156u8, 94u8, 163u8, + ], + ) + } + #[doc = " Amount held on deposit for each para and the original depositor."] + #[doc = ""] + #[doc = " The given account ID is responsible for registering the code and initial head data, but may only do"] + #[doc = " so if it isn't yet registered. (After that, it's up to governance to do so.)"] + pub fn paras( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_common::paras_registrar::ParaInfo< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Registrar", + "Paras", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 187u8, 63u8, 130u8, 102u8, 222u8, 144u8, 126u8, 130u8, 82u8, 22u8, + 64u8, 237u8, 229u8, 91u8, 66u8, 52u8, 9u8, 40u8, 254u8, 60u8, 55u8, + 42u8, 144u8, 254u8, 102u8, 21u8, 86u8, 136u8, 49u8, 156u8, 94u8, 163u8, + ], + ) + } + #[doc = " The next free `ParaId`."] + pub fn next_free_para_id( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_parachain::primitives::Id, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Registrar", + "NextFreeParaId", + vec![], + [ + 52u8, 14u8, 56u8, 196u8, 79u8, 221u8, 32u8, 14u8, 154u8, 247u8, 94u8, + 219u8, 11u8, 11u8, 104u8, 137u8, 167u8, 195u8, 180u8, 101u8, 35u8, + 235u8, 67u8, 144u8, 128u8, 209u8, 189u8, 227u8, 177u8, 74u8, 42u8, + 15u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " The deposit to be paid to run a parathread."] + #[doc = " This should include the cost for storing the genesis head and validation code."] + pub fn para_deposit(&self) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "Registrar", + "ParaDeposit", + [ + 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 deposit to be paid per byte stored on chain."] + pub fn data_deposit_per_byte( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "Registrar", + "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, + ], + ) + } + } + } + } + pub mod slots { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_common::slots::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_common::slots::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceLease { + pub para: runtime_types::polkadot_parachain::primitives::Id, + pub leaser: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + pub period_begin: ::core::primitive::u32, + pub period_count: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ForceLease { + const PALLET: &'static str = "Slots"; + const CALL: &'static str = "force_lease"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ClearAllLeases { + pub para: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for ClearAllLeases { + const PALLET: &'static str = "Slots"; + const CALL: &'static str = "clear_all_leases"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct TriggerOnboard { + pub para: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for TriggerOnboard { + const PALLET: &'static str = "Slots"; + const CALL: &'static str = "trigger_onboard"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Just a connect into the `lease_out` call, in case Root wants to force some lease to happen"] + #[doc = "independently of any other on-chain mechanism to use it."] + #[doc = ""] + #[doc = "The dispatch origin for this call must match `T::ForceOrigin`."] + pub fn force_lease( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + leaser: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + period_begin: ::core::primitive::u32, + period_count: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Slots", + "force_lease", + types::ForceLease { + para, + leaser, + amount, + period_begin, + period_count, + }, + [ + 27u8, 203u8, 227u8, 16u8, 65u8, 135u8, 140u8, 244u8, 218u8, 231u8, + 78u8, 190u8, 169u8, 156u8, 233u8, 31u8, 20u8, 119u8, 158u8, 34u8, + 130u8, 51u8, 38u8, 176u8, 142u8, 139u8, 152u8, 139u8, 26u8, 184u8, + 238u8, 227u8, + ], + ) + } + #[doc = "Clear all leases for a Para Id, refunding any deposits back to the original owners."] + #[doc = ""] + #[doc = "The dispatch origin for this call must match `T::ForceOrigin`."] + pub fn clear_all_leases( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Slots", + "clear_all_leases", + types::ClearAllLeases { para }, + [ + 201u8, 71u8, 106u8, 50u8, 65u8, 107u8, 191u8, 41u8, 52u8, 106u8, 51u8, + 87u8, 19u8, 199u8, 244u8, 93u8, 104u8, 148u8, 116u8, 198u8, 169u8, + 137u8, 28u8, 78u8, 54u8, 230u8, 161u8, 16u8, 79u8, 248u8, 28u8, 183u8, + ], + ) + } + #[doc = "Try to onboard a parachain that has a lease for the current lease period."] + #[doc = ""] + #[doc = "This function can be useful if there was some state issue with a para that should"] + #[doc = "have onboarded, but was unable to. As long as they have a lease period, we can"] + #[doc = "let them onboard from here."] + #[doc = ""] + #[doc = "Origin must be signed, but can be called by anyone."] + pub fn trigger_onboard( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Slots", + "trigger_onboard", + types::TriggerOnboard { para }, + [ + 192u8, 239u8, 65u8, 186u8, 200u8, 27u8, 23u8, 235u8, 2u8, 229u8, 230u8, + 192u8, 240u8, 51u8, 62u8, 80u8, 253u8, 105u8, 178u8, 134u8, 252u8, 2u8, + 153u8, 29u8, 235u8, 249u8, 92u8, 246u8, 136u8, 169u8, 109u8, 4u8, + ], + ) + } + } + } + #[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::polkadot_runtime_common::slots::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A new `[lease_period]` is beginning."] + pub struct NewLeasePeriod { + pub lease_period: ::core::primitive::u32, + } + impl ::subxt::events::StaticEvent for NewLeasePeriod { + const PALLET: &'static str = "Slots"; + const EVENT: &'static str = "NewLeasePeriod"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A para has won the right to a continuous set of lease periods as a parachain."] + #[doc = "First balance is any extra amount reserved on top of the para's existing deposit."] + #[doc = "Second balance is the total amount reserved."] + pub struct Leased { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + pub leaser: ::subxt::utils::AccountId32, + pub period_begin: ::core::primitive::u32, + pub period_count: ::core::primitive::u32, + pub extra_reserved: ::core::primitive::u128, + pub total_amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Leased { + const PALLET: &'static str = "Slots"; + const EVENT: &'static str = "Leased"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Amounts held on deposit for each (possibly future) leased parachain."] + #[doc = ""] + #[doc = " The actual amount locked on its behalf by any account at any time is the maximum of the second values"] + #[doc = " of the items in this list whose first value is the account."] + #[doc = ""] + #[doc = " The first item in the list is the amount locked for the current Lease Period. Following"] + #[doc = " items are for the subsequent lease periods."] + #[doc = ""] + #[doc = " The default value (an empty list) implies that the parachain no longer exists (or never"] + #[doc = " existed) as far as this pallet is concerned."] + #[doc = ""] + #[doc = " If a parachain doesn't exist *yet* but is scheduled to exist in the future, then it"] + #[doc = " will be left-padded with one or more `None`s to denote the fact that nothing is held on"] + #[doc = " deposit for the non-existent chain currently, but is held at some point in the future."] + #[doc = ""] + #[doc = " It is illegal for a `None` value to trail in the list."] + pub fn leases_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec< + ::core::option::Option<( + ::subxt::utils::AccountId32, + ::core::primitive::u128, + )>, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Slots", + "Leases", + vec![], + [ + 233u8, 226u8, 181u8, 160u8, 216u8, 86u8, 238u8, 229u8, 31u8, 67u8, + 200u8, 188u8, 134u8, 22u8, 88u8, 147u8, 204u8, 11u8, 34u8, 244u8, + 234u8, 77u8, 184u8, 171u8, 147u8, 228u8, 254u8, 11u8, 40u8, 162u8, + 177u8, 196u8, + ], + ) + } + #[doc = " Amounts held on deposit for each (possibly future) leased parachain."] + #[doc = ""] + #[doc = " The actual amount locked on its behalf by any account at any time is the maximum of the second values"] + #[doc = " of the items in this list whose first value is the account."] + #[doc = ""] + #[doc = " The first item in the list is the amount locked for the current Lease Period. Following"] + #[doc = " items are for the subsequent lease periods."] + #[doc = ""] + #[doc = " The default value (an empty list) implies that the parachain no longer exists (or never"] + #[doc = " existed) as far as this pallet is concerned."] + #[doc = ""] + #[doc = " If a parachain doesn't exist *yet* but is scheduled to exist in the future, then it"] + #[doc = " will be left-padded with one or more `None`s to denote the fact that nothing is held on"] + #[doc = " deposit for the non-existent chain currently, but is held at some point in the future."] + #[doc = ""] + #[doc = " It is illegal for a `None` value to trail in the list."] + pub fn leases( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec< + ::core::option::Option<( + ::subxt::utils::AccountId32, + ::core::primitive::u128, + )>, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Slots", + "Leases", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 233u8, 226u8, 181u8, 160u8, 216u8, 86u8, 238u8, 229u8, 31u8, 67u8, + 200u8, 188u8, 134u8, 22u8, 88u8, 147u8, 204u8, 11u8, 34u8, 244u8, + 234u8, 77u8, 184u8, 171u8, 147u8, 228u8, 254u8, 11u8, 40u8, 162u8, + 177u8, 196u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " The number of blocks over which a single period lasts."] + pub fn lease_period(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Slots", + "LeasePeriod", + [ + 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 to offset each lease period by."] + pub fn lease_offset(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Slots", + "LeaseOffset", + [ + 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 auctions { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_common::auctions::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_common::auctions::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct NewAuction { + #[codec(compact)] + pub duration: ::core::primitive::u32, + #[codec(compact)] + pub lease_period_index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for NewAuction { + const PALLET: &'static str = "Auctions"; + const CALL: &'static str = "new_auction"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Bid { + #[codec(compact)] + pub para: runtime_types::polkadot_parachain::primitives::Id, + #[codec(compact)] + pub auction_index: ::core::primitive::u32, + #[codec(compact)] + pub first_slot: ::core::primitive::u32, + #[codec(compact)] + pub last_slot: ::core::primitive::u32, + #[codec(compact)] + pub amount: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for Bid { + const PALLET: &'static str = "Auctions"; + const CALL: &'static str = "bid"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CancelAuction; + impl ::subxt::blocks::StaticExtrinsic for CancelAuction { + const PALLET: &'static str = "Auctions"; + const CALL: &'static str = "cancel_auction"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Create a new auction."] + #[doc = ""] + #[doc = "This can only happen when there isn't already an auction in progress and may only be"] + #[doc = "called by the root origin. Accepts the `duration` of this auction and the"] + #[doc = "`lease_period_index` of the initial lease period of the four that are to be auctioned."] + pub fn new_auction( + &self, + duration: ::core::primitive::u32, + lease_period_index: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Auctions", + "new_auction", + types::NewAuction { + duration, + lease_period_index, + }, + [ + 116u8, 2u8, 215u8, 191u8, 69u8, 99u8, 218u8, 198u8, 71u8, 228u8, 88u8, + 144u8, 139u8, 206u8, 214u8, 58u8, 106u8, 117u8, 138u8, 115u8, 109u8, + 253u8, 210u8, 135u8, 189u8, 190u8, 86u8, 189u8, 8u8, 168u8, 142u8, + 181u8, + ], + ) + } + #[doc = "Make a new bid from an account (including a parachain account) for deploying a new"] + #[doc = "parachain."] + #[doc = ""] + #[doc = "Multiple simultaneous bids from the same bidder are allowed only as long as all active"] + #[doc = "bids overlap each other (i.e. are mutually exclusive). Bids cannot be redacted."] + #[doc = ""] + #[doc = "- `sub` is the sub-bidder ID, allowing for multiple competing bids to be made by (and"] + #[doc = "funded by) the same account."] + #[doc = "- `auction_index` is the index of the auction to bid on. Should just be the present"] + #[doc = "value of `AuctionCounter`."] + #[doc = "- `first_slot` is the first lease period index of the range to bid on. This is the"] + #[doc = "absolute lease period index value, not an auction-specific offset."] + #[doc = "- `last_slot` is the last lease period index of the range to bid on. This is the"] + #[doc = "absolute lease period index value, not an auction-specific offset."] + #[doc = "- `amount` is the amount to bid to be held as deposit for the parachain should the"] + #[doc = "bid win. This amount is held throughout the range."] + pub fn bid( + &self, + para: runtime_types::polkadot_parachain::primitives::Id, + auction_index: ::core::primitive::u32, + first_slot: ::core::primitive::u32, + last_slot: ::core::primitive::u32, + amount: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Auctions", + "bid", + types::Bid { + para, + auction_index, + first_slot, + last_slot, + amount, + }, + [ + 203u8, 71u8, 160u8, 55u8, 95u8, 152u8, 111u8, 30u8, 86u8, 113u8, 213u8, + 217u8, 140u8, 9u8, 138u8, 150u8, 90u8, 229u8, 17u8, 95u8, 141u8, 150u8, + 183u8, 171u8, 45u8, 110u8, 47u8, 91u8, 159u8, 91u8, 214u8, 132u8, + ], + ) + } + #[doc = "Cancel an in-progress auction."] + #[doc = ""] + #[doc = "Can only be called by Root origin."] + pub fn cancel_auction(&self) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Auctions", + "cancel_auction", + types::CancelAuction {}, + [ + 122u8, 231u8, 136u8, 184u8, 194u8, 4u8, 244u8, 62u8, 253u8, 134u8, 9u8, + 240u8, 75u8, 227u8, 74u8, 195u8, 113u8, 247u8, 127u8, 17u8, 90u8, + 228u8, 251u8, 88u8, 4u8, 29u8, 254u8, 71u8, 177u8, 103u8, 66u8, 224u8, + ], + ) + } + } + } + #[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::polkadot_runtime_common::auctions::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An auction started. Provides its index and the block number where it will begin to"] + #[doc = "close and the first lease period of the quadruplet that is auctioned."] + pub struct AuctionStarted { + pub auction_index: ::core::primitive::u32, + pub lease_period: ::core::primitive::u32, + pub ending: ::core::primitive::u32, + } + impl ::subxt::events::StaticEvent for AuctionStarted { + const PALLET: &'static str = "Auctions"; + const EVENT: &'static str = "AuctionStarted"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An auction ended. All funds become unreserved."] + pub struct AuctionClosed { + pub auction_index: ::core::primitive::u32, + } + impl ::subxt::events::StaticEvent for AuctionClosed { + const PALLET: &'static str = "Auctions"; + const EVENT: &'static str = "AuctionClosed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Funds were reserved for a winning bid. First balance is the extra amount reserved."] + #[doc = "Second is the total."] + pub struct Reserved { + pub bidder: ::subxt::utils::AccountId32, + pub extra_reserved: ::core::primitive::u128, + pub total_amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Reserved { + const PALLET: &'static str = "Auctions"; + const EVENT: &'static str = "Reserved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Funds were unreserved since bidder is no longer active. `[bidder, amount]`"] + pub struct Unreserved { + pub bidder: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Unreserved { + const PALLET: &'static str = "Auctions"; + const EVENT: &'static str = "Unreserved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Someone attempted to lease the same slot twice for a parachain. The amount is held in reserve"] + #[doc = "but no parachain slot has been leased."] + pub struct ReserveConfiscated { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + pub leaser: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for ReserveConfiscated { + const PALLET: &'static str = "Auctions"; + const EVENT: &'static str = "ReserveConfiscated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A new bid has been accepted as the current winner."] + pub struct BidAccepted { + pub bidder: ::subxt::utils::AccountId32, + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + pub amount: ::core::primitive::u128, + pub first_slot: ::core::primitive::u32, + pub last_slot: ::core::primitive::u32, + } + impl ::subxt::events::StaticEvent for BidAccepted { + const PALLET: &'static str = "Auctions"; + const EVENT: &'static str = "BidAccepted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The winning offset was chosen for an auction. This will map into the `Winning` storage map."] + pub struct WinningOffset { + pub auction_index: ::core::primitive::u32, + pub block_number: ::core::primitive::u32, + } + impl ::subxt::events::StaticEvent for WinningOffset { + const PALLET: &'static str = "Auctions"; + const EVENT: &'static str = "WinningOffset"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Number of auctions started so far."] + pub fn auction_counter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Auctions", + "AuctionCounter", + vec![], + [ + 110u8, 243u8, 85u8, 4u8, 127u8, 111u8, 101u8, 167u8, 72u8, 129u8, + 201u8, 250u8, 88u8, 9u8, 79u8, 14u8, 152u8, 132u8, 0u8, 204u8, 112u8, + 248u8, 91u8, 254u8, 30u8, 22u8, 62u8, 180u8, 188u8, 204u8, 29u8, 103u8, + ], + ) + } + #[doc = " Information relating to the current auction, if there is one."] + #[doc = ""] + #[doc = " The first item in the tuple is the lease period index that the first of the four"] + #[doc = " contiguous lease periods on auction is for. The second is the block number when the"] + #[doc = " auction will \"begin to end\", i.e. the first block of the Ending Period of the auction."] + pub fn auction_info( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (::core::primitive::u32, ::core::primitive::u32), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Auctions", + "AuctionInfo", + vec![], + [ + 116u8, 81u8, 223u8, 26u8, 151u8, 103u8, 209u8, 182u8, 169u8, 173u8, + 220u8, 234u8, 88u8, 191u8, 255u8, 75u8, 148u8, 75u8, 167u8, 37u8, 6u8, + 14u8, 224u8, 193u8, 92u8, 82u8, 205u8, 172u8, 209u8, 83u8, 3u8, 77u8, + ], + ) + } + #[doc = " Amounts currently reserved in the accounts of the bidders currently winning"] + #[doc = " (sub-)ranges."] + pub fn reserved_amounts_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Auctions", + "ReservedAmounts", + vec![], + [ + 77u8, 44u8, 116u8, 36u8, 189u8, 213u8, 126u8, 32u8, 42u8, 131u8, 108u8, + 41u8, 147u8, 40u8, 247u8, 245u8, 161u8, 42u8, 152u8, 195u8, 28u8, + 142u8, 231u8, 209u8, 113u8, 11u8, 240u8, 37u8, 112u8, 38u8, 239u8, + 245u8, + ], + ) + } + #[doc = " Amounts currently reserved in the accounts of the bidders currently winning"] + #[doc = " (sub-)ranges."] + pub fn reserved_amounts_iter1( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Auctions", + "ReservedAmounts", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 77u8, 44u8, 116u8, 36u8, 189u8, 213u8, 126u8, 32u8, 42u8, 131u8, 108u8, + 41u8, 147u8, 40u8, 247u8, 245u8, 161u8, 42u8, 152u8, 195u8, 28u8, + 142u8, 231u8, 209u8, 113u8, 11u8, 240u8, 37u8, 112u8, 38u8, 239u8, + 245u8, + ], + ) + } + #[doc = " Amounts currently reserved in the accounts of the bidders currently winning"] + #[doc = " (sub-)ranges."] + pub fn reserved_amounts( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + _1: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Auctions", + "ReservedAmounts", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 77u8, 44u8, 116u8, 36u8, 189u8, 213u8, 126u8, 32u8, 42u8, 131u8, 108u8, + 41u8, 147u8, 40u8, 247u8, 245u8, 161u8, 42u8, 152u8, 195u8, 28u8, + 142u8, 231u8, 209u8, 113u8, 11u8, 240u8, 37u8, 112u8, 38u8, 239u8, + 245u8, + ], + ) + } + #[doc = " The winning bids for each of the 10 ranges at each sample in the final Ending Period of"] + #[doc = " the current auction. The map's key is the 0-based index into the Sample Size. The"] + #[doc = " first sample of the ending period is 0; the last is `Sample Size - 1`."] + pub fn winning_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + [::core::option::Option<( + ::subxt::utils::AccountId32, + runtime_types::polkadot_parachain::primitives::Id, + ::core::primitive::u128, + )>; 36usize], + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Auctions", + "Winning", + vec![], + [ + 8u8, 136u8, 174u8, 152u8, 223u8, 1u8, 143u8, 45u8, 213u8, 5u8, 239u8, + 163u8, 152u8, 99u8, 197u8, 109u8, 194u8, 140u8, 246u8, 10u8, 40u8, + 22u8, 0u8, 122u8, 20u8, 132u8, 141u8, 157u8, 56u8, 211u8, 5u8, 104u8, + ], + ) + } + #[doc = " The winning bids for each of the 10 ranges at each sample in the final Ending Period of"] + #[doc = " the current auction. The map's key is the 0-based index into the Sample Size. The"] + #[doc = " first sample of the ending period is 0; the last is `Sample Size - 1`."] + pub fn winning( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + [::core::option::Option<( + ::subxt::utils::AccountId32, + runtime_types::polkadot_parachain::primitives::Id, + ::core::primitive::u128, + )>; 36usize], + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Auctions", + "Winning", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 8u8, 136u8, 174u8, 152u8, 223u8, 1u8, 143u8, 45u8, 213u8, 5u8, 239u8, + 163u8, 152u8, 99u8, 197u8, 109u8, 194u8, 140u8, 246u8, 10u8, 40u8, + 22u8, 0u8, 122u8, 20u8, 132u8, 141u8, 157u8, 56u8, 211u8, 5u8, 104u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " The number of blocks over which an auction may be retroactively ended."] + pub fn ending_period(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Auctions", + "EndingPeriod", + [ + 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 length of each sample to take during the ending period."] + #[doc = ""] + #[doc = " `EndingPeriod` / `SampleLength` = Total # of Samples"] + pub fn sample_length(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Auctions", + "SampleLength", + [ + 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 slot_range_count( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Auctions", + "SlotRangeCount", + [ + 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 lease_periods_per_slot( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Auctions", + "LeasePeriodsPerSlot", + [ + 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 crowdloan { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_common::crowdloan::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_common::crowdloan::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Create { + #[codec(compact)] + pub index: runtime_types::polkadot_parachain::primitives::Id, + #[codec(compact)] + pub cap: ::core::primitive::u128, + #[codec(compact)] + pub first_period: ::core::primitive::u32, + #[codec(compact)] + pub last_period: ::core::primitive::u32, + #[codec(compact)] + pub end: ::core::primitive::u32, + pub verifier: ::core::option::Option, + } + impl ::subxt::blocks::StaticExtrinsic for Create { + const PALLET: &'static str = "Crowdloan"; + const CALL: &'static str = "create"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Contribute { + #[codec(compact)] + pub index: runtime_types::polkadot_parachain::primitives::Id, + #[codec(compact)] + pub value: ::core::primitive::u128, + pub signature: + ::core::option::Option, + } + impl ::subxt::blocks::StaticExtrinsic for Contribute { + const PALLET: &'static str = "Crowdloan"; + const CALL: &'static str = "contribute"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Withdraw { + pub who: ::subxt::utils::AccountId32, + #[codec(compact)] + pub index: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for Withdraw { + const PALLET: &'static str = "Crowdloan"; + const CALL: &'static str = "withdraw"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Refund { + #[codec(compact)] + pub index: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for Refund { + const PALLET: &'static str = "Crowdloan"; + const CALL: &'static str = "refund"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Dissolve { + #[codec(compact)] + pub index: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for Dissolve { + const PALLET: &'static str = "Crowdloan"; + const CALL: &'static str = "dissolve"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Edit { + #[codec(compact)] + pub index: runtime_types::polkadot_parachain::primitives::Id, + #[codec(compact)] + pub cap: ::core::primitive::u128, + #[codec(compact)] + pub first_period: ::core::primitive::u32, + #[codec(compact)] + pub last_period: ::core::primitive::u32, + #[codec(compact)] + pub end: ::core::primitive::u32, + pub verifier: ::core::option::Option, + } + impl ::subxt::blocks::StaticExtrinsic for Edit { + const PALLET: &'static str = "Crowdloan"; + const CALL: &'static str = "edit"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AddMemo { + pub index: runtime_types::polkadot_parachain::primitives::Id, + pub memo: ::std::vec::Vec<::core::primitive::u8>, + } + impl ::subxt::blocks::StaticExtrinsic for AddMemo { + const PALLET: &'static str = "Crowdloan"; + const CALL: &'static str = "add_memo"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Poke { + pub index: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for Poke { + const PALLET: &'static str = "Crowdloan"; + const CALL: &'static str = "poke"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ContributeAll { + #[codec(compact)] + pub index: runtime_types::polkadot_parachain::primitives::Id, + pub signature: + ::core::option::Option, + } + impl ::subxt::blocks::StaticExtrinsic for ContributeAll { + const PALLET: &'static str = "Crowdloan"; + const CALL: &'static str = "contribute_all"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Create a new crowdloaning campaign for a parachain slot with the given lease period range."] + #[doc = ""] + #[doc = "This applies a lock to your parachain configuration, ensuring that it cannot be changed"] + #[doc = "by the parachain manager."] + pub fn create( + &self, + index: runtime_types::polkadot_parachain::primitives::Id, + cap: ::core::primitive::u128, + first_period: ::core::primitive::u32, + last_period: ::core::primitive::u32, + end: ::core::primitive::u32, + verifier: ::core::option::Option, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Crowdloan", + "create", + types::Create { + index, + cap, + first_period, + last_period, + end, + verifier, + }, + [ + 236u8, 3u8, 248u8, 168u8, 136u8, 216u8, 20u8, 58u8, 179u8, 13u8, 184u8, + 73u8, 105u8, 35u8, 167u8, 66u8, 117u8, 195u8, 41u8, 41u8, 117u8, 176u8, + 65u8, 18u8, 225u8, 66u8, 2u8, 61u8, 212u8, 92u8, 117u8, 90u8, + ], + ) + } + #[doc = "Contribute to a crowd sale. This will transfer some balance over to fund a parachain"] + #[doc = "slot. It will be withdrawable when the crowdloan has ended and the funds are unused."] + pub fn contribute( + &self, + index: runtime_types::polkadot_parachain::primitives::Id, + value: ::core::primitive::u128, + signature: ::core::option::Option, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Crowdloan", + "contribute", + types::Contribute { + index, + value, + signature, + }, + [ + 186u8, 247u8, 240u8, 7u8, 12u8, 239u8, 39u8, 191u8, 150u8, 219u8, + 137u8, 122u8, 214u8, 61u8, 62u8, 180u8, 229u8, 181u8, 105u8, 190u8, + 228u8, 55u8, 242u8, 70u8, 91u8, 118u8, 143u8, 233u8, 186u8, 231u8, + 207u8, 106u8, + ], + ) + } + #[doc = "Withdraw full balance of a specific contributor."] + #[doc = ""] + #[doc = "Origin must be signed, but can come from anyone."] + #[doc = ""] + #[doc = "The fund must be either in, or ready for, retirement. For a fund to be *in* retirement, then the retirement"] + #[doc = "flag must be set. For a fund to be ready for retirement, then:"] + #[doc = "- it must not already be in retirement;"] + #[doc = "- the amount of raised funds must be bigger than the _free_ balance of the account;"] + #[doc = "- and either:"] + #[doc = " - the block number must be at least `end`; or"] + #[doc = " - the current lease period must be greater than the fund's `last_period`."] + #[doc = ""] + #[doc = "In this case, the fund's retirement flag is set and its `end` is reset to the current block"] + #[doc = "number."] + #[doc = ""] + #[doc = "- `who`: The account whose contribution should be withdrawn."] + #[doc = "- `index`: The parachain to whose crowdloan the contribution was made."] + pub fn withdraw( + &self, + who: ::subxt::utils::AccountId32, + index: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Crowdloan", + "withdraw", + types::Withdraw { who, index }, + [ + 148u8, 23u8, 138u8, 161u8, 248u8, 235u8, 138u8, 156u8, 209u8, 236u8, + 235u8, 81u8, 207u8, 212u8, 232u8, 126u8, 221u8, 46u8, 34u8, 39u8, 44u8, + 42u8, 75u8, 134u8, 12u8, 247u8, 84u8, 203u8, 48u8, 133u8, 72u8, 254u8, + ], + ) + } + #[doc = "Automatically refund contributors of an ended crowdloan."] + #[doc = "Due to weight restrictions, this function may need to be called multiple"] + #[doc = "times to fully refund all users. We will refund `RemoveKeysLimit` users at a time."] + #[doc = ""] + #[doc = "Origin must be signed, but can come from anyone."] + pub fn refund( + &self, + index: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Crowdloan", + "refund", + types::Refund { index }, + [ + 245u8, 75u8, 215u8, 28u8, 141u8, 138u8, 201u8, 125u8, 21u8, 214u8, + 57u8, 23u8, 33u8, 41u8, 57u8, 227u8, 119u8, 212u8, 234u8, 227u8, 230u8, + 144u8, 249u8, 100u8, 198u8, 125u8, 106u8, 253u8, 93u8, 177u8, 247u8, + 5u8, + ], + ) + } + #[doc = "Remove a fund after the retirement period has ended and all funds have been returned."] + pub fn dissolve( + &self, + index: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Crowdloan", + "dissolve", + types::Dissolve { index }, + [ + 60u8, 225u8, 93u8, 234u8, 160u8, 90u8, 185u8, 188u8, 163u8, 72u8, + 241u8, 46u8, 62u8, 176u8, 236u8, 175u8, 147u8, 95u8, 45u8, 235u8, + 253u8, 76u8, 127u8, 190u8, 149u8, 54u8, 108u8, 78u8, 149u8, 161u8, + 39u8, 14u8, + ], + ) + } + #[doc = "Edit the configuration for an in-progress crowdloan."] + #[doc = ""] + #[doc = "Can only be called by Root origin."] + pub fn edit( + &self, + index: runtime_types::polkadot_parachain::primitives::Id, + cap: ::core::primitive::u128, + first_period: ::core::primitive::u32, + last_period: ::core::primitive::u32, + end: ::core::primitive::u32, + verifier: ::core::option::Option, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Crowdloan", + "edit", + types::Edit { + index, + cap, + first_period, + last_period, + end, + verifier, + }, + [ + 126u8, 29u8, 232u8, 93u8, 94u8, 23u8, 47u8, 217u8, 62u8, 2u8, 161u8, + 31u8, 156u8, 229u8, 109u8, 45u8, 97u8, 101u8, 189u8, 139u8, 40u8, + 238u8, 150u8, 94u8, 145u8, 77u8, 26u8, 153u8, 217u8, 171u8, 48u8, + 195u8, + ], + ) + } + #[doc = "Add an optional memo to an existing crowdloan contribution."] + #[doc = ""] + #[doc = "Origin must be Signed, and the user must have contributed to the crowdloan."] + pub fn add_memo( + &self, + index: runtime_types::polkadot_parachain::primitives::Id, + memo: ::std::vec::Vec<::core::primitive::u8>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Crowdloan", + "add_memo", + types::AddMemo { index, memo }, + [ + 190u8, 99u8, 225u8, 54u8, 136u8, 238u8, 210u8, 44u8, 103u8, 198u8, + 225u8, 254u8, 245u8, 12u8, 238u8, 112u8, 143u8, 169u8, 8u8, 193u8, + 29u8, 0u8, 159u8, 25u8, 112u8, 237u8, 194u8, 17u8, 111u8, 192u8, 219u8, + 50u8, + ], + ) + } + #[doc = "Poke the fund into `NewRaise`"] + #[doc = ""] + #[doc = "Origin must be Signed, and the fund has non-zero raise."] + pub fn poke( + &self, + index: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Crowdloan", + "poke", + types::Poke { index }, + [ + 180u8, 81u8, 211u8, 12u8, 54u8, 204u8, 105u8, 118u8, 139u8, 209u8, + 182u8, 227u8, 174u8, 192u8, 64u8, 200u8, 212u8, 101u8, 3u8, 252u8, + 195u8, 110u8, 182u8, 121u8, 218u8, 193u8, 87u8, 38u8, 212u8, 151u8, + 213u8, 56u8, + ], + ) + } + #[doc = "Contribute your entire balance to a crowd sale. This will transfer the entire balance of a user over to fund a parachain"] + #[doc = "slot. It will be withdrawable when the crowdloan has ended and the funds are unused."] + pub fn contribute_all( + &self, + index: runtime_types::polkadot_parachain::primitives::Id, + signature: ::core::option::Option, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Crowdloan", + "contribute_all", + types::ContributeAll { index, signature }, + [ + 233u8, 62u8, 129u8, 168u8, 161u8, 163u8, 78u8, 92u8, 191u8, 239u8, + 61u8, 2u8, 198u8, 246u8, 246u8, 81u8, 32u8, 131u8, 118u8, 170u8, 72u8, + 87u8, 17u8, 26u8, 55u8, 10u8, 146u8, 184u8, 213u8, 200u8, 252u8, 50u8, + ], + ) + } + } + } + #[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::polkadot_runtime_common::crowdloan::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Create a new crowdloaning campaign."] + pub struct Created { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::events::StaticEvent for Created { + const PALLET: &'static str = "Crowdloan"; + const EVENT: &'static str = "Created"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contributed to a crowd sale."] + pub struct Contributed { + pub who: ::subxt::utils::AccountId32, + pub fund_index: runtime_types::polkadot_parachain::primitives::Id, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Contributed { + const PALLET: &'static str = "Crowdloan"; + const EVENT: &'static str = "Contributed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Withdrew full balance of a contributor."] + pub struct Withdrew { + pub who: ::subxt::utils::AccountId32, + pub fund_index: runtime_types::polkadot_parachain::primitives::Id, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Withdrew { + const PALLET: &'static str = "Crowdloan"; + const EVENT: &'static str = "Withdrew"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The loans in a fund have been partially dissolved, i.e. there are some left"] + #[doc = "over child keys that still need to be killed."] + pub struct PartiallyRefunded { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::events::StaticEvent for PartiallyRefunded { + const PALLET: &'static str = "Crowdloan"; + const EVENT: &'static str = "PartiallyRefunded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "All loans in a fund have been refunded."] + pub struct AllRefunded { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::events::StaticEvent for AllRefunded { + const PALLET: &'static str = "Crowdloan"; + const EVENT: &'static str = "AllRefunded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Fund is dissolved."] + pub struct Dissolved { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::events::StaticEvent for Dissolved { + const PALLET: &'static str = "Crowdloan"; + const EVENT: &'static str = "Dissolved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The result of trying to submit a new bid to the Slots pallet."] + pub struct HandleBidResult { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + pub result: ::core::result::Result<(), runtime_types::sp_runtime::DispatchError>, + } + impl ::subxt::events::StaticEvent for HandleBidResult { + const PALLET: &'static str = "Crowdloan"; + const EVENT: &'static str = "HandleBidResult"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The configuration to a crowdloan has been edited."] + pub struct Edited { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::events::StaticEvent for Edited { + const PALLET: &'static str = "Crowdloan"; + const EVENT: &'static str = "Edited"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A memo has been updated."] + pub struct MemoUpdated { + pub who: ::subxt::utils::AccountId32, + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + pub memo: ::std::vec::Vec<::core::primitive::u8>, + } + impl ::subxt::events::StaticEvent for MemoUpdated { + const PALLET: &'static str = "Crowdloan"; + const EVENT: &'static str = "MemoUpdated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A parachain has been moved to `NewRaise`"] + pub struct AddedToNewRaise { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::events::StaticEvent for AddedToNewRaise { + const PALLET: &'static str = "Crowdloan"; + const EVENT: &'static str = "AddedToNewRaise"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Info on all of the funds."] + pub fn funds_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_common::crowdloan::FundInfo< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u32, + ::core::primitive::u32, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Crowdloan", + "Funds", + vec![], + [ + 191u8, 255u8, 37u8, 49u8, 246u8, 246u8, 168u8, 178u8, 73u8, 238u8, + 49u8, 76u8, 66u8, 246u8, 207u8, 12u8, 76u8, 233u8, 31u8, 218u8, 132u8, + 236u8, 237u8, 210u8, 116u8, 159u8, 191u8, 89u8, 212u8, 167u8, 61u8, + 41u8, + ], + ) + } + #[doc = " Info on all of the funds."] + pub fn funds( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_common::crowdloan::FundInfo< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u32, + ::core::primitive::u32, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Crowdloan", + "Funds", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 191u8, 255u8, 37u8, 49u8, 246u8, 246u8, 168u8, 178u8, 73u8, 238u8, + 49u8, 76u8, 66u8, 246u8, 207u8, 12u8, 76u8, 233u8, 31u8, 218u8, 132u8, + 236u8, 237u8, 210u8, 116u8, 159u8, 191u8, 89u8, 212u8, 167u8, 61u8, + 41u8, + ], + ) + } + #[doc = " The funds that have had additional contributions during the last block. This is used"] + #[doc = " in order to determine which funds should submit new or updated bids."] + pub fn new_raise( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Crowdloan", + "NewRaise", + vec![], + [ + 251u8, 31u8, 237u8, 22u8, 90u8, 248u8, 39u8, 66u8, 93u8, 81u8, 209u8, + 209u8, 194u8, 42u8, 109u8, 208u8, 56u8, 75u8, 45u8, 247u8, 253u8, + 165u8, 22u8, 184u8, 49u8, 49u8, 62u8, 126u8, 254u8, 146u8, 190u8, + 174u8, + ], + ) + } + #[doc = " The number of auctions that have entered into their ending period so far."] + pub fn endings_count( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Crowdloan", + "EndingsCount", + vec![], + [ + 106u8, 22u8, 229u8, 157u8, 118u8, 195u8, 11u8, 42u8, 5u8, 50u8, 44u8, + 183u8, 72u8, 167u8, 95u8, 243u8, 234u8, 5u8, 200u8, 253u8, 127u8, + 154u8, 23u8, 55u8, 202u8, 221u8, 82u8, 19u8, 201u8, 154u8, 248u8, 29u8, + ], + ) + } + #[doc = " Tracker for the next available fund index"] + pub fn next_fund_index( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Crowdloan", + "NextFundIndex", + vec![], + [ + 192u8, 21u8, 229u8, 234u8, 152u8, 224u8, 149u8, 44u8, 41u8, 9u8, 191u8, + 128u8, 118u8, 11u8, 117u8, 245u8, 170u8, 116u8, 77u8, 216u8, 175u8, + 115u8, 13u8, 85u8, 240u8, 170u8, 156u8, 201u8, 25u8, 96u8, 103u8, + 207u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " `PalletId` for the crowdloan pallet. An appropriate value could be `PalletId(*b\"py/cfund\")`"] + pub fn pallet_id( + &self, + ) -> ::subxt::constants::Address + { + ::subxt::constants::Address::new_static( + "Crowdloan", + "PalletId", + [ + 56u8, 243u8, 53u8, 83u8, 154u8, 179u8, 170u8, 80u8, 133u8, 173u8, 61u8, + 161u8, 47u8, 225u8, 146u8, 21u8, 50u8, 229u8, 248u8, 27u8, 104u8, 58u8, + 129u8, 197u8, 102u8, 160u8, 168u8, 205u8, 154u8, 42u8, 217u8, 53u8, + ], + ) + } + #[doc = " The minimum amount that may be contributed into a crowdloan. Should almost certainly be at"] + #[doc = " least `ExistentialDeposit`."] + pub fn min_contribution( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "Crowdloan", + "MinContribution", + [ + 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 = " Max number of storage keys to remove per extrinsic call."] + pub fn remove_keys_limit( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Crowdloan", + "RemoveKeysLimit", + [ + 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 xcm_pallet { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_xcm::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_xcm::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Send { + pub dest: ::std::boxed::Box, + pub message: ::std::boxed::Box, + } + impl ::subxt::blocks::StaticExtrinsic for Send { + const PALLET: &'static str = "XcmPallet"; + const CALL: &'static str = "send"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct TeleportAssets { + pub dest: ::std::boxed::Box, + pub beneficiary: ::std::boxed::Box, + pub assets: ::std::boxed::Box, + pub fee_asset_item: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for TeleportAssets { + const PALLET: &'static str = "XcmPallet"; + const CALL: &'static str = "teleport_assets"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ReserveTransferAssets { + pub dest: ::std::boxed::Box, + pub beneficiary: ::std::boxed::Box, + pub assets: ::std::boxed::Box, + pub fee_asset_item: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ReserveTransferAssets { + const PALLET: &'static str = "XcmPallet"; + const CALL: &'static str = "reserve_transfer_assets"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Execute { + pub message: ::std::boxed::Box, + pub max_weight: runtime_types::sp_weights::weight_v2::Weight, + } + impl ::subxt::blocks::StaticExtrinsic for Execute { + const PALLET: &'static str = "XcmPallet"; + const CALL: &'static str = "execute"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceXcmVersion { + pub location: + ::std::boxed::Box, + pub xcm_version: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for ForceXcmVersion { + const PALLET: &'static str = "XcmPallet"; + const CALL: &'static str = "force_xcm_version"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceDefaultXcmVersion { + pub maybe_xcm_version: ::core::option::Option<::core::primitive::u32>, + } + impl ::subxt::blocks::StaticExtrinsic for ForceDefaultXcmVersion { + const PALLET: &'static str = "XcmPallet"; + const CALL: &'static str = "force_default_xcm_version"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSubscribeVersionNotify { + pub location: ::std::boxed::Box, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSubscribeVersionNotify { + const PALLET: &'static str = "XcmPallet"; + const CALL: &'static str = "force_subscribe_version_notify"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceUnsubscribeVersionNotify { + pub location: ::std::boxed::Box, + } + impl ::subxt::blocks::StaticExtrinsic for ForceUnsubscribeVersionNotify { + const PALLET: &'static str = "XcmPallet"; + const CALL: &'static str = "force_unsubscribe_version_notify"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct LimitedReserveTransferAssets { + pub dest: ::std::boxed::Box, + pub beneficiary: ::std::boxed::Box, + pub assets: ::std::boxed::Box, + pub fee_asset_item: ::core::primitive::u32, + pub weight_limit: runtime_types::xcm::v3::WeightLimit, + } + impl ::subxt::blocks::StaticExtrinsic for LimitedReserveTransferAssets { + const PALLET: &'static str = "XcmPallet"; + const CALL: &'static str = "limited_reserve_transfer_assets"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct LimitedTeleportAssets { + pub dest: ::std::boxed::Box, + pub beneficiary: ::std::boxed::Box, + pub assets: ::std::boxed::Box, + pub fee_asset_item: ::core::primitive::u32, + pub weight_limit: runtime_types::xcm::v3::WeightLimit, + } + impl ::subxt::blocks::StaticExtrinsic for LimitedTeleportAssets { + const PALLET: &'static str = "XcmPallet"; + const CALL: &'static str = "limited_teleport_assets"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSuspension { + pub suspended: ::core::primitive::bool, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSuspension { + const PALLET: &'static str = "XcmPallet"; + const CALL: &'static str = "force_suspension"; + } + } + pub struct TransactionApi; + impl TransactionApi { + pub fn send( + &self, + dest: runtime_types::xcm::VersionedMultiLocation, + message: runtime_types::xcm::VersionedXcm, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "XcmPallet", + "send", + types::Send { + dest: ::std::boxed::Box::new(dest), + message: ::std::boxed::Box::new(message), + }, + [ + 147u8, 255u8, 86u8, 82u8, 17u8, 159u8, 225u8, 145u8, 220u8, 89u8, 71u8, + 23u8, 193u8, 249u8, 12u8, 70u8, 19u8, 140u8, 232u8, 97u8, 12u8, 220u8, + 113u8, 65u8, 4u8, 255u8, 138u8, 10u8, 231u8, 122u8, 67u8, 105u8, + ], + ) + } + #[doc = "Teleport some assets from the local chain to some destination chain."] + #[doc = ""] + #[doc = "Fee payment on the destination side is made from the asset in the `assets` vector of"] + #[doc = "index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,"] + #[doc = "with all fees taken as needed from the asset."] + #[doc = ""] + #[doc = "- `origin`: Must be capable of withdrawing the `assets` and executing XCM."] + #[doc = "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send"] + #[doc = " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain."] + #[doc = "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be"] + #[doc = " an `AccountId32` value."] + #[doc = "- `assets`: The assets to be withdrawn. The first item should be the currency used to to pay the fee on the"] + #[doc = " `dest` side. May not be empty."] + #[doc = "- `fee_asset_item`: The index into `assets` of the item which should be used to pay"] + #[doc = " fees."] + pub fn teleport_assets( + &self, + dest: runtime_types::xcm::VersionedMultiLocation, + beneficiary: runtime_types::xcm::VersionedMultiLocation, + assets: runtime_types::xcm::VersionedMultiAssets, + fee_asset_item: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "XcmPallet", + "teleport_assets", + types::TeleportAssets { + dest: ::std::boxed::Box::new(dest), + beneficiary: ::std::boxed::Box::new(beneficiary), + assets: ::std::boxed::Box::new(assets), + fee_asset_item, + }, + [ + 56u8, 144u8, 237u8, 60u8, 157u8, 5u8, 7u8, 129u8, 41u8, 149u8, 160u8, + 100u8, 233u8, 102u8, 181u8, 140u8, 115u8, 213u8, 29u8, 132u8, 16u8, + 30u8, 23u8, 82u8, 140u8, 134u8, 37u8, 87u8, 3u8, 99u8, 172u8, 42u8, + ], + ) + } + #[doc = "Transfer some assets from the local chain to the sovereign account of a destination"] + #[doc = "chain and forward a notification XCM."] + #[doc = ""] + #[doc = "Fee payment on the destination side is made from the asset in the `assets` vector of"] + #[doc = "index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,"] + #[doc = "with all fees taken as needed from the asset."] + #[doc = ""] + #[doc = "- `origin`: Must be capable of withdrawing the `assets` and executing XCM."] + #[doc = "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send"] + #[doc = " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain."] + #[doc = "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be"] + #[doc = " an `AccountId32` value."] + #[doc = "- `assets`: The assets to be withdrawn. This should include the assets used to pay the fee on the"] + #[doc = " `dest` side."] + #[doc = "- `fee_asset_item`: The index into `assets` of the item which should be used to pay"] + #[doc = " fees."] + pub fn reserve_transfer_assets( + &self, + dest: runtime_types::xcm::VersionedMultiLocation, + beneficiary: runtime_types::xcm::VersionedMultiLocation, + assets: runtime_types::xcm::VersionedMultiAssets, + fee_asset_item: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "XcmPallet", + "reserve_transfer_assets", + types::ReserveTransferAssets { + dest: ::std::boxed::Box::new(dest), + beneficiary: ::std::boxed::Box::new(beneficiary), + assets: ::std::boxed::Box::new(assets), + fee_asset_item, + }, + [ + 21u8, 167u8, 44u8, 22u8, 210u8, 73u8, 148u8, 7u8, 91u8, 108u8, 148u8, + 205u8, 170u8, 243u8, 142u8, 224u8, 205u8, 119u8, 252u8, 22u8, 203u8, + 32u8, 73u8, 200u8, 178u8, 14u8, 167u8, 147u8, 166u8, 55u8, 14u8, 231u8, + ], + ) + } + #[doc = "Execute an XCM message from a local, signed, origin."] + #[doc = ""] + #[doc = "An event is deposited indicating whether `msg` could be executed completely or only"] + #[doc = "partially."] + #[doc = ""] + #[doc = "No more than `max_weight` will be used in its attempted execution. If this is less than the"] + #[doc = "maximum amount of weight that the message could take to be executed, then no execution"] + #[doc = "attempt will be made."] + #[doc = ""] + #[doc = "NOTE: A successful return to this does *not* imply that the `msg` was executed successfully"] + #[doc = "to completion; only that *some* of it was executed."] + pub fn execute( + &self, + message: runtime_types::xcm::VersionedXcm2, + max_weight: runtime_types::sp_weights::weight_v2::Weight, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "XcmPallet", + "execute", + types::Execute { + message: ::std::boxed::Box::new(message), + max_weight, + }, + [ + 15u8, 97u8, 86u8, 111u8, 105u8, 116u8, 109u8, 206u8, 70u8, 8u8, 57u8, + 232u8, 133u8, 132u8, 30u8, 219u8, 34u8, 69u8, 0u8, 213u8, 98u8, 241u8, + 186u8, 93u8, 216u8, 39u8, 73u8, 24u8, 193u8, 87u8, 92u8, 31u8, + ], + ) + } + #[doc = "Extoll that a particular destination can be communicated with through a particular"] + #[doc = "version of XCM."] + #[doc = ""] + #[doc = "- `origin`: Must be an origin specified by AdminOrigin."] + #[doc = "- `location`: The destination that is being described."] + #[doc = "- `xcm_version`: The latest version of XCM that `location` supports."] + pub fn force_xcm_version( + &self, + location: runtime_types::xcm::v3::multilocation::MultiLocation, + xcm_version: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "XcmPallet", + "force_xcm_version", + types::ForceXcmVersion { + location: ::std::boxed::Box::new(location), + xcm_version, + }, + [ + 84u8, 212u8, 64u8, 161u8, 17u8, 129u8, 213u8, 129u8, 79u8, 86u8, 117u8, + 246u8, 93u8, 1u8, 161u8, 23u8, 35u8, 171u8, 163u8, 200u8, 69u8, 157u8, + 71u8, 8u8, 225u8, 149u8, 254u8, 124u8, 38u8, 250u8, 164u8, 218u8, + ], + ) + } + #[doc = "Set a safe XCM version (the version that XCM should be encoded with if the most recent"] + #[doc = "version a destination can accept is unknown)."] + #[doc = ""] + #[doc = "- `origin`: Must be an origin specified by AdminOrigin."] + #[doc = "- `maybe_xcm_version`: The default XCM encoding version, or `None` to disable."] + pub fn force_default_xcm_version( + &self, + maybe_xcm_version: ::core::option::Option<::core::primitive::u32>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "XcmPallet", + "force_default_xcm_version", + types::ForceDefaultXcmVersion { maybe_xcm_version }, + [ + 43u8, 114u8, 102u8, 104u8, 209u8, 234u8, 108u8, 173u8, 109u8, 188u8, + 94u8, 214u8, 136u8, 43u8, 153u8, 75u8, 161u8, 192u8, 76u8, 12u8, 221u8, + 237u8, 158u8, 247u8, 41u8, 193u8, 35u8, 174u8, 183u8, 207u8, 79u8, + 213u8, + ], + ) + } + #[doc = "Ask a location to notify us regarding their XCM version and any changes to it."] + #[doc = ""] + #[doc = "- `origin`: Must be an origin specified by AdminOrigin."] + #[doc = "- `location`: The location to which we should subscribe for XCM version notifications."] + pub fn force_subscribe_version_notify( + &self, + location: runtime_types::xcm::VersionedMultiLocation, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "XcmPallet", + "force_subscribe_version_notify", + types::ForceSubscribeVersionNotify { + location: ::std::boxed::Box::new(location), + }, + [ + 112u8, 254u8, 138u8, 12u8, 203u8, 176u8, 251u8, 167u8, 223u8, 0u8, + 71u8, 148u8, 19u8, 179u8, 47u8, 96u8, 188u8, 189u8, 14u8, 172u8, 1u8, + 1u8, 192u8, 107u8, 137u8, 158u8, 22u8, 9u8, 138u8, 241u8, 32u8, 47u8, + ], + ) + } + #[doc = "Require that a particular destination should no longer notify us regarding any XCM"] + #[doc = "version changes."] + #[doc = ""] + #[doc = "- `origin`: Must be an origin specified by AdminOrigin."] + #[doc = "- `location`: The location to which we are currently subscribed for XCM version"] + #[doc = " notifications which we no longer desire."] + pub fn force_unsubscribe_version_notify( + &self, + location: runtime_types::xcm::VersionedMultiLocation, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "XcmPallet", + "force_unsubscribe_version_notify", + types::ForceUnsubscribeVersionNotify { + location: ::std::boxed::Box::new(location), + }, + [ + 205u8, 143u8, 230u8, 143u8, 166u8, 184u8, 53u8, 252u8, 118u8, 184u8, + 209u8, 227u8, 225u8, 184u8, 254u8, 244u8, 101u8, 56u8, 27u8, 128u8, + 40u8, 159u8, 178u8, 62u8, 63u8, 164u8, 59u8, 236u8, 1u8, 168u8, 202u8, + 42u8, + ], + ) + } + #[doc = "Transfer some assets from the local chain to the sovereign account of a destination"] + #[doc = "chain and forward a notification XCM."] + #[doc = ""] + #[doc = "Fee payment on the destination side is made from the asset in the `assets` vector of"] + #[doc = "index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight"] + #[doc = "is needed than `weight_limit`, then the operation will fail and the assets send may be"] + #[doc = "at risk."] + #[doc = ""] + #[doc = "- `origin`: Must be capable of withdrawing the `assets` and executing XCM."] + #[doc = "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send"] + #[doc = " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain."] + #[doc = "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be"] + #[doc = " an `AccountId32` value."] + #[doc = "- `assets`: The assets to be withdrawn. This should include the assets used to pay the fee on the"] + #[doc = " `dest` side."] + #[doc = "- `fee_asset_item`: The index into `assets` of the item which should be used to pay"] + #[doc = " fees."] + #[doc = "- `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase."] + pub fn limited_reserve_transfer_assets( + &self, + dest: runtime_types::xcm::VersionedMultiLocation, + beneficiary: runtime_types::xcm::VersionedMultiLocation, + assets: runtime_types::xcm::VersionedMultiAssets, + fee_asset_item: ::core::primitive::u32, + weight_limit: runtime_types::xcm::v3::WeightLimit, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "XcmPallet", + "limited_reserve_transfer_assets", + types::LimitedReserveTransferAssets { + dest: ::std::boxed::Box::new(dest), + beneficiary: ::std::boxed::Box::new(beneficiary), + assets: ::std::boxed::Box::new(assets), + fee_asset_item, + weight_limit, + }, + [ + 10u8, 139u8, 165u8, 239u8, 92u8, 178u8, 169u8, 62u8, 166u8, 236u8, + 50u8, 12u8, 196u8, 3u8, 233u8, 209u8, 3u8, 159u8, 184u8, 234u8, 171u8, + 46u8, 145u8, 134u8, 241u8, 155u8, 221u8, 173u8, 166u8, 94u8, 147u8, + 88u8, + ], + ) + } + #[doc = "Teleport some assets from the local chain to some destination chain."] + #[doc = ""] + #[doc = "Fee payment on the destination side is made from the asset in the `assets` vector of"] + #[doc = "index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight"] + #[doc = "is needed than `weight_limit`, then the operation will fail and the assets send may be"] + #[doc = "at risk."] + #[doc = ""] + #[doc = "- `origin`: Must be capable of withdrawing the `assets` and executing XCM."] + #[doc = "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send"] + #[doc = " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain."] + #[doc = "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be"] + #[doc = " an `AccountId32` value."] + #[doc = "- `assets`: The assets to be withdrawn. The first item should be the currency used to to pay the fee on the"] + #[doc = " `dest` side. May not be empty."] + #[doc = "- `fee_asset_item`: The index into `assets` of the item which should be used to pay"] + #[doc = " fees."] + #[doc = "- `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase."] + pub fn limited_teleport_assets( + &self, + dest: runtime_types::xcm::VersionedMultiLocation, + beneficiary: runtime_types::xcm::VersionedMultiLocation, + assets: runtime_types::xcm::VersionedMultiAssets, + fee_asset_item: ::core::primitive::u32, + weight_limit: runtime_types::xcm::v3::WeightLimit, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "XcmPallet", + "limited_teleport_assets", + types::LimitedTeleportAssets { + dest: ::std::boxed::Box::new(dest), + beneficiary: ::std::boxed::Box::new(beneficiary), + assets: ::std::boxed::Box::new(assets), + fee_asset_item, + weight_limit, + }, + [ + 156u8, 205u8, 105u8, 18u8, 120u8, 130u8, 144u8, 67u8, 152u8, 188u8, + 109u8, 121u8, 4u8, 240u8, 123u8, 112u8, 72u8, 153u8, 2u8, 111u8, 183u8, + 170u8, 199u8, 82u8, 33u8, 117u8, 43u8, 133u8, 208u8, 44u8, 118u8, + 107u8, + ], + ) + } + #[doc = "Set or unset the global suspension state of the XCM executor."] + #[doc = ""] + #[doc = "- `origin`: Must be an origin specified by AdminOrigin."] + #[doc = "- `suspended`: `true` to suspend, `false` to resume."] + pub fn force_suspension( + &self, + suspended: ::core::primitive::bool, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "XcmPallet", + "force_suspension", + types::ForceSuspension { suspended }, + [ + 78u8, 125u8, 93u8, 55u8, 129u8, 44u8, 36u8, 227u8, 75u8, 46u8, 68u8, + 202u8, 81u8, 127u8, 111u8, 92u8, 149u8, 38u8, 225u8, 185u8, 183u8, + 154u8, 89u8, 159u8, 79u8, 10u8, 229u8, 1u8, 226u8, 243u8, 65u8, 238u8, + ], + ) + } + } + } + #[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_xcm::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Execution of an XCM message was attempted."] + #[doc = ""] + #[doc = "\\[ outcome \\]"] + pub struct Attempted(pub runtime_types::xcm::v3::traits::Outcome); + impl ::subxt::events::StaticEvent for Attempted { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "Attempted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A XCM message was sent."] + #[doc = ""] + #[doc = "\\[ origin, destination, message \\]"] + pub struct Sent( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub runtime_types::xcm::v3::Xcm, + ); + impl ::subxt::events::StaticEvent for Sent { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "Sent"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Query response received which does not match a registered query. This may be because a"] + #[doc = "matching query was never registered, it may be because it is a duplicate response, or"] + #[doc = "because the query timed out."] + #[doc = ""] + #[doc = "\\[ origin location, id \\]"] + pub struct UnexpectedResponse( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub ::core::primitive::u64, + ); + impl ::subxt::events::StaticEvent for UnexpectedResponse { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "UnexpectedResponse"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Query response has been received and is ready for taking with `take_response`. There is"] + #[doc = "no registered notification call."] + #[doc = ""] + #[doc = "\\[ id, response \\]"] + pub struct ResponseReady( + pub ::core::primitive::u64, + pub runtime_types::xcm::v3::Response, + ); + impl ::subxt::events::StaticEvent for ResponseReady { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "ResponseReady"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Query response has been received and query is removed. The registered notification has"] + #[doc = "been dispatched and executed successfully."] + #[doc = ""] + #[doc = "\\[ id, pallet index, call index \\]"] + pub struct Notified( + pub ::core::primitive::u64, + pub ::core::primitive::u8, + pub ::core::primitive::u8, + ); + impl ::subxt::events::StaticEvent for Notified { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "Notified"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Query response has been received and query is removed. The registered notification could"] + #[doc = "not be dispatched because the dispatch weight is greater than the maximum weight"] + #[doc = "originally budgeted by this runtime for the query result."] + #[doc = ""] + #[doc = "\\[ id, pallet index, call index, actual weight, max budgeted weight \\]"] + pub struct NotifyOverweight( + pub ::core::primitive::u64, + pub ::core::primitive::u8, + pub ::core::primitive::u8, + pub runtime_types::sp_weights::weight_v2::Weight, + pub runtime_types::sp_weights::weight_v2::Weight, + ); + impl ::subxt::events::StaticEvent for NotifyOverweight { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "NotifyOverweight"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Query response has been received and query is removed. There was a general error with"] + #[doc = "dispatching the notification call."] + #[doc = ""] + #[doc = "\\[ id, pallet index, call index \\]"] + pub struct NotifyDispatchError( + pub ::core::primitive::u64, + pub ::core::primitive::u8, + pub ::core::primitive::u8, + ); + impl ::subxt::events::StaticEvent for NotifyDispatchError { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "NotifyDispatchError"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Query response has been received and query is removed. The dispatch was unable to be"] + #[doc = "decoded into a `Call`; this might be due to dispatch function having a signature which"] + #[doc = "is not `(origin, QueryId, Response)`."] + #[doc = ""] + #[doc = "\\[ id, pallet index, call index \\]"] + pub struct NotifyDecodeFailed( + pub ::core::primitive::u64, + pub ::core::primitive::u8, + pub ::core::primitive::u8, + ); + impl ::subxt::events::StaticEvent for NotifyDecodeFailed { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "NotifyDecodeFailed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Expected query response has been received but the origin location of the response does"] + #[doc = "not match that expected. The query remains registered for a later, valid, response to"] + #[doc = "be received and acted upon."] + #[doc = ""] + #[doc = "\\[ origin location, id, expected location \\]"] + pub struct InvalidResponder( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub ::core::primitive::u64, + pub ::core::option::Option, + ); + impl ::subxt::events::StaticEvent for InvalidResponder { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "InvalidResponder"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Expected query response has been received but the expected origin location placed in"] + #[doc = "storage by this runtime previously cannot be decoded. The query remains registered."] + #[doc = ""] + #[doc = "This is unexpected (since a location placed in storage in a previously executing"] + #[doc = "runtime should be readable prior to query timeout) and dangerous since the possibly"] + #[doc = "valid response will be dropped. Manual governance intervention is probably going to be"] + #[doc = "needed."] + #[doc = ""] + #[doc = "\\[ origin location, id \\]"] + pub struct InvalidResponderVersion( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub ::core::primitive::u64, + ); + impl ::subxt::events::StaticEvent for InvalidResponderVersion { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "InvalidResponderVersion"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Received query response has been read and removed."] + #[doc = ""] + #[doc = "\\[ id \\]"] + pub struct ResponseTaken(pub ::core::primitive::u64); + impl ::subxt::events::StaticEvent for ResponseTaken { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "ResponseTaken"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Some assets have been placed in an asset trap."] + #[doc = ""] + #[doc = "\\[ hash, origin, assets \\]"] + pub struct AssetsTrapped( + pub ::subxt::utils::H256, + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub runtime_types::xcm::VersionedMultiAssets, + ); + impl ::subxt::events::StaticEvent for AssetsTrapped { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "AssetsTrapped"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An XCM version change notification message has been attempted to be sent."] + #[doc = ""] + #[doc = "The cost of sending it (borne by the chain) is included."] + #[doc = ""] + #[doc = "\\[ destination, result, cost \\]"] + pub struct VersionChangeNotified( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub ::core::primitive::u32, + pub runtime_types::xcm::v3::multiasset::MultiAssets, + ); + impl ::subxt::events::StaticEvent for VersionChangeNotified { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "VersionChangeNotified"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The supported version of a location has been changed. This might be through an"] + #[doc = "automatic notification or a manual intervention."] + #[doc = ""] + #[doc = "\\[ location, XCM version \\]"] + pub struct SupportedVersionChanged( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub ::core::primitive::u32, + ); + impl ::subxt::events::StaticEvent for SupportedVersionChanged { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "SupportedVersionChanged"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A given location which had a version change subscription was dropped owing to an error"] + #[doc = "sending the notification to it."] + #[doc = ""] + #[doc = "\\[ location, query ID, error \\]"] + pub struct NotifyTargetSendFail( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub ::core::primitive::u64, + pub runtime_types::xcm::v3::traits::Error, + ); + impl ::subxt::events::StaticEvent for NotifyTargetSendFail { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "NotifyTargetSendFail"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A given location which had a version change subscription was dropped owing to an error"] + #[doc = "migrating the location to our new XCM format."] + #[doc = ""] + #[doc = "\\[ location, query ID \\]"] + pub struct NotifyTargetMigrationFail( + pub runtime_types::xcm::VersionedMultiLocation, + pub ::core::primitive::u64, + ); + impl ::subxt::events::StaticEvent for NotifyTargetMigrationFail { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "NotifyTargetMigrationFail"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Expected query response has been received but the expected querier location placed in"] + #[doc = "storage by this runtime previously cannot be decoded. The query remains registered."] + #[doc = ""] + #[doc = "This is unexpected (since a location placed in storage in a previously executing"] + #[doc = "runtime should be readable prior to query timeout) and dangerous since the possibly"] + #[doc = "valid response will be dropped. Manual governance intervention is probably going to be"] + #[doc = "needed."] + #[doc = ""] + #[doc = "\\[ origin location, id \\]"] + pub struct InvalidQuerierVersion( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub ::core::primitive::u64, + ); + impl ::subxt::events::StaticEvent for InvalidQuerierVersion { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "InvalidQuerierVersion"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Expected query response has been received but the querier location of the response does"] + #[doc = "not match the expected. The query remains registered for a later, valid, response to"] + #[doc = "be received and acted upon."] + #[doc = ""] + #[doc = "\\[ origin location, id, expected querier, maybe actual querier \\]"] + pub struct InvalidQuerier( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub ::core::primitive::u64, + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub ::core::option::Option, + ); + impl ::subxt::events::StaticEvent for InvalidQuerier { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "InvalidQuerier"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A remote has requested XCM version change notification from us and we have honored it."] + #[doc = "A version information message is sent to them and its cost is included."] + #[doc = ""] + #[doc = "\\[ destination location, cost \\]"] + pub struct VersionNotifyStarted( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub runtime_types::xcm::v3::multiasset::MultiAssets, + ); + impl ::subxt::events::StaticEvent for VersionNotifyStarted { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "VersionNotifyStarted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "We have requested that a remote chain sends us XCM version change notifications."] + #[doc = ""] + #[doc = "\\[ destination location, cost \\]"] + pub struct VersionNotifyRequested( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub runtime_types::xcm::v3::multiasset::MultiAssets, + ); + impl ::subxt::events::StaticEvent for VersionNotifyRequested { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "VersionNotifyRequested"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "We have requested that a remote chain stops sending us XCM version change notifications."] + #[doc = ""] + #[doc = "\\[ destination location, cost \\]"] + pub struct VersionNotifyUnrequested( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub runtime_types::xcm::v3::multiasset::MultiAssets, + ); + impl ::subxt::events::StaticEvent for VersionNotifyUnrequested { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "VersionNotifyUnrequested"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Fees were paid from a location for an operation (often for using `SendXcm`)."] + #[doc = ""] + #[doc = "\\[ paying location, fees \\]"] + pub struct FeesPaid( + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub runtime_types::xcm::v3::multiasset::MultiAssets, + ); + impl ::subxt::events::StaticEvent for FeesPaid { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "FeesPaid"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Some assets have been claimed from an asset trap"] + #[doc = ""] + #[doc = "\\[ hash, origin, assets \\]"] + pub struct AssetsClaimed( + pub ::subxt::utils::H256, + pub runtime_types::xcm::v3::multilocation::MultiLocation, + pub runtime_types::xcm::VersionedMultiAssets, + ); + impl ::subxt::events::StaticEvent for AssetsClaimed { + const PALLET: &'static str = "XcmPallet"; + const EVENT: &'static str = "AssetsClaimed"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " The latest available query index."] + pub fn query_counter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u64, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "QueryCounter", + vec![], + [ + 216u8, 73u8, 160u8, 232u8, 60u8, 245u8, 218u8, 219u8, 152u8, 68u8, + 146u8, 219u8, 255u8, 7u8, 86u8, 112u8, 83u8, 49u8, 94u8, 173u8, 64u8, + 203u8, 147u8, 226u8, 236u8, 39u8, 129u8, 106u8, 209u8, 113u8, 150u8, + 50u8, + ], + ) + } + #[doc = " The ongoing queries."] + pub fn queries_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_xcm::pallet::QueryStatus<::core::primitive::u32>, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "Queries", + vec![], + [ + 119u8, 5u8, 12u8, 91u8, 117u8, 240u8, 52u8, 192u8, 135u8, 139u8, 220u8, + 78u8, 207u8, 199u8, 71u8, 163u8, 100u8, 17u8, 6u8, 65u8, 200u8, 245u8, + 191u8, 82u8, 232u8, 128u8, 126u8, 70u8, 39u8, 63u8, 148u8, 219u8, + ], + ) + } + #[doc = " The ongoing queries."] + pub fn queries( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u64>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_xcm::pallet::QueryStatus<::core::primitive::u32>, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "Queries", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 119u8, 5u8, 12u8, 91u8, 117u8, 240u8, 52u8, 192u8, 135u8, 139u8, 220u8, + 78u8, 207u8, 199u8, 71u8, 163u8, 100u8, 17u8, 6u8, 65u8, 200u8, 245u8, + 191u8, 82u8, 232u8, 128u8, 126u8, 70u8, 39u8, 63u8, 148u8, 219u8, + ], + ) + } + #[doc = " The existing asset traps."] + #[doc = ""] + #[doc = " Key is the blake2 256 hash of (origin, versioned `MultiAssets`) pair. Value is the number of"] + #[doc = " times this pair has been trapped (usually just 1 if it exists at all)."] + pub fn asset_traps_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "AssetTraps", + vec![], + [ + 148u8, 41u8, 254u8, 134u8, 61u8, 172u8, 126u8, 146u8, 78u8, 178u8, + 50u8, 77u8, 226u8, 8u8, 200u8, 78u8, 77u8, 91u8, 26u8, 133u8, 104u8, + 126u8, 28u8, 28u8, 202u8, 62u8, 87u8, 183u8, 231u8, 191u8, 5u8, 181u8, + ], + ) + } + #[doc = " The existing asset traps."] + #[doc = ""] + #[doc = " Key is the blake2 256 hash of (origin, versioned `MultiAssets`) pair. Value is the number of"] + #[doc = " times this pair has been trapped (usually just 1 if it exists at all)."] + pub fn asset_traps( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "AssetTraps", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 148u8, 41u8, 254u8, 134u8, 61u8, 172u8, 126u8, 146u8, 78u8, 178u8, + 50u8, 77u8, 226u8, 8u8, 200u8, 78u8, 77u8, 91u8, 26u8, 133u8, 104u8, + 126u8, 28u8, 28u8, 202u8, 62u8, 87u8, 183u8, 231u8, 191u8, 5u8, 181u8, + ], + ) + } + #[doc = " Default version to encode XCM when latest version of destination is unknown. If `None`,"] + #[doc = " then the destinations whose XCM version is unknown are considered unreachable."] + pub fn safe_xcm_version( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "SafeXcmVersion", + vec![], + [ + 187u8, 8u8, 74u8, 126u8, 80u8, 215u8, 177u8, 60u8, 223u8, 123u8, 196u8, + 155u8, 166u8, 66u8, 25u8, 164u8, 191u8, 66u8, 116u8, 131u8, 116u8, + 188u8, 224u8, 122u8, 75u8, 195u8, 246u8, 188u8, 83u8, 134u8, 49u8, + 143u8, + ], + ) + } + #[doc = " The Latest versions that we know various locations support."] + pub fn supported_version_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "SupportedVersion", + vec![], + [ + 144u8, 22u8, 91u8, 30u8, 139u8, 164u8, 95u8, 149u8, 97u8, 247u8, 12u8, + 212u8, 96u8, 16u8, 134u8, 236u8, 74u8, 57u8, 244u8, 169u8, 68u8, 63u8, + 111u8, 86u8, 65u8, 229u8, 104u8, 51u8, 44u8, 100u8, 47u8, 191u8, + ], + ) + } + #[doc = " The Latest versions that we know various locations support."] + pub fn supported_version_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "SupportedVersion", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 144u8, 22u8, 91u8, 30u8, 139u8, 164u8, 95u8, 149u8, 97u8, 247u8, 12u8, + 212u8, 96u8, 16u8, 134u8, 236u8, 74u8, 57u8, 244u8, 169u8, 68u8, 63u8, + 111u8, 86u8, 65u8, 229u8, 104u8, 51u8, 44u8, 100u8, 47u8, 191u8, + ], + ) + } + #[doc = " The Latest versions that we know various locations support."] + pub fn supported_version( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + _1: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "SupportedVersion", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 144u8, 22u8, 91u8, 30u8, 139u8, 164u8, 95u8, 149u8, 97u8, 247u8, 12u8, + 212u8, 96u8, 16u8, 134u8, 236u8, 74u8, 57u8, 244u8, 169u8, 68u8, 63u8, + 111u8, 86u8, 65u8, 229u8, 104u8, 51u8, 44u8, 100u8, 47u8, 191u8, + ], + ) + } + #[doc = " All locations that we have requested version notifications from."] + pub fn version_notifiers_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u64, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "VersionNotifiers", + vec![], + [ + 49u8, 190u8, 73u8, 67u8, 91u8, 69u8, 121u8, 206u8, 25u8, 82u8, 29u8, + 170u8, 157u8, 201u8, 168u8, 93u8, 181u8, 55u8, 226u8, 142u8, 136u8, + 46u8, 117u8, 208u8, 130u8, 90u8, 129u8, 39u8, 151u8, 92u8, 118u8, 75u8, + ], + ) + } + #[doc = " All locations that we have requested version notifications from."] + pub fn version_notifiers_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u64, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "VersionNotifiers", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 49u8, 190u8, 73u8, 67u8, 91u8, 69u8, 121u8, 206u8, 25u8, 82u8, 29u8, + 170u8, 157u8, 201u8, 168u8, 93u8, 181u8, 55u8, 226u8, 142u8, 136u8, + 46u8, 117u8, 208u8, 130u8, 90u8, 129u8, 39u8, 151u8, 92u8, 118u8, 75u8, + ], + ) + } + #[doc = " All locations that we have requested version notifications from."] + pub fn version_notifiers( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + _1: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u64, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "VersionNotifiers", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 49u8, 190u8, 73u8, 67u8, 91u8, 69u8, 121u8, 206u8, 25u8, 82u8, 29u8, + 170u8, 157u8, 201u8, 168u8, 93u8, 181u8, 55u8, 226u8, 142u8, 136u8, + 46u8, 117u8, 208u8, 130u8, 90u8, 129u8, 39u8, 151u8, 92u8, 118u8, 75u8, + ], + ) + } + #[doc = " The target locations that are subscribed to our version changes, as well as the most recent"] + #[doc = " of our versions we informed them of."] + pub fn version_notify_targets_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ( + ::core::primitive::u64, + runtime_types::sp_weights::weight_v2::Weight, + ::core::primitive::u32, + ), + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "VersionNotifyTargets", + vec![], + [ + 1u8, 195u8, 40u8, 83u8, 216u8, 175u8, 241u8, 95u8, 42u8, 7u8, 85u8, + 253u8, 223u8, 241u8, 195u8, 41u8, 41u8, 21u8, 17u8, 171u8, 216u8, + 150u8, 39u8, 165u8, 215u8, 194u8, 201u8, 225u8, 179u8, 12u8, 52u8, + 173u8, + ], + ) + } + #[doc = " The target locations that are subscribed to our version changes, as well as the most recent"] + #[doc = " of our versions we informed them of."] + pub fn version_notify_targets_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ( + ::core::primitive::u64, + runtime_types::sp_weights::weight_v2::Weight, + ::core::primitive::u32, + ), + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "VersionNotifyTargets", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 1u8, 195u8, 40u8, 83u8, 216u8, 175u8, 241u8, 95u8, 42u8, 7u8, 85u8, + 253u8, 223u8, 241u8, 195u8, 41u8, 41u8, 21u8, 17u8, 171u8, 216u8, + 150u8, 39u8, 165u8, 215u8, 194u8, 201u8, 225u8, 179u8, 12u8, 52u8, + 173u8, + ], + ) + } + #[doc = " The target locations that are subscribed to our version changes, as well as the most recent"] + #[doc = " of our versions we informed them of."] + pub fn version_notify_targets( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + _1: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ( + ::core::primitive::u64, + runtime_types::sp_weights::weight_v2::Weight, + ::core::primitive::u32, + ), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "VersionNotifyTargets", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 1u8, 195u8, 40u8, 83u8, 216u8, 175u8, 241u8, 95u8, 42u8, 7u8, 85u8, + 253u8, 223u8, 241u8, 195u8, 41u8, 41u8, 21u8, 17u8, 171u8, 216u8, + 150u8, 39u8, 165u8, 215u8, 194u8, 201u8, 225u8, 179u8, 12u8, 52u8, + 173u8, + ], + ) + } + #[doc = " Destinations whose latest XCM version we would like to know. Duplicates not allowed, and"] + #[doc = " the `u32` counter is the number of times that a send to the destination has been attempted,"] + #[doc = " which is used as a prioritization."] + pub fn version_discovery_queue( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec<( + runtime_types::xcm::VersionedMultiLocation, + ::core::primitive::u32, + )>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "VersionDiscoveryQueue", + vec![], + [ + 110u8, 87u8, 102u8, 193u8, 125u8, 129u8, 0u8, 221u8, 218u8, 229u8, + 101u8, 94u8, 74u8, 229u8, 246u8, 180u8, 113u8, 11u8, 15u8, 159u8, 98u8, + 90u8, 30u8, 112u8, 164u8, 236u8, 151u8, 220u8, 19u8, 83u8, 67u8, 248u8, + ], + ) + } + #[doc = " The current migration's stage, if any."] + pub fn current_migration( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_xcm::pallet::VersionMigrationStage, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "CurrentMigration", + vec![], + [ + 74u8, 138u8, 181u8, 162u8, 59u8, 251u8, 37u8, 28u8, 232u8, 51u8, 30u8, + 152u8, 252u8, 133u8, 95u8, 195u8, 47u8, 127u8, 21u8, 44u8, 62u8, 143u8, + 170u8, 234u8, 160u8, 37u8, 131u8, 179u8, 57u8, 241u8, 140u8, 124u8, + ], + ) + } + #[doc = " Fungible assets which we know are locked on a remote chain."] + pub fn remote_locked_fungibles_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_xcm::pallet::RemoteLockedFungibleRecord<()>, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "RemoteLockedFungibles", + vec![], + [ + 74u8, 249u8, 83u8, 245u8, 44u8, 230u8, 152u8, 82u8, 4u8, 163u8, 230u8, + 121u8, 87u8, 143u8, 184u8, 12u8, 117u8, 112u8, 131u8, 160u8, 232u8, + 62u8, 175u8, 15u8, 81u8, 198u8, 182u8, 255u8, 37u8, 81u8, 6u8, 57u8, + ], + ) + } + #[doc = " Fungible assets which we know are locked on a remote chain."] + pub fn remote_locked_fungibles_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_xcm::pallet::RemoteLockedFungibleRecord<()>, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "RemoteLockedFungibles", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 74u8, 249u8, 83u8, 245u8, 44u8, 230u8, 152u8, 82u8, 4u8, 163u8, 230u8, + 121u8, 87u8, 143u8, 184u8, 12u8, 117u8, 112u8, 131u8, 160u8, 232u8, + 62u8, 175u8, 15u8, 81u8, 198u8, 182u8, 255u8, 37u8, 81u8, 6u8, 57u8, + ], + ) + } + #[doc = " Fungible assets which we know are locked on a remote chain."] + pub fn remote_locked_fungibles_iter2( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_xcm::pallet::RemoteLockedFungibleRecord<()>, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "RemoteLockedFungibles", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 74u8, 249u8, 83u8, 245u8, 44u8, 230u8, 152u8, 82u8, 4u8, 163u8, 230u8, + 121u8, 87u8, 143u8, 184u8, 12u8, 117u8, 112u8, 131u8, 160u8, 232u8, + 62u8, 175u8, 15u8, 81u8, 198u8, 182u8, 255u8, 37u8, 81u8, 6u8, 57u8, + ], + ) + } + #[doc = " Fungible assets which we know are locked on a remote chain."] + pub fn remote_locked_fungibles( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + _2: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_xcm::pallet::RemoteLockedFungibleRecord<()>, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "RemoteLockedFungibles", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_2.borrow()), + ], + [ + 74u8, 249u8, 83u8, 245u8, 44u8, 230u8, 152u8, 82u8, 4u8, 163u8, 230u8, + 121u8, 87u8, 143u8, 184u8, 12u8, 117u8, 112u8, 131u8, 160u8, 232u8, + 62u8, 175u8, 15u8, 81u8, 198u8, 182u8, 255u8, 37u8, 81u8, 6u8, 57u8, + ], + ) + } + #[doc = " Fungible assets which we know are locked on this chain."] + pub fn locked_fungibles_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec<( + ::core::primitive::u128, + runtime_types::xcm::VersionedMultiLocation, + )>, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "LockedFungibles", + vec![], + [ + 110u8, 220u8, 127u8, 176u8, 219u8, 23u8, 132u8, 36u8, 224u8, 187u8, + 25u8, 103u8, 126u8, 99u8, 34u8, 105u8, 57u8, 182u8, 162u8, 69u8, 24u8, + 67u8, 221u8, 103u8, 79u8, 139u8, 187u8, 162u8, 113u8, 109u8, 163u8, + 35u8, + ], + ) + } + #[doc = " Fungible assets which we know are locked on this chain."] + pub fn locked_fungibles( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec<( + ::core::primitive::u128, + runtime_types::xcm::VersionedMultiLocation, + )>, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "LockedFungibles", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 110u8, 220u8, 127u8, 176u8, 219u8, 23u8, 132u8, 36u8, 224u8, 187u8, + 25u8, 103u8, 126u8, 99u8, 34u8, 105u8, 57u8, 182u8, 162u8, 69u8, 24u8, + 67u8, 221u8, 103u8, 79u8, 139u8, 187u8, 162u8, 113u8, 109u8, 163u8, + 35u8, + ], + ) + } + #[doc = " Global suspension state of the XCM executor."] + pub fn xcm_execution_suspended( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::bool, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "XcmPallet", + "XcmExecutionSuspended", + vec![], + [ + 182u8, 54u8, 69u8, 68u8, 78u8, 76u8, 103u8, 79u8, 47u8, 136u8, 99u8, + 104u8, 128u8, 129u8, 249u8, 54u8, 214u8, 136u8, 97u8, 48u8, 178u8, + 42u8, 26u8, 27u8, 82u8, 24u8, 33u8, 77u8, 33u8, 27u8, 20u8, 127u8, + ], + ) + } + } + } + } + pub mod message_queue { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_message_queue::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_message_queue::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ReapPage { pub message_origin : runtime_types :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin , pub page_index : :: core :: primitive :: u32 , } + impl ::subxt::blocks::StaticExtrinsic for ReapPage { + const PALLET: &'static str = "MessageQueue"; + const CALL: &'static str = "reap_page"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ExecuteOverweight { pub message_origin : runtime_types :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin , pub page : :: core :: primitive :: u32 , pub index : :: core :: primitive :: u32 , pub weight_limit : runtime_types :: sp_weights :: weight_v2 :: Weight , } + impl ::subxt::blocks::StaticExtrinsic for ExecuteOverweight { + const PALLET: &'static str = "MessageQueue"; + const CALL: &'static str = "execute_overweight"; + } + } + 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 :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin, + page_index: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MessageQueue", + "reap_page", + types::ReapPage { + message_origin, + page_index, + }, + [ + 217u8, 3u8, 106u8, 158u8, 151u8, 194u8, 234u8, 4u8, 254u8, 4u8, 200u8, + 201u8, 107u8, 140u8, 220u8, 201u8, 245u8, 14u8, 23u8, 156u8, 41u8, + 106u8, 39u8, 90u8, 214u8, 1u8, 183u8, 45u8, 3u8, 83u8, 242u8, 30u8, + ], + ) + } + #[doc = "Execute an overweight message."] + #[doc = ""] + #[doc = "Temporary processing errors will be propagated whereas permanent errors are treated"] + #[doc = "as success condition."] + #[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 :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin, + page: ::core::primitive::u32, + index: ::core::primitive::u32, + weight_limit: runtime_types::sp_weights::weight_v2::Weight, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MessageQueue", + "execute_overweight", + types::ExecuteOverweight { + message_origin, + page, + index, + weight_limit, + }, + [ + 101u8, 2u8, 86u8, 225u8, 217u8, 229u8, 143u8, 214u8, 146u8, 190u8, + 182u8, 102u8, 251u8, 18u8, 179u8, 187u8, 113u8, 29u8, 182u8, 24u8, + 34u8, 179u8, 64u8, 249u8, 139u8, 76u8, 50u8, 238u8, 132u8, 167u8, + 115u8, 141u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Message discarded due to an error in the `MessageProcessor` (usually a format error)."] + pub struct ProcessingFailed { + pub id: [::core::primitive::u8; 32usize], + pub origin: + runtime_types::polkadot_runtime_parachains::inclusion::AggregateMessageOrigin, + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Message is processed."] + pub struct Processed { + pub id: [::core::primitive::u8; 32usize], + pub origin: + runtime_types::polkadot_runtime_parachains::inclusion::AggregateMessageOrigin, + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Message placed in overweight queue."] + pub struct OverweightEnqueued { + pub id: [::core::primitive::u8; 32usize], + pub origin: + runtime_types::polkadot_runtime_parachains::inclusion::AggregateMessageOrigin, + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "This page was reaped."] + pub struct PageReaped { + pub origin: + runtime_types::polkadot_runtime_parachains::inclusion::AggregateMessageOrigin, + 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_iter (& self ,) -> :: subxt :: storage :: address :: Address :: < :: subxt :: storage :: address :: StaticStorageMapKey , runtime_types :: pallet_message_queue :: BookState < runtime_types :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin > , () , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes >{ + ::subxt::storage::address::Address::new_static( + "MessageQueue", + "BookStateFor", + vec![], + [ + 32u8, 61u8, 161u8, 81u8, 134u8, 136u8, 252u8, 113u8, 204u8, 115u8, + 206u8, 180u8, 33u8, 185u8, 137u8, 155u8, 178u8, 189u8, 234u8, 201u8, + 31u8, 230u8, 156u8, 72u8, 37u8, 56u8, 152u8, 91u8, 50u8, 82u8, 191u8, + 2u8, + ], + ) + } + #[doc = " The index of the first and last (non-empty) pages."] pub fn book_state_for (& self , _0 : impl :: std :: borrow :: Borrow < runtime_types :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin > ,) -> :: subxt :: storage :: address :: Address :: < :: subxt :: storage :: address :: StaticStorageMapKey , runtime_types :: pallet_message_queue :: BookState < runtime_types :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin > , :: subxt :: storage :: address :: Yes , :: subxt :: storage :: address :: Yes , () >{ + ::subxt::storage::address::Address::new_static( + "MessageQueue", + "BookStateFor", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 32u8, 61u8, 161u8, 81u8, 134u8, 136u8, 252u8, 113u8, 204u8, 115u8, + 206u8, 180u8, 33u8, 185u8, 137u8, 155u8, 178u8, 189u8, 234u8, 201u8, + 31u8, 230u8, 156u8, 72u8, 37u8, 56u8, 152u8, 91u8, 50u8, 82u8, 191u8, + 2u8, + ], + ) + } + #[doc = " The origin at which we should begin servicing."] + pub fn service_head( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_parachains::inclusion::AggregateMessageOrigin, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "MessageQueue", + "ServiceHead", + vec![], + [ + 17u8, 130u8, 229u8, 193u8, 127u8, 237u8, 60u8, 232u8, 99u8, 109u8, + 102u8, 228u8, 124u8, 103u8, 24u8, 188u8, 151u8, 121u8, 55u8, 97u8, + 85u8, 63u8, 131u8, 60u8, 99u8, 12u8, 88u8, 230u8, 86u8, 50u8, 12u8, + 75u8, + ], + ) + } + #[doc = " The map of page indices to pages."] + pub fn pages_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_message_queue::Page<::core::primitive::u32>, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MessageQueue", + "Pages", + vec![], + [ + 56u8, 181u8, 157u8, 16u8, 157u8, 123u8, 106u8, 93u8, 199u8, 208u8, + 153u8, 53u8, 168u8, 188u8, 124u8, 77u8, 140u8, 163u8, 113u8, 16u8, + 232u8, 47u8, 10u8, 185u8, 113u8, 230u8, 47u8, 91u8, 253u8, 196u8, 95u8, + 102u8, + ], + ) + } + #[doc = " The map of page indices to pages."] + pub fn pages_iter1( + &self, + _0 : impl :: std :: borrow :: Borrow < runtime_types :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_message_queue::Page<::core::primitive::u32>, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MessageQueue", + "Pages", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 56u8, 181u8, 157u8, 16u8, 157u8, 123u8, 106u8, 93u8, 199u8, 208u8, + 153u8, 53u8, 168u8, 188u8, 124u8, 77u8, 140u8, 163u8, 113u8, 16u8, + 232u8, 47u8, 10u8, 185u8, 113u8, 230u8, 47u8, 91u8, 253u8, 196u8, 95u8, + 102u8, + ], + ) + } + #[doc = " The map of page indices to pages."] + pub fn pages( + &self, + _0 : impl :: std :: borrow :: Borrow < runtime_types :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin >, + _1: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_message_queue::Page<::core::primitive::u32>, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "MessageQueue", + "Pages", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 56u8, 181u8, 157u8, 16u8, 157u8, 123u8, 106u8, 93u8, 199u8, 208u8, + 153u8, 53u8, 168u8, 188u8, 124u8, 77u8, 140u8, 163u8, 113u8, 16u8, + 232u8, 47u8, 10u8, 185u8, 113u8, 230u8, 47u8, 91u8, 253u8, 196u8, 95u8, + 102u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address< + ::core::option::Option, + > { + ::subxt::constants::Address::new_static( + "MessageQueue", + "ServiceWeight", + [ + 204u8, 140u8, 63u8, 167u8, 49u8, 8u8, 148u8, 163u8, 190u8, 224u8, 15u8, + 103u8, 86u8, 153u8, 248u8, 117u8, 223u8, 117u8, 210u8, 80u8, 205u8, + 155u8, 40u8, 11u8, 59u8, 63u8, 129u8, 156u8, 17u8, 83u8, 177u8, 250u8, + ], + ) + } + } + } + } + pub mod paras_sudo_wrapper { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_common::paras_sudo_wrapper::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_common::paras_sudo_wrapper::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SudoScheduleParaInitialize { + pub id: runtime_types::polkadot_parachain::primitives::Id, + pub genesis: runtime_types::polkadot_runtime_parachains::paras::ParaGenesisArgs, + } + impl ::subxt::blocks::StaticExtrinsic for SudoScheduleParaInitialize { + const PALLET: &'static str = "ParasSudoWrapper"; + const CALL: &'static str = "sudo_schedule_para_initialize"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SudoScheduleParaCleanup { + pub id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for SudoScheduleParaCleanup { + const PALLET: &'static str = "ParasSudoWrapper"; + const CALL: &'static str = "sudo_schedule_para_cleanup"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SudoScheduleParathreadUpgrade { + pub id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for SudoScheduleParathreadUpgrade { + const PALLET: &'static str = "ParasSudoWrapper"; + const CALL: &'static str = "sudo_schedule_parathread_upgrade"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SudoScheduleParachainDowngrade { + pub id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for SudoScheduleParachainDowngrade { + const PALLET: &'static str = "ParasSudoWrapper"; + const CALL: &'static str = "sudo_schedule_parachain_downgrade"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SudoQueueDownwardXcm { + pub id: runtime_types::polkadot_parachain::primitives::Id, + pub xcm: ::std::boxed::Box, + } + impl ::subxt::blocks::StaticExtrinsic for SudoQueueDownwardXcm { + const PALLET: &'static str = "ParasSudoWrapper"; + const CALL: &'static str = "sudo_queue_downward_xcm"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SudoEstablishHrmpChannel { + pub sender: runtime_types::polkadot_parachain::primitives::Id, + pub recipient: runtime_types::polkadot_parachain::primitives::Id, + pub max_capacity: ::core::primitive::u32, + pub max_message_size: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for SudoEstablishHrmpChannel { + const PALLET: &'static str = "ParasSudoWrapper"; + const CALL: &'static str = "sudo_establish_hrmp_channel"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Schedule a para to be initialized at the start of the next session."] + pub fn sudo_schedule_para_initialize( + &self, + id: runtime_types::polkadot_parachain::primitives::Id, + genesis: runtime_types::polkadot_runtime_parachains::paras::ParaGenesisArgs, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ParasSudoWrapper", + "sudo_schedule_para_initialize", + types::SudoScheduleParaInitialize { id, genesis }, + [ + 91u8, 145u8, 184u8, 83u8, 85u8, 168u8, 43u8, 14u8, 18u8, 86u8, 4u8, + 120u8, 148u8, 107u8, 139u8, 46u8, 145u8, 126u8, 255u8, 61u8, 83u8, + 140u8, 63u8, 233u8, 0u8, 47u8, 227u8, 194u8, 99u8, 7u8, 61u8, 15u8, + ], + ) + } + #[doc = "Schedule a para to be cleaned up at the start of the next session."] + pub fn sudo_schedule_para_cleanup( + &self, + id: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ParasSudoWrapper", + "sudo_schedule_para_cleanup", + types::SudoScheduleParaCleanup { id }, + [ + 148u8, 0u8, 73u8, 32u8, 33u8, 214u8, 92u8, 82u8, 146u8, 97u8, 39u8, + 220u8, 147u8, 148u8, 83u8, 200u8, 36u8, 197u8, 231u8, 246u8, 159u8, + 175u8, 195u8, 46u8, 68u8, 230u8, 16u8, 240u8, 108u8, 132u8, 0u8, 188u8, + ], + ) + } + #[doc = "Upgrade a parathread to a parachain"] + pub fn sudo_schedule_parathread_upgrade( + &self, + id: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ParasSudoWrapper", + "sudo_schedule_parathread_upgrade", + types::SudoScheduleParathreadUpgrade { id }, + [ + 244u8, 142u8, 128u8, 182u8, 130u8, 88u8, 113u8, 34u8, 92u8, 224u8, + 244u8, 155u8, 83u8, 212u8, 68u8, 87u8, 156u8, 80u8, 26u8, 23u8, 245u8, + 197u8, 167u8, 204u8, 14u8, 198u8, 70u8, 93u8, 227u8, 159u8, 159u8, + 88u8, + ], + ) + } + #[doc = "Downgrade a parachain to a parathread"] + pub fn sudo_schedule_parachain_downgrade( + &self, + id: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ParasSudoWrapper", + "sudo_schedule_parachain_downgrade", + types::SudoScheduleParachainDowngrade { id }, + [ + 152u8, 217u8, 14u8, 138u8, 136u8, 85u8, 79u8, 255u8, 220u8, 85u8, + 248u8, 12u8, 186u8, 250u8, 206u8, 152u8, 115u8, 92u8, 143u8, 8u8, + 171u8, 46u8, 94u8, 232u8, 169u8, 79u8, 150u8, 212u8, 166u8, 191u8, + 188u8, 198u8, + ], + ) + } + #[doc = "Send a downward XCM to the given para."] + #[doc = ""] + #[doc = "The given parachain should exist and the payload should not exceed the preconfigured size"] + #[doc = "`config.max_downward_message_size`."] + pub fn sudo_queue_downward_xcm( + &self, + id: runtime_types::polkadot_parachain::primitives::Id, + xcm: runtime_types::xcm::VersionedXcm, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ParasSudoWrapper", + "sudo_queue_downward_xcm", + types::SudoQueueDownwardXcm { + id, + xcm: ::std::boxed::Box::new(xcm), + }, + [ + 144u8, 179u8, 113u8, 39u8, 46u8, 58u8, 218u8, 220u8, 98u8, 232u8, + 121u8, 119u8, 127u8, 99u8, 52u8, 189u8, 232u8, 28u8, 233u8, 54u8, + 122u8, 206u8, 155u8, 7u8, 88u8, 167u8, 203u8, 251u8, 96u8, 156u8, 23u8, + 54u8, + ], + ) + } + #[doc = "Forcefully establish a channel from the sender to the recipient."] + #[doc = ""] + #[doc = "This is equivalent to sending an `Hrmp::hrmp_init_open_channel` extrinsic followed by"] + #[doc = "`Hrmp::hrmp_accept_open_channel`."] + pub fn sudo_establish_hrmp_channel( + &self, + sender: runtime_types::polkadot_parachain::primitives::Id, + recipient: runtime_types::polkadot_parachain::primitives::Id, + max_capacity: ::core::primitive::u32, + max_message_size: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ParasSudoWrapper", + "sudo_establish_hrmp_channel", + types::SudoEstablishHrmpChannel { + sender, + recipient, + max_capacity, + max_message_size, + }, + [ + 236u8, 105u8, 76u8, 213u8, 11u8, 105u8, 119u8, 48u8, 1u8, 103u8, 239u8, + 156u8, 66u8, 63u8, 135u8, 67u8, 226u8, 150u8, 254u8, 24u8, 169u8, 82u8, + 29u8, 75u8, 102u8, 167u8, 59u8, 66u8, 173u8, 148u8, 202u8, 50u8, + ], + ) + } + } + } + } + pub mod assigned_slots { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::polkadot_runtime_common::assigned_slots::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::polkadot_runtime_common::assigned_slots::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AssignPermParachainSlot { + pub id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for AssignPermParachainSlot { + const PALLET: &'static str = "AssignedSlots"; + const CALL: &'static str = "assign_perm_parachain_slot"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AssignTempParachainSlot { pub id : runtime_types :: polkadot_parachain :: primitives :: Id , pub lease_period_start : runtime_types :: polkadot_runtime_common :: assigned_slots :: SlotLeasePeriodStart , } + impl ::subxt::blocks::StaticExtrinsic for AssignTempParachainSlot { + const PALLET: &'static str = "AssignedSlots"; + const CALL: &'static str = "assign_temp_parachain_slot"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UnassignParachainSlot { + pub id: runtime_types::polkadot_parachain::primitives::Id, + } + impl ::subxt::blocks::StaticExtrinsic for UnassignParachainSlot { + const PALLET: &'static str = "AssignedSlots"; + const CALL: &'static str = "unassign_parachain_slot"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Assign a permanent parachain slot and immediately create a lease for it."] + pub fn assign_perm_parachain_slot( + &self, + id: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "AssignedSlots", + "assign_perm_parachain_slot", + types::AssignPermParachainSlot { id }, + [ + 174u8, 53u8, 0u8, 157u8, 42u8, 160u8, 60u8, 36u8, 68u8, 7u8, 86u8, + 60u8, 126u8, 71u8, 118u8, 95u8, 139u8, 208u8, 57u8, 118u8, 183u8, + 111u8, 59u8, 37u8, 186u8, 193u8, 92u8, 145u8, 39u8, 21u8, 237u8, 31u8, + ], + ) + } + #[doc = "Assign a temporary parachain slot. The function tries to create a lease for it"] + #[doc = "immediately if `SlotLeasePeriodStart::Current` is specified, and if the number"] + #[doc = "of currently active temporary slots is below `MaxTemporarySlotPerLeasePeriod`."] + pub fn assign_temp_parachain_slot( + &self, + id: runtime_types::polkadot_parachain::primitives::Id, + lease_period_start : runtime_types :: polkadot_runtime_common :: assigned_slots :: SlotLeasePeriodStart, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "AssignedSlots", + "assign_temp_parachain_slot", + types::AssignTempParachainSlot { + id, + lease_period_start, + }, + [ + 226u8, 38u8, 224u8, 199u8, 32u8, 159u8, 245u8, 129u8, 190u8, 103u8, + 103u8, 214u8, 27u8, 215u8, 104u8, 111u8, 132u8, 186u8, 214u8, 25u8, + 110u8, 187u8, 73u8, 179u8, 101u8, 48u8, 60u8, 218u8, 248u8, 28u8, + 202u8, 66u8, + ], + ) + } + #[doc = "Unassign a permanent or temporary parachain slot"] + pub fn unassign_parachain_slot( + &self, + id: runtime_types::polkadot_parachain::primitives::Id, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "AssignedSlots", + "unassign_parachain_slot", + types::UnassignParachainSlot { id }, + [ + 235u8, 6u8, 124u8, 73u8, 72u8, 232u8, 38u8, 233u8, 103u8, 111u8, 249u8, + 235u8, 10u8, 169u8, 92u8, 251u8, 245u8, 151u8, 28u8, 78u8, 125u8, + 113u8, 201u8, 187u8, 24u8, 58u8, 18u8, 177u8, 68u8, 122u8, 167u8, + 143u8, + ], + ) + } + } + } + #[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::polkadot_runtime_common::assigned_slots::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A para was assigned a permanent parachain slot"] + pub struct PermanentSlotAssigned(pub runtime_types::polkadot_parachain::primitives::Id); + impl ::subxt::events::StaticEvent for PermanentSlotAssigned { + const PALLET: &'static str = "AssignedSlots"; + const EVENT: &'static str = "PermanentSlotAssigned"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A para was assigned a temporary parachain slot"] + pub struct TemporarySlotAssigned(pub runtime_types::polkadot_parachain::primitives::Id); + impl ::subxt::events::StaticEvent for TemporarySlotAssigned { + const PALLET: &'static str = "AssignedSlots"; + const EVENT: &'static str = "TemporarySlotAssigned"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Assigned permanent slots, with their start lease period, and duration."] + pub fn permanent_slots_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (::core::primitive::u32, ::core::primitive::u32), + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "AssignedSlots", + "PermanentSlots", + vec![], + [ + 133u8, 179u8, 221u8, 222u8, 50u8, 75u8, 158u8, 137u8, 167u8, 190u8, + 19u8, 237u8, 201u8, 44u8, 86u8, 64u8, 57u8, 61u8, 96u8, 112u8, 218u8, + 186u8, 176u8, 58u8, 143u8, 61u8, 105u8, 13u8, 103u8, 162u8, 188u8, + 154u8, + ], + ) + } + #[doc = " Assigned permanent slots, with their start lease period, and duration."] + pub fn permanent_slots( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (::core::primitive::u32, ::core::primitive::u32), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "AssignedSlots", + "PermanentSlots", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 133u8, 179u8, 221u8, 222u8, 50u8, 75u8, 158u8, 137u8, 167u8, 190u8, + 19u8, 237u8, 201u8, 44u8, 86u8, 64u8, 57u8, 61u8, 96u8, 112u8, 218u8, + 186u8, 176u8, 58u8, 143u8, 61u8, 105u8, 13u8, 103u8, 162u8, 188u8, + 154u8, + ], + ) + } + #[doc = " Number of assigned (and active) permanent slots."] + pub fn permanent_slot_count( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "AssignedSlots", + "PermanentSlotCount", + vec![], + [ + 57u8, 211u8, 19u8, 233u8, 105u8, 201u8, 166u8, 99u8, 53u8, 217u8, 23u8, + 64u8, 216u8, 129u8, 21u8, 36u8, 234u8, 24u8, 57u8, 99u8, 13u8, 205u8, + 201u8, 78u8, 28u8, 96u8, 232u8, 62u8, 91u8, 235u8, 157u8, 213u8, + ], + ) + } + #[doc = " Assigned temporary slots."] + pub fn temporary_slots_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_common::assigned_slots::ParachainTemporarySlot< + ::subxt::utils::AccountId32, + ::core::primitive::u32, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "AssignedSlots", + "TemporarySlots", + vec![], + [ + 184u8, 245u8, 181u8, 90u8, 169u8, 232u8, 108u8, 3u8, 153u8, 4u8, 176u8, + 170u8, 230u8, 163u8, 236u8, 111u8, 196u8, 218u8, 154u8, 125u8, 102u8, + 216u8, 195u8, 126u8, 99u8, 90u8, 242u8, 141u8, 214u8, 165u8, 32u8, + 57u8, + ], + ) + } + #[doc = " Assigned temporary slots."] + pub fn temporary_slots( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::polkadot_runtime_common::assigned_slots::ParachainTemporarySlot< + ::subxt::utils::AccountId32, + ::core::primitive::u32, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "AssignedSlots", + "TemporarySlots", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 184u8, 245u8, 181u8, 90u8, 169u8, 232u8, 108u8, 3u8, 153u8, 4u8, 176u8, + 170u8, 230u8, 163u8, 236u8, 111u8, 196u8, 218u8, 154u8, 125u8, 102u8, + 216u8, 195u8, 126u8, 99u8, 90u8, 242u8, 141u8, 214u8, 165u8, 32u8, + 57u8, + ], + ) + } + #[doc = " Number of assigned temporary slots."] + pub fn temporary_slot_count( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "AssignedSlots", + "TemporarySlotCount", + vec![], + [ + 218u8, 236u8, 69u8, 75u8, 224u8, 60u8, 9u8, 197u8, 217u8, 4u8, 210u8, + 55u8, 125u8, 106u8, 239u8, 208u8, 115u8, 105u8, 94u8, 223u8, 219u8, + 27u8, 175u8, 161u8, 120u8, 168u8, 36u8, 239u8, 136u8, 228u8, 7u8, 15u8, + ], + ) + } + #[doc = " Number of active temporary slots in current slot lease period."] + pub fn active_temporary_slot_count( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "AssignedSlots", + "ActiveTemporarySlotCount", + vec![], + [ + 153u8, 99u8, 232u8, 164u8, 137u8, 10u8, 232u8, 172u8, 78u8, 4u8, 69u8, + 178u8, 245u8, 220u8, 56u8, 251u8, 60u8, 238u8, 127u8, 246u8, 60u8, + 11u8, 240u8, 185u8, 2u8, 194u8, 69u8, 212u8, 173u8, 205u8, 205u8, + 198u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " The number of lease periods a permanent parachain slot lasts."] + pub fn permanent_slot_lease_period_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "AssignedSlots", + "PermanentSlotLeasePeriodLength", + [ + 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 lease periods a temporary parachain slot lasts."] + pub fn temporary_slot_lease_period_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "AssignedSlots", + "TemporarySlotLeasePeriodLength", + [ + 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 permanent slots that can be assigned."] + pub fn max_permanent_slots( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "AssignedSlots", + "MaxPermanentSlots", + [ + 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 temporary slots that can be assigned."] + pub fn max_temporary_slots( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "AssignedSlots", + "MaxTemporarySlots", + [ + 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 temporary slots to be scheduled per lease periods."] + pub fn max_temporary_slot_per_lease_period( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "AssignedSlots", + "MaxTemporarySlotPerLeasePeriod", + [ + 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 validator_manager { + use super::root_mod; + use super::runtime_types; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_validator_manager::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RegisterValidators { + pub validators: ::std::vec::Vec<::subxt::utils::AccountId32>, + } + impl ::subxt::blocks::StaticExtrinsic for RegisterValidators { + const PALLET: &'static str = "ValidatorManager"; + const CALL: &'static str = "register_validators"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DeregisterValidators { + pub validators: ::std::vec::Vec<::subxt::utils::AccountId32>, + } + impl ::subxt::blocks::StaticExtrinsic for DeregisterValidators { + const PALLET: &'static str = "ValidatorManager"; + const CALL: &'static str = "deregister_validators"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Add new validators to the set."] + #[doc = ""] + #[doc = "The new validators will be active from current session + 2."] + pub fn register_validators( + &self, + validators: ::std::vec::Vec<::subxt::utils::AccountId32>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ValidatorManager", + "register_validators", + types::RegisterValidators { validators }, + [ + 181u8, 41u8, 122u8, 3u8, 39u8, 160u8, 138u8, 83u8, 145u8, 147u8, 107u8, + 151u8, 213u8, 31u8, 237u8, 89u8, 119u8, 154u8, 14u8, 23u8, 238u8, + 247u8, 201u8, 92u8, 68u8, 127u8, 56u8, 178u8, 125u8, 152u8, 17u8, + 147u8, + ], + ) + } + #[doc = "Remove validators from the set."] + #[doc = ""] + #[doc = "The removed validators will be deactivated from current session + 2."] + pub fn deregister_validators( + &self, + validators: ::std::vec::Vec<::subxt::utils::AccountId32>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ValidatorManager", + "deregister_validators", + types::DeregisterValidators { validators }, + [ + 150u8, 134u8, 135u8, 215u8, 121u8, 111u8, 44u8, 52u8, 25u8, 244u8, + 130u8, 47u8, 66u8, 73u8, 243u8, 49u8, 171u8, 143u8, 34u8, 122u8, 55u8, + 234u8, 176u8, 221u8, 106u8, 61u8, 102u8, 234u8, 13u8, 233u8, 211u8, + 214u8, + ], + ) + } + } + } + #[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_validator_manager::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "New validators were added to the set."] + pub struct ValidatorsRegistered(pub ::std::vec::Vec<::subxt::utils::AccountId32>); + impl ::subxt::events::StaticEvent for ValidatorsRegistered { + const PALLET: &'static str = "ValidatorManager"; + const EVENT: &'static str = "ValidatorsRegistered"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Validators were removed from the set."] + pub struct ValidatorsDeregistered(pub ::std::vec::Vec<::subxt::utils::AccountId32>); + impl ::subxt::events::StaticEvent for ValidatorsDeregistered { + const PALLET: &'static str = "ValidatorManager"; + const EVENT: &'static str = "ValidatorsDeregistered"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Validators that should be retired, because their Parachain was deregistered."] + pub fn validators_to_retire( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::subxt::utils::AccountId32>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ValidatorManager", + "ValidatorsToRetire", + vec![], + [ + 137u8, 92u8, 99u8, 157u8, 254u8, 166u8, 190u8, 64u8, 111u8, 212u8, + 37u8, 90u8, 164u8, 0u8, 31u8, 15u8, 83u8, 21u8, 225u8, 7u8, 57u8, + 104u8, 64u8, 192u8, 58u8, 38u8, 36u8, 133u8, 181u8, 229u8, 200u8, 65u8, + ], + ) + } + #[doc = " Validators that should be added."] + pub fn validators_to_add( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::std::vec::Vec<::subxt::utils::AccountId32>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ValidatorManager", + "ValidatorsToAdd", + vec![], + [ + 168u8, 209u8, 123u8, 225u8, 168u8, 62u8, 18u8, 174u8, 164u8, 161u8, + 228u8, 179u8, 251u8, 112u8, 210u8, 173u8, 24u8, 177u8, 111u8, 129u8, + 97u8, 230u8, 231u8, 103u8, 72u8, 104u8, 222u8, 156u8, 190u8, 150u8, + 147u8, 68u8, + ], + ) + } + } + } + } + pub mod multi_tokens { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_multi_tokens::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_multi_tokens::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CreateCollection { + pub descriptor: ::std::boxed::Box< + runtime_types::ep_multi_tokens::collection::DefaultCollectionDescriptor< + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::AttributeKeyValuePair< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for CreateCollection { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "create_collection"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DestroyCollection { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for DestroyCollection { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "destroy_collection"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MutateCollection { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub mutation: ::std::boxed::Box< + runtime_types::ep_multi_tokens::collection::DefaultCollectionMutation< + ::subxt::utils::AccountId32, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for MutateCollection { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "mutate_collection"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MutateToken { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + #[codec(compact)] + pub token_id: ::core::primitive::u128, + pub mutation: ::std::boxed::Box< + runtime_types::ep_multi_tokens::token::DefaultTokenMutation< + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::ep_multi_tokens::frame::DefaultTokenMetadata< + runtime_types::ep_multi_tokens::frame::DefaultForeignTokenMetadata< + ::core::primitive::u128, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for MutateToken { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "mutate_token"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Mint { + pub recipient: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub params: ::std::boxed::Box< + runtime_types::ep_multi_tokens::policy::mint::DefaultMintParams< + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::AttributeKeyValuePair< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Mint { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "mint"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Burn { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub params: runtime_types::ep_multi_tokens::policy::burn::DefaultBurnParams< + ::core::primitive::u128, + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Burn { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "burn"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Transfer { + pub recipient: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub params: + runtime_types::ep_multi_tokens::policy::transfer::DefaultTransferParams< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Transfer { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "transfer"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Freeze { + pub info: runtime_types::ep_multi_tokens::types::Freeze< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Freeze { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "freeze"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Thaw { + pub info: runtime_types::ep_multi_tokens::types::Freeze< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Thaw { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "thaw"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetAttribute { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::option::Option<::core::primitive::u128>, + pub key: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + pub value: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + } + impl ::subxt::blocks::StaticExtrinsic for SetAttribute { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "set_attribute"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveAttribute { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::option::Option<::core::primitive::u128>, + pub key: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveAttribute { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "remove_attribute"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveAllAttributes { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::option::Option<::core::primitive::u128>, + pub attribute_count: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveAllAttributes { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "remove_all_attributes"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BatchTransfer { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub recipients: runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::Recipient< + ::subxt::utils::AccountId32, + runtime_types::ep_multi_tokens::policy::transfer::DefaultTransferParams< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for BatchTransfer { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "batch_transfer"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BatchMint { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub recipients: runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::Recipient< + ::subxt::utils::AccountId32, + runtime_types::ep_multi_tokens::policy::mint::DefaultMintParams< + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::AttributeKeyValuePair< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for BatchMint { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "batch_mint"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BatchSetAttribute { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::option::Option<::core::primitive::u128>, + pub attributes: runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::AttributeKeyValuePair< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for BatchSetAttribute { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "batch_set_attribute"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ApproveCollection { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub operator: ::subxt::utils::AccountId32, + pub expiration: ::core::option::Option<::core::primitive::u32>, + } + impl ::subxt::blocks::StaticExtrinsic for ApproveCollection { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "approve_collection"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UnapproveCollection { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub operator: ::subxt::utils::AccountId32, + } + impl ::subxt::blocks::StaticExtrinsic for UnapproveCollection { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "unapprove_collection"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ApproveToken { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + #[codec(compact)] + pub token_id: ::core::primitive::u128, + pub operator: ::subxt::utils::AccountId32, + #[codec(compact)] + pub amount: ::core::primitive::u128, + pub expiration: ::core::option::Option<::core::primitive::u32>, + #[codec(compact)] + pub current_amount: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for ApproveToken { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "approve_token"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UnapproveToken { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + #[codec(compact)] + pub token_id: ::core::primitive::u128, + pub operator: ::subxt::utils::AccountId32, + } + impl ::subxt::blocks::StaticExtrinsic for UnapproveToken { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "unapprove_token"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ClaimCollections { + pub destination: ::subxt::utils::AccountId32, + pub ethereum_signature: runtime_types::sp_core::ecdsa::Signature, + pub ethereum_address: ::subxt::utils::H160, + } + impl ::subxt::blocks::StaticExtrinsic for ClaimCollections { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "claim_collections"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ClaimTokens { + pub destination: ::subxt::utils::AccountId32, + pub ethereum_signature: runtime_types::sp_core::ecdsa::Signature, + pub ethereum_address: ::subxt::utils::H160, + } + impl ::subxt::blocks::StaticExtrinsic for ClaimTokens { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "claim_tokens"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceMutateCollection { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub mutation: ::std::boxed::Box< + runtime_types::ep_multi_tokens::collection::DefaultCollectionMutation< + ::subxt::utils::AccountId32, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceMutateCollection { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_mutate_collection"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceTransfer { + pub source: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub destination: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub params: + runtime_types::ep_multi_tokens::policy::transfer::DefaultTransferParams< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceTransfer { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_transfer"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetCollection { # [codec (compact)] pub collection_id : :: core :: primitive :: u128 , pub value : :: std :: boxed :: Box < :: core :: option :: Option < runtime_types :: ep_multi_tokens :: collection :: Collection < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: DefaultCollectionPolicy < :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > > , runtime_types :: bounded_collections :: bounded_btree_map :: BoundedBTreeMap < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > , () > > > > , } + impl ::subxt::blocks::StaticExtrinsic for ForceSetCollection { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_set_collection"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetToken { # [codec (compact)] pub collection_id : :: core :: primitive :: u128 , # [codec (compact)] pub token_id : :: core :: primitive :: u128 , pub value : :: std :: boxed :: Box < :: core :: option :: Option < runtime_types :: ep_multi_tokens :: token :: Token < :: core :: primitive :: u128 , :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: ep_multi_tokens :: frame :: DefaultTokenMetadata < runtime_types :: ep_multi_tokens :: frame :: DefaultForeignTokenMetadata < :: core :: primitive :: u128 , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenNameLength > , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenSymbolLength > , runtime_types :: xcm :: v3 :: multilocation :: MultiLocation > > > > > , } + impl ::subxt::blocks::StaticExtrinsic for ForceSetToken { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_set_token"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetAttribute { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::option::Option<::core::primitive::u128>, + pub key: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + pub value: ::core::option::Option< + runtime_types::ep_multi_tokens::attribute::Attribute< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ::core::primitive::u128, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSetAttribute { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_set_attribute"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetCollectionAccount { # [codec (compact)] pub collection_id : :: core :: primitive :: u128 , pub account_id : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > , pub value : :: core :: option :: Option < runtime_types :: pallet_multi_tokens :: features :: collection :: types :: CollectionAccount < :: subxt :: utils :: AccountId32 , :: core :: option :: Option < :: core :: primitive :: u32 > , runtime_types :: enjin_runtime :: MaxOperatorsPerAccount > > , } + impl ::subxt::blocks::StaticExtrinsic for ForceSetCollectionAccount { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_set_collection_account"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetTokenAccount { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + #[codec(compact)] + pub token_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub value: ::core::option::Option< + runtime_types::pallet_multi_tokens::features::token::types::TokenAccount< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::pallet_multi_tokens::features::operator::types::Approval< + ::core::primitive::u128, + ::core::option::Option<::core::primitive::u32>, + >, + runtime_types::enjin_runtime::MaxOperatorsPerAccount, + [::core::primitive::u8; 8usize], + [::core::primitive::u8; 8usize], + runtime_types::enjin_runtime::MaxMultiTokensReserves, + runtime_types::enjin_runtime::MaxMultiTokensLocks, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSetTokenAccount { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_set_token_account"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceCreateCollection { + pub owner: ::subxt::utils::AccountId32, + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub descriptor: ::std::boxed::Box< + runtime_types::ep_multi_tokens::collection::DefaultCollectionDescriptor< + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::AttributeKeyValuePair< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceCreateCollection { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_create_collection"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceMint { + pub caller: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub recipient: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub params: ::std::boxed::Box< + runtime_types::ep_multi_tokens::policy::mint::DefaultMintParams< + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::AttributeKeyValuePair< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + pub deposit_backer: ::core::option::Option< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceMint { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_mint"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceBurn { + pub caller: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub params: runtime_types::ep_multi_tokens::policy::burn::DefaultBurnParams< + ::core::primitive::u128, + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceBurn { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_burn"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceApproveCollection { + pub caller: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub operator: ::subxt::utils::AccountId32, + pub expiration: ::core::option::Option<::core::primitive::u32>, + } + impl ::subxt::blocks::StaticExtrinsic for ForceApproveCollection { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_approve_collection"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceFreeze { + pub info: runtime_types::ep_multi_tokens::types::Freeze< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceFreeze { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_freeze"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetNextCollectionId { + #[codec(compact)] + pub value: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSetNextCollectionId { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_set_next_collection_id"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetEthereumAccount { + pub address: ::subxt::utils::H160, + pub value: ::core::option::Option< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u128, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSetEthereumAccount { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_set_ethereum_account"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetEthereumCollectionId { + #[codec(compact)] + pub ethereum_collection_id: ::core::primitive::u128, + pub native_collection_id: ::core::option::Option<::core::primitive::u128>, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSetEthereumCollectionId { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_set_ethereum_collection_id"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetUnmintableTokenIds { + #[codec(compact)] + pub collection_id: ::core::primitive::u128, + pub value: ::core::option::Option< + runtime_types::pallet_multi_tokens::features::ethereum::RangeInclusive< + ::core::primitive::u128, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSetUnmintableTokenIds { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_set_unmintable_token_ids"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceCreateEthereumCollection { + pub owner: ::subxt::utils::AccountId32, + #[codec(compact)] + pub native_collection_id: ::core::primitive::u128, + #[codec(compact)] + pub ethereum_collection_id: ::core::primitive::u128, + pub token_range: + runtime_types::pallet_multi_tokens::features::ethereum::RangeInclusive< + ::core::primitive::u128, + >, + pub descriptor: ::std::boxed::Box< + runtime_types::ep_multi_tokens::collection::DefaultCollectionDescriptor< + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::AttributeKeyValuePair< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceCreateEthereumCollection { + const PALLET: &'static str = "MultiTokens"; + const CALL: &'static str = "force_create_ethereum_collection"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Creates a new [`Collection`](ep_multi_tokens::Collection) from `descriptor`"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::DepositReserveFailed`] if the deposit cannot be reserved"] + pub fn create_collection( + &self, + descriptor : runtime_types :: ep_multi_tokens :: collection :: DefaultCollectionDescriptor < :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: AttributeKeyValuePair < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > > > >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "create_collection", + types::CreateCollection { + descriptor: ::std::boxed::Box::new(descriptor), + }, + [ + 84u8, 220u8, 78u8, 6u8, 43u8, 65u8, 126u8, 108u8, 37u8, 22u8, 229u8, + 251u8, 66u8, 211u8, 54u8, 184u8, 207u8, 154u8, 209u8, 233u8, 153u8, + 182u8, 218u8, 32u8, 102u8, 164u8, 79u8, 212u8, 80u8, 23u8, 161u8, + 249u8, + ], + ) + } + #[doc = "Destroys [`Collection`](ep_multi_tokens::Collection) with `id`. `origin` must be the"] + #[doc = "owner of the [`Collection`](ep_multi_tokens::Collection)."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::NoPermission`] if `origin` is not the owner of the collection."] + #[doc = "- [`Error::CollectionNotFound`] if `Collection` with `id` does not exist."] + #[doc = "- [`Error::DestroyForbiddenByCollectionEvent`] if another pallet is blocking the"] + #[doc = " collection's destruction"] + #[doc = "- [`Error::DestroyForbiddenByRemainingTokens`] if collection still has tokens when"] + #[doc = " destroying"] + #[doc = "- [`Error::DestroyForbiddenByAttributeCount`] if collection still has attributes when"] + #[doc = " destroying"] + #[doc = "current number of collection attributes."] + pub fn destroy_collection( + &self, + collection_id: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "destroy_collection", + types::DestroyCollection { collection_id }, + [ + 105u8, 100u8, 167u8, 237u8, 67u8, 29u8, 194u8, 91u8, 194u8, 121u8, + 206u8, 213u8, 129u8, 146u8, 16u8, 12u8, 54u8, 137u8, 28u8, 215u8, 52u8, + 21u8, 95u8, 29u8, 94u8, 223u8, 54u8, 213u8, 144u8, 208u8, 74u8, 29u8, + ], + ) + } + #[doc = "Modify [`Collection`](ep_multi_tokens::Collection) with `id` by applying `mutation`"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::CollectionNotFound`] if `collection_id` does not exist."] + #[doc = "- [`Error::NoPermission`] if `origin` is not the owner of `collection`."] + pub fn mutate_collection( + &self, + collection_id: ::core::primitive::u128, + mutation: runtime_types::ep_multi_tokens::collection::DefaultCollectionMutation< + ::subxt::utils::AccountId32, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "mutate_collection", + types::MutateCollection { + collection_id, + mutation: ::std::boxed::Box::new(mutation), + }, + [ + 70u8, 220u8, 103u8, 86u8, 205u8, 59u8, 190u8, 86u8, 186u8, 98u8, 206u8, + 13u8, 121u8, 129u8, 74u8, 89u8, 50u8, 140u8, 51u8, 69u8, 9u8, 118u8, + 204u8, 145u8, 180u8, 100u8, 231u8, 173u8, 85u8, 15u8, 101u8, 127u8, + ], + ) + } + #[doc = "Modify [`Token`](ep_multi_tokens::Token) with `token_id` from"] + #[doc = "[`Collection`](ep_multi_tokens::Collection) with `collection_id` by applying `mutation`"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::CurrencyIncompatibleWithCollectionRoyalty`] if token has already been"] + #[doc = " assigned a royalty"] + #[doc = "- [`Error::NoPermission`] if not the collection owner"] + #[doc = "- [`Error::TokenNotFound`] if Token does not exist"] + #[doc = "- [`Error::ConflictingLocation`] if the new location is already occupied"] + pub fn mutate_token( + &self, + collection_id: ::core::primitive::u128, + token_id: ::core::primitive::u128, + mutation: runtime_types::ep_multi_tokens::token::DefaultTokenMutation< + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::ep_multi_tokens::frame::DefaultTokenMetadata< + runtime_types::ep_multi_tokens::frame::DefaultForeignTokenMetadata< + ::core::primitive::u128, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "mutate_token", + types::MutateToken { + collection_id, + token_id, + mutation: ::std::boxed::Box::new(mutation), + }, + [ + 216u8, 243u8, 233u8, 191u8, 206u8, 81u8, 186u8, 152u8, 248u8, 35u8, + 139u8, 11u8, 185u8, 145u8, 56u8, 162u8, 246u8, 64u8, 2u8, 177u8, 231u8, + 47u8, 21u8, 112u8, 217u8, 225u8, 225u8, 96u8, 126u8, 154u8, 195u8, + 218u8, + ], + ) + } + #[doc = "`origin` mints to `recipient` for `collection_id` with `params` using the pallet's"] + #[doc = "[`MintPolicy`](traits::CollectionPolicy::Mint)."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::AmountZero`] if `amount == 0`."] + #[doc = "- [`Error::CollectionNotFound`] if `Collection` does not exist."] + #[doc = "- [`Error::TokenNotFound`] if `Token` does not exist."] + #[doc = "- [`Error::TokenAlreadyExists`] if attempting to create a token that already exists"] + #[doc = "- [`Error::NoPermission`] if `caller` is not allowed to mint the `collection`."] + #[doc = "- [`Error::TokenMintCapExceeded`] if the mint policy TokenCap does not allow minting"] + #[doc = "- `MaxTokenCountExceeded` if the mint policy max_token_count is exceeded"] + #[doc = "- [`Error::DepositReserveFailed`] if the issuer does not have sufficient balance for"] + #[doc = " token deposit"] + #[doc = "- [`Error::ConflictingLocation`] if the token is foreign and the location is already"] + #[doc = " mapped to another asset in `AssetIdsByLocation`"] + pub fn mint( + &self, + recipient: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + collection_id: ::core::primitive::u128, + params: runtime_types::ep_multi_tokens::policy::mint::DefaultMintParams< + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::AttributeKeyValuePair< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "mint", + types::Mint { + recipient, + collection_id, + params: ::std::boxed::Box::new(params), + }, + [ + 108u8, 2u8, 71u8, 151u8, 48u8, 236u8, 54u8, 88u8, 220u8, 86u8, 152u8, + 141u8, 123u8, 135u8, 123u8, 127u8, 107u8, 190u8, 56u8, 241u8, 121u8, + 247u8, 32u8, 124u8, 238u8, 76u8, 228u8, 70u8, 7u8, 21u8, 41u8, 156u8, + ], + ) + } + #[doc = "Reduces the balance of `owner` by `amount` of `token_id` from `collection_id`."] + #[doc = "It also updates the total supply of `collection_id`."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CollectionNotFound`] if `collection` does not exist."] + #[doc = "- [`Error::BalanceLow`] if `owner` account does not has enough amount of any token in"] + #[doc = " `tokens` of `collection`."] + #[doc = "- [`Error::DepositUnreserveFailed`] if caller does not have enough reserved balance to"] + #[doc = " unreserve"] + #[doc = "- [`Error::DestroyForbiddenByAttributeCount`] if removing token from storage but the"] + #[doc = " attribute count is greater than zero"] + pub fn burn( + &self, + collection_id: ::core::primitive::u128, + params: runtime_types::ep_multi_tokens::policy::burn::DefaultBurnParams< + ::core::primitive::u128, + ::core::primitive::u128, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "burn", + types::Burn { + collection_id, + params, + }, + [ + 12u8, 208u8, 217u8, 27u8, 201u8, 229u8, 193u8, 137u8, 64u8, 17u8, 80u8, + 162u8, 212u8, 243u8, 171u8, 80u8, 211u8, 153u8, 113u8, 171u8, 224u8, + 56u8, 163u8, 55u8, 173u8, 91u8, 47u8, 121u8, 65u8, 123u8, 110u8, 53u8, + ], + ) + } + #[doc = "`operator` transfers to `recipient` for `collection_id` with `params`"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::AmountZero`] if `amount == 0`."] + #[doc = "- [`Error::BalanceLow`] if `source` does not own enough amount of `collection`."] + pub fn transfer( + &self, + recipient: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + collection_id: ::core::primitive::u128, + params: runtime_types::ep_multi_tokens::policy::transfer::DefaultTransferParams< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "transfer", + types::Transfer { + recipient, + collection_id, + params, + }, + [ + 214u8, 174u8, 15u8, 27u8, 9u8, 88u8, 1u8, 49u8, 195u8, 143u8, 115u8, + 177u8, 1u8, 171u8, 219u8, 183u8, 25u8, 187u8, 42u8, 135u8, 46u8, 174u8, + 199u8, 255u8, 60u8, 142u8, 36u8, 173u8, 66u8, 194u8, 118u8, 152u8, + ], + ) + } + #[doc = "Freeze collection, token or account"] + pub fn freeze( + &self, + info: runtime_types::ep_multi_tokens::types::Freeze< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "freeze", + types::Freeze { info }, + [ + 156u8, 46u8, 101u8, 135u8, 136u8, 118u8, 15u8, 159u8, 115u8, 213u8, + 182u8, 7u8, 229u8, 202u8, 183u8, 172u8, 33u8, 135u8, 126u8, 59u8, + 200u8, 230u8, 45u8, 74u8, 90u8, 237u8, 118u8, 95u8, 40u8, 207u8, 210u8, + 126u8, + ], + ) + } + #[doc = "Thaw collection, token or account"] + pub fn thaw( + &self, + info: runtime_types::ep_multi_tokens::types::Freeze< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "thaw", + types::Thaw { info }, + [ + 127u8, 192u8, 86u8, 254u8, 206u8, 88u8, 170u8, 190u8, 5u8, 250u8, + 203u8, 250u8, 181u8, 243u8, 17u8, 203u8, 84u8, 14u8, 170u8, 173u8, + 194u8, 150u8, 75u8, 13u8, 15u8, 56u8, 82u8, 128u8, 61u8, 126u8, 24u8, + 73u8, + ], + ) + } + #[doc = "Sets the attribute `key` to `value` for `collection_id`."] + #[doc = "If `token_id` is [`None`], the attribute is added to the collection. If it is [`Some`],"] + #[doc = "the attribute is added to the token."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::InvalidAttributeKey`] if `key.len() == 0`"] + #[doc = "- [`Error::CollectionNotFound`] if `collection_id` does not exist."] + #[doc = "- [`Error::TokenNotFound`] if `token_id` is `Some` and does not exist."] + #[doc = "- [`Error::NoPermission`] if `source` account is not the owner of the collection."] + #[doc = "- [`Error::DepositReserveFailed`] if unable to reserve the deposit for the attribute"] + #[doc = " storage."] + pub fn set_attribute( + &self, + collection_id: ::core::primitive::u128, + token_id: ::core::option::Option<::core::primitive::u128>, + key: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + value: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "set_attribute", + types::SetAttribute { + collection_id, + token_id, + key, + value, + }, + [ + 251u8, 45u8, 7u8, 171u8, 28u8, 47u8, 110u8, 63u8, 30u8, 229u8, 241u8, + 207u8, 38u8, 120u8, 164u8, 173u8, 213u8, 62u8, 75u8, 202u8, 233u8, + 205u8, 58u8, 39u8, 103u8, 13u8, 2u8, 18u8, 185u8, 69u8, 193u8, 87u8, + ], + ) + } + #[doc = "Removes the `key` attribute from the given `collection_id` or `token_id`."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::InvalidAttributeKey`] if `key.len() == 0`"] + #[doc = "- [`Error::CollectionNotFound`] if `collection_id` does not exist."] + #[doc = "- [`Error::TokenNotFound`] if `token_id` is `Some` and does not exist."] + #[doc = "- [`Error::NoPermission`] if `caller` is not the owner of the collection."] + #[doc = "- `Underflow` if an attribute counter underflows"] + pub fn remove_attribute( + &self, + collection_id: ::core::primitive::u128, + token_id: ::core::option::Option<::core::primitive::u128>, + key: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "remove_attribute", + types::RemoveAttribute { + collection_id, + token_id, + key, + }, + [ + 61u8, 54u8, 20u8, 172u8, 168u8, 142u8, 162u8, 218u8, 187u8, 107u8, + 181u8, 81u8, 184u8, 3u8, 60u8, 247u8, 184u8, 255u8, 96u8, 232u8, 207u8, + 115u8, 48u8, 136u8, 238u8, 188u8, 198u8, 215u8, 137u8, 188u8, 7u8, + 98u8, + ], + ) + } + #[doc = "Removes all attributes from the given `collection_id` or `token_id`."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- `InvalidAttributeCount` if `attribute_count` doesn't match the number of attributes"] + #[doc = "- [`Error::CollectionNotFound`] if Collection with `collection_id` does not exist."] + #[doc = "- [`Error::TokenNotFound`] if Token with `token_id` does not exist."] + #[doc = "- [`Error::NoPermission`] if `origin` account is not the owner of the Collection or"] + #[doc = " Token"] + #[doc = "- other errors from `remove_attribute`"] + pub fn remove_all_attributes( + &self, + collection_id: ::core::primitive::u128, + token_id: ::core::option::Option<::core::primitive::u128>, + attribute_count: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "remove_all_attributes", + types::RemoveAllAttributes { + collection_id, + token_id, + attribute_count, + }, + [ + 18u8, 34u8, 228u8, 101u8, 218u8, 156u8, 148u8, 9u8, 86u8, 88u8, 177u8, + 19u8, 225u8, 94u8, 127u8, 205u8, 11u8, 193u8, 205u8, 249u8, 161u8, + 82u8, 171u8, 87u8, 116u8, 45u8, 120u8, 25u8, 228u8, 126u8, 73u8, 85u8, + ], + ) + } + #[doc = "Transfers the specific amount of tokens of `collection` to `recipients` from `origin`"] + #[doc = "account. A single failure will fail all transfers."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::AmountZero`] if `amount == 0`."] + #[doc = "- [`Error::BalanceLow`] if `source` does not own enough amount of `collection`."] + pub fn batch_transfer( + &self, + collection_id: ::core::primitive::u128, + recipients: runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::Recipient< + ::subxt::utils::AccountId32, + runtime_types::ep_multi_tokens::policy::transfer::DefaultTransferParams< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "batch_transfer", + types::BatchTransfer { + collection_id, + recipients, + }, + [ + 109u8, 156u8, 229u8, 128u8, 210u8, 41u8, 166u8, 5u8, 12u8, 177u8, 38u8, + 76u8, 73u8, 206u8, 99u8, 52u8, 78u8, 145u8, 39u8, 251u8, 247u8, 72u8, + 37u8, 96u8, 22u8, 235u8, 124u8, 108u8, 9u8, 142u8, 46u8, 36u8, + ], + ) + } + #[doc = "Collection owner mints tokens of `collection_id` to `recipients` consisting of an"] + #[doc = "[`AccountId`](frame_system::Config::AccountId) and [`MintParams`]. A single mint failure"] + #[doc = "will fail all of them in the batch."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::AmountZero`] if `amount == 0`."] + #[doc = "- [`Error::CollectionNotFound`] if `collection` does **not** exist."] + #[doc = "- [`Error::NoPermission`] if `caller` is not allowed to mint the `collection`."] + #[doc = "- [`Error::TokenMintCapExceeded`] if the mint policy TokenCap does not allow minting"] + #[doc = "- [`Error::MaxTokenCountExceeded`] if the mint policy max_token_count is exceeded"] + #[doc = "- [`Error::DepositReserveFailed`] if the issuer does not have sufficient balance for"] + #[doc = " token deposit"] + pub fn batch_mint( + &self, + collection_id: ::core::primitive::u128, + recipients: runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::Recipient< + ::subxt::utils::AccountId32, + runtime_types::ep_multi_tokens::policy::mint::DefaultMintParams< + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::AttributeKeyValuePair< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "batch_mint", + types::BatchMint { + collection_id, + recipients, + }, + [ + 234u8, 11u8, 228u8, 197u8, 92u8, 235u8, 205u8, 56u8, 82u8, 180u8, + 104u8, 153u8, 76u8, 130u8, 108u8, 31u8, 255u8, 18u8, 39u8, 0u8, 46u8, + 102u8, 57u8, 212u8, 157u8, 160u8, 123u8, 18u8, 83u8, 236u8, 63u8, + 140u8, + ], + ) + } + #[doc = "Collection owner sets `attributes` to `collection_id`"] + #[doc = ""] + #[doc = "If `token_id` is [`None`], the attribute is added to the collection. If it is [`Some`],"] + #[doc = "the attribute is added to the token."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::InvalidAttributeKey`] if `key.len() == 0`"] + #[doc = "- [`Error::CollectionNotFound`] if `collection_id` does not exist."] + #[doc = "- [`Error::TokenNotFound`] if `token_id` is `Some` and does not exist."] + #[doc = "- [`Error::NoPermission`] if `source` account is not the owner of the collection."] + #[doc = "- [`Error::DepositReserveFailed`] if unable to reserve the deposit for the attribute"] + #[doc = " storage."] + pub fn batch_set_attribute( + &self, + collection_id: ::core::primitive::u128, + token_id: ::core::option::Option<::core::primitive::u128>, + attributes: runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::AttributeKeyValuePair< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "batch_set_attribute", + types::BatchSetAttribute { + collection_id, + token_id, + attributes, + }, + [ + 107u8, 11u8, 128u8, 187u8, 62u8, 143u8, 238u8, 138u8, 107u8, 41u8, + 197u8, 242u8, 250u8, 171u8, 53u8, 100u8, 203u8, 23u8, 142u8, 128u8, + 22u8, 125u8, 212u8, 106u8, 252u8, 210u8, 247u8, 178u8, 224u8, 211u8, + 125u8, 34u8, + ], + ) + } + #[doc = "Approve the `operator` to manage all of `origin`'s tokens belonging to `collection_id`."] + #[doc = "If an `expiration` is provided, the approval will end when it expires."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::CannotApproveSelf`] if `origin == operator`"] + #[doc = "- [`Error::AlreadyExpired`] if `expiration` is earlier than now"] + #[doc = "- [`Error::CollectionAccountNotFound`] if the collection account does not exist"] + #[doc = "- [`Error::MaxApprovalsExceeded`] if approval count has exceeded the maximum"] + pub fn approve_collection( + &self, + collection_id: ::core::primitive::u128, + operator: ::subxt::utils::AccountId32, + expiration: ::core::option::Option<::core::primitive::u32>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "approve_collection", + types::ApproveCollection { + collection_id, + operator, + expiration, + }, + [ + 7u8, 227u8, 111u8, 55u8, 125u8, 218u8, 186u8, 31u8, 168u8, 240u8, + 122u8, 69u8, 184u8, 131u8, 74u8, 22u8, 8u8, 138u8, 81u8, 184u8, 103u8, + 97u8, 60u8, 173u8, 220u8, 220u8, 29u8, 116u8, 208u8, 207u8, 137u8, + 174u8, + ], + ) + } + #[doc = "Unapprove the `operator` to manage all of `origin`'s tokens belonging to `collection`"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::CollectionAccountNotFound`] if the collection account cannot be found"] + pub fn unapprove_collection( + &self, + collection_id: ::core::primitive::u128, + operator: ::subxt::utils::AccountId32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "unapprove_collection", + types::UnapproveCollection { + collection_id, + operator, + }, + [ + 63u8, 121u8, 212u8, 242u8, 83u8, 8u8, 50u8, 128u8, 87u8, 185u8, 117u8, + 228u8, 47u8, 79u8, 189u8, 114u8, 243u8, 230u8, 178u8, 71u8, 29u8, 93u8, + 223u8, 136u8, 120u8, 176u8, 199u8, 69u8, 104u8, 130u8, 82u8, 242u8, + ], + ) + } + #[doc = "Approve `operator` to transfer up to `amount` of `caller`'s balance for `token_id` of"] + #[doc = "`collection_id`. An `expiration` can be provided. `current_amount` must match the"] + #[doc = "current approved amount."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CannotApproveSelf`] if `origin == operator`"] + #[doc = "- [`Error::CollectionAlreadyApproved`] if `collection_id` is already approved"] + #[doc = "- [`Error::AlreadyExpired`] if `expiration` is earlier than now"] + #[doc = "- [`Error::TokenAccountNotFound`] if the token account does not exist"] + #[doc = "- [`Error::MaxApprovalsExceeded`] if approval count has exceeded the maximum"] + #[doc = "- [`Error::WrongCurrentApprovedAmount`] if `current_amount` does not match the current"] + #[doc = " approval amount"] + pub fn approve_token( + &self, + collection_id: ::core::primitive::u128, + token_id: ::core::primitive::u128, + operator: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + expiration: ::core::option::Option<::core::primitive::u32>, + current_amount: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "approve_token", + types::ApproveToken { + collection_id, + token_id, + operator, + amount, + expiration, + current_amount, + }, + [ + 63u8, 218u8, 252u8, 12u8, 56u8, 35u8, 221u8, 255u8, 34u8, 117u8, 67u8, + 209u8, 118u8, 250u8, 96u8, 96u8, 198u8, 79u8, 138u8, 153u8, 86u8, 55u8, + 97u8, 231u8, 210u8, 233u8, 68u8, 52u8, 11u8, 42u8, 94u8, 73u8, + ], + ) + } + #[doc = "Unapprove `operator` to transfer `origin`'s `token_id` of `collection_id`"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::TokenAccountNotFound`] if the token account does not exist"] + pub fn unapprove_token( + &self, + collection_id: ::core::primitive::u128, + token_id: ::core::primitive::u128, + operator: ::subxt::utils::AccountId32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "unapprove_token", + types::UnapproveToken { + collection_id, + token_id, + operator, + }, + [ + 82u8, 86u8, 116u8, 226u8, 149u8, 167u8, 119u8, 224u8, 154u8, 188u8, + 131u8, 57u8, 129u8, 27u8, 16u8, 116u8, 169u8, 58u8, 221u8, 196u8, + 228u8, 33u8, 244u8, 29u8, 198u8, 89u8, 171u8, 28u8, 188u8, 197u8, 55u8, + 241u8, + ], + ) + } + #[doc = "Transfers ownership of collections to `destination` if the signature matches."] + #[doc = ""] + #[doc = "The dispatch origin for this call must be _None_."] + #[doc = ""] + #[doc = "Unsigned Validation:"] + #[doc = "A call to claim is deemed valid if the signature provided matches"] + #[doc = "the expected signed message of:"] + #[doc = ""] + #[doc = "> Ethereum Signed Message:"] + #[doc = "> (configured prefix string)(address)"] + #[doc = ""] + #[doc = "and `address` matches the `destination` account."] + #[doc = ""] + #[doc = "This will always execute with weight of [`Config::MaxClaimableCollectionsPerAccount`]"] + #[doc = "and it will reimburse weight for collections under that number."] + #[doc = ""] + #[doc = "### Parameters:"] + #[doc = "- `destination`: The account that will receive ownership of the collections"] + #[doc = "- `ethereum_signature`: The signature of an ethereum signed message matching the format"] + #[doc = " described above."] + #[doc = "- `ethereum_address` : The Ethereum address from which the message is signed."] + pub fn claim_collections( + &self, + destination: ::subxt::utils::AccountId32, + ethereum_signature: runtime_types::sp_core::ecdsa::Signature, + ethereum_address: ::subxt::utils::H160, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "claim_collections", + types::ClaimCollections { + destination, + ethereum_signature, + ethereum_address, + }, + [ + 143u8, 95u8, 232u8, 200u8, 162u8, 12u8, 50u8, 127u8, 125u8, 0u8, 88u8, + 161u8, 81u8, 155u8, 121u8, 195u8, 30u8, 25u8, 5u8, 228u8, 204u8, 24u8, + 116u8, 176u8, 52u8, 10u8, 200u8, 112u8, 70u8, 92u8, 15u8, 205u8, + ], + ) + } + #[doc = "Transfers balances of tokens to `destination` if the signature matches. Mints tokens if"] + #[doc = "needed."] + #[doc = ""] + #[doc = "The dispatch origin for this call must be _None_."] + #[doc = ""] + #[doc = "Unsigned Validation:"] + #[doc = "A call to claim is deemed valid if the signature provided matches"] + #[doc = "the expected signed message of:"] + #[doc = ""] + #[doc = "> Ethereum Signed Message:"] + #[doc = "> (configured prefix string)(address)"] + #[doc = ""] + #[doc = "and `address` matches the `destination` account."] + #[doc = ""] + #[doc = "This will always execute with weight of [`Config::MaxClaimableTokensPerCall`]"] + #[doc = "and it will reimburse weight for tokens under that number."] + #[doc = ""] + #[doc = "### Parameters:"] + #[doc = "- `destination`: The account that will receive token balances"] + #[doc = "- `ethereum_signature`: The signature of an ethereum signed message matching the format"] + #[doc = " described above."] + #[doc = "- `ethereum_address` : The Ethereum address from which the message is signed."] + pub fn claim_tokens( + &self, + destination: ::subxt::utils::AccountId32, + ethereum_signature: runtime_types::sp_core::ecdsa::Signature, + ethereum_address: ::subxt::utils::H160, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "claim_tokens", + types::ClaimTokens { + destination, + ethereum_signature, + ethereum_address, + }, + [ + 139u8, 2u8, 89u8, 57u8, 37u8, 243u8, 30u8, 30u8, 110u8, 222u8, 221u8, + 10u8, 110u8, 140u8, 86u8, 154u8, 207u8, 220u8, 135u8, 0u8, 193u8, + 231u8, 9u8, 29u8, 160u8, 125u8, 73u8, 104u8, 37u8, 92u8, 209u8, 213u8, + ], + ) + } + #[doc = "Exactly as [`mutate_collection`](Self::mutate_collection), except the origin must be"] + #[doc = "root and the `caller` account should be specified."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "Same as [`mutate_collection`](Self::mutate_collection)"] + pub fn force_mutate_collection( + &self, + collection_id: ::core::primitive::u128, + mutation: runtime_types::ep_multi_tokens::collection::DefaultCollectionMutation< + ::subxt::utils::AccountId32, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_mutate_collection", + types::ForceMutateCollection { + collection_id, + mutation: ::std::boxed::Box::new(mutation), + }, + [ + 230u8, 137u8, 14u8, 226u8, 63u8, 145u8, 11u8, 60u8, 20u8, 133u8, 245u8, + 251u8, 251u8, 88u8, 31u8, 154u8, 9u8, 195u8, 93u8, 75u8, 88u8, 99u8, + 165u8, 193u8, 21u8, 88u8, 129u8, 95u8, 64u8, 159u8, 198u8, 85u8, + ], + ) + } + #[doc = "Exactly as [`transfer`](Self::transfer), except the origin must be root and the source"] + #[doc = "account should be specified."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "Same as [`transfer`](Self::transfer)"] + pub fn force_transfer( + &self, + source: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + destination: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + collection_id: ::core::primitive::u128, + params: runtime_types::ep_multi_tokens::policy::transfer::DefaultTransferParams< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_transfer", + types::ForceTransfer { + source, + destination, + collection_id, + params, + }, + [ + 145u8, 97u8, 238u8, 54u8, 89u8, 109u8, 241u8, 151u8, 59u8, 48u8, 242u8, + 161u8, 106u8, 165u8, 62u8, 114u8, 223u8, 109u8, 138u8, 27u8, 12u8, + 25u8, 154u8, 104u8, 164u8, 35u8, 102u8, 233u8, 237u8, 59u8, 210u8, 3u8, + ], + ) + } + #[doc = "Set the Collections storage to the given `value`, origin must be root"] + pub fn force_set_collection( + &self, + collection_id: ::core::primitive::u128, + value: ::core::option::Option< + runtime_types::ep_multi_tokens::collection::Collection< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::DefaultCollectionPolicy< + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + (), + >, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_set_collection", + types::ForceSetCollection { + collection_id, + value: ::std::boxed::Box::new(value), + }, + [ + 4u8, 112u8, 159u8, 98u8, 177u8, 37u8, 79u8, 98u8, 202u8, 236u8, 50u8, + 37u8, 125u8, 225u8, 178u8, 159u8, 252u8, 201u8, 104u8, 242u8, 151u8, + 176u8, 54u8, 243u8, 87u8, 206u8, 79u8, 239u8, 198u8, 7u8, 208u8, 147u8, + ], + ) + } + #[doc = "Set the Tokens storage to the given `value`, origin must be root"] + pub fn force_set_token( + &self, + collection_id: ::core::primitive::u128, + token_id: ::core::primitive::u128, + value: ::core::option::Option< + runtime_types::ep_multi_tokens::token::Token< + ::core::primitive::u128, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::ep_multi_tokens::frame::DefaultTokenMetadata< + runtime_types::ep_multi_tokens::frame::DefaultForeignTokenMetadata< + ::core::primitive::u128, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_set_token", + types::ForceSetToken { + collection_id, + token_id, + value: ::std::boxed::Box::new(value), + }, + [ + 144u8, 91u8, 103u8, 30u8, 209u8, 83u8, 4u8, 211u8, 163u8, 12u8, 7u8, + 215u8, 230u8, 15u8, 7u8, 203u8, 101u8, 112u8, 19u8, 210u8, 139u8, + 223u8, 19u8, 80u8, 207u8, 113u8, 250u8, 66u8, 228u8, 129u8, 20u8, + 115u8, + ], + ) + } + #[doc = "Set the Tokens storage to the given `value`, origin must be root"] + pub fn force_set_attribute( + &self, + collection_id: ::core::primitive::u128, + token_id: ::core::option::Option<::core::primitive::u128>, + key: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + value: ::core::option::Option< + runtime_types::ep_multi_tokens::attribute::Attribute< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ::core::primitive::u128, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_set_attribute", + types::ForceSetAttribute { + collection_id, + token_id, + key, + value, + }, + [ + 123u8, 172u8, 241u8, 41u8, 105u8, 212u8, 42u8, 194u8, 186u8, 192u8, + 136u8, 73u8, 197u8, 104u8, 32u8, 94u8, 95u8, 151u8, 158u8, 255u8, + 174u8, 22u8, 78u8, 23u8, 101u8, 41u8, 0u8, 210u8, 1u8, 126u8, 233u8, + 213u8, + ], + ) + } + #[doc = "Set the CollectionAccounts storage to the given `value`, origin must be root"] + pub fn force_set_collection_account( + &self, + collection_id: ::core::primitive::u128, + account_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + value : :: core :: option :: Option < runtime_types :: pallet_multi_tokens :: features :: collection :: types :: CollectionAccount < :: subxt :: utils :: AccountId32 , :: core :: option :: Option < :: core :: primitive :: u32 > , runtime_types :: enjin_runtime :: MaxOperatorsPerAccount > >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_set_collection_account", + types::ForceSetCollectionAccount { + collection_id, + account_id, + value, + }, + [ + 242u8, 162u8, 250u8, 180u8, 251u8, 112u8, 246u8, 87u8, 59u8, 22u8, + 195u8, 237u8, 2u8, 38u8, 71u8, 187u8, 89u8, 187u8, 224u8, 89u8, 179u8, + 106u8, 89u8, 223u8, 229u8, 140u8, 253u8, 15u8, 228u8, 195u8, 215u8, + 153u8, + ], + ) + } + #[doc = "Set the TokenAccounts storage to the given `value`, origin must be root"] + pub fn force_set_token_account( + &self, + collection_id: ::core::primitive::u128, + token_id: ::core::primitive::u128, + account_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + value: ::core::option::Option< + runtime_types::pallet_multi_tokens::features::token::types::TokenAccount< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::pallet_multi_tokens::features::operator::types::Approval< + ::core::primitive::u128, + ::core::option::Option<::core::primitive::u32>, + >, + runtime_types::enjin_runtime::MaxOperatorsPerAccount, + [::core::primitive::u8; 8usize], + [::core::primitive::u8; 8usize], + runtime_types::enjin_runtime::MaxMultiTokensReserves, + runtime_types::enjin_runtime::MaxMultiTokensLocks, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_set_token_account", + types::ForceSetTokenAccount { + collection_id, + token_id, + account_id, + value, + }, + [ + 218u8, 8u8, 61u8, 217u8, 21u8, 1u8, 103u8, 137u8, 241u8, 118u8, 122u8, + 31u8, 202u8, 217u8, 89u8, 219u8, 93u8, 124u8, 90u8, 24u8, 131u8, 56u8, + 228u8, 128u8, 69u8, 5u8, 222u8, 94u8, 146u8, 69u8, 113u8, 231u8, + ], + ) + } + #[doc = "Creates a new collection from `descriptor` at `collection_id`, origin must be root"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::DepositReserveFailed`] if the deposit cannot be reserved"] + #[doc = "- [`Error::CollectionIdAlreadyInUse`] if the collection id is already in use"] + pub fn force_create_collection( + &self, + owner: ::subxt::utils::AccountId32, + collection_id: ::core::primitive::u128, + descriptor : runtime_types :: ep_multi_tokens :: collection :: DefaultCollectionDescriptor < :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: AttributeKeyValuePair < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > > > >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_create_collection", + types::ForceCreateCollection { + owner, + collection_id, + descriptor: ::std::boxed::Box::new(descriptor), + }, + [ + 146u8, 91u8, 58u8, 228u8, 167u8, 148u8, 214u8, 142u8, 249u8, 117u8, + 186u8, 36u8, 26u8, 202u8, 179u8, 122u8, 250u8, 107u8, 221u8, 76u8, 1u8, + 142u8, 212u8, 43u8, 24u8, 61u8, 177u8, 159u8, 4u8, 1u8, 143u8, 102u8, + ], + ) + } + #[doc = "Same as [`mint`](Self::mint), but it is callable by"] + #[doc = "[`Config::ForceOrigin`]."] + pub fn force_mint( + &self, + caller: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + recipient: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + collection_id: ::core::primitive::u128, + params: runtime_types::ep_multi_tokens::policy::mint::DefaultMintParams< + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::batch::AttributeKeyValuePair< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + deposit_backer: ::core::option::Option< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_mint", + types::ForceMint { + caller, + recipient, + collection_id, + params: ::std::boxed::Box::new(params), + deposit_backer, + }, + [ + 1u8, 207u8, 31u8, 56u8, 19u8, 67u8, 236u8, 98u8, 134u8, 237u8, 103u8, + 40u8, 220u8, 136u8, 149u8, 188u8, 222u8, 2u8, 129u8, 14u8, 9u8, 221u8, + 111u8, 145u8, 97u8, 9u8, 99u8, 43u8, 22u8, 101u8, 102u8, 92u8, + ], + ) + } + #[doc = "Same as [`burn`](Self::burn), but it is only callable by"] + #[doc = "[`Config::ForceOrigin`]. Executes the burn by `caller`."] + pub fn force_burn( + &self, + caller: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + collection_id: ::core::primitive::u128, + params: runtime_types::ep_multi_tokens::policy::burn::DefaultBurnParams< + ::core::primitive::u128, + ::core::primitive::u128, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_burn", + types::ForceBurn { + caller, + collection_id, + params, + }, + [ + 200u8, 136u8, 136u8, 154u8, 175u8, 50u8, 183u8, 94u8, 101u8, 199u8, + 183u8, 56u8, 108u8, 6u8, 119u8, 117u8, 171u8, 156u8, 104u8, 29u8, 39u8, + 84u8, 51u8, 215u8, 220u8, 234u8, 193u8, 39u8, 43u8, 167u8, 118u8, + 251u8, + ], + ) + } + #[doc = "Same as [`approve_collection`](Self::approve_collection), but it is callable by"] + #[doc = "[`Config::ForceOrigin`]."] + pub fn force_approve_collection( + &self, + caller: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + collection_id: ::core::primitive::u128, + operator: ::subxt::utils::AccountId32, + expiration: ::core::option::Option<::core::primitive::u32>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_approve_collection", + types::ForceApproveCollection { + caller, + collection_id, + operator, + expiration, + }, + [ + 114u8, 225u8, 84u8, 77u8, 51u8, 23u8, 20u8, 16u8, 240u8, 68u8, 96u8, + 218u8, 140u8, 116u8, 203u8, 199u8, 179u8, 174u8, 75u8, 79u8, 149u8, + 250u8, 216u8, 103u8, 65u8, 78u8, 239u8, 168u8, 151u8, 52u8, 177u8, + 155u8, + ], + ) + } + #[doc = "Same as [`freeze`](Self::freeze), but it is callable by [`Config::ForceOrigin`]"] + pub fn force_freeze( + &self, + info: runtime_types::ep_multi_tokens::types::Freeze< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_freeze", + types::ForceFreeze { info }, + [ + 183u8, 120u8, 223u8, 15u8, 24u8, 243u8, 143u8, 224u8, 233u8, 204u8, + 176u8, 62u8, 144u8, 92u8, 232u8, 58u8, 249u8, 9u8, 96u8, 43u8, 100u8, + 183u8, 223u8, 76u8, 98u8, 159u8, 111u8, 231u8, 62u8, 169u8, 84u8, + 177u8, + ], + ) + } + #[doc = "Sets [`NextCollectionId`] to `value`. Only callable by [`Config::ForceOrigin`]."] + pub fn force_set_next_collection_id( + &self, + value: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_set_next_collection_id", + types::ForceSetNextCollectionId { value }, + [ + 44u8, 211u8, 204u8, 139u8, 161u8, 92u8, 241u8, 201u8, 148u8, 173u8, + 40u8, 51u8, 121u8, 82u8, 135u8, 40u8, 122u8, 116u8, 64u8, 153u8, 45u8, + 8u8, 2u8, 79u8, 212u8, 141u8, 105u8, 7u8, 212u8, 143u8, 187u8, 93u8, + ], + ) + } + #[doc = "Sets [`ClaimableCollectionIds`] to `value`. Only callable by [`Config::ForceOrigin`]."] + pub fn force_set_ethereum_account( + &self, + address: ::subxt::utils::H160, + value: ::core::option::Option< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u128, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_set_ethereum_account", + types::ForceSetEthereumAccount { address, value }, + [ + 117u8, 78u8, 235u8, 63u8, 12u8, 134u8, 124u8, 233u8, 31u8, 24u8, 38u8, + 34u8, 175u8, 211u8, 77u8, 164u8, 205u8, 89u8, 147u8, 156u8, 67u8, + 193u8, 232u8, 47u8, 142u8, 141u8, 114u8, 240u8, 111u8, 116u8, 249u8, + 225u8, + ], + ) + } + #[doc = "Sets [`NativeCollectionIds`] to `native_collection_id`. Only callable by"] + #[doc = "[`Config::ForceOrigin`]."] + pub fn force_set_ethereum_collection_id( + &self, + ethereum_collection_id: ::core::primitive::u128, + native_collection_id: ::core::option::Option<::core::primitive::u128>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_set_ethereum_collection_id", + types::ForceSetEthereumCollectionId { + ethereum_collection_id, + native_collection_id, + }, + [ + 19u8, 81u8, 75u8, 219u8, 175u8, 113u8, 211u8, 180u8, 196u8, 196u8, + 58u8, 20u8, 170u8, 100u8, 135u8, 97u8, 192u8, 240u8, 140u8, 144u8, + 64u8, 172u8, 177u8, 89u8, 159u8, 68u8, 199u8, 31u8, 115u8, 49u8, 20u8, + 115u8, + ], + ) + } + #[doc = "Sets [`UnmintableTokenIds`] to `value`. Only callable by [`Config::ForceOrigin`]."] + pub fn force_set_unmintable_token_ids( + &self, + collection_id: ::core::primitive::u128, + value: ::core::option::Option< + runtime_types::pallet_multi_tokens::features::ethereum::RangeInclusive< + ::core::primitive::u128, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_set_unmintable_token_ids", + types::ForceSetUnmintableTokenIds { + collection_id, + value, + }, + [ + 107u8, 248u8, 116u8, 35u8, 36u8, 96u8, 216u8, 202u8, 204u8, 108u8, + 179u8, 3u8, 227u8, 211u8, 179u8, 204u8, 115u8, 23u8, 63u8, 81u8, 3u8, + 141u8, 142u8, 219u8, 13u8, 210u8, 152u8, 180u8, 33u8, 17u8, 157u8, + 64u8, + ], + ) + } + #[doc = "Creates a new collection from `descriptor` at `collection_id`, origin must be root"] + #[doc = "It differes from `force_create_collection` since it writes to NativeCollectionId and"] + #[doc = "UnmintableTokenIds"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::DepositReserveFailed`] if the deposit cannot be reserved"] + #[doc = "- [`Error::CollectionIdAlreadyInUse`] if the collection id is already in use"] + pub fn force_create_ethereum_collection( + &self, + owner: ::subxt::utils::AccountId32, + native_collection_id: ::core::primitive::u128, + ethereum_collection_id: ::core::primitive::u128, + token_range : runtime_types :: pallet_multi_tokens :: features :: ethereum :: RangeInclusive < :: core :: primitive :: u128 >, + descriptor : runtime_types :: ep_multi_tokens :: collection :: DefaultCollectionDescriptor < :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: AttributeKeyValuePair < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > > > >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "MultiTokens", + "force_create_ethereum_collection", + types::ForceCreateEthereumCollection { + owner, + native_collection_id, + ethereum_collection_id, + token_range, + descriptor: ::std::boxed::Box::new(descriptor), + }, + [ + 231u8, 242u8, 19u8, 66u8, 154u8, 103u8, 12u8, 209u8, 86u8, 53u8, 79u8, + 238u8, 52u8, 80u8, 241u8, 131u8, 81u8, 148u8, 252u8, 35u8, 83u8, 170u8, + 170u8, 190u8, 137u8, 142u8, 194u8, 40u8, 174u8, 30u8, 123u8, 60u8, + ], + ) + } + } + } + #[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_multi_tokens::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A new collection was created"] + pub struct CollectionCreated { + pub collection_id: ::core::primitive::u128, + pub owner: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for CollectionCreated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "CollectionCreated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A collection was destroyed."] + pub struct CollectionDestroyed { + pub collection_id: ::core::primitive::u128, + pub caller: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for CollectionDestroyed { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "CollectionDestroyed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A collection was mutated"] + pub struct CollectionMutated { + pub collection_id: ::core::primitive::u128, + pub mutation: runtime_types::ep_multi_tokens::collection::DefaultCollectionMutation< + ::subxt::utils::AccountId32, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + >, + } + impl ::subxt::events::StaticEvent for CollectionMutated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "CollectionMutated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Units of a token were minted"] + pub struct Minted { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub issuer: runtime_types::ep_multi_tokens::types::RootOrSigned< + ::subxt::utils::AccountId32, + >, + pub recipient: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Minted { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "Minted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A token was created"] + pub struct TokenCreated { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub issuer: runtime_types::ep_multi_tokens::types::RootOrSigned< + ::subxt::utils::AccountId32, + >, + pub initial_supply: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for TokenCreated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "TokenCreated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A token was mutated"] + pub struct TokenMutated { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub mutation: runtime_types::ep_multi_tokens::token::DefaultTokenMutation< + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::ep_multi_tokens::frame::DefaultTokenMetadata< + runtime_types::ep_multi_tokens::frame::DefaultForeignTokenMetadata< + ::core::primitive::u128, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + >, + } + impl ::subxt::events::StaticEvent for TokenMutated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "TokenMutated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Units of a token were burned"] + pub struct Burned { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Burned { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "Burned"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A token was destroyed"] + pub struct TokenDestroyed { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub caller: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for TokenDestroyed { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "TokenDestroyed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Units of a token were transferred"] + pub struct Transferred { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub operator: ::subxt::utils::AccountId32, + 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 = "MultiTokens"; + const EVENT: &'static str = "Transferred"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Collection, token or account was frozen"] + pub struct Frozen( + pub runtime_types::ep_multi_tokens::types::Freeze< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + ); + impl ::subxt::events::StaticEvent for Frozen { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "Frozen"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Collection, token or account was unfrozen"] + pub struct Thawed( + pub runtime_types::ep_multi_tokens::types::Freeze< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + >, + ); + impl ::subxt::events::StaticEvent for Thawed { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "Thawed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "New attribute has been set"] + pub struct AttributeSet { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::option::Option<::core::primitive::u128>, + pub key: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + pub value: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + } + impl ::subxt::events::StaticEvent for AttributeSet { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "AttributeSet"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An attribute has been removed"] + pub struct AttributeRemoved { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::option::Option<::core::primitive::u128>, + pub key: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + } + impl ::subxt::events::StaticEvent for AttributeRemoved { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "AttributeRemoved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An approval took place. If `token_id` is `None`, it applies to the whole collection."] + pub struct Approved { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::option::Option<::core::primitive::u128>, + pub owner: ::subxt::utils::AccountId32, + pub operator: ::subxt::utils::AccountId32, + pub amount: ::core::option::Option<::core::primitive::u128>, + pub expiration: ::core::option::Option<::core::primitive::u32>, + } + impl ::subxt::events::StaticEvent for Approved { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "Approved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An unapproval took place. If `token_id` is `None`, it applies to the collection."] + pub struct Unapproved { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::option::Option<::core::primitive::u128>, + pub owner: ::subxt::utils::AccountId32, + pub operator: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for Unapproved { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "Unapproved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A new collection account was created"] + pub struct CollectionAccountCreated { + pub collection_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for CollectionAccountCreated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "CollectionAccountCreated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A new token account was created"] + pub struct TokenAccountCreated { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + pub balance: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for TokenAccountCreated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "TokenAccountCreated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A collection account was destroyed"] + pub struct CollectionAccountDestroyed { + pub collection_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for CollectionAccountDestroyed { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "CollectionAccountDestroyed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A token account was destroyed"] + pub struct TokenAccountDestroyed { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for TokenAccountDestroyed { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "TokenAccountDestroyed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Token units were reserved"] + pub struct Reserved { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + pub reserve_id: ::core::option::Option<[::core::primitive::u8; 8usize]>, + } + impl ::subxt::events::StaticEvent for Reserved { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "Reserved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Token units were unreserved"] + pub struct Unreserved { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + pub reserve_id: ::core::option::Option<[::core::primitive::u8; 8usize]>, + } + impl ::subxt::events::StaticEvent for Unreserved { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "Unreserved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Reserved token units were moved"] + pub struct MovedReserves { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub source: ::subxt::utils::AccountId32, + pub destination: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + pub reserve_id: ::core::option::Option<[::core::primitive::u8; 8usize]>, + } + impl ::subxt::events::StaticEvent for MovedReserves { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "MovedReserves"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Reserved token units were transferred"] + pub struct ReserveRepatriated { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub source: ::subxt::utils::AccountId32, + pub destination: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + pub reserve_id: ::core::option::Option<[::core::primitive::u8; 8usize]>, + } + impl ::subxt::events::StaticEvent for ReserveRepatriated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "ReserveRepatriated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The balance of an account was set"] + pub struct BalanceSet { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + pub balance: ::core::primitive::u128, + pub reserved_balance: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for BalanceSet { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "BalanceSet"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Token units were withdrawn"] + pub struct Withdraw { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Withdraw { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "Withdraw"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Token units were deposited"] + pub struct Deposit { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Deposit { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "Deposit"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An amount of tokens were slashed from account"] + pub struct Slashed { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + pub amount: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for Slashed { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "Slashed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Collection storage was set to `value`"] + pub struct CollectionUpdated { + pub collection_id: ::core::primitive::u128, + pub value: ::core::option::Option< + runtime_types::ep_multi_tokens::collection::Collection< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::DefaultCollectionPolicy< + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + (), + >, + >, + >, + } + impl ::subxt::events::StaticEvent for CollectionUpdated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "CollectionUpdated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Token storage was set to `value`"] + pub struct TokenUpdated { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub value: ::core::option::Option< + runtime_types::ep_multi_tokens::token::Token< + ::core::primitive::u128, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::ep_multi_tokens::frame::DefaultTokenMetadata< + runtime_types::ep_multi_tokens::frame::DefaultForeignTokenMetadata< + ::core::primitive::u128, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + >, + >, + } + impl ::subxt::events::StaticEvent for TokenUpdated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "TokenUpdated"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "NextCollectionId storage was set to `collection_id`"] + pub struct NextCollectionIdUpdated { + pub collection_id: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for NextCollectionIdUpdated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "NextCollectionIdUpdated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "TokenAccount storage was set to `value`"] + pub struct CollectionAccountUpdated { pub collection_id : :: core :: primitive :: u128 , pub account_id : :: subxt :: utils :: AccountId32 , pub value : :: core :: option :: Option < runtime_types :: pallet_multi_tokens :: features :: collection :: types :: CollectionAccount < :: subxt :: utils :: AccountId32 , :: core :: option :: Option < :: core :: primitive :: u32 > , runtime_types :: enjin_runtime :: MaxOperatorsPerAccount > > , } + impl ::subxt::events::StaticEvent for CollectionAccountUpdated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "CollectionAccountUpdated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "TokenAccount storage was set to `value`"] + pub struct TokenAccountUpdated { + pub collection_id: ::core::primitive::u128, + pub token_id: ::core::primitive::u128, + pub account_id: ::subxt::utils::AccountId32, + pub value: ::core::option::Option< + runtime_types::pallet_multi_tokens::features::token::types::TokenAccount< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::pallet_multi_tokens::features::operator::types::Approval< + ::core::primitive::u128, + ::core::option::Option<::core::primitive::u32>, + >, + runtime_types::enjin_runtime::MaxOperatorsPerAccount, + [::core::primitive::u8; 8usize], + [::core::primitive::u8; 8usize], + runtime_types::enjin_runtime::MaxMultiTokensReserves, + runtime_types::enjin_runtime::MaxMultiTokensLocks, + >, + >, + } + impl ::subxt::events::StaticEvent for TokenAccountUpdated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "TokenAccountUpdated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Migration stage updated"] + pub struct MigrationStatusUpdated { + pub stage: runtime_types::ep_core::frame::migrations::MigrationStage, + } + impl ::subxt::events::StaticEvent for MigrationStatusUpdated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "MigrationStatusUpdated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Collections were claimed"] + pub struct ClaimedCollections { + pub account_id: ::subxt::utils::AccountId32, + pub ethereum_address: ::subxt::utils::H160, + pub collection_ids: ::std::vec::Vec< + runtime_types::pallet_multi_tokens::features::claim::CollectionIdPair< + ::core::primitive::u128, + >, + >, + } + impl ::subxt::events::StaticEvent for ClaimedCollections { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "ClaimedCollections"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Tokens were claimed"] + pub struct ClaimedTokens { + pub account_id: ::subxt::utils::AccountId32, + pub ethereum_address: ::subxt::utils::H160, + pub asset_ids: ::std::vec::Vec< + runtime_types::pallet_multi_tokens::features::claim::AssetIdWithEth< + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + pub more_tokens_remain: ::core::primitive::bool, + } + impl ::subxt::events::StaticEvent for ClaimedTokens { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "ClaimedTokens"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Claims tokens initiated"] + pub struct ClaimTokensInitiated { + pub account_id: ::subxt::utils::AccountId32, + pub ethereum_address: ::subxt::utils::H160, + } + impl ::subxt::events::StaticEvent for ClaimTokensInitiated { + const PALLET: &'static str = "MultiTokens"; + const EVENT: &'static str = "ClaimTokensInitiated"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Accounts per token"] + pub fn token_accounts_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_multi_tokens::features::token::types::TokenAccount< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::pallet_multi_tokens::features::operator::types::Approval< + ::core::primitive::u128, + ::core::option::Option<::core::primitive::u32>, + >, + runtime_types::enjin_runtime::MaxOperatorsPerAccount, + [::core::primitive::u8; 8usize], + [::core::primitive::u8; 8usize], + runtime_types::enjin_runtime::MaxMultiTokensReserves, + runtime_types::enjin_runtime::MaxMultiTokensLocks, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "TokenAccounts", + vec![], + [ + 56u8, 196u8, 35u8, 152u8, 218u8, 107u8, 9u8, 234u8, 158u8, 42u8, 251u8, + 124u8, 10u8, 253u8, 203u8, 194u8, 213u8, 122u8, 225u8, 209u8, 15u8, + 192u8, 18u8, 70u8, 159u8, 223u8, 54u8, 12u8, 52u8, 53u8, 143u8, 73u8, + ], + ) + } + #[doc = " Accounts per token"] + pub fn token_accounts_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_multi_tokens::features::token::types::TokenAccount< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::pallet_multi_tokens::features::operator::types::Approval< + ::core::primitive::u128, + ::core::option::Option<::core::primitive::u32>, + >, + runtime_types::enjin_runtime::MaxOperatorsPerAccount, + [::core::primitive::u8; 8usize], + [::core::primitive::u8; 8usize], + runtime_types::enjin_runtime::MaxMultiTokensReserves, + runtime_types::enjin_runtime::MaxMultiTokensLocks, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "TokenAccounts", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 56u8, 196u8, 35u8, 152u8, 218u8, 107u8, 9u8, 234u8, 158u8, 42u8, 251u8, + 124u8, 10u8, 253u8, 203u8, 194u8, 213u8, 122u8, 225u8, 209u8, 15u8, + 192u8, 18u8, 70u8, 159u8, 223u8, 54u8, 12u8, 52u8, 53u8, 143u8, 73u8, + ], + ) + } + #[doc = " Accounts per token"] + pub fn token_accounts_iter2( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + _1: impl ::std::borrow::Borrow<::core::primitive::u128>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_multi_tokens::features::token::types::TokenAccount< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::pallet_multi_tokens::features::operator::types::Approval< + ::core::primitive::u128, + ::core::option::Option<::core::primitive::u32>, + >, + runtime_types::enjin_runtime::MaxOperatorsPerAccount, + [::core::primitive::u8; 8usize], + [::core::primitive::u8; 8usize], + runtime_types::enjin_runtime::MaxMultiTokensReserves, + runtime_types::enjin_runtime::MaxMultiTokensLocks, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "TokenAccounts", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 56u8, 196u8, 35u8, 152u8, 218u8, 107u8, 9u8, 234u8, 158u8, 42u8, 251u8, + 124u8, 10u8, 253u8, 203u8, 194u8, 213u8, 122u8, 225u8, 209u8, 15u8, + 192u8, 18u8, 70u8, 159u8, 223u8, 54u8, 12u8, 52u8, 53u8, 143u8, 73u8, + ], + ) + } + #[doc = " Accounts per token"] + pub fn token_accounts( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + _1: impl ::std::borrow::Borrow<::core::primitive::u128>, + _2: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_multi_tokens::features::token::types::TokenAccount< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::pallet_multi_tokens::features::operator::types::Approval< + ::core::primitive::u128, + ::core::option::Option<::core::primitive::u32>, + >, + runtime_types::enjin_runtime::MaxOperatorsPerAccount, + [::core::primitive::u8; 8usize], + [::core::primitive::u8; 8usize], + runtime_types::enjin_runtime::MaxMultiTokensReserves, + runtime_types::enjin_runtime::MaxMultiTokensLocks, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "TokenAccounts", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_2.borrow()), + ], + [ + 56u8, 196u8, 35u8, 152u8, 218u8, 107u8, 9u8, 234u8, 158u8, 42u8, 251u8, + 124u8, 10u8, 253u8, 203u8, 194u8, 213u8, 122u8, 225u8, 209u8, 15u8, + 192u8, 18u8, 70u8, 159u8, 223u8, 54u8, 12u8, 52u8, 53u8, 143u8, 73u8, + ], + ) + } + #[doc = " The collections in existence and their ownership details."] + pub fn collections_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_multi_tokens::collection::Collection< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::DefaultCollectionPolicy< + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + (), + >, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "Collections", + vec![], + [ + 107u8, 10u8, 130u8, 186u8, 51u8, 77u8, 183u8, 161u8, 26u8, 23u8, 63u8, + 123u8, 102u8, 71u8, 134u8, 220u8, 168u8, 108u8, 62u8, 127u8, 33u8, + 107u8, 246u8, 210u8, 47u8, 14u8, 129u8, 72u8, 224u8, 68u8, 5u8, 152u8, + ], + ) + } + #[doc = " The collections in existence and their ownership details."] + pub fn collections( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_multi_tokens::collection::Collection< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::DefaultCollectionPolicy< + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + (), + >, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "Collections", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 107u8, 10u8, 130u8, 186u8, 51u8, 77u8, 183u8, 161u8, 26u8, 23u8, 63u8, + 123u8, 102u8, 71u8, 134u8, 220u8, 168u8, 108u8, 62u8, 127u8, 33u8, + 107u8, 246u8, 210u8, 47u8, 14u8, 129u8, 72u8, 224u8, 68u8, 5u8, 152u8, + ], + ) + } + #[doc = " Tokens storage"] + pub fn tokens_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_multi_tokens::token::Token< + ::core::primitive::u128, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::ep_multi_tokens::frame::DefaultTokenMetadata< + runtime_types::ep_multi_tokens::frame::DefaultForeignTokenMetadata< + ::core::primitive::u128, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "Tokens", + vec![], + [ + 240u8, 40u8, 95u8, 79u8, 245u8, 40u8, 238u8, 11u8, 44u8, 134u8, 226u8, + 209u8, 214u8, 36u8, 190u8, 123u8, 210u8, 192u8, 48u8, 56u8, 145u8, + 223u8, 173u8, 90u8, 70u8, 139u8, 227u8, 44u8, 144u8, 32u8, 58u8, 234u8, + ], + ) + } + #[doc = " Tokens storage"] + pub fn tokens_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_multi_tokens::token::Token< + ::core::primitive::u128, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::ep_multi_tokens::frame::DefaultTokenMetadata< + runtime_types::ep_multi_tokens::frame::DefaultForeignTokenMetadata< + ::core::primitive::u128, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "Tokens", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 240u8, 40u8, 95u8, 79u8, 245u8, 40u8, 238u8, 11u8, 44u8, 134u8, 226u8, + 209u8, 214u8, 36u8, 190u8, 123u8, 210u8, 192u8, 48u8, 56u8, 145u8, + 223u8, 173u8, 90u8, 70u8, 139u8, 227u8, 44u8, 144u8, 32u8, 58u8, 234u8, + ], + ) + } + #[doc = " Tokens storage"] + pub fn tokens( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + _1: impl ::std::borrow::Borrow<::core::primitive::u128>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_multi_tokens::token::Token< + ::core::primitive::u128, + ::core::primitive::u128, + runtime_types::ep_multi_tokens::policy::market::DefaultRoyalty< + ::subxt::utils::AccountId32, + >, + runtime_types::ep_multi_tokens::frame::DefaultTokenMetadata< + runtime_types::ep_multi_tokens::frame::DefaultForeignTokenMetadata< + ::core::primitive::u128, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenNameLength, + >, + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::ForeignTokenSymbolLength, + >, + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + >, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "Tokens", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 240u8, 40u8, 95u8, 79u8, 245u8, 40u8, 238u8, 11u8, 44u8, 134u8, 226u8, + 209u8, 214u8, 36u8, 190u8, 123u8, 210u8, 192u8, 48u8, 56u8, 145u8, + 223u8, 173u8, 90u8, 70u8, 139u8, 227u8, 44u8, 144u8, 32u8, 58u8, 234u8, + ], + ) + } + #[doc = " Sequencer for collectionID generators."] + pub fn next_collection_id( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "NextCollectionId", + vec![], + [ + 88u8, 167u8, 150u8, 197u8, 194u8, 181u8, 233u8, 77u8, 135u8, 120u8, + 141u8, 254u8, 134u8, 223u8, 171u8, 24u8, 60u8, 16u8, 99u8, 195u8, + 223u8, 148u8, 82u8, 221u8, 18u8, 232u8, 241u8, 248u8, 57u8, 87u8, + 176u8, 167u8, + ], + ) + } + #[doc = " Stores information for an account per collection"] pub fn collection_accounts_iter (& self ,) -> :: subxt :: storage :: address :: Address :: < :: subxt :: storage :: address :: StaticStorageMapKey , runtime_types :: pallet_multi_tokens :: features :: collection :: types :: CollectionAccount < :: subxt :: utils :: AccountId32 , :: core :: option :: Option < :: core :: primitive :: u32 > , runtime_types :: enjin_runtime :: MaxOperatorsPerAccount > , () , () , :: subxt :: storage :: address :: Yes >{ + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "CollectionAccounts", + vec![], + [ + 208u8, 213u8, 21u8, 43u8, 186u8, 205u8, 26u8, 14u8, 216u8, 40u8, 250u8, + 116u8, 120u8, 241u8, 158u8, 166u8, 52u8, 98u8, 153u8, 225u8, 15u8, + 82u8, 101u8, 205u8, 110u8, 141u8, 135u8, 186u8, 82u8, 239u8, 11u8, + 93u8, + ], + ) + } + #[doc = " Stores information for an account per collection"] pub fn collection_accounts_iter1 (& self , _0 : impl :: std :: borrow :: Borrow < :: core :: primitive :: u128 > ,) -> :: subxt :: storage :: address :: Address :: < :: subxt :: storage :: address :: StaticStorageMapKey , runtime_types :: pallet_multi_tokens :: features :: collection :: types :: CollectionAccount < :: subxt :: utils :: AccountId32 , :: core :: option :: Option < :: core :: primitive :: u32 > , runtime_types :: enjin_runtime :: MaxOperatorsPerAccount > , () , () , :: subxt :: storage :: address :: Yes >{ + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "CollectionAccounts", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 208u8, 213u8, 21u8, 43u8, 186u8, 205u8, 26u8, 14u8, 216u8, 40u8, 250u8, + 116u8, 120u8, 241u8, 158u8, 166u8, 52u8, 98u8, 153u8, 225u8, 15u8, + 82u8, 101u8, 205u8, 110u8, 141u8, 135u8, 186u8, 82u8, 239u8, 11u8, + 93u8, + ], + ) + } + #[doc = " Stores information for an account per collection"] pub fn collection_accounts (& self , _0 : impl :: std :: borrow :: Borrow < :: core :: primitive :: u128 > , _1 : impl :: std :: borrow :: Borrow < :: subxt :: utils :: AccountId32 > ,) -> :: subxt :: storage :: address :: Address :: < :: subxt :: storage :: address :: StaticStorageMapKey , runtime_types :: pallet_multi_tokens :: features :: collection :: types :: CollectionAccount < :: subxt :: utils :: AccountId32 , :: core :: option :: Option < :: core :: primitive :: u32 > , runtime_types :: enjin_runtime :: MaxOperatorsPerAccount > , :: subxt :: storage :: address :: Yes , () , () >{ + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "CollectionAccounts", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 208u8, 213u8, 21u8, 43u8, 186u8, 205u8, 26u8, 14u8, 216u8, 40u8, 250u8, + 116u8, 120u8, 241u8, 158u8, 166u8, 52u8, 98u8, 153u8, 225u8, 15u8, + 82u8, 101u8, 205u8, 110u8, 141u8, 135u8, 186u8, 82u8, 239u8, 11u8, + 93u8, + ], + ) + } + #[doc = " Metadata of collections and tokens."] + pub fn attributes_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_multi_tokens::attribute::Attribute< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "Attributes", + vec![], + [ + 143u8, 228u8, 150u8, 202u8, 93u8, 226u8, 237u8, 46u8, 64u8, 30u8, + 154u8, 251u8, 191u8, 245u8, 82u8, 231u8, 52u8, 241u8, 189u8, 175u8, + 230u8, 112u8, 127u8, 63u8, 254u8, 221u8, 222u8, 43u8, 84u8, 102u8, + 134u8, 164u8, + ], + ) + } + #[doc = " Metadata of collections and tokens."] + pub fn attributes_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_multi_tokens::attribute::Attribute< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "Attributes", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 143u8, 228u8, 150u8, 202u8, 93u8, 226u8, 237u8, 46u8, 64u8, 30u8, + 154u8, 251u8, 191u8, 245u8, 82u8, 231u8, 52u8, 241u8, 189u8, 175u8, + 230u8, 112u8, 127u8, 63u8, 254u8, 221u8, 222u8, 43u8, 84u8, 102u8, + 134u8, 164u8, + ], + ) + } + #[doc = " Metadata of collections and tokens."] + pub fn attributes_iter2( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + _1: impl ::std::borrow::Borrow<::core::option::Option<::core::primitive::u128>>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_multi_tokens::attribute::Attribute< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "Attributes", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 143u8, 228u8, 150u8, 202u8, 93u8, 226u8, 237u8, 46u8, 64u8, 30u8, + 154u8, 251u8, 191u8, 245u8, 82u8, 231u8, 52u8, 241u8, 189u8, 175u8, + 230u8, 112u8, 127u8, 63u8, 254u8, 221u8, 222u8, 43u8, 84u8, 102u8, + 134u8, 164u8, + ], + ) + } + #[doc = " Metadata of collections and tokens."] + pub fn attributes( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + _1: impl ::std::borrow::Borrow<::core::option::Option<::core::primitive::u128>>, + _2: impl ::std::borrow::Borrow< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_multi_tokens::attribute::Attribute< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "Attributes", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_2.borrow()), + ], + [ + 143u8, 228u8, 150u8, 202u8, 93u8, 226u8, 237u8, 46u8, 64u8, 30u8, + 154u8, 251u8, 191u8, 245u8, 82u8, 231u8, 52u8, 241u8, 189u8, 175u8, + 230u8, 112u8, 127u8, 63u8, 254u8, 221u8, 222u8, 43u8, 84u8, 102u8, + 134u8, 164u8, + ], + ) + } + #[doc = " Map of Locations to AssetIds of Foreign Tokens"] + pub fn asset_ids_by_location_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "AssetIdsByLocation", + vec![], + [ + 77u8, 27u8, 252u8, 238u8, 176u8, 113u8, 119u8, 197u8, 94u8, 251u8, + 197u8, 56u8, 136u8, 210u8, 142u8, 227u8, 228u8, 26u8, 5u8, 232u8, + 208u8, 30u8, 140u8, 200u8, 82u8, 101u8, 13u8, 152u8, 107u8, 64u8, + 148u8, 112u8, + ], + ) + } + #[doc = " Map of Locations to AssetIds of Foreign Tokens"] + pub fn asset_ids_by_location( + &self, + _0: impl ::std::borrow::Borrow, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "AssetIdsByLocation", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 77u8, 27u8, 252u8, 238u8, 176u8, 113u8, 119u8, 197u8, 94u8, 251u8, + 197u8, 56u8, 136u8, 210u8, 142u8, 227u8, 228u8, 26u8, 5u8, 232u8, + 208u8, 30u8, 140u8, 200u8, 82u8, 101u8, 13u8, 152u8, 107u8, 64u8, + 148u8, 112u8, + ], + ) + } + #[doc = " Stores last iterated keys for migrations. Used by multi block migrations"] + #[doc = " to resume from the last iterated key."] + #[doc = ""] + #[doc = " Key is the storage prefix, value is the status of migration and last iterated key, if any."] + #[doc = " i.e `[\"MultiTokens\", \"TokenAccounts\"] -> (collection_id, token_id, account_id)`"] + pub fn migrations_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_core::frame::migrations::Migration< + runtime_types::enjin_runtime::MaxMigrationKeyLength, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "Migrations", + vec![], + [ + 45u8, 128u8, 158u8, 125u8, 55u8, 170u8, 54u8, 85u8, 67u8, 224u8, 8u8, + 101u8, 165u8, 64u8, 46u8, 189u8, 228u8, 95u8, 82u8, 77u8, 134u8, 0u8, + 19u8, 117u8, 208u8, 80u8, 251u8, 67u8, 2u8, 45u8, 233u8, 134u8, + ], + ) + } + #[doc = " Stores last iterated keys for migrations. Used by multi block migrations"] + #[doc = " to resume from the last iterated key."] + #[doc = ""] + #[doc = " Key is the storage prefix, value is the status of migration and last iterated key, if any."] + #[doc = " i.e `[\"MultiTokens\", \"TokenAccounts\"] -> (collection_id, token_id, account_id)`"] + pub fn migrations( + &self, + _0: impl ::std::borrow::Borrow< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_core::frame::migrations::Migration< + runtime_types::enjin_runtime::MaxMigrationKeyLength, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "Migrations", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 45u8, 128u8, 158u8, 125u8, 55u8, 170u8, 54u8, 85u8, 67u8, 224u8, 8u8, + 101u8, 165u8, 64u8, 46u8, 189u8, 228u8, 95u8, 82u8, 77u8, 134u8, 0u8, + 19u8, 117u8, 208u8, 80u8, 251u8, 67u8, 2u8, 45u8, 233u8, 134u8, + ], + ) + } + #[doc = " Status of the current multi-block migration"] + pub fn migration_status( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::ep_core::frame::migrations::MigrationStage, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "MigrationStatus", + vec![], + [ + 83u8, 140u8, 99u8, 232u8, 195u8, 179u8, 50u8, 247u8, 221u8, 44u8, + 146u8, 167u8, 5u8, 8u8, 151u8, 192u8, 157u8, 193u8, 27u8, 77u8, 249u8, + 218u8, 27u8, 2u8, 141u8, 254u8, 39u8, 34u8, 132u8, 91u8, 69u8, 237u8, + ], + ) + } + #[doc = " Stores data for an ethereum address"] + pub fn claimable_collection_ids_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "ClaimableCollectionIds", + vec![], + [ + 165u8, 158u8, 32u8, 207u8, 114u8, 19u8, 91u8, 149u8, 68u8, 195u8, + 203u8, 243u8, 63u8, 2u8, 226u8, 130u8, 53u8, 235u8, 68u8, 109u8, 46u8, + 93u8, 70u8, 61u8, 245u8, 81u8, 161u8, 205u8, 231u8, 134u8, 157u8, + 119u8, + ], + ) + } + #[doc = " Stores data for an ethereum address"] + pub fn claimable_collection_ids( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::H160>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "ClaimableCollectionIds", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 165u8, 158u8, 32u8, 207u8, 114u8, 19u8, 91u8, 149u8, 68u8, 195u8, + 203u8, 243u8, 63u8, 2u8, 226u8, 130u8, 53u8, 235u8, 68u8, 109u8, 46u8, + 93u8, 70u8, 61u8, 245u8, 81u8, 161u8, 205u8, 231u8, 134u8, 157u8, + 119u8, + ], + ) + } + #[doc = " These token ids can only be minted by calling `claim_token`"] + pub fn unmintable_token_ids_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_multi_tokens::features::ethereum::RangeInclusive< + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "UnmintableTokenIds", + vec![], + [ + 246u8, 20u8, 181u8, 182u8, 75u8, 233u8, 79u8, 135u8, 5u8, 210u8, 113u8, + 204u8, 13u8, 190u8, 80u8, 121u8, 125u8, 57u8, 133u8, 102u8, 87u8, 14u8, + 246u8, 135u8, 126u8, 194u8, 18u8, 183u8, 170u8, 221u8, 244u8, 187u8, + ], + ) + } + #[doc = " These token ids can only be minted by calling `claim_token`"] + pub fn unmintable_token_ids( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_multi_tokens::features::ethereum::RangeInclusive< + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "UnmintableTokenIds", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 246u8, 20u8, 181u8, 182u8, 75u8, 233u8, 79u8, 135u8, 5u8, 210u8, 113u8, + 204u8, 13u8, 190u8, 80u8, 121u8, 125u8, 57u8, 133u8, 102u8, 87u8, 14u8, + 246u8, 135u8, 126u8, 194u8, 18u8, 183u8, 170u8, 221u8, 244u8, 187u8, + ], + ) + } + #[doc = " Map of ethereum collection id to the native collection id"] + pub fn native_collection_ids_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "NativeCollectionIds", + vec![], + [ + 133u8, 178u8, 100u8, 208u8, 79u8, 71u8, 203u8, 61u8, 109u8, 181u8, + 86u8, 102u8, 12u8, 117u8, 237u8, 9u8, 146u8, 99u8, 95u8, 145u8, 228u8, + 173u8, 103u8, 84u8, 227u8, 128u8, 71u8, 218u8, 51u8, 118u8, 255u8, + 155u8, + ], + ) + } + #[doc = " Map of ethereum collection id to the native collection id"] + pub fn native_collection_ids( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u128>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u128, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "MultiTokens", + "NativeCollectionIds", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 133u8, 178u8, 100u8, 208u8, 79u8, 71u8, 203u8, 61u8, 109u8, 181u8, + 86u8, 102u8, 12u8, 117u8, 237u8, 9u8, 146u8, 99u8, 95u8, 145u8, 228u8, + 173u8, 103u8, 84u8, 227u8, 128u8, 71u8, 218u8, 51u8, 118u8, 255u8, + 155u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " The base deposit required for setting an attribute"] + pub fn attribute_deposit_base( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "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 = " Additional deposit per byte for setting an attribute"] + pub fn attribute_deposit_per_byte( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "AttributeDepositPerByte", + [ + 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 max number of recipients allowed in a batch transfer"] + pub fn max_recipients_per_batch_transfer( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxRecipientsPerBatchTransfer", + [ + 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 tokens allowed in a batch transfer"] + pub fn max_tokens_per_batch_transfer( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxTokensPerBatchTransfer", + [ + 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 attributes to set in one call"] + pub fn max_batch_attributes_per_call( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxBatchAttributesPerCall", + [ + 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 recipients allowed in a batch mint"] + pub fn max_recipients_per_batch_mint( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxRecipientsPerBatchMint", + [ + 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 = " Amount of [`Balance`](BalanceOf) reserved to create a collection"] + pub fn collection_creation_deposit( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "CollectionCreationDeposit", + [ + 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`](BalanceOf) that must be reserved for a token account to be"] + #[doc = " maintained"] + pub fn token_account_deposit( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "TokenAccountDeposit", + [ + 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 the idle operation queue"] + pub fn max_idle_operation_queue_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxIdleOperationQueueLength", + [ + 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 weight of the idle operation queue"] + pub fn max_idle_operation_queue_weight( + &self, + ) -> ::subxt::constants::Address + { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxIdleOperationQueueWeight", + [ + 149u8, 252u8, 129u8, 80u8, 169u8, 36u8, 79u8, 127u8, 240u8, 156u8, + 56u8, 202u8, 219u8, 86u8, 5u8, 65u8, 245u8, 148u8, 138u8, 243u8, 210u8, + 128u8, 234u8, 216u8, 240u8, 219u8, 123u8, 235u8, 21u8, 158u8, 237u8, + 112u8, + ], + ) + } + #[doc = " The max number of operators a [`TokenAccount`] and an [`CollectionAccount`] can have"] + pub fn max_operators_per_account( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxOperatorsPerAccount", + [ + 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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "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, + ], + ) + } + #[doc = " The maximum number of locks that can exist on a token account"] + pub fn max_locks(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "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 explicit royalty currencies"] + pub fn max_explicit_royalty_currencies( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxExplicitRoyaltyCurrencies", + [ + 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 [`NativeAssetInfo`](ep_multi_tokens::NativeAssetInfo) for this pallet"] + pub fn native_asset_info( + &self, + ) -> ::subxt::constants::Address< + runtime_types::ep_multi_tokens::types::NativeAssetInfo< + runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + >, + > { + ::subxt::constants::Address::new_static( + "MultiTokens", + "NativeAssetInfo", + [ + 161u8, 104u8, 182u8, 118u8, 148u8, 118u8, 196u8, 223u8, 4u8, 146u8, + 61u8, 219u8, 85u8, 126u8, 70u8, 5u8, 202u8, 52u8, 119u8, 215u8, 246u8, + 234u8, 153u8, 85u8, 110u8, 122u8, 26u8, 59u8, 31u8, 64u8, 152u8, 35u8, + ], + ) + } + #[doc = " The id used for making reservations with this pallet"] + pub fn reserve_identifier( + &self, + ) -> ::subxt::constants::Address<[::core::primitive::u8; 8usize]> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "ReserveIdentifier", + [ + 157u8, 118u8, 79u8, 88u8, 241u8, 22u8, 185u8, 37u8, 42u8, 20u8, 133u8, + 240u8, 11u8, 25u8, 66u8, 154u8, 84u8, 163u8, 78u8, 92u8, 171u8, 82u8, + 248u8, 76u8, 189u8, 70u8, 142u8, 249u8, 153u8, 84u8, 180u8, 60u8, + ], + ) + } + #[doc = " Max length of name stored in [`TokenMetadata`]"] + pub fn token_metadata_max_name_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "TokenMetadataMaxNameLength", + [ + 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 = " Max length of symbol stored in [`TokenMetadata`]"] + pub fn token_metadata_max_symbol_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "TokenMetadataMaxSymbolLength", + [ + 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 = " Max length for the [`Migrations`] storage"] + pub fn max_migration_key_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxMigrationKeyLength", + [ + 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 block weight to consume during migration"] + pub fn migration_weight_limit_percentage( + &self, + ) -> ::subxt::constants::Address + { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MigrationWeightLimitPercentage", + [ + 65u8, 93u8, 120u8, 165u8, 204u8, 81u8, 159u8, 163u8, 93u8, 135u8, + 114u8, 121u8, 147u8, 35u8, 215u8, 213u8, 4u8, 223u8, 83u8, 37u8, 225u8, + 200u8, 189u8, 156u8, 140u8, 36u8, 58u8, 46u8, 42u8, 232u8, 155u8, 0u8, + ], + ) + } + #[doc = " Bound for the number of extrinsics to pause during multi block migration"] + pub fn max_migration_extrinsic_infos_to_pause( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxMigrationExtrinsicInfosToPause", + [ + 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 = " List of extrinsics to pause during multi block migration (this pallet is excluded)"] + pub fn migration_extrinsics_infos_to_pause( + &self, + ) -> ::subxt::constants::Address< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::ep_core::frame::types::ExtrinsicInfo< + runtime_types::enjin_runtime::MaxNameLength, + >, + >, + > { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MigrationExtrinsicsInfosToPause", + [ + 110u8, 231u8, 90u8, 105u8, 228u8, 114u8, 144u8, 249u8, 159u8, 154u8, + 19u8, 40u8, 142u8, 160u8, 95u8, 223u8, 193u8, 2u8, 167u8, 192u8, 53u8, + 74u8, 46u8, 196u8, 161u8, 29u8, 237u8, 124u8, 30u8, 73u8, 96u8, 146u8, + ], + ) + } + #[doc = " Max number of collections that can be claimed by an account"] + pub fn max_claimable_collections_per_account( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxClaimableCollectionsPerAccount", + [ + 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 tokens that can be claimed in a single call to `claim_tokens`"] + pub fn max_claimable_tokens_per_call( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "MaxClaimableTokensPerCall", + [ + 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 prefix of the message used to claim collections"] + pub fn claim_collections_prefix( + &self, + ) -> ::subxt::constants::Address<::std::vec::Vec<::core::primitive::u8>> + { + ::subxt::constants::Address::new_static( + "MultiTokens", + "ClaimCollectionsPrefix", + [ + 64u8, 190u8, 244u8, 122u8, 87u8, 182u8, 217u8, 16u8, 55u8, 223u8, + 128u8, 6u8, 112u8, 30u8, 236u8, 222u8, 153u8, 53u8, 247u8, 102u8, + 196u8, 31u8, 6u8, 186u8, 251u8, 209u8, 114u8, 125u8, 213u8, 222u8, + 240u8, 8u8, + ], + ) + } + #[doc = " The prefix of the message used to claim tokens"] + pub fn claim_tokens_prefix( + &self, + ) -> ::subxt::constants::Address<::std::vec::Vec<::core::primitive::u8>> + { + ::subxt::constants::Address::new_static( + "MultiTokens", + "ClaimTokensPrefix", + [ + 64u8, 190u8, 244u8, 122u8, 87u8, 182u8, 217u8, 16u8, 55u8, 223u8, + 128u8, 6u8, 112u8, 30u8, 236u8, 222u8, 153u8, 53u8, 247u8, 102u8, + 196u8, 31u8, 6u8, 186u8, 251u8, 209u8, 114u8, 125u8, 213u8, 222u8, + 240u8, 8u8, + ], + ) + } + #[doc = " The account id that owns unclaimed collections and tokens. This account also pays"] + #[doc = " deposits if needed when claiming."] + pub fn claims_account_id( + &self, + ) -> ::subxt::constants::Address<::subxt::utils::AccountId32> { + ::subxt::constants::Address::new_static( + "MultiTokens", + "ClaimsAccountId", + [ + 115u8, 233u8, 13u8, 223u8, 88u8, 20u8, 202u8, 139u8, 153u8, 28u8, + 155u8, 157u8, 224u8, 66u8, 3u8, 250u8, 23u8, 53u8, 88u8, 168u8, 211u8, + 204u8, 122u8, 166u8, 248u8, 23u8, 174u8, 225u8, 99u8, 108u8, 89u8, + 135u8, + ], + ) + } + } + } + } + pub mod fuel_tanks { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_fuel_tanks::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_fuel_tanks::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CreateFuelTank { + pub descriptor: runtime_types::pallet_fuel_tanks::types::FuelTankDescriptor< + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxFuelTankNameLength, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + ::core::primitive::u32, + runtime_types::pallet_fuel_tanks::rules::RuleSetDescriptor< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleDescriptor, + runtime_types::enjin_runtime::MaxRulesPerSet, + >, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_fuel_tanks::rules::AccountRuleDescriptor, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for CreateFuelTank { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "create_fuel_tank"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MutateFuelTank { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub mutation: runtime_types::pallet_fuel_tanks::impls::DefaultTankMutation< + runtime_types::enjin_runtime::Runtime, + >, + } + impl ::subxt::blocks::StaticExtrinsic for MutateFuelTank { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "mutate_fuel_tank"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AddAccount { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub user_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for AddAccount { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "add_account"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveAccount { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub user_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveAccount { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "remove_account"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveAccountRuleData { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub user_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub rule_set_id: ::core::primitive::u32, + pub rule_kind: runtime_types::pallet_fuel_tanks::rules::DispatchRuleKind, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveAccountRuleData { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "remove_account_rule_data"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Dispatch { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub rule_set_id: ::core::primitive::u32, + pub call: ::std::boxed::Box, + pub settings: ::core::option::Option< + runtime_types::pallet_fuel_tanks::types::DispatchSettings, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Dispatch { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "dispatch"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DispatchAndTouch { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub rule_set_id: ::core::primitive::u32, + pub call: ::std::boxed::Box, + pub settings: ::core::option::Option< + runtime_types::pallet_fuel_tanks::types::DispatchSettings, + >, + } + impl ::subxt::blocks::StaticExtrinsic for DispatchAndTouch { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "dispatch_and_touch"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ScheduleMutateFreezeState { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub rule_set_id: ::core::option::Option<::core::primitive::u32>, + pub is_frozen: ::core::primitive::bool, + } + impl ::subxt::blocks::StaticExtrinsic for ScheduleMutateFreezeState { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "schedule_mutate_freeze_state"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct InsertRuleSet { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub rule_set_id: ::core::primitive::u32, + pub rules: runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleDescriptor, + >, + } + impl ::subxt::blocks::StaticExtrinsic for InsertRuleSet { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "insert_rule_set"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveRuleSet { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub rule_set_id: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveRuleSet { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "remove_rule_set"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BatchAddAccount { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub user_ids: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + } + impl ::subxt::blocks::StaticExtrinsic for BatchAddAccount { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "batch_add_account"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BatchRemoveAccount { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub user_ids: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + } + impl ::subxt::blocks::StaticExtrinsic for BatchRemoveAccount { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "batch_remove_account"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceSetConsumption { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub user_id: ::core::option::Option< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + pub rule_set_id: ::core::primitive::u32, + pub consumption: runtime_types::pallet_fuel_tanks::types::Consumption< + ::core::primitive::u128, + ::core::primitive::u32, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceSetConsumption { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "force_set_consumption"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DestroyFuelTank { + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for DestroyFuelTank { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "destroy_fuel_tank"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceCreateFuelTank { + pub owner: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub descriptor: runtime_types::pallet_fuel_tanks::types::FuelTankDescriptor< + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxFuelTankNameLength, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + ::core::primitive::u32, + runtime_types::pallet_fuel_tanks::rules::RuleSetDescriptor< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleDescriptor, + runtime_types::enjin_runtime::MaxRulesPerSet, + >, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_fuel_tanks::rules::AccountRuleDescriptor, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceCreateFuelTank { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "force_create_fuel_tank"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceBatchAddAccount { + pub owner: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub user_ids: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceBatchAddAccount { + const PALLET: &'static str = "FuelTanks"; + const CALL: &'static str = "force_batch_add_account"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Creates a fuel tank, given a descriptor"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankAlreadyExists`] if `tank_id` already exists"] + #[doc = "- [`Error::DuplicateRuleKinds`] if a rule set has multiple rules of the same kind"] + pub fn create_fuel_tank( + &self, + descriptor: runtime_types::pallet_fuel_tanks::types::FuelTankDescriptor< + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxFuelTankNameLength, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + ::core::primitive::u32, + runtime_types::pallet_fuel_tanks::rules::RuleSetDescriptor< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleDescriptor, + runtime_types::enjin_runtime::MaxRulesPerSet, + >, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_fuel_tanks::rules::AccountRuleDescriptor, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "create_fuel_tank", + types::CreateFuelTank { descriptor }, + [ + 78u8, 34u8, 173u8, 167u8, 253u8, 191u8, 226u8, 184u8, 149u8, 65u8, + 239u8, 253u8, 232u8, 48u8, 171u8, 15u8, 229u8, 112u8, 250u8, 88u8, + 99u8, 137u8, 231u8, 112u8, 18u8, 161u8, 164u8, 232u8, 190u8, 234u8, + 119u8, 18u8, + ], + ) + } + #[doc = "Apply `mutation` to fuel tank with `tank_id`."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if `tank_id` does not exist."] + #[doc = "- [`Error::NoPermission`] if `origin` is not the fuel tank owner"] + pub fn mutate_fuel_tank( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + mutation: runtime_types::pallet_fuel_tanks::impls::DefaultTankMutation< + runtime_types::enjin_runtime::Runtime, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "mutate_fuel_tank", + types::MutateFuelTank { tank_id, mutation }, + [ + 242u8, 3u8, 103u8, 87u8, 238u8, 9u8, 218u8, 197u8, 212u8, 33u8, 34u8, + 54u8, 134u8, 140u8, 20u8, 176u8, 101u8, 64u8, 28u8, 64u8, 172u8, 97u8, + 17u8, 98u8, 213u8, 90u8, 80u8, 142u8, 179u8, 215u8, 255u8, 81u8, + ], + ) + } + #[doc = "Adds new account for `user_id` to fuel tank at `tank_id`. An account is"] + #[doc = "required to dispatch calls. A deposit is required, and may be paid by"] + #[doc = "the user or the fuel tank, depending on the settings."] + #[doc = ""] + #[doc = "### Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist"] + #[doc = "- [`Error::NoPermission`] if `origin` does not have permission to add an account"] + #[doc = "- [`Error::AccountAlreadyExists`] if account at `user_id` already exists"] + pub fn add_account( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "add_account", + types::AddAccount { tank_id, user_id }, + [ + 222u8, 27u8, 178u8, 27u8, 43u8, 138u8, 112u8, 91u8, 146u8, 120u8, + 177u8, 154u8, 195u8, 249u8, 94u8, 112u8, 252u8, 109u8, 108u8, 27u8, + 202u8, 245u8, 70u8, 170u8, 76u8, 35u8, 233u8, 58u8, 98u8, 30u8, 21u8, + 100u8, + ], + ) + } + #[doc = "Removes account for `user_id` from fuel tank at `tank_id`. Any deposits"] + #[doc = "are returned."] + #[doc = ""] + #[doc = "### Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist"] + #[doc = "- [`Error::NoPermission`] if `origin` does not have permission to add an account"] + #[doc = "- [`Error::AccountNotFound`] if account at `user_id` does not exist"] + pub fn remove_account( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "remove_account", + types::RemoveAccount { tank_id, user_id }, + [ + 168u8, 23u8, 67u8, 142u8, 29u8, 14u8, 88u8, 248u8, 215u8, 60u8, 91u8, + 41u8, 214u8, 207u8, 5u8, 147u8, 109u8, 173u8, 76u8, 17u8, 37u8, 28u8, + 238u8, 247u8, 208u8, 96u8, 6u8, 174u8, 118u8, 205u8, 197u8, 94u8, + ], + ) + } + #[doc = "Remove account rule data if it exists. Only callable by the fuel tank's owner. Requires"] + #[doc = "the fuel tank or the rule set to be frozen."] + #[doc = ""] + #[doc = "### Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if fuel tank for `tank_id` doesn't exist"] + #[doc = "- [`Error::NoPermission`] if called by non-owner"] + #[doc = "- [`Error::AccountNotFound`] if account does not exist for `user_id`"] + #[doc = "- [`Error::RuleSetNotFound`] if rule set does not exist for `rule_set_id`"] + #[doc = "- [`Error::RequiresFrozenTankOrRuleset`] if tank or rule set is not frozen"] + #[doc = "- [`Error::RuleNotFound`] if rule does not exist for `rule_kind`"] + pub fn remove_account_rule_data( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::primitive::u32, + rule_kind: runtime_types::pallet_fuel_tanks::rules::DispatchRuleKind, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "remove_account_rule_data", + types::RemoveAccountRuleData { + tank_id, + user_id, + rule_set_id, + rule_kind, + }, + [ + 45u8, 119u8, 44u8, 107u8, 130u8, 28u8, 178u8, 107u8, 45u8, 132u8, + 105u8, 110u8, 110u8, 135u8, 70u8, 193u8, 220u8, 164u8, 86u8, 138u8, + 84u8, 247u8, 74u8, 157u8, 116u8, 249u8, 203u8, 139u8, 118u8, 251u8, + 149u8, 123u8, + ], + ) + } + #[doc = "Dispatch a call using the `tank_id` subject to the rules of `rule_set_id`"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::FuelTankNotFound`] if `tank_id` does not exist."] + #[doc = "- [`Error::UsageRestricted`] if caller is not part of ruleset whitelist"] + #[doc = "- [`Error::CallerDoesNotHaveRuleSetTokenBalance`] if caller does not own the tokens to"] + #[doc = " use the ruleset for remaining_fee when `pays_remaining_fee` is true"] + #[doc = "- [`Error::FuelTankOutOfFunds`] if the fuel tank account cannot pay fees"] + pub fn dispatch( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::primitive::u32, + call: runtime_types::enjin_runtime::RuntimeCall, + settings: ::core::option::Option< + runtime_types::pallet_fuel_tanks::types::DispatchSettings, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "dispatch", + types::Dispatch { + tank_id, + rule_set_id, + call: ::std::boxed::Box::new(call), + settings, + }, + [ + 78u8, 128u8, 222u8, 136u8, 95u8, 116u8, 64u8, 60u8, 246u8, 209u8, + 153u8, 174u8, 244u8, 101u8, 26u8, 195u8, 183u8, 7u8, 225u8, 47u8, + 181u8, 65u8, 175u8, 248u8, 226u8, 194u8, 160u8, 168u8, 191u8, 5u8, + 156u8, 129u8, + ], + ) + } + #[doc = "Same as [dispatch](Self::dispatch), but creates an account for `origin` if it does not"] + #[doc = "exist and is allowed by the fuel tank's `user_account_management` settings."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "Returns the same errors as [dispatch](Self::dispatch) and"] + #[doc = "[add_account](Self::add_account)"] + pub fn dispatch_and_touch( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::primitive::u32, + call: runtime_types::enjin_runtime::RuntimeCall, + settings: ::core::option::Option< + runtime_types::pallet_fuel_tanks::types::DispatchSettings, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "dispatch_and_touch", + types::DispatchAndTouch { + tank_id, + rule_set_id, + call: ::std::boxed::Box::new(call), + settings, + }, + [ + 186u8, 99u8, 163u8, 132u8, 199u8, 3u8, 53u8, 92u8, 169u8, 139u8, 27u8, + 92u8, 36u8, 155u8, 46u8, 51u8, 103u8, 185u8, 129u8, 154u8, 72u8, 88u8, + 10u8, 110u8, 56u8, 22u8, 80u8, 195u8, 106u8, 156u8, 217u8, 138u8, + ], + ) + } + #[doc = "Schedule mutating of `is_frozen` state that determines if fuel tank or rule set can be"] + #[doc = "used"] + #[doc = ""] + #[doc = "Additional 1 read and 1 write are added to account for `on_finalize` storage operations"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::FuelTankNotFound`] if `tank_id` does not exist."] + #[doc = "- [`Error::NoPermission`] if caller is not a fuel tank owner"] + #[doc = "- [`Error::FreezeQueueFull`] if the queue is full"] + pub fn schedule_mutate_freeze_state( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::option::Option<::core::primitive::u32>, + is_frozen: ::core::primitive::bool, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "schedule_mutate_freeze_state", + types::ScheduleMutateFreezeState { + tank_id, + rule_set_id, + is_frozen, + }, + [ + 72u8, 78u8, 22u8, 70u8, 203u8, 128u8, 42u8, 253u8, 219u8, 251u8, 129u8, + 112u8, 103u8, 219u8, 27u8, 47u8, 190u8, 62u8, 44u8, 40u8, 66u8, 26u8, + 199u8, 192u8, 118u8, 63u8, 2u8, 7u8, 78u8, 3u8, 4u8, 34u8, + ], + ) + } + #[doc = "Insert a new rule set for `tank_id` and `rule_set_id`. It can be a new rule set"] + #[doc = "or it can replace an existing one. If it is replacing a rule set, a rule that is storing"] + #[doc = "data on any accounts cannot be removed. Use [Self::remove_account_rule_data] to remove"] + #[doc = "the data first. If a rule is being replaced, it will be mutated with the new parameters,"] + #[doc = "and it will maintain any persistent data it already has."] + #[doc = ""] + #[doc = "This is only callable by the fuel tank's owner."] + #[doc = "### Errors"] + #[doc = "- [`Error::FuelTankNotFound`] if `tank_id` does not exist."] + #[doc = "- [`Error::NoPermission`] if caller is not the fuel tank owner"] + #[doc = "- [`Error::RequiresFrozenTankOrRuleset`] if tank or rule set is not frozen"] + #[doc = "- [`Error::CannotRemoveRuleThatIsStoringAccountData`] if removing a rule that is storing"] + #[doc = " account data"] + #[doc = "- [`Error::MaxRuleSetsExceeded`] if max number of rule sets was exceeded"] + #[doc = "- [`Error::DuplicateRuleKinds`] if adding a rule set with multiple rules of the same"] + #[doc = " kind"] + pub fn insert_rule_set( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::primitive::u32, + rules: runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleDescriptor, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "insert_rule_set", + types::InsertRuleSet { + tank_id, + rule_set_id, + rules, + }, + [ + 234u8, 63u8, 104u8, 206u8, 11u8, 19u8, 168u8, 109u8, 109u8, 234u8, + 194u8, 116u8, 87u8, 42u8, 164u8, 53u8, 57u8, 238u8, 86u8, 181u8, 81u8, + 12u8, 239u8, 85u8, 174u8, 243u8, 137u8, 81u8, 228u8, 80u8, 190u8, + 240u8, + ], + ) + } + #[doc = "Remove rule set for `tank_id` and `rule_set_id`. A rule that is storing data on"] + #[doc = "any accounts cannot be removed. Use [Self::remove_account_rule_data] to remove the"] + #[doc = "data first. This is only callable by the fuel tank's owner."] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if `tank_id` does not exist."] + #[doc = "- [`Error::NoPermission`] if caller is not the fuel tank owner"] + #[doc = "- [`Error::RequiresFrozenTankOrRuleset`] if tank or rule set is not frozen"] + #[doc = "- [`Error::CannotRemoveRuleThatIsStoringAccountData`] if removing a rule that is storing"] + #[doc = " account data"] + pub fn remove_rule_set( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "remove_rule_set", + types::RemoveRuleSet { + tank_id, + rule_set_id, + }, + [ + 20u8, 200u8, 132u8, 52u8, 168u8, 54u8, 108u8, 200u8, 132u8, 67u8, 82u8, + 181u8, 14u8, 82u8, 118u8, 189u8, 112u8, 169u8, 65u8, 132u8, 43u8, 14u8, + 6u8, 66u8, 221u8, 4u8, 162u8, 234u8, 33u8, 189u8, 96u8, 81u8, + ], + ) + } + #[doc = "Similar to add_account but takes a list of"] + #[doc = "[`AccountId`](frame_system::Config::AccountId)s to insert into a fuel tank."] + #[doc = "### Errors"] + #[doc = "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist"] + #[doc = "- [`Error::NoPermission`] if `origin` does not have permission to add an account"] + #[doc = "- [`Error::AccountAlreadyExists`] if account at `user_id` already exists"] + pub fn batch_add_account( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_ids: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "batch_add_account", + types::BatchAddAccount { tank_id, user_ids }, + [ + 83u8, 214u8, 43u8, 23u8, 20u8, 136u8, 190u8, 230u8, 245u8, 77u8, 104u8, + 162u8, 180u8, 251u8, 90u8, 69u8, 231u8, 96u8, 55u8, 130u8, 187u8, + 173u8, 93u8, 188u8, 207u8, 76u8, 64u8, 179u8, 197u8, 181u8, 101u8, + 246u8, + ], + ) + } + #[doc = "Similar to remove_account but takes a list of"] + #[doc = "[`AccountId`](frame_system::Config::AccountId)s to remove from a fuel tank."] + #[doc = "### Errors"] + #[doc = "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist"] + #[doc = "- [`Error::NoPermission`] if `origin` does not have permission to add an account"] + #[doc = "- [`Error::AccountNotFound`] if account at `user_id` does not exist"] + pub fn batch_remove_account( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_ids: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "batch_remove_account", + types::BatchRemoveAccount { tank_id, user_ids }, + [ + 10u8, 229u8, 57u8, 98u8, 121u8, 79u8, 99u8, 230u8, 41u8, 157u8, 77u8, + 26u8, 167u8, 130u8, 55u8, 131u8, 91u8, 1u8, 216u8, 21u8, 117u8, 78u8, + 116u8, 174u8, 227u8, 198u8, 9u8, 4u8, 81u8, 167u8, 82u8, 236u8, + ], + ) + } + #[doc = "Force set the fuel tank consumption"] + #[doc = "If `user_id` is [`Some`], it sets the consumption for that account."] + #[doc = "If it is [`None`], it sets the consumption on the fuel tank directly."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::AccountNotFound`] if `user_id` is `Some` and account does not exist"] + #[doc = "- [`Error::FuelTankNotFound`] if tank_id does not exist"] + #[doc = "- [`Error::NoPermission`] if caller is not ForceOrigin or fuel tank owner"] + #[doc = "- [`Error::InvalidRuleSet`] if `rule_set_id` does not exist"] + #[doc = "- [`Error::MissingRequiredRule`] if `rule_set_id` does not have the required role"] + pub fn force_set_consumption( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_id: ::core::option::Option< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + rule_set_id: ::core::primitive::u32, + consumption: runtime_types::pallet_fuel_tanks::types::Consumption< + ::core::primitive::u128, + ::core::primitive::u32, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "force_set_consumption", + types::ForceSetConsumption { + tank_id, + user_id, + rule_set_id, + consumption, + }, + [ + 162u8, 66u8, 243u8, 6u8, 101u8, 131u8, 245u8, 78u8, 100u8, 175u8, 62u8, + 153u8, 155u8, 185u8, 127u8, 247u8, 122u8, 143u8, 240u8, 75u8, 215u8, + 15u8, 47u8, 70u8, 145u8, 130u8, 153u8, 185u8, 127u8, 126u8, 168u8, + 198u8, + ], + ) + } + #[doc = "Destroy the fuel tank by scheduling the deletion for `on_finalize` to execute"] + #[doc = "Only callable by owner"] + #[doc = "The fuel tank must be frozen"] + #[doc = "Can only be destroyed if all accounts are removed"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if tank_id does not exist"] + #[doc = "- [`Error::NoPermission`] if caller is not owner"] + #[doc = "- [`Error::DestroyUnfrozenTank`] if tank is not frozen"] + #[doc = "- [`Error::DestroyWithExistingAccounts`] if there are still accounts on the tank"] + pub fn destroy_fuel_tank( + &self, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "destroy_fuel_tank", + types::DestroyFuelTank { tank_id }, + [ + 5u8, 83u8, 232u8, 61u8, 78u8, 79u8, 219u8, 190u8, 202u8, 184u8, 156u8, + 96u8, 189u8, 214u8, 157u8, 103u8, 27u8, 54u8, 223u8, 159u8, 219u8, + 142u8, 18u8, 211u8, 214u8, 15u8, 77u8, 60u8, 131u8, 137u8, 74u8, 129u8, + ], + ) + } + #[doc = "Force creates a fuel tank"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankAlreadyExists`] if `tank_id` already exists"] + pub fn force_create_fuel_tank( + &self, + owner: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + descriptor: runtime_types::pallet_fuel_tanks::types::FuelTankDescriptor< + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxFuelTankNameLength, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + ::core::primitive::u32, + runtime_types::pallet_fuel_tanks::rules::RuleSetDescriptor< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleDescriptor, + runtime_types::enjin_runtime::MaxRulesPerSet, + >, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_fuel_tanks::rules::AccountRuleDescriptor, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "force_create_fuel_tank", + types::ForceCreateFuelTank { owner, descriptor }, + [ + 212u8, 158u8, 117u8, 242u8, 23u8, 149u8, 58u8, 6u8, 144u8, 156u8, 14u8, + 220u8, 233u8, 62u8, 27u8, 145u8, 49u8, 128u8, 21u8, 161u8, 87u8, 0u8, + 216u8, 222u8, 208u8, 166u8, 202u8, 59u8, 208u8, 156u8, 195u8, 129u8, + ], + ) + } + #[doc = "Sets the account storage for give tank_id and account"] + pub fn force_batch_add_account( + &self, + owner: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_ids: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FuelTanks", + "force_batch_add_account", + types::ForceBatchAddAccount { + owner, + tank_id, + user_ids, + }, + [ + 146u8, 232u8, 125u8, 4u8, 229u8, 62u8, 123u8, 26u8, 132u8, 176u8, 92u8, + 254u8, 77u8, 101u8, 172u8, 136u8, 11u8, 217u8, 208u8, 128u8, 251u8, + 51u8, 196u8, 65u8, 234u8, 120u8, 112u8, 95u8, 159u8, 129u8, 177u8, + 11u8, + ], + ) + } + } + } + #[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_fuel_tanks::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A new [`FuelTank`] was created."] + pub struct FuelTankCreated { + pub owner: ::subxt::utils::AccountId32, + pub name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxFuelTankNameLength, + >, + pub tank_id: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for FuelTankCreated { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "FuelTankCreated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A [`FuelTank`] was mutated"] + pub struct FuelTankMutated { + pub tank_id: ::subxt::utils::AccountId32, + pub mutation: runtime_types::pallet_fuel_tanks::impls::DefaultTankMutation< + runtime_types::enjin_runtime::Runtime, + >, + } + impl ::subxt::events::StaticEvent for FuelTankMutated { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "FuelTankMutated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A [`FuelTank`] was destroyed"] + pub struct FuelTankDestroyed { + pub tank_id: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for FuelTankDestroyed { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "FuelTankDestroyed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A call was dispatched through a [`FuelTank`]."] + pub struct CallDispatched { + pub caller: ::subxt::utils::AccountId32, + pub tank_id: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for CallDispatched { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "CallDispatched"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An account was added to a [`FuelTank`]"] + pub struct AccountAdded { + pub tank_id: ::subxt::utils::AccountId32, + pub user_id: ::subxt::utils::AccountId32, + pub tank_deposit: ::core::primitive::u128, + pub user_deposit: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for AccountAdded { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "AccountAdded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An account was removed from a [`FuelTank`]"] + pub struct AccountRemoved { + pub tank_id: ::subxt::utils::AccountId32, + pub user_id: ::subxt::utils::AccountId32, + } + impl ::subxt::events::StaticEvent for AccountRemoved { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "AccountRemoved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Account data of [`AccountId`](frame_system::Config::AccountId) was removed from"] + #[doc = "[`RuleSetId`](Config::RuleSetId)"] + pub struct AccountRuleDataRemoved { + pub tank_id: ::subxt::utils::AccountId32, + pub user_id: ::subxt::utils::AccountId32, + pub rule_set_id: ::core::primitive::u32, + pub rule_kind: runtime_types::pallet_fuel_tanks::rules::DispatchRuleKind, + } + impl ::subxt::events::StaticEvent for AccountRuleDataRemoved { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "AccountRuleDataRemoved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A new rule set was added to [`FuelTank`]"] + pub struct RuleSetInserted { + pub tank_id: ::subxt::utils::AccountId32, + pub rule_set_id: ::core::primitive::u32, + } + impl ::subxt::events::StaticEvent for RuleSetInserted { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "RuleSetInserted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A rule set was removed from [`FuelTank`]"] + pub struct RuleSetRemoved { + pub tank_id: ::subxt::utils::AccountId32, + pub rule_set_id: ::core::primitive::u32, + } + impl ::subxt::events::StaticEvent for RuleSetRemoved { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "RuleSetRemoved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The freeze state mutation for fuel tank or its rule set was scheduled"] + pub struct MutateFreezeStateScheduled { + pub tank_id: ::subxt::utils::AccountId32, + pub rule_set_id: ::core::option::Option<::core::primitive::u32>, + pub is_frozen: ::core::primitive::bool, + } + impl ::subxt::events::StaticEvent for MutateFreezeStateScheduled { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "MutateFreezeStateScheduled"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The freeze state change for fuel tank or its rule set was executed in `on_finalize`"] + pub struct FreezeStateMutated { + pub tank_id: ::subxt::utils::AccountId32, + pub rule_set_id: ::core::option::Option<::core::primitive::u32>, + pub is_frozen: ::core::primitive::bool, + } + impl ::subxt::events::StaticEvent for FreezeStateMutated { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "FreezeStateMutated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The freeze state change for fuel tank or its rule set failed in `on_finalize`"] + pub struct ScheduleMutateFreezeStateFailed { + pub tank_id: ::subxt::utils::AccountId32, + pub rule_set_id: ::core::option::Option<::core::primitive::u32>, + pub is_frozen: ::core::primitive::bool, + pub error: runtime_types::sp_runtime::DispatchError, + } + impl ::subxt::events::StaticEvent for ScheduleMutateFreezeStateFailed { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "ScheduleMutateFreezeStateFailed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The dispatch of a call has failed"] + pub struct DispatchFailed { + pub tank_id: ::subxt::utils::AccountId32, + pub caller: ::subxt::utils::AccountId32, + pub error: runtime_types::sp_runtime::DispatchError, + } + impl ::subxt::events::StaticEvent for DispatchFailed { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "DispatchFailed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The consumption for an account was set for a rule set on a [`FuelTank`]"] + pub struct ConsumptionSet { + pub tank_id: ::subxt::utils::AccountId32, + pub user_id: ::core::option::Option<::subxt::utils::AccountId32>, + pub rule_set_id: ::core::primitive::u32, + pub consumption: runtime_types::pallet_fuel_tanks::types::Consumption< + ::core::primitive::u128, + ::core::primitive::u32, + >, + } + impl ::subxt::events::StaticEvent for ConsumptionSet { + const PALLET: &'static str = "FuelTanks"; + const EVENT: &'static str = "ConsumptionSet"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Mapping of Fuel Tanks accounts to their data"] + pub fn tanks_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_fuel_tanks::types::FuelTank< + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxFuelTankNameLength, + >, + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + ::core::primitive::u32, + runtime_types::pallet_fuel_tanks::rules::RuleSet< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleWrapper, + runtime_types::enjin_runtime::MaxRulesPerSet, + >, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + runtime_types::pallet_fuel_tanks::rules::AccountRuleKind, + runtime_types::pallet_fuel_tanks::rules::AccountRuleWrapper, + >, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FuelTanks", + "Tanks", + vec![], + [ + 6u8, 165u8, 137u8, 81u8, 161u8, 0u8, 127u8, 56u8, 69u8, 186u8, 230u8, + 175u8, 75u8, 116u8, 47u8, 253u8, 67u8, 7u8, 52u8, 123u8, 56u8, 242u8, + 18u8, 86u8, 39u8, 105u8, 13u8, 160u8, 152u8, 168u8, 21u8, 165u8, + ], + ) + } + #[doc = " Mapping of Fuel Tanks accounts to their data"] + pub fn tanks( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_fuel_tanks::types::FuelTank< + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxFuelTankNameLength, + >, + ::subxt::utils::AccountId32, + ::core::primitive::u128, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + ::core::primitive::u32, + runtime_types::pallet_fuel_tanks::rules::RuleSet< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleWrapper, + runtime_types::enjin_runtime::MaxRulesPerSet, + >, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + runtime_types::pallet_fuel_tanks::rules::AccountRuleKind, + runtime_types::pallet_fuel_tanks::rules::AccountRuleWrapper, + >, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "FuelTanks", + "Tanks", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 6u8, 165u8, 137u8, 81u8, 161u8, 0u8, 127u8, 56u8, 69u8, 186u8, 230u8, + 175u8, 75u8, 116u8, 47u8, 253u8, 67u8, 7u8, 52u8, 123u8, 56u8, 242u8, + 18u8, 86u8, 39u8, 105u8, 13u8, 160u8, 152u8, 168u8, 21u8, 165u8, + ], + ) + } + #[doc = " Mapping of Fuel Tanks and their user Accounts to account data"] + pub fn accounts_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_fuel_tanks::types::UserAccount< + ::core::primitive::u128, + ::core::primitive::u32, + runtime_types::enjin_runtime::MaxRuleSets, + runtime_types::enjin_runtime::MaxRulesPerSet, + runtime_types::enjin_runtime::MaxAccountRuleDataLength, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FuelTanks", + "Accounts", + vec![], + [ + 218u8, 244u8, 36u8, 231u8, 112u8, 151u8, 230u8, 223u8, 81u8, 34u8, + 160u8, 93u8, 96u8, 167u8, 2u8, 28u8, 246u8, 5u8, 22u8, 87u8, 7u8, 9u8, + 131u8, 211u8, 252u8, 189u8, 113u8, 111u8, 88u8, 159u8, 161u8, 112u8, + ], + ) + } + #[doc = " Mapping of Fuel Tanks and their user Accounts to account data"] + pub fn accounts_iter1( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_fuel_tanks::types::UserAccount< + ::core::primitive::u128, + ::core::primitive::u32, + runtime_types::enjin_runtime::MaxRuleSets, + runtime_types::enjin_runtime::MaxRulesPerSet, + runtime_types::enjin_runtime::MaxAccountRuleDataLength, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FuelTanks", + "Accounts", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 218u8, 244u8, 36u8, 231u8, 112u8, 151u8, 230u8, 223u8, 81u8, 34u8, + 160u8, 93u8, 96u8, 167u8, 2u8, 28u8, 246u8, 5u8, 22u8, 87u8, 7u8, 9u8, + 131u8, 211u8, 252u8, 189u8, 113u8, 111u8, 88u8, 159u8, 161u8, 112u8, + ], + ) + } + #[doc = " Mapping of Fuel Tanks and their user Accounts to account data"] + pub fn accounts( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + _1: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_fuel_tanks::types::UserAccount< + ::core::primitive::u128, + ::core::primitive::u32, + runtime_types::enjin_runtime::MaxRuleSets, + runtime_types::enjin_runtime::MaxRulesPerSet, + runtime_types::enjin_runtime::MaxAccountRuleDataLength, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "FuelTanks", + "Accounts", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 218u8, 244u8, 36u8, 231u8, 112u8, 151u8, 230u8, 223u8, 81u8, 34u8, + 160u8, 93u8, 96u8, 167u8, 2u8, 28u8, 246u8, 5u8, 22u8, 87u8, 7u8, 9u8, + 131u8, 211u8, 252u8, 189u8, 113u8, 111u8, 88u8, 159u8, 161u8, 112u8, + ], + ) + } + #[doc = " The queue for fuel tank and rule set freezing"] + #[doc = " Composed of (`tank_id`, `rule_set_id`, new `is_frozen` value)"] + pub fn freeze_queue( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_fuel_tanks::types::FreezeQueueItem< + ::subxt::utils::AccountId32, + ::core::primitive::u32, + >, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "FuelTanks", + "FreezeQueue", + vec![], + [ + 231u8, 87u8, 159u8, 2u8, 104u8, 174u8, 109u8, 189u8, 219u8, 15u8, + 121u8, 118u8, 34u8, 110u8, 10u8, 99u8, 229u8, 229u8, 121u8, 147u8, + 247u8, 228u8, 211u8, 71u8, 118u8, 31u8, 106u8, 255u8, 109u8, 30u8, + 56u8, 126u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " The salt used for address generation"] + pub fn salt(&self) -> ::subxt::constants::Address<[::core::primitive::u8; 8usize]> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "Salt", + [ + 157u8, 118u8, 79u8, 88u8, 241u8, 22u8, 185u8, 37u8, 42u8, 20u8, 133u8, + 240u8, 11u8, 25u8, 66u8, 154u8, 84u8, 163u8, 78u8, 92u8, 171u8, 82u8, + 248u8, 76u8, 189u8, 70u8, 142u8, 249u8, 153u8, 84u8, 180u8, 60u8, + ], + ) + } + #[doc = " The maximum number of whitelisted callers per fuel tank"] + pub fn max_whitelisted_callers( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxWhitelistedCallers", + [ + 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 rule sets per fuel tank"] + pub fn max_rule_sets(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxRuleSets", + [ + 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 rules in a ruleset"] + pub fn max_rules_per_set( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxRulesPerSet", + [ + 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 = " Max length of data a rule can store per account"] + pub fn max_account_rule_data_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxAccountRuleDataLength", + [ + 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 permitted calls"] + pub fn max_call_filters( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxCallFilters", + [ + 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 whitelisted collections for a fuel tank"] + pub fn max_whitelisted_collections( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxWhitelistedCollections", + [ + 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 rule sets per fuel tank"] + pub fn max_call_size(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxCallSize", + [ + 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 fuel tank freeze state mutations that can be queued"] + pub fn max_freeze_queue_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxFreezeQueueLength", + [ + 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 user history that can be stored"] + pub fn max_user_history_size( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxUserHistorySize", + [ + 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 accounts for batch operations"] + pub fn max_batch_accounts( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxBatchAccounts", + [ + 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 for fuel tank name"] + pub fn max_fuel_tank_name_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxFuelTankNameLength", + [ + 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 for extrinsics for PermittedExtrinsic rule"] + pub fn max_extrinsic_name_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxExtrinsicNameLength", + [ + 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 extrinsics to allow for PermittedExtrinsic rule"] + pub fn max_permitted_extrinsic_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "MaxPermittedExtrinsicLength", + [ + 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 = " Deposit for creating a new fuel tank"] + pub fn tank_creation_deposit( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "TankCreationDeposit", + [ + 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 = " Deposit for creating an account"] + pub fn account_creation_deposit( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "AccountCreationDeposit", + [ + 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 identifier used for currency reserves"] + pub fn reserve_identifier( + &self, + ) -> ::subxt::constants::Address<[::core::primitive::u8; 8usize]> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "ReserveIdentifier", + [ + 157u8, 118u8, 79u8, 88u8, 241u8, 22u8, 185u8, 37u8, 42u8, 20u8, 133u8, + 240u8, 11u8, 25u8, 66u8, 154u8, 84u8, 163u8, 78u8, 92u8, 171u8, 82u8, + 248u8, 76u8, 189u8, 70u8, 142u8, 249u8, 153u8, 84u8, 180u8, 60u8, + ], + ) + } + #[doc = " value of a unit of the independant variable in EFI for the levy discount according to"] + #[doc = " f(x) = (1/2)^x. Cannot be 0."] + pub fn levy_scale(&self) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FuelTanks", + "LevyScale", + [ + 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 Levy applied to all transactions in Matrix."] + pub fn levy( + &self, + ) -> ::subxt::constants::Address + { + ::subxt::constants::Address::new_static( + "FuelTanks", + "Levy", + [ + 65u8, 93u8, 120u8, 165u8, 204u8, 81u8, 159u8, 163u8, 93u8, 135u8, + 114u8, 121u8, 147u8, 35u8, 215u8, 213u8, 4u8, 223u8, 83u8, 37u8, 225u8, + 200u8, 189u8, 156u8, 140u8, 36u8, 58u8, 46u8, 42u8, 232u8, 155u8, 0u8, + ], + ) + } + } + } + } + pub mod extrinsic_pause { + use super::root_mod; + use super::runtime_types; + #[doc = "Pallet's error type."] + pub type Error = runtime_types::pallet_extrinsic_pause::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_extrinsic_pause::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PauseExtrinsic { + pub call: ::std::boxed::Box, + pub pause_only_extrinsic: ::core::primitive::bool, + } + impl ::subxt::blocks::StaticExtrinsic for PauseExtrinsic { + const PALLET: &'static str = "ExtrinsicPause"; + const CALL: &'static str = "pause_extrinsic"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ResumeExtrinsic { + pub call: ::std::boxed::Box, + pub resume_only_extrinsic: ::core::primitive::bool, + } + impl ::subxt::blocks::StaticExtrinsic for ResumeExtrinsic { + const PALLET: &'static str = "ExtrinsicPause"; + const CALL: &'static str = "resume_extrinsic"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Pause execution of extrinsic(s)"] + #[doc = ""] + #[doc = "The values of pallet_name and extrinsic_name are extracted from the `call` parameter."] + #[doc = "Ex : To pause the multi_tokens pallet, the `call` parameter should be of the type"] + #[doc = "`pallet_multi_tokens::Call` If `pause_only_extrinsic` is true, then only the extrinsic"] + #[doc = "is paused, else the entire pallet is paused."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::CannotProcessInput`] if the pallet name or extrinsic name is faulty."] + #[doc = "- [`Error::CannotPauseSelf`] if the pallet name is the same as the name of this pallet."] + pub fn pause_extrinsic( + &self, + call: runtime_types::enjin_runtime::RuntimeCall, + pause_only_extrinsic: ::core::primitive::bool, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ExtrinsicPause", + "pause_extrinsic", + types::PauseExtrinsic { + call: ::std::boxed::Box::new(call), + pause_only_extrinsic, + }, + [ + 129u8, 155u8, 125u8, 54u8, 225u8, 183u8, 1u8, 252u8, 110u8, 154u8, + 78u8, 157u8, 138u8, 61u8, 97u8, 70u8, 29u8, 54u8, 238u8, 95u8, 238u8, + 170u8, 224u8, 58u8, 6u8, 232u8, 10u8, 11u8, 99u8, 220u8, 77u8, 60u8, + ], + ) + } + #[doc = "Resume execution of extrinsic(s)"] + #[doc = ""] + #[doc = "The values of pallet_name and extrinsic_name are extracted from the `call` parameter."] + #[doc = "Ex : To resume the multi_tokens pallet, the `call` parameter should be of the type"] + #[doc = "`pallet_multi_tokens::Call` If `pause_only_extrinsic` is true, then only the extrinsic"] + #[doc = "is resumed, else the entire pallet is resumed."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::CannotProcessInput`] if the pallet name or extrinsic name is faulty."] + pub fn resume_extrinsic( + &self, + call: runtime_types::enjin_runtime::RuntimeCall, + resume_only_extrinsic: ::core::primitive::bool, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ExtrinsicPause", + "resume_extrinsic", + types::ResumeExtrinsic { + call: ::std::boxed::Box::new(call), + resume_only_extrinsic, + }, + [ + 219u8, 176u8, 202u8, 208u8, 220u8, 210u8, 16u8, 12u8, 52u8, 80u8, + 148u8, 93u8, 164u8, 123u8, 228u8, 225u8, 87u8, 151u8, 53u8, 155u8, + 41u8, 74u8, 208u8, 114u8, 147u8, 65u8, 143u8, 139u8, 221u8, 20u8, + 192u8, 108u8, + ], + ) + } + } + } + #[doc = "The pallet's event type."] + pub type Event = runtime_types::pallet_extrinsic_pause::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "All pallet extrinsics are paused."] + pub struct PalletPaused { + pub pallet_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + } + impl ::subxt::events::StaticEvent for PalletPaused { + const PALLET: &'static str = "ExtrinsicPause"; + const EVENT: &'static str = "PalletPaused"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "All pallet extrinsics are resumed."] + pub struct PalletResumed { + pub pallet_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + } + impl ::subxt::events::StaticEvent for PalletResumed { + const PALLET: &'static str = "ExtrinsicPause"; + const EVENT: &'static str = "PalletResumed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Extrinsic is paused."] + pub struct ExtrinsicPaused { + pub pallet_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + pub extrinsic_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + } + impl ::subxt::events::StaticEvent for ExtrinsicPaused { + const PALLET: &'static str = "ExtrinsicPause"; + const EVENT: &'static str = "ExtrinsicPaused"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Extrinsic is resumed"] + pub struct ExtrinsicResumed { + pub pallet_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + pub extrinsic_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + } + impl ::subxt::events::StaticEvent for ExtrinsicResumed { + const PALLET: &'static str = "ExtrinsicPause"; + const EVENT: &'static str = "ExtrinsicResumed"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Paused extrinsics map"] + #[doc = ""] + #[doc = " The key is tuple with the name of the pallet and the extrinsic name and value is"] + #[doc = " an Option<()> which is None if the extrinsic is not paused and Some(()) if it is."] + pub fn paused_extrinsics_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (), + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ExtrinsicPause", + "PausedExtrinsics", + vec![], + [ + 253u8, 70u8, 69u8, 237u8, 47u8, 209u8, 234u8, 230u8, 191u8, 252u8, + 214u8, 251u8, 79u8, 229u8, 224u8, 0u8, 62u8, 210u8, 57u8, 190u8, 18u8, + 120u8, 172u8, 89u8, 93u8, 225u8, 143u8, 51u8, 6u8, 51u8, 18u8, 51u8, + ], + ) + } + #[doc = " Paused extrinsics map"] + #[doc = ""] + #[doc = " The key is tuple with the name of the pallet and the extrinsic name and value is"] + #[doc = " an Option<()> which is None if the extrinsic is not paused and Some(()) if it is."] + pub fn paused_extrinsics( + &self, + _0: impl ::std::borrow::Borrow< + runtime_types::ep_core::frame::types::ExtrinsicInfo< + runtime_types::enjin_runtime::MaxNameLength, + >, + >, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "ExtrinsicPause", + "PausedExtrinsics", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 253u8, 70u8, 69u8, 237u8, 47u8, 209u8, 234u8, 230u8, 191u8, 252u8, + 214u8, 251u8, 79u8, 229u8, 224u8, 0u8, 62u8, 210u8, 57u8, 190u8, 18u8, + 120u8, 172u8, 89u8, 93u8, 225u8, 143u8, 51u8, 6u8, 51u8, 18u8, 51u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " Max number of characters in pallet or extrinsic name."] + pub fn max_name_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "ExtrinsicPause", + "MaxNameLength", + [ + 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 marketplace { + use super::root_mod; + use super::runtime_types; + #[doc = "The error for this pallet"] + pub type Error = runtime_types::pallet_marketplace::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_marketplace::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CreateListing { + pub make_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + pub take_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + #[codec(compact)] + pub amount: ::core::primitive::u128, + #[codec(compact)] + pub price: ::core::primitive::u128, + pub salt: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + pub auction_data: ::core::option::Option< + runtime_types::pallet_marketplace::features::auction::AuctionData< + ::core::primitive::u32, + >, + >, + } + impl ::subxt::blocks::StaticExtrinsic for CreateListing { + const PALLET: &'static str = "Marketplace"; + const CALL: &'static str = "create_listing"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CancelListing { + pub listing_id: ::subxt::utils::H256, + } + impl ::subxt::blocks::StaticExtrinsic for CancelListing { + const PALLET: &'static str = "Marketplace"; + const CALL: &'static str = "cancel_listing"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct FillListing { + pub listing_id: ::subxt::utils::H256, + #[codec(compact)] + pub amount: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for FillListing { + const PALLET: &'static str = "Marketplace"; + const CALL: &'static str = "fill_listing"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PlaceBid { + pub listing_id: ::subxt::utils::H256, + #[codec(compact)] + pub price: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for PlaceBid { + const PALLET: &'static str = "Marketplace"; + const CALL: &'static str = "place_bid"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct FinalizeAuction { + pub listing_id: ::subxt::utils::H256, + } + impl ::subxt::blocks::StaticExtrinsic for FinalizeAuction { + const PALLET: &'static str = "Marketplace"; + const CALL: &'static str = "finalize_auction"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetProtocolFee { + pub protocol_fee: runtime_types::sp_arithmetic::per_things::Perbill, + } + impl ::subxt::blocks::StaticExtrinsic for SetProtocolFee { + const PALLET: &'static str = "Marketplace"; + const CALL: &'static str = "set_protocol_fee"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForceCreateListing { + pub seller: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub make_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + pub take_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + #[codec(compact)] + pub amount: ::core::primitive::u128, + #[codec(compact)] + pub price: ::core::primitive::u128, + pub salt: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + pub auction_data: ::core::option::Option< + runtime_types::pallet_marketplace::features::auction::AuctionData< + ::core::primitive::u32, + >, + >, + pub deposit_backer: ::core::option::Option< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForceCreateListing { + const PALLET: &'static str = "Marketplace"; + const CALL: &'static str = "force_create_listing"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForcePlaceBid { + pub bidder: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub listing_id: ::subxt::utils::H256, + #[codec(compact)] + pub price: ::core::primitive::u128, + pub funds_backer: ::core::option::Option< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + } + impl ::subxt::blocks::StaticExtrinsic for ForcePlaceBid { + const PALLET: &'static str = "Marketplace"; + const CALL: &'static str = "force_place_bid"; + } + } + pub struct TransactionApi; + impl TransactionApi { + #[doc = "Places a sell order. Requires `make_asset_id` or `take_asset_id` to be a currency."] + #[doc = "The id for the listing is generated by hashing the encoded bytes of the listing."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "- `make_asset_id`: The id of the asset being sold"] + #[doc = "- `take_asset_id`: The id of the asset being requested"] + #[doc = "- `amount`: The number of units being sold"] + #[doc = "- `price`: The requested price for each unit. If it's an auction, this is the minimum"] + #[doc = " bid"] + #[doc = "- `salt`: Can be used to differentiate listings"] + #[doc = "- `auction_data`: Including this makes the listing an auction"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::InvalidAuctionStart`] if the start is less than the current block +"] + #[doc = " `T::ListingActiveDelay`"] + #[doc = "- [`Error::NoCurrency`] Neither the make or take side is considered a currency"] + #[doc = "- [`Error::ListingForbidden`] if make or take side tokens are not allowed to be listed"] + #[doc = "- [`Error::CurrencyNotAllowedAsRoyalty`] if currency cannot be used as a royalty"] + #[doc = "- [`Error::LowBaseCurrencyBalance`] if base currency balance is too low"] + #[doc = "- [`Error::LowTokenBalance`] token balance is too low for reserve"] + #[doc = "- [`Error::ListingAlreadyExists`] if a listing with the same ID already exists"] + pub fn create_listing( + &self, + make_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + take_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + amount: ::core::primitive::u128, + price: ::core::primitive::u128, + salt: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + auction_data: ::core::option::Option< + runtime_types::pallet_marketplace::features::auction::AuctionData< + ::core::primitive::u32, + >, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Marketplace", + "create_listing", + types::CreateListing { + make_asset_id, + take_asset_id, + amount, + price, + salt, + auction_data, + }, + [ + 249u8, 109u8, 162u8, 163u8, 143u8, 90u8, 50u8, 196u8, 128u8, 236u8, + 91u8, 20u8, 116u8, 106u8, 186u8, 170u8, 209u8, 44u8, 94u8, 218u8, + 220u8, 67u8, 149u8, 33u8, 231u8, 240u8, 34u8, 33u8, 255u8, 134u8, 87u8, + 53u8, + ], + ) + } + #[doc = "Cancels the listing with `listing_id`. Only callable by the seller."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "- `listing_id`: The ID of the listing to cancel"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::ListingNotFound`] if the listing under `listing_id` does not exist"] + #[doc = "- [`Error::NoPermission`] if the listing seller is not the caller, `origin`"] + pub fn cancel_listing( + &self, + listing_id: ::subxt::utils::H256, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Marketplace", + "cancel_listing", + types::CancelListing { listing_id }, + [ + 168u8, 161u8, 108u8, 220u8, 27u8, 130u8, 196u8, 75u8, 22u8, 230u8, + 209u8, 122u8, 3u8, 93u8, 212u8, 63u8, 250u8, 94u8, 217u8, 250u8, 154u8, + 187u8, 120u8, 231u8, 127u8, 65u8, 219u8, 254u8, 112u8, 82u8, 39u8, + 191u8, + ], + ) + } + #[doc = "Fills a fixed price listing. This will execute immediately."] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "- `listing_id`: The id for the listing to buy from"] + #[doc = "- `amount`: The number of units purchased"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::ListingNotFound`] if the listing under `listing_id` does not exist"] + #[doc = "- [`Error::BuyerIsSeller`] if the buyer is the seller of the listing"] + #[doc = "- [`Error::ListingIsWrongType`] if the listing is not under auction"] + #[doc = "- [`Error::InvalidAmount`] if the amount that still needs to be filled is greater than"] + #[doc = " `amount`"] + #[doc = "- [`Error::ListingNotActive`] if the listing has not passed the `ListingActiveDelay` yet"] + #[doc = "- [`Error::TakeValueUnderMinimum`] if the listings `take` value is under the minimum"] + #[doc = " required"] + #[doc = "- [`Error::LowTokenBalance`] if the buyer does not have enough tokens for reserve"] + pub fn fill_listing( + &self, + listing_id: ::subxt::utils::H256, + amount: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Marketplace", + "fill_listing", + types::FillListing { listing_id, amount }, + [ + 153u8, 26u8, 135u8, 149u8, 80u8, 58u8, 199u8, 106u8, 47u8, 50u8, 40u8, + 101u8, 190u8, 41u8, 75u8, 170u8, 62u8, 242u8, 192u8, 220u8, 190u8, + 142u8, 130u8, 168u8, 35u8, 11u8, 139u8, 225u8, 100u8, 86u8, 186u8, + 130u8, + ], + ) + } + #[doc = "Places a bid on a listing. The listing must be an auction, and it must be currently"] + #[doc = "active."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "- `listing_id`: The id for the listing to buy from"] + #[doc = "- `price`: The price for a single unit"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::ListingNotFound`] if listing under `listing_id` does not exist"] + #[doc = "- [`Error::BuyerIsSeller`] if the bidder is the seller of the listing"] + #[doc = "- [`Error::InactiveAuction`] if listing operates outside of specified start and end"] + #[doc = " block"] + #[doc = "- [`Error::InvalidPrice`] if price is less than minimum_price for a bid"] + pub fn place_bid( + &self, + listing_id: ::subxt::utils::H256, + price: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Marketplace", + "place_bid", + types::PlaceBid { listing_id, price }, + [ + 121u8, 136u8, 81u8, 41u8, 238u8, 55u8, 55u8, 131u8, 135u8, 237u8, + 158u8, 237u8, 224u8, 208u8, 76u8, 146u8, 100u8, 75u8, 195u8, 70u8, + 190u8, 142u8, 20u8, 150u8, 124u8, 180u8, 81u8, 49u8, 80u8, 203u8, + 135u8, 228u8, + ], + ) + } + #[doc = "Finalize the auction with id: `listing_id`. This will end the auction and transfer"] + #[doc = "funds. It fails if the auction is not over."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "- `listing_id`: The ID for the listing to finalize"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::ListingNotFound`] if listing under `listing_id` does not exist"] + #[doc = "- [`Error::ListingIsWrongType`] if listing is not an auction"] + #[doc = "- [`Error::AuctionNotOver`] if the auction has not finished yet"] + #[doc = "- [`Error::TakeValueUnderMinimum`] if the take value is less than the minimum required"] + pub fn finalize_auction( + &self, + listing_id: ::subxt::utils::H256, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Marketplace", + "finalize_auction", + types::FinalizeAuction { listing_id }, + [ + 213u8, 141u8, 14u8, 209u8, 188u8, 175u8, 132u8, 69u8, 119u8, 4u8, 32u8, + 116u8, 226u8, 106u8, 7u8, 250u8, 197u8, 243u8, 80u8, 175u8, 21u8, + 207u8, 67u8, 211u8, 118u8, 209u8, 60u8, 89u8, 23u8, 216u8, 43u8, 62u8, + ], + ) + } + #[doc = "Change the protocol fee to `protocol_fee`. Fails if `origin` is invalid."] + #[doc = ""] + #[doc = "#Parameters"] + #[doc = ""] + #[doc = "- `protocol_fee`: Percentage of fee to set"] + pub fn set_protocol_fee( + &self, + protocol_fee: runtime_types::sp_arithmetic::per_things::Perbill, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Marketplace", + "set_protocol_fee", + types::SetProtocolFee { protocol_fee }, + [ + 233u8, 47u8, 93u8, 73u8, 97u8, 232u8, 3u8, 181u8, 88u8, 143u8, 110u8, + 42u8, 239u8, 84u8, 103u8, 128u8, 121u8, 20u8, 228u8, 130u8, 250u8, + 125u8, 148u8, 153u8, 40u8, 178u8, 35u8, 84u8, 251u8, 86u8, 15u8, 253u8, + ], + ) + } + #[doc = "Force create a listing. This is only callable by the [`Config::ForceOrigin`]."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "Mostly the same as [`Self::create_listing`], but `deposit_backer` can be included to pay"] + #[doc = "a deposit if `seller` does not have enough."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "Same as [`Self::create_listing`], except `BadOrigin` if the origin is not"] + #[doc = "[`Config::ForceOrigin`]"] + pub fn force_create_listing( + &self, + seller: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + make_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + take_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + amount: ::core::primitive::u128, + price: ::core::primitive::u128, + salt: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + auction_data: ::core::option::Option< + runtime_types::pallet_marketplace::features::auction::AuctionData< + ::core::primitive::u32, + >, + >, + deposit_backer: ::core::option::Option< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Marketplace", + "force_create_listing", + types::ForceCreateListing { + seller, + make_asset_id, + take_asset_id, + amount, + price, + salt, + auction_data, + deposit_backer, + }, + [ + 62u8, 106u8, 165u8, 81u8, 190u8, 17u8, 120u8, 168u8, 180u8, 92u8, + 146u8, 169u8, 190u8, 189u8, 153u8, 172u8, 251u8, 225u8, 125u8, 156u8, + 22u8, 61u8, 221u8, 149u8, 52u8, 64u8, 114u8, 178u8, 41u8, 70u8, 230u8, + 255u8, + ], + ) + } + #[doc = "Same as [create_listing](Self::place_bid), but allows specifying the `bidder` and can"] + #[doc = "place a bid in an inactive auction. Only callable by [`Config::ForceOrigin`]. If"] + #[doc = "`funds_backer` is `Some`, it will transfer balance if `bidder` does not have enough."] + pub fn force_place_bid( + &self, + bidder: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + listing_id: ::subxt::utils::H256, + price: ::core::primitive::u128, + funds_backer: ::core::option::Option< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Marketplace", + "force_place_bid", + types::ForcePlaceBid { + bidder, + listing_id, + price, + funds_backer, + }, + [ + 134u8, 161u8, 197u8, 185u8, 134u8, 195u8, 197u8, 27u8, 183u8, 184u8, + 118u8, 30u8, 164u8, 169u8, 18u8, 82u8, 228u8, 154u8, 198u8, 235u8, 5u8, + 117u8, 129u8, 101u8, 220u8, 28u8, 128u8, 124u8, 80u8, 105u8, 41u8, + 161u8, + ], + ) + } + } + } + #[doc = "The Event for this pallet"] + pub type Event = runtime_types::pallet_marketplace::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A listing was created"] + pub struct ListingCreated { + pub listing_id: ::subxt::utils::H256, + pub listing: runtime_types::pallet_marketplace::features::listing::Listing< + ::core::primitive::u128, + ::core::primitive::u128, + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u32, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + } + impl ::subxt::events::StaticEvent for ListingCreated { + const PALLET: &'static str = "Marketplace"; + const EVENT: &'static str = "ListingCreated"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A listing was cancelled"] + pub struct ListingCancelled { + pub listing_id: ::subxt::utils::H256, + } + impl ::subxt::events::StaticEvent for ListingCancelled { + const PALLET: &'static str = "Marketplace"; + const EVENT: &'static str = "ListingCancelled"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A listing was filled or partially filled"] + pub struct ListingFilled { + pub listing_id: ::subxt::utils::H256, + pub buyer: ::subxt::utils::AccountId32, + pub amount_filled: ::core::primitive::u128, + pub amount_remaining: ::core::primitive::u128, + pub protocol_fee: ::core::primitive::u128, + pub royalty: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for ListingFilled { + const PALLET: &'static str = "Marketplace"; + const EVENT: &'static str = "ListingFilled"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "A bid was placed"] + pub struct BidPlaced { + pub listing_id: ::subxt::utils::H256, + pub bid: runtime_types::pallet_marketplace::features::auction::Bid< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + } + impl ::subxt::events::StaticEvent for BidPlaced { + const PALLET: &'static str = "Marketplace"; + const EVENT: &'static str = "BidPlaced"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An auction was finalized"] + pub struct AuctionFinalized { + pub listing_id: ::subxt::utils::H256, + pub winning_bid: ::core::option::Option< + runtime_types::pallet_marketplace::features::auction::Bid< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + >, + pub protocol_fee: ::core::primitive::u128, + pub royalty: ::core::primitive::u128, + } + impl ::subxt::events::StaticEvent for AuctionFinalized { + const PALLET: &'static str = "Marketplace"; + const EVENT: &'static str = "AuctionFinalized"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Protocol fee was set"] + pub struct ProtocolFeeSet { + pub protocol_fee: runtime_types::sp_arithmetic::per_things::Perbill, + } + impl ::subxt::events::StaticEvent for ProtocolFeeSet { + const PALLET: &'static str = "Marketplace"; + const EVENT: &'static str = "ProtocolFeeSet"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Stores information about the marketplace"] + pub fn info( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_marketplace::types::MarketPlaceInfo, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Marketplace", + "Info", + vec![], + [ + 20u8, 11u8, 19u8, 95u8, 183u8, 233u8, 38u8, 27u8, 101u8, 177u8, 134u8, + 213u8, 251u8, 91u8, 116u8, 169u8, 209u8, 191u8, 142u8, 212u8, 212u8, + 65u8, 248u8, 137u8, 39u8, 222u8, 23u8, 25u8, 101u8, 46u8, 171u8, 59u8, + ], + ) + } + #[doc = " Listings by ID"] + pub fn listings_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_marketplace::features::listing::Listing< + ::core::primitive::u128, + ::core::primitive::u128, + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u32, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Marketplace", + "Listings", + vec![], + [ + 118u8, 179u8, 104u8, 232u8, 216u8, 169u8, 144u8, 215u8, 213u8, 120u8, + 175u8, 234u8, 162u8, 109u8, 69u8, 170u8, 242u8, 129u8, 241u8, 142u8, + 0u8, 24u8, 57u8, 175u8, 219u8, 31u8, 121u8, 230u8, 185u8, 193u8, 5u8, + 70u8, + ], + ) + } + #[doc = " Listings by ID"] + pub fn listings( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_marketplace::features::listing::Listing< + ::core::primitive::u128, + ::core::primitive::u128, + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u32, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Marketplace", + "Listings", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 118u8, 179u8, 104u8, 232u8, 216u8, 169u8, 144u8, 215u8, 213u8, 120u8, + 175u8, 234u8, 162u8, 109u8, 69u8, 170u8, 242u8, 129u8, 241u8, 142u8, + 0u8, 24u8, 57u8, 175u8, 219u8, 31u8, 121u8, 230u8, 185u8, 193u8, 5u8, + 70u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " The percentage the minimum bid in an auction must increase by"] + pub fn minimum_bid_increase_percentage( + &self, + ) -> ::subxt::constants::Address + { + ::subxt::constants::Address::new_static( + "Marketplace", + "MinimumBidIncreasePercentage", + [ + 65u8, 93u8, 120u8, 165u8, 204u8, 81u8, 159u8, 163u8, 93u8, 135u8, + 114u8, 121u8, 147u8, 35u8, 215u8, 213u8, 4u8, 223u8, 83u8, 37u8, 225u8, + 200u8, 189u8, 156u8, 140u8, 36u8, 58u8, 46u8, 42u8, 232u8, 155u8, 0u8, + ], + ) + } + #[doc = " ID used by the pallet for making reservations"] + pub fn reserve_identifier( + &self, + ) -> ::subxt::constants::Address<[::core::primitive::u8; 8usize]> { + ::subxt::constants::Address::new_static( + "Marketplace", + "ReserveIdentifier", + [ + 157u8, 118u8, 79u8, 88u8, 241u8, 22u8, 185u8, 37u8, 42u8, 20u8, 133u8, + 240u8, 11u8, 25u8, 66u8, 154u8, 84u8, 163u8, 78u8, 92u8, 171u8, 82u8, + 248u8, 76u8, 189u8, 70u8, 142u8, 249u8, 153u8, 84u8, 180u8, 60u8, + ], + ) + } + #[doc = " The deposit for creating a listing"] + pub fn listing_deposit( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "Marketplace", + "ListingDeposit", + [ + 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 before a listing is considered active"] + pub fn listing_active_delay( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Marketplace", + "ListingActiveDelay", + [ + 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 amount that can be lost due to rounding before failing"] + pub fn max_rounding_error( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "Marketplace", + "MaxRoundingError", + [ + 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 = " Max length of salt used when creating listings and bids"] + pub fn max_salt_length( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Marketplace", + "MaxSaltLength", + [ + 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 beefy { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_beefy::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_beefy::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ReportEquivocation { + pub equivocation_proof: ::std::boxed::Box< + runtime_types::sp_consensus_beefy::EquivocationProof< + ::core::primitive::u32, + runtime_types::sp_consensus_beefy::crypto::Public, + runtime_types::sp_consensus_beefy::crypto::Signature, + >, + >, + pub key_owner_proof: runtime_types::sp_session::MembershipProof, + } + impl ::subxt::blocks::StaticExtrinsic for ReportEquivocation { + const PALLET: &'static str = "Beefy"; + const CALL: &'static str = "report_equivocation"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ReportEquivocationUnsigned { + pub equivocation_proof: ::std::boxed::Box< + runtime_types::sp_consensus_beefy::EquivocationProof< + ::core::primitive::u32, + runtime_types::sp_consensus_beefy::crypto::Public, + runtime_types::sp_consensus_beefy::crypto::Signature, + >, + >, + pub key_owner_proof: runtime_types::sp_session::MembershipProof, + } + impl ::subxt::blocks::StaticExtrinsic for ReportEquivocationUnsigned { + const PALLET: &'static str = "Beefy"; + const CALL: &'static str = "report_equivocation_unsigned"; + } + } + 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_consensus_beefy::EquivocationProof< + ::core::primitive::u32, + runtime_types::sp_consensus_beefy::crypto::Public, + runtime_types::sp_consensus_beefy::crypto::Signature, + >, + key_owner_proof: runtime_types::sp_session::MembershipProof, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Beefy", + "report_equivocation", + types::ReportEquivocation { + equivocation_proof: ::std::boxed::Box::new(equivocation_proof), + key_owner_proof, + }, + [ + 156u8, 32u8, 92u8, 179u8, 165u8, 93u8, 216u8, 130u8, 121u8, 225u8, + 33u8, 141u8, 255u8, 12u8, 101u8, 136u8, 177u8, 25u8, 23u8, 239u8, 12u8, + 142u8, 88u8, 228u8, 85u8, 171u8, 218u8, 185u8, 146u8, 245u8, 149u8, + 85u8, + ], + ) + } + #[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_consensus_beefy::EquivocationProof< + ::core::primitive::u32, + runtime_types::sp_consensus_beefy::crypto::Public, + runtime_types::sp_consensus_beefy::crypto::Signature, + >, + key_owner_proof: runtime_types::sp_session::MembershipProof, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Beefy", + "report_equivocation_unsigned", + types::ReportEquivocationUnsigned { + equivocation_proof: ::std::boxed::Box::new(equivocation_proof), + key_owner_proof, + }, + [ + 126u8, 201u8, 236u8, 234u8, 107u8, 52u8, 37u8, 115u8, 228u8, 232u8, + 103u8, 193u8, 143u8, 224u8, 79u8, 192u8, 207u8, 204u8, 161u8, 103u8, + 210u8, 131u8, 64u8, 251u8, 48u8, 196u8, 249u8, 148u8, 2u8, 179u8, + 135u8, 121u8, + ], + ) + } + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " The current authorities set"] + pub fn authorities( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::sp_consensus_beefy::crypto::Public, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Beefy", + "Authorities", + vec![], + [ + 53u8, 171u8, 94u8, 33u8, 46u8, 83u8, 105u8, 120u8, 123u8, 201u8, 141u8, + 71u8, 131u8, 150u8, 51u8, 121u8, 67u8, 45u8, 249u8, 146u8, 85u8, 113u8, + 23u8, 59u8, 59u8, 41u8, 0u8, 226u8, 98u8, 166u8, 253u8, 59u8, + ], + ) + } + #[doc = " The current validator set id"] + pub fn validator_set_id( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u64, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Beefy", + "ValidatorSetId", + vec![], + [ + 168u8, 84u8, 23u8, 134u8, 153u8, 30u8, 183u8, 176u8, 206u8, 100u8, + 109u8, 86u8, 109u8, 126u8, 146u8, 175u8, 173u8, 1u8, 253u8, 42u8, + 122u8, 207u8, 71u8, 4u8, 145u8, 83u8, 148u8, 29u8, 243u8, 52u8, 29u8, + 78u8, + ], + ) + } + #[doc = " Authorities set scheduled to be used with the next session"] + pub fn next_authorities( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::sp_consensus_beefy::crypto::Public, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Beefy", + "NextAuthorities", + vec![], + [ + 87u8, 180u8, 0u8, 85u8, 209u8, 13u8, 131u8, 103u8, 8u8, 226u8, 42u8, + 72u8, 38u8, 47u8, 190u8, 78u8, 62u8, 4u8, 161u8, 130u8, 87u8, 196u8, + 13u8, 209u8, 205u8, 98u8, 104u8, 91u8, 3u8, 47u8, 82u8, 11u8, + ], + ) + } + #[doc = " A mapping from BEEFY 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 BEEFY 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: `ValidatorSetId` is not under user control."] + pub fn set_id_session_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Beefy", + "SetIdSession", + vec![], + [ + 47u8, 0u8, 239u8, 121u8, 187u8, 213u8, 254u8, 50u8, 238u8, 10u8, 162u8, + 65u8, 189u8, 166u8, 37u8, 74u8, 82u8, 81u8, 160u8, 20u8, 180u8, 253u8, + 238u8, 18u8, 209u8, 203u8, 38u8, 148u8, 16u8, 105u8, 72u8, 169u8, + ], + ) + } + #[doc = " A mapping from BEEFY 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 BEEFY 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: `ValidatorSetId` is not under user control."] + pub fn set_id_session( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u64>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Beefy", + "SetIdSession", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 47u8, 0u8, 239u8, 121u8, 187u8, 213u8, 254u8, 50u8, 238u8, 10u8, 162u8, + 65u8, 189u8, 166u8, 37u8, 74u8, 82u8, 81u8, 160u8, 20u8, 180u8, 253u8, + 238u8, 18u8, 209u8, 203u8, 38u8, 148u8, 16u8, 105u8, 72u8, 169u8, + ], + ) + } + #[doc = " Block number where BEEFY consensus is enabled/started."] + #[doc = " By changing this (through governance or sudo), BEEFY consensus is effectively"] + #[doc = " restarted from the new block number."] + pub fn genesis_block( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::option::Option<::core::primitive::u32>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Beefy", + "GenesisBlock", + vec![], + [ + 198u8, 155u8, 11u8, 240u8, 189u8, 245u8, 159u8, 127u8, 55u8, 33u8, + 48u8, 29u8, 209u8, 119u8, 163u8, 24u8, 28u8, 22u8, 163u8, 163u8, 124u8, + 88u8, 126u8, 4u8, 193u8, 158u8, 29u8, 243u8, 212u8, 4u8, 41u8, 22u8, + ], + ) + } + } + } + pub mod constants { + use super::runtime_types; + pub struct ConstantsApi; + impl ConstantsApi { + #[doc = " The maximum number of authorities that can be added."] + pub fn max_authorities( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "Beefy", + "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::Address<::core::primitive::u64> { + ::subxt::constants::Address::new_static( + "Beefy", + "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 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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Mmr", + "RootHash", + vec![], + [ + 111u8, 206u8, 173u8, 92u8, 67u8, 49u8, 150u8, 113u8, 90u8, 245u8, 38u8, + 254u8, 76u8, 250u8, 167u8, 66u8, 130u8, 129u8, 251u8, 220u8, 172u8, + 229u8, 162u8, 251u8, 36u8, 227u8, 43u8, 189u8, 7u8, 106u8, 23u8, 13u8, + ], + ) + } + #[doc = " Current size of the MMR (number of leaves)."] + pub fn number_of_leaves( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u64, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Mmr", + "NumberOfLeaves", + vec![], + [ + 123u8, 58u8, 149u8, 174u8, 85u8, 45u8, 20u8, 115u8, 241u8, 0u8, 51u8, + 174u8, 234u8, 60u8, 230u8, 59u8, 237u8, 144u8, 170u8, 32u8, 4u8, 0u8, + 34u8, 163u8, 238u8, 205u8, 93u8, 208u8, 53u8, 38u8, 141u8, 195u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Mmr", + "Nodes", + vec![], + [ + 27u8, 84u8, 41u8, 195u8, 146u8, 81u8, 211u8, 189u8, 63u8, 125u8, 173u8, + 206u8, 69u8, 198u8, 202u8, 213u8, 89u8, 31u8, 89u8, 177u8, 76u8, 154u8, + 249u8, 197u8, 133u8, 78u8, 142u8, 71u8, 183u8, 3u8, 132u8, 25u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Mmr", + "Nodes", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 27u8, 84u8, 41u8, 195u8, 146u8, 81u8, 211u8, 189u8, 63u8, 125u8, 173u8, + 206u8, 69u8, 198u8, 202u8, 213u8, 89u8, 31u8, 89u8, 177u8, 76u8, 154u8, + 249u8, 197u8, 133u8, 78u8, 142u8, 71u8, 183u8, 3u8, 132u8, 25u8, + ], + ) + } + } + } + } + pub mod mmr_leaf { + use super::root_mod; + use super::runtime_types; + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " Details of current BEEFY authority set."] + pub fn beefy_authorities( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_consensus_beefy::mmr::BeefyAuthoritySet<::subxt::utils::H256>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "MmrLeaf", + "BeefyAuthorities", + vec![], + [ + 48u8, 167u8, 201u8, 190u8, 42u8, 202u8, 83u8, 148u8, 32u8, 147u8, 62u8, + 243u8, 220u8, 73u8, 38u8, 233u8, 253u8, 1u8, 112u8, 140u8, 174u8, 11u8, + 186u8, 105u8, 188u8, 136u8, 49u8, 169u8, 63u8, 107u8, 84u8, 165u8, + ], + ) + } + #[doc = " Details of next BEEFY authority set."] + #[doc = ""] + #[doc = " This storage entry is used as cache for calls to `update_beefy_next_authority_set`."] + pub fn beefy_next_authorities( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::sp_consensus_beefy::mmr::BeefyAuthoritySet<::subxt::utils::H256>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "MmrLeaf", + "BeefyNextAuthorities", + vec![], + [ + 197u8, 238u8, 15u8, 27u8, 122u8, 53u8, 198u8, 78u8, 9u8, 47u8, 72u8, + 51u8, 91u8, 209u8, 54u8, 149u8, 187u8, 203u8, 123u8, 108u8, 61u8, + 218u8, 83u8, 108u8, 101u8, 59u8, 244u8, 64u8, 131u8, 67u8, 26u8, 61u8, + ], + ) + } + } + } + } + pub mod scheduler { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_scheduler::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_scheduler::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + } + impl ::subxt::blocks::StaticExtrinsic for Schedule { + const PALLET: &'static str = "Scheduler"; + const CALL: &'static str = "schedule"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Cancel { + pub when: ::core::primitive::u32, + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for Cancel { + const PALLET: &'static str = "Scheduler"; + const CALL: &'static str = "cancel"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + } + impl ::subxt::blocks::StaticExtrinsic for ScheduleNamed { + const PALLET: &'static str = "Scheduler"; + const CALL: &'static str = "schedule_named"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CancelNamed { + pub id: [::core::primitive::u8; 32usize], + } + impl ::subxt::blocks::StaticExtrinsic for CancelNamed { + const PALLET: &'static str = "Scheduler"; + const CALL: &'static str = "cancel_named"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + } + impl ::subxt::blocks::StaticExtrinsic for ScheduleAfter { + const PALLET: &'static str = "Scheduler"; + const CALL: &'static str = "schedule_after"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + } + impl ::subxt::blocks::StaticExtrinsic for ScheduleNamedAfter { + const PALLET: &'static str = "Scheduler"; + const CALL: &'static str = "schedule_named_after"; + } + } + 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::enjin_runtime::RuntimeCall, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Scheduler", + "schedule", + types::Schedule { + when, + maybe_periodic, + priority, + call: ::std::boxed::Box::new(call), + }, + [ + 2u8, 188u8, 201u8, 194u8, 49u8, 73u8, 207u8, 186u8, 239u8, 93u8, 78u8, + 55u8, 91u8, 26u8, 32u8, 242u8, 31u8, 146u8, 108u8, 119u8, 50u8, 67u8, + 9u8, 178u8, 91u8, 216u8, 235u8, 12u8, 42u8, 53u8, 28u8, 225u8, + ], + ) + } + #[doc = "Cancel an anonymously scheduled task."] + pub fn cancel( + &self, + when: ::core::primitive::u32, + index: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Scheduler", + "cancel", + types::Cancel { when, index }, + [ + 183u8, 204u8, 143u8, 86u8, 17u8, 130u8, 132u8, 91u8, 133u8, 168u8, + 103u8, 129u8, 114u8, 56u8, 123u8, 42u8, 123u8, 120u8, 221u8, 211u8, + 26u8, 85u8, 82u8, 246u8, 192u8, 39u8, 254u8, 45u8, 147u8, 56u8, 178u8, + 133u8, + ], + ) + } + #[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::enjin_runtime::RuntimeCall, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Scheduler", + "schedule_named", + types::ScheduleNamed { + id, + when, + maybe_periodic, + priority, + call: ::std::boxed::Box::new(call), + }, + [ + 233u8, 201u8, 38u8, 68u8, 100u8, 114u8, 92u8, 149u8, 173u8, 140u8, + 187u8, 252u8, 179u8, 221u8, 6u8, 37u8, 68u8, 246u8, 173u8, 30u8, 72u8, + 88u8, 241u8, 170u8, 248u8, 175u8, 142u8, 157u8, 203u8, 184u8, 243u8, + 139u8, + ], + ) + } + #[doc = "Cancel a named scheduled task."] + pub fn cancel_named( + &self, + id: [::core::primitive::u8; 32usize], + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Scheduler", + "cancel_named", + types::CancelNamed { id }, + [ + 205u8, 35u8, 28u8, 57u8, 224u8, 7u8, 49u8, 233u8, 236u8, 163u8, 93u8, + 236u8, 103u8, 69u8, 65u8, 51u8, 121u8, 84u8, 9u8, 196u8, 147u8, 122u8, + 227u8, 200u8, 181u8, 233u8, 62u8, 240u8, 174u8, 83u8, 129u8, 193u8, + ], + ) + } + #[doc = "Anonymously schedule a task after a delay."] + 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::enjin_runtime::RuntimeCall, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Scheduler", + "schedule_after", + types::ScheduleAfter { + after, + maybe_periodic, + priority, + call: ::std::boxed::Box::new(call), + }, + [ + 233u8, 106u8, 24u8, 175u8, 145u8, 10u8, 185u8, 0u8, 70u8, 158u8, 180u8, + 78u8, 99u8, 114u8, 176u8, 106u8, 151u8, 108u8, 180u8, 33u8, 172u8, + 105u8, 218u8, 140u8, 173u8, 20u8, 136u8, 164u8, 47u8, 10u8, 219u8, + 11u8, + ], + ) + } + #[doc = "Schedule a named task after a delay."] + 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::enjin_runtime::RuntimeCall, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Scheduler", + "schedule_named_after", + types::ScheduleNamedAfter { + id, + after, + maybe_periodic, + priority, + call: ::std::boxed::Box::new(call), + }, + [ + 173u8, 229u8, 12u8, 20u8, 254u8, 174u8, 200u8, 200u8, 163u8, 17u8, + 22u8, 111u8, 35u8, 10u8, 107u8, 81u8, 45u8, 143u8, 173u8, 235u8, 39u8, + 76u8, 151u8, 241u8, 90u8, 99u8, 221u8, 19u8, 56u8, 170u8, 157u8, 20u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Scheduler", + "IncompleteSince", + vec![], + [ + 250u8, 83u8, 64u8, 167u8, 205u8, 59u8, 225u8, 97u8, 205u8, 12u8, 76u8, + 130u8, 197u8, 4u8, 111u8, 208u8, 92u8, 217u8, 145u8, 119u8, 38u8, + 135u8, 1u8, 242u8, 228u8, 143u8, 56u8, 25u8, 115u8, 233u8, 227u8, 66u8, + ], + ) + } + #[doc = " Items to be executed, indexed by the block number that they should be executed on."] + pub fn agenda_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::option::Option< + runtime_types::pallet_scheduler::Scheduled< + [::core::primitive::u8; 32usize], + runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_runtime::RuntimeCall, + >, + ::core::primitive::u32, + runtime_types::enjin_runtime::OriginCaller, + ::subxt::utils::AccountId32, + >, + >, + >, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Scheduler", + "Agenda", + vec![], + [ + 114u8, 156u8, 37u8, 111u8, 243u8, 148u8, 4u8, 124u8, 134u8, 110u8, + 43u8, 13u8, 63u8, 113u8, 28u8, 14u8, 1u8, 96u8, 75u8, 13u8, 83u8, + 150u8, 65u8, 44u8, 250u8, 117u8, 168u8, 215u8, 169u8, 28u8, 255u8, + 128u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::option::Option< + runtime_types::pallet_scheduler::Scheduled< + [::core::primitive::u8; 32usize], + runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_runtime::RuntimeCall, + >, + ::core::primitive::u32, + runtime_types::enjin_runtime::OriginCaller, + ::subxt::utils::AccountId32, + >, + >, + >, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Scheduler", + "Agenda", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 114u8, 156u8, 37u8, 111u8, 243u8, 148u8, 4u8, 124u8, 134u8, 110u8, + 43u8, 13u8, 63u8, 113u8, 28u8, 14u8, 1u8, 96u8, 75u8, 13u8, 83u8, + 150u8, 65u8, 44u8, 250u8, 117u8, 168u8, 215u8, 169u8, 28u8, 255u8, + 128u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (::core::primitive::u32, ::core::primitive::u32), + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Scheduler", + "Lookup", + vec![], + [ + 24u8, 87u8, 96u8, 127u8, 136u8, 205u8, 238u8, 174u8, 71u8, 110u8, 65u8, + 98u8, 228u8, 167u8, 99u8, 71u8, 171u8, 186u8, 12u8, 218u8, 137u8, 70u8, + 70u8, 228u8, 153u8, 111u8, 165u8, 114u8, 229u8, 136u8, 118u8, 131u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + (::core::primitive::u32, ::core::primitive::u32), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Scheduler", + "Lookup", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 24u8, 87u8, 96u8, 127u8, 136u8, 205u8, 238u8, 174u8, 71u8, 110u8, 65u8, + 98u8, 228u8, 167u8, 99u8, 71u8, 171u8, 186u8, 12u8, 218u8, 137u8, 70u8, + 70u8, 228u8, 153u8, 111u8, 165u8, 114u8, 229u8, 136u8, 118u8, 131u8, + ], + ) + } + } + } + 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::Address + { + ::subxt::constants::Address::new_static( + "Scheduler", + "MaximumWeight", + [ + 149u8, 252u8, 129u8, 80u8, 169u8, 36u8, 79u8, 127u8, 240u8, 156u8, + 56u8, 202u8, 219u8, 86u8, 5u8, 65u8, 245u8, 148u8, 138u8, 243u8, 210u8, + 128u8, 234u8, 216u8, 240u8, 219u8, 123u8, 235u8, 21u8, 158u8, 237u8, + 112u8, + ], + ) + } + #[doc = " The maximum number of scheduled calls in the queue for a single block."] + #[doc = ""] + #[doc = " NOTE:"] + #[doc = " + Dependent pallets' benchmarks might require a higher limit for the setting. Set a"] + #[doc = " higher limit under `runtime-benchmarks` feature."] + pub fn max_scheduled_per_block( + &self, + ) -> ::subxt::constants::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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 = "\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 type Error = runtime_types::pallet_preimage::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_preimage::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct NotePreimage { + pub bytes: ::std::vec::Vec<::core::primitive::u8>, + } + impl ::subxt::blocks::StaticExtrinsic for NotePreimage { + const PALLET: &'static str = "Preimage"; + const CALL: &'static str = "note_preimage"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UnnotePreimage { + pub hash: ::subxt::utils::H256, + } + impl ::subxt::blocks::StaticExtrinsic for UnnotePreimage { + const PALLET: &'static str = "Preimage"; + const CALL: &'static str = "unnote_preimage"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RequestPreimage { + pub hash: ::subxt::utils::H256, + } + impl ::subxt::blocks::StaticExtrinsic for RequestPreimage { + const PALLET: &'static str = "Preimage"; + const CALL: &'static str = "request_preimage"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UnrequestPreimage { + pub hash: ::subxt::utils::H256, + } + impl ::subxt::blocks::StaticExtrinsic for UnrequestPreimage { + const PALLET: &'static str = "Preimage"; + const CALL: &'static str = "unrequest_preimage"; + } + } + 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::Payload { + ::subxt::tx::Payload::new_static( + "Preimage", + "note_preimage", + types::NotePreimage { bytes }, + [ + 121u8, 88u8, 18u8, 92u8, 176u8, 15u8, 192u8, 198u8, 146u8, 198u8, 38u8, + 242u8, 213u8, 83u8, 7u8, 230u8, 14u8, 110u8, 235u8, 32u8, 215u8, 26u8, + 192u8, 217u8, 113u8, 224u8, 206u8, 96u8, 177u8, 198u8, 246u8, 33u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Preimage", + "unnote_preimage", + types::UnnotePreimage { hash }, + [ + 188u8, 116u8, 222u8, 22u8, 127u8, 215u8, 2u8, 133u8, 96u8, 202u8, + 190u8, 123u8, 203u8, 43u8, 200u8, 161u8, 226u8, 24u8, 49u8, 36u8, + 221u8, 160u8, 130u8, 119u8, 30u8, 138u8, 144u8, 85u8, 5u8, 164u8, + 252u8, 222u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Preimage", + "request_preimage", + types::RequestPreimage { hash }, + [ + 87u8, 0u8, 204u8, 111u8, 43u8, 115u8, 64u8, 209u8, 133u8, 13u8, 83u8, + 45u8, 164u8, 166u8, 233u8, 105u8, 242u8, 238u8, 235u8, 208u8, 113u8, + 134u8, 93u8, 242u8, 86u8, 32u8, 7u8, 152u8, 107u8, 208u8, 79u8, 59u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Preimage", + "unrequest_preimage", + types::UnrequestPreimage { hash }, + [ + 55u8, 37u8, 224u8, 149u8, 142u8, 120u8, 8u8, 68u8, 183u8, 225u8, 255u8, + 240u8, 254u8, 111u8, 58u8, 200u8, 113u8, 217u8, 177u8, 203u8, 107u8, + 104u8, 233u8, 87u8, 252u8, 53u8, 33u8, 112u8, 116u8, 254u8, 117u8, + 134u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_preimage::RequestStatus< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Preimage", + "StatusFor", + vec![], + [ + 187u8, 100u8, 54u8, 112u8, 96u8, 129u8, 36u8, 149u8, 127u8, 226u8, + 126u8, 171u8, 72u8, 189u8, 59u8, 126u8, 204u8, 125u8, 67u8, 204u8, + 231u8, 6u8, 212u8, 135u8, 166u8, 252u8, 5u8, 46u8, 111u8, 120u8, 54u8, + 209u8, + ], + ) + } + #[doc = " The request status of a given hash."] + pub fn status_for( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_preimage::RequestStatus< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Preimage", + "StatusFor", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 187u8, 100u8, 54u8, 112u8, 96u8, 129u8, 36u8, 149u8, 127u8, 226u8, + 126u8, 171u8, 72u8, 189u8, 59u8, 126u8, 204u8, 125u8, 67u8, 204u8, + 231u8, 6u8, 212u8, 135u8, 166u8, 252u8, 5u8, 46u8, 111u8, 120u8, 54u8, + 209u8, + ], + ) + } + pub fn preimage_for_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Preimage", + "PreimageFor", + vec![], + [ + 106u8, 5u8, 17u8, 46u8, 6u8, 184u8, 177u8, 113u8, 169u8, 34u8, 119u8, + 141u8, 117u8, 40u8, 30u8, 94u8, 187u8, 35u8, 206u8, 216u8, 143u8, + 208u8, 49u8, 156u8, 200u8, 255u8, 109u8, 200u8, 210u8, 134u8, 24u8, + 139u8, + ], + ) + } + pub fn preimage_for_iter1( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Preimage", + "PreimageFor", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 106u8, 5u8, 17u8, 46u8, 6u8, 184u8, 177u8, 113u8, 169u8, 34u8, 119u8, + 141u8, 117u8, 40u8, 30u8, 94u8, 187u8, 35u8, 206u8, 216u8, 143u8, + 208u8, 49u8, 156u8, 200u8, 255u8, 109u8, 200u8, 210u8, 134u8, 24u8, + 139u8, + ], + ) + } + pub fn preimage_for( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, + _1: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Preimage", + "PreimageFor", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 106u8, 5u8, 17u8, 46u8, 6u8, 184u8, 177u8, 113u8, 169u8, 34u8, 119u8, + 141u8, 117u8, 40u8, 30u8, 94u8, 187u8, 35u8, 206u8, 216u8, 143u8, + 208u8, 49u8, 156u8, 200u8, 255u8, 109u8, 200u8, 210u8, 134u8, 24u8, + 139u8, + ], + ) + } + } + } + } + pub mod conviction_voting { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_conviction_voting::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_conviction_voting::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Vote { + #[codec(compact)] + pub poll_index: ::core::primitive::u32, + pub vote: runtime_types::pallet_conviction_voting::vote::AccountVote< + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Vote { + const PALLET: &'static str = "ConvictionVoting"; + const CALL: &'static str = "vote"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Delegate { + pub class: ::core::primitive::u16, + pub to: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub conviction: runtime_types::pallet_conviction_voting::conviction::Conviction, + pub balance: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for Delegate { + const PALLET: &'static str = "ConvictionVoting"; + const CALL: &'static str = "delegate"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Undelegate { + pub class: ::core::primitive::u16, + } + impl ::subxt::blocks::StaticExtrinsic for Undelegate { + const PALLET: &'static str = "ConvictionVoting"; + const CALL: &'static str = "undelegate"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Unlock { + pub class: ::core::primitive::u16, + pub target: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for Unlock { + const PALLET: &'static str = "ConvictionVoting"; + const CALL: &'static str = "unlock"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveVote { + pub class: ::core::option::Option<::core::primitive::u16>, + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveVote { + const PALLET: &'static str = "ConvictionVoting"; + const CALL: &'static str = "remove_vote"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveOtherVote { + pub target: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub class: ::core::primitive::u16, + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveOtherVote { + const PALLET: &'static str = "ConvictionVoting"; + const CALL: &'static str = "remove_other_vote"; + } + } + 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::Payload { + ::subxt::tx::Payload::new_static( + "ConvictionVoting", + "vote", + types::Vote { poll_index, vote }, + [ + 57u8, 170u8, 177u8, 168u8, 158u8, 43u8, 87u8, 242u8, 176u8, 85u8, + 230u8, 64u8, 103u8, 239u8, 190u8, 6u8, 228u8, 165u8, 248u8, 77u8, + 231u8, 221u8, 186u8, 107u8, 249u8, 201u8, 226u8, 52u8, 129u8, 90u8, + 142u8, 159u8, + ], + ) + } + #[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, ()>, + conviction: runtime_types::pallet_conviction_voting::conviction::Conviction, + balance: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ConvictionVoting", + "delegate", + types::Delegate { + class, + to, + conviction, + balance, + }, + [ + 223u8, 143u8, 33u8, 94u8, 32u8, 156u8, 43u8, 40u8, 142u8, 134u8, 209u8, + 134u8, 255u8, 179u8, 97u8, 46u8, 8u8, 140u8, 5u8, 29u8, 76u8, 22u8, + 36u8, 7u8, 108u8, 190u8, 220u8, 151u8, 10u8, 47u8, 89u8, 55u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "ConvictionVoting", + "undelegate", + types::Undelegate { class }, + [ + 140u8, 232u8, 6u8, 53u8, 228u8, 8u8, 131u8, 144u8, 65u8, 66u8, 245u8, + 247u8, 147u8, 135u8, 198u8, 57u8, 82u8, 212u8, 89u8, 46u8, 236u8, + 168u8, 200u8, 220u8, 93u8, 168u8, 101u8, 29u8, 110u8, 76u8, 67u8, + 181u8, + ], + ) + } + #[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, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ConvictionVoting", + "unlock", + types::Unlock { class, target }, + [ + 79u8, 5u8, 252u8, 237u8, 109u8, 238u8, 157u8, 237u8, 125u8, 171u8, + 65u8, 160u8, 102u8, 192u8, 5u8, 141u8, 179u8, 249u8, 253u8, 213u8, + 105u8, 251u8, 241u8, 145u8, 186u8, 177u8, 244u8, 139u8, 71u8, 140u8, + 173u8, 108u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "ConvictionVoting", + "remove_vote", + types::RemoveVote { class, index }, + [ + 255u8, 108u8, 211u8, 146u8, 168u8, 231u8, 207u8, 44u8, 76u8, 24u8, + 235u8, 60u8, 23u8, 79u8, 192u8, 192u8, 46u8, 40u8, 134u8, 27u8, 125u8, + 114u8, 125u8, 247u8, 85u8, 102u8, 76u8, 159u8, 34u8, 167u8, 152u8, + 148u8, + ], + ) + } + #[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, ()>, + class: ::core::primitive::u16, + index: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "ConvictionVoting", + "remove_other_vote", + types::RemoveOtherVote { + target, + class, + index, + }, + [ + 165u8, 26u8, 166u8, 37u8, 10u8, 174u8, 243u8, 10u8, 73u8, 93u8, 213u8, + 69u8, 200u8, 16u8, 48u8, 146u8, 160u8, 92u8, 28u8, 26u8, 158u8, 55u8, + 6u8, 251u8, 36u8, 132u8, 46u8, 195u8, 107u8, 34u8, 0u8, 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_conviction_voting::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + 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::Address::new_static( + "ConvictionVoting", + "VotingFor", + vec![], + [ + 76u8, 63u8, 153u8, 193u8, 39u8, 137u8, 186u8, 29u8, 202u8, 56u8, 169u8, + 56u8, 103u8, 138u8, 192u8, 18u8, 179u8, 114u8, 56u8, 121u8, 197u8, + 12u8, 29u8, 239u8, 220u8, 231u8, 24u8, 46u8, 134u8, 99u8, 53u8, 206u8, + ], + ) + } + #[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_iter1( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + 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::Address::new_static( + "ConvictionVoting", + "VotingFor", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 76u8, 63u8, 153u8, 193u8, 39u8, 137u8, 186u8, 29u8, 202u8, 56u8, 169u8, + 56u8, 103u8, 138u8, 192u8, 18u8, 179u8, 114u8, 56u8, 121u8, 197u8, + 12u8, 29u8, 239u8, 220u8, 231u8, 24u8, 46u8, 134u8, 99u8, 53u8, 206u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + 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::Address::new_static( + "ConvictionVoting", + "VotingFor", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 76u8, 63u8, 153u8, 193u8, 39u8, 137u8, 186u8, 29u8, 202u8, 56u8, 169u8, + 56u8, 103u8, 138u8, 192u8, 18u8, 179u8, 114u8, 56u8, 121u8, 197u8, + 12u8, 29u8, 239u8, 220u8, 231u8, 24u8, 46u8, 134u8, 99u8, 53u8, 206u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec<( + ::core::primitive::u16, + ::core::primitive::u128, + )>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "ConvictionVoting", + "ClassLocksFor", + vec![], + [ + 74u8, 74u8, 8u8, 82u8, 215u8, 61u8, 13u8, 9u8, 44u8, 222u8, 33u8, + 245u8, 195u8, 124u8, 6u8, 174u8, 65u8, 245u8, 71u8, 42u8, 47u8, 46u8, + 164u8, 231u8, 11u8, 245u8, 115u8, 207u8, 209u8, 137u8, 90u8, 6u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec<( + ::core::primitive::u16, + ::core::primitive::u128, + )>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "ConvictionVoting", + "ClassLocksFor", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 74u8, 74u8, 8u8, 82u8, 215u8, 61u8, 13u8, 9u8, 44u8, 222u8, 33u8, + 245u8, 195u8, 124u8, 6u8, 174u8, 65u8, 245u8, 71u8, 42u8, 47u8, 46u8, + 164u8, 231u8, 11u8, 245u8, 115u8, 207u8, 209u8, 137u8, 90u8, 6u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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 referenda { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_referenda::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_referenda::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Submit { + pub proposal_origin: + ::std::boxed::Box, + pub proposal: runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_runtime::RuntimeCall, + >, + pub enactment_moment: + runtime_types::frame_support::traits::schedule::DispatchTime< + ::core::primitive::u32, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Submit { + const PALLET: &'static str = "Referenda"; + const CALL: &'static str = "submit"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PlaceDecisionDeposit { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for PlaceDecisionDeposit { + const PALLET: &'static str = "Referenda"; + const CALL: &'static str = "place_decision_deposit"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RefundDecisionDeposit { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RefundDecisionDeposit { + const PALLET: &'static str = "Referenda"; + const CALL: &'static str = "refund_decision_deposit"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Cancel { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for Cancel { + const PALLET: &'static str = "Referenda"; + const CALL: &'static str = "cancel"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Kill { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for Kill { + const PALLET: &'static str = "Referenda"; + const CALL: &'static str = "kill"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct NudgeReferendum { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for NudgeReferendum { + const PALLET: &'static str = "Referenda"; + const CALL: &'static str = "nudge_referendum"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct OneFewerDeciding { + pub track: ::core::primitive::u16, + } + impl ::subxt::blocks::StaticExtrinsic for OneFewerDeciding { + const PALLET: &'static str = "Referenda"; + const CALL: &'static str = "one_fewer_deciding"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RefundSubmissionDeposit { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RefundSubmissionDeposit { + const PALLET: &'static str = "Referenda"; + const CALL: &'static str = "refund_submission_deposit"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMetadata { + pub index: ::core::primitive::u32, + pub maybe_hash: ::core::option::Option<::subxt::utils::H256>, + } + impl ::subxt::blocks::StaticExtrinsic for SetMetadata { + const PALLET: &'static str = "Referenda"; + const CALL: &'static str = "set_metadata"; + } + } + 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::enjin_runtime::OriginCaller, + proposal: runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_runtime::RuntimeCall, + >, + enactment_moment: runtime_types::frame_support::traits::schedule::DispatchTime< + ::core::primitive::u32, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Referenda", + "submit", + types::Submit { + proposal_origin: ::std::boxed::Box::new(proposal_origin), + proposal, + enactment_moment, + }, + [ + 156u8, 222u8, 29u8, 238u8, 117u8, 111u8, 60u8, 24u8, 232u8, 221u8, + 52u8, 115u8, 62u8, 8u8, 236u8, 40u8, 50u8, 202u8, 201u8, 146u8, 4u8, + 250u8, 229u8, 131u8, 178u8, 93u8, 210u8, 231u8, 66u8, 45u8, 212u8, + 137u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Referenda", + "place_decision_deposit", + types::PlaceDecisionDeposit { index }, + [ + 247u8, 158u8, 55u8, 191u8, 188u8, 200u8, 3u8, 47u8, 20u8, 175u8, 86u8, + 203u8, 52u8, 253u8, 91u8, 131u8, 21u8, 213u8, 56u8, 68u8, 40u8, 84u8, + 184u8, 30u8, 9u8, 193u8, 63u8, 182u8, 178u8, 241u8, 247u8, 220u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Referenda", + "refund_decision_deposit", + types::RefundDecisionDeposit { index }, + [ + 159u8, 19u8, 35u8, 216u8, 114u8, 105u8, 18u8, 42u8, 148u8, 151u8, + 136u8, 92u8, 117u8, 30u8, 29u8, 41u8, 238u8, 58u8, 195u8, 91u8, 115u8, + 135u8, 96u8, 99u8, 154u8, 233u8, 8u8, 249u8, 145u8, 165u8, 77u8, 164u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Referenda", + "cancel", + types::Cancel { index }, + [ + 55u8, 206u8, 119u8, 156u8, 238u8, 165u8, 193u8, 73u8, 242u8, 13u8, + 212u8, 75u8, 136u8, 156u8, 151u8, 14u8, 35u8, 41u8, 156u8, 107u8, 60u8, + 190u8, 39u8, 216u8, 8u8, 74u8, 213u8, 130u8, 160u8, 131u8, 237u8, + 122u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Referenda", + "kill", + types::Kill { index }, + [ + 50u8, 89u8, 57u8, 0u8, 87u8, 129u8, 113u8, 140u8, 179u8, 178u8, 126u8, + 198u8, 92u8, 92u8, 189u8, 64u8, 123u8, 232u8, 57u8, 227u8, 223u8, + 219u8, 73u8, 217u8, 179u8, 44u8, 210u8, 125u8, 180u8, 10u8, 143u8, + 48u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Referenda", + "nudge_referendum", + types::NudgeReferendum { index }, + [ + 75u8, 99u8, 172u8, 30u8, 170u8, 150u8, 211u8, 229u8, 249u8, 128u8, + 194u8, 246u8, 100u8, 142u8, 193u8, 184u8, 232u8, 81u8, 29u8, 17u8, + 99u8, 91u8, 236u8, 85u8, 230u8, 226u8, 57u8, 115u8, 45u8, 170u8, 54u8, + 213u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Referenda", + "one_fewer_deciding", + types::OneFewerDeciding { track }, + [ + 15u8, 84u8, 79u8, 231u8, 21u8, 239u8, 244u8, 143u8, 183u8, 215u8, + 181u8, 25u8, 225u8, 195u8, 95u8, 171u8, 17u8, 156u8, 182u8, 128u8, + 111u8, 40u8, 151u8, 102u8, 196u8, 55u8, 36u8, 212u8, 89u8, 190u8, + 131u8, 167u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Referenda", + "refund_submission_deposit", + types::RefundSubmissionDeposit { index }, + [ + 20u8, 217u8, 115u8, 6u8, 1u8, 60u8, 54u8, 136u8, 35u8, 41u8, 38u8, + 23u8, 85u8, 100u8, 141u8, 126u8, 30u8, 160u8, 61u8, 46u8, 134u8, 98u8, + 82u8, 38u8, 211u8, 124u8, 208u8, 222u8, 210u8, 10u8, 155u8, 122u8, + ], + ) + } + #[doc = "Set or clear metadata of a referendum."] + #[doc = ""] + #[doc = "Parameters:"] + #[doc = "- `origin`: Must be `Signed` by a creator of a referendum or by anyone to clear a"] + #[doc = " metadata of a finished referendum."] + #[doc = "- `index`: The index of a referendum to set or clear metadata for."] + #[doc = "- `maybe_hash`: The hash of an on-chain stored preimage. `None` to clear a metadata."] + pub fn set_metadata( + &self, + index: ::core::primitive::u32, + maybe_hash: ::core::option::Option<::subxt::utils::H256>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Referenda", + "set_metadata", + types::SetMetadata { index, maybe_hash }, + [ + 207u8, 29u8, 146u8, 233u8, 219u8, 205u8, 88u8, 118u8, 106u8, 61u8, + 124u8, 101u8, 2u8, 41u8, 169u8, 70u8, 114u8, 189u8, 162u8, 118u8, 1u8, + 108u8, 234u8, 98u8, 245u8, 245u8, 183u8, 126u8, 89u8, 13u8, 112u8, + 88u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::enjin_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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::enjin_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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Metadata for a referendum has been set."] + pub struct MetadataSet { + pub index: ::core::primitive::u32, + pub hash: ::subxt::utils::H256, + } + impl ::subxt::events::StaticEvent for MetadataSet { + const PALLET: &'static str = "Referenda"; + const EVENT: &'static str = "MetadataSet"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Metadata for a referendum has been cleared."] + pub struct MetadataCleared { + pub index: ::core::primitive::u32, + pub hash: ::subxt::utils::H256, + } + impl ::subxt::events::StaticEvent for MetadataCleared { + const PALLET: &'static str = "Referenda"; + const EVENT: &'static str = "MetadataCleared"; + } + } + 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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Referenda", + "ReferendumCount", + vec![], + [ + 64u8, 145u8, 232u8, 153u8, 121u8, 87u8, 128u8, 253u8, 170u8, 192u8, + 139u8, 18u8, 0u8, 33u8, 243u8, 11u8, 238u8, 222u8, 244u8, 5u8, 247u8, + 198u8, 149u8, 31u8, 122u8, 208u8, 86u8, 179u8, 166u8, 167u8, 93u8, + 67u8, + ], + ) + } + #[doc = " Information concerning any given referendum."] + pub fn referendum_info_for_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_referenda::types::ReferendumInfo< + ::core::primitive::u16, + runtime_types::enjin_runtime::OriginCaller, + ::core::primitive::u32, + runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_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::Address::new_static( + "Referenda", + "ReferendumInfoFor", + vec![], + [ + 164u8, 34u8, 126u8, 101u8, 82u8, 56u8, 19u8, 40u8, 195u8, 158u8, 33u8, + 62u8, 171u8, 117u8, 70u8, 196u8, 123u8, 122u8, 8u8, 162u8, 6u8, 181u8, + 78u8, 127u8, 43u8, 29u8, 134u8, 84u8, 80u8, 92u8, 167u8, 251u8, + ], + ) + } + #[doc = " Information concerning any given referendum."] + pub fn referendum_info_for( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_referenda::types::ReferendumInfo< + ::core::primitive::u16, + runtime_types::enjin_runtime::OriginCaller, + ::core::primitive::u32, + runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_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::Address::new_static( + "Referenda", + "ReferendumInfoFor", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 164u8, 34u8, 126u8, 101u8, 82u8, 56u8, 19u8, 40u8, 195u8, 158u8, 33u8, + 62u8, 171u8, 117u8, 70u8, 196u8, 123u8, 122u8, 8u8, 162u8, 6u8, 181u8, + 78u8, 127u8, 43u8, 29u8, 134u8, 84u8, 80u8, 92u8, 167u8, 251u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec<( + ::core::primitive::u32, + ::core::primitive::u128, + )>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Referenda", + "TrackQueue", + vec![], + [ + 125u8, 59u8, 111u8, 68u8, 27u8, 236u8, 82u8, 55u8, 83u8, 159u8, 105u8, + 20u8, 241u8, 118u8, 58u8, 141u8, 103u8, 60u8, 246u8, 49u8, 121u8, + 183u8, 7u8, 203u8, 225u8, 67u8, 132u8, 79u8, 150u8, 107u8, 71u8, 89u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec<( + ::core::primitive::u32, + ::core::primitive::u128, + )>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Referenda", + "TrackQueue", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 125u8, 59u8, 111u8, 68u8, 27u8, 236u8, 82u8, 55u8, 83u8, 159u8, 105u8, + 20u8, 241u8, 118u8, 58u8, 141u8, 103u8, 60u8, 246u8, 49u8, 121u8, + 183u8, 7u8, 203u8, 225u8, 67u8, 132u8, 79u8, 150u8, 107u8, 71u8, 89u8, + ], + ) + } + #[doc = " The number of referenda being decided currently."] + pub fn deciding_count_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Referenda", + "DecidingCount", + vec![], + [ + 203u8, 89u8, 158u8, 179u8, 194u8, 82u8, 248u8, 162u8, 93u8, 140u8, + 146u8, 51u8, 110u8, 232u8, 51u8, 1u8, 128u8, 212u8, 199u8, 14u8, 182u8, + 103u8, 47u8, 252u8, 126u8, 108u8, 166u8, 69u8, 252u8, 179u8, 126u8, + 245u8, + ], + ) + } + #[doc = " The number of referenda being decided currently."] + pub fn deciding_count( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u16>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Referenda", + "DecidingCount", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 203u8, 89u8, 158u8, 179u8, 194u8, 82u8, 248u8, 162u8, 93u8, 140u8, + 146u8, 51u8, 110u8, 232u8, 51u8, 1u8, 128u8, 212u8, 199u8, 14u8, 182u8, + 103u8, 47u8, 252u8, 126u8, 108u8, 166u8, 69u8, 252u8, 179u8, 126u8, + 245u8, + ], + ) + } + #[doc = " The metadata is a general information concerning the referendum."] + #[doc = " The `PreimageHash` refers to the preimage of the `Preimages` provider which can be a JSON"] + #[doc = " dump or IPFS hash of a JSON file."] + #[doc = ""] + #[doc = " Consider a garbage collection for a metadata of finished referendums to `unrequest` (remove)"] + #[doc = " large preimages."] + pub fn metadata_of_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Referenda", + "MetadataOf", + vec![], + [ + 159u8, 250u8, 56u8, 189u8, 247u8, 165u8, 206u8, 166u8, 91u8, 139u8, + 124u8, 164u8, 25u8, 246u8, 199u8, 36u8, 159u8, 56u8, 227u8, 136u8, 4u8, + 45u8, 193u8, 72u8, 200u8, 164u8, 39u8, 207u8, 224u8, 124u8, 191u8, + 110u8, + ], + ) + } + #[doc = " The metadata is a general information concerning the referendum."] + #[doc = " The `PreimageHash` refers to the preimage of the `Preimages` provider which can be a JSON"] + #[doc = " dump or IPFS hash of a JSON file."] + #[doc = ""] + #[doc = " Consider a garbage collection for a metadata of finished referendums to `unrequest` (remove)"] + #[doc = " large preimages."] + pub fn metadata_of( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Referenda", + "MetadataOf", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 159u8, 250u8, 56u8, 189u8, 247u8, 165u8, 206u8, 166u8, 91u8, 139u8, + 124u8, 164u8, 25u8, 246u8, 199u8, 36u8, 159u8, 56u8, 227u8, 136u8, 4u8, + 45u8, 193u8, 72u8, 200u8, 164u8, 39u8, 207u8, 224u8, 124u8, 191u8, + 110u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address< + ::std::vec::Vec<( + ::core::primitive::u16, + runtime_types::pallet_referenda::types::TrackInfo< + ::core::primitive::u128, + ::core::primitive::u32, + >, + )>, + > { + ::subxt::constants::Address::new_static( + "Referenda", + "Tracks", + [ + 35u8, 226u8, 207u8, 234u8, 184u8, 139u8, 187u8, 184u8, 128u8, 199u8, + 227u8, 15u8, 31u8, 196u8, 5u8, 207u8, 138u8, 174u8, 130u8, 201u8, + 200u8, 113u8, 86u8, 93u8, 221u8, 243u8, 229u8, 24u8, 18u8, 150u8, 56u8, + 159u8, + ], + ) + } + } + } + } + pub mod whitelist { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_whitelist::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_whitelist::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct WhitelistCall { + pub call_hash: ::subxt::utils::H256, + } + impl ::subxt::blocks::StaticExtrinsic for WhitelistCall { + const PALLET: &'static str = "Whitelist"; + const CALL: &'static str = "whitelist_call"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveWhitelistedCall { + pub call_hash: ::subxt::utils::H256, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveWhitelistedCall { + const PALLET: &'static str = "Whitelist"; + const CALL: &'static str = "remove_whitelisted_call"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + } + impl ::subxt::blocks::StaticExtrinsic for DispatchWhitelistedCall { + const PALLET: &'static str = "Whitelist"; + const CALL: &'static str = "dispatch_whitelisted_call"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DispatchWhitelistedCallWithPreimage { + pub call: ::std::boxed::Box, + } + impl ::subxt::blocks::StaticExtrinsic for DispatchWhitelistedCallWithPreimage { + const PALLET: &'static str = "Whitelist"; + const CALL: &'static str = "dispatch_whitelisted_call_with_preimage"; + } + } + pub struct TransactionApi; + impl TransactionApi { + pub fn whitelist_call( + &self, + call_hash: ::subxt::utils::H256, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Whitelist", + "whitelist_call", + types::WhitelistCall { call_hash }, + [ + 121u8, 165u8, 49u8, 37u8, 127u8, 38u8, 126u8, 213u8, 115u8, 148u8, + 122u8, 211u8, 24u8, 91u8, 147u8, 27u8, 87u8, 210u8, 84u8, 104u8, 229u8, + 155u8, 133u8, 30u8, 34u8, 249u8, 107u8, 110u8, 31u8, 191u8, 128u8, + 28u8, + ], + ) + } + pub fn remove_whitelisted_call( + &self, + call_hash: ::subxt::utils::H256, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Whitelist", + "remove_whitelisted_call", + types::RemoveWhitelistedCall { call_hash }, + [ + 30u8, 47u8, 13u8, 231u8, 165u8, 219u8, 246u8, 210u8, 11u8, 38u8, 219u8, + 218u8, 151u8, 226u8, 101u8, 175u8, 0u8, 239u8, 35u8, 46u8, 156u8, + 104u8, 145u8, 173u8, 105u8, 100u8, 21u8, 189u8, 123u8, 227u8, 196u8, + 40u8, + ], + ) + } + 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::Payload { + ::subxt::tx::Payload::new_static( + "Whitelist", + "dispatch_whitelisted_call", + types::DispatchWhitelistedCall { + call_hash, + call_encoded_len, + call_weight_witness, + }, + [ + 112u8, 67u8, 72u8, 26u8, 3u8, 214u8, 86u8, 102u8, 29u8, 96u8, 222u8, + 24u8, 115u8, 15u8, 124u8, 160u8, 148u8, 184u8, 56u8, 162u8, 188u8, + 123u8, 213u8, 234u8, 208u8, 123u8, 133u8, 253u8, 43u8, 226u8, 66u8, + 116u8, + ], + ) + } + pub fn dispatch_whitelisted_call_with_preimage( + &self, + call: runtime_types::enjin_runtime::RuntimeCall, + ) -> ::subxt::tx::Payload + { + ::subxt::tx::Payload::new_static( + "Whitelist", + "dispatch_whitelisted_call_with_preimage", + types::DispatchWhitelistedCallWithPreimage { + call: ::std::boxed::Box::new(call), + }, + [ + 73u8, 79u8, 93u8, 96u8, 241u8, 189u8, 2u8, 15u8, 70u8, 132u8, 3u8, + 167u8, 92u8, 186u8, 189u8, 27u8, 121u8, 138u8, 159u8, 49u8, 219u8, + 225u8, 168u8, 249u8, 140u8, 130u8, 127u8, 71u8, 156u8, 219u8, 202u8, + 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_whitelist::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (), + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Whitelist", + "WhitelistedCall", + vec![], + [ + 82u8, 208u8, 214u8, 72u8, 225u8, 35u8, 51u8, 212u8, 25u8, 138u8, 30u8, + 87u8, 54u8, 232u8, 72u8, 132u8, 4u8, 9u8, 28u8, 143u8, 251u8, 106u8, + 167u8, 218u8, 130u8, 185u8, 253u8, 185u8, 113u8, 154u8, 202u8, 66u8, + ], + ) + } + pub fn whitelisted_call( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::H256>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + (), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Whitelist", + "WhitelistedCall", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 82u8, 208u8, 214u8, 72u8, 225u8, 35u8, 51u8, 212u8, 25u8, 138u8, 30u8, + 87u8, 54u8, 232u8, 72u8, 132u8, 4u8, 9u8, 28u8, 143u8, 251u8, 106u8, + 167u8, 218u8, 130u8, 185u8, 253u8, 185u8, 113u8, 154u8, 202u8, 66u8, + ], + ) + } + } + } + } + pub mod fellowship_collective { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_ranked_collective::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_ranked_collective::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AddMember { + pub who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for AddMember { + const PALLET: &'static str = "FellowshipCollective"; + const CALL: &'static str = "add_member"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PromoteMember { + pub who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for PromoteMember { + const PALLET: &'static str = "FellowshipCollective"; + const CALL: &'static str = "promote_member"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DemoteMember { + pub who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for DemoteMember { + const PALLET: &'static str = "FellowshipCollective"; + const CALL: &'static str = "demote_member"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveMember { + pub who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub min_rank: ::core::primitive::u16, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveMember { + const PALLET: &'static str = "FellowshipCollective"; + const CALL: &'static str = "remove_member"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Vote { + pub poll: ::core::primitive::u32, + pub aye: ::core::primitive::bool, + } + impl ::subxt::blocks::StaticExtrinsic for Vote { + const PALLET: &'static str = "FellowshipCollective"; + const CALL: &'static str = "vote"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CleanupPoll { + pub poll_index: ::core::primitive::u32, + pub max: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for CleanupPoll { + const PALLET: &'static str = "FellowshipCollective"; + const CALL: &'static str = "cleanup_poll"; + } + } + 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, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipCollective", + "add_member", + types::AddMember { who }, + [ + 2u8, 131u8, 37u8, 217u8, 112u8, 46u8, 86u8, 165u8, 248u8, 244u8, 33u8, + 236u8, 155u8, 28u8, 163u8, 169u8, 213u8, 32u8, 70u8, 217u8, 97u8, + 194u8, 138u8, 77u8, 133u8, 97u8, 188u8, 49u8, 49u8, 31u8, 177u8, 206u8, + ], + ) + } + #[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, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipCollective", + "promote_member", + types::PromoteMember { who }, + [ + 169u8, 155u8, 9u8, 50u8, 144u8, 133u8, 230u8, 60u8, 216u8, 147u8, 3u8, + 236u8, 94u8, 185u8, 106u8, 139u8, 235u8, 143u8, 189u8, 135u8, 208u8, + 176u8, 126u8, 124u8, 85u8, 140u8, 189u8, 125u8, 87u8, 56u8, 57u8, + 246u8, + ], + ) + } + #[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, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipCollective", + "demote_member", + types::DemoteMember { who }, + [ + 21u8, 185u8, 71u8, 166u8, 106u8, 88u8, 74u8, 251u8, 78u8, 28u8, 205u8, + 171u8, 199u8, 195u8, 97u8, 149u8, 175u8, 229u8, 25u8, 113u8, 96u8, + 25u8, 240u8, 64u8, 109u8, 246u8, 203u8, 45u8, 110u8, 205u8, 115u8, + 178u8, + ], + ) + } + #[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, ()>, + min_rank: ::core::primitive::u16, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipCollective", + "remove_member", + types::RemoveMember { who, min_rank }, + [ + 23u8, 156u8, 32u8, 64u8, 158u8, 50u8, 64u8, 199u8, 108u8, 67u8, 133u8, + 128u8, 138u8, 241u8, 14u8, 238u8, 192u8, 173u8, 250u8, 11u8, 124u8, + 119u8, 177u8, 190u8, 152u8, 116u8, 134u8, 42u8, 216u8, 49u8, 113u8, + 49u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipCollective", + "vote", + types::Vote { poll, aye }, + [ + 54u8, 116u8, 81u8, 239u8, 223u8, 35u8, 11u8, 244u8, 245u8, 94u8, 23u8, + 241u8, 125u8, 231u8, 56u8, 150u8, 105u8, 125u8, 100u8, 171u8, 182u8, + 186u8, 134u8, 40u8, 4u8, 121u8, 119u8, 11u8, 93u8, 158u8, 59u8, 209u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipCollective", + "cleanup_poll", + types::CleanupPoll { poll_index, max }, + [ + 157u8, 109u8, 86u8, 253u8, 62u8, 107u8, 235u8, 255u8, 171u8, 68u8, + 103u8, 92u8, 245u8, 25u8, 252u8, 158u8, 174u8, 137u8, 77u8, 251u8, + 105u8, 113u8, 165u8, 46u8, 39u8, 55u8, 166u8, 79u8, 103u8, 81u8, 121u8, + 37u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipCollective"; + const EVENT: &'static str = "MemberAdded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipCollective"; + const EVENT: &'static str = "RankChanged"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipCollective"; + const EVENT: &'static str = "MemberRemoved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipCollective"; + 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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "MemberCount", + vec![], + [ + 0u8, 141u8, 66u8, 91u8, 155u8, 74u8, 17u8, 191u8, 143u8, 41u8, 231u8, + 56u8, 123u8, 219u8, 145u8, 27u8, 197u8, 62u8, 118u8, 237u8, 30u8, 7u8, + 107u8, 96u8, 95u8, 17u8, 242u8, 206u8, 246u8, 79u8, 53u8, 214u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "MemberCount", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 0u8, 141u8, 66u8, 91u8, 155u8, 74u8, 17u8, 191u8, 143u8, 41u8, 231u8, + 56u8, 123u8, 219u8, 145u8, 27u8, 197u8, 62u8, 118u8, 237u8, 30u8, 7u8, + 107u8, 96u8, 95u8, 17u8, 242u8, 206u8, 246u8, 79u8, 53u8, 214u8, + ], + ) + } + #[doc = " The current members of the collective."] + pub fn members_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_ranked_collective::MemberRecord, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "Members", + vec![], + [ + 101u8, 183u8, 36u8, 241u8, 67u8, 8u8, 252u8, 116u8, 110u8, 153u8, + 117u8, 210u8, 128u8, 80u8, 130u8, 163u8, 38u8, 76u8, 230u8, 107u8, + 112u8, 90u8, 102u8, 24u8, 217u8, 2u8, 244u8, 197u8, 103u8, 215u8, + 247u8, 133u8, + ], + ) + } + #[doc = " The current members of the collective."] + pub fn members( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_ranked_collective::MemberRecord, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "Members", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 101u8, 183u8, 36u8, 241u8, 67u8, 8u8, 252u8, 116u8, 110u8, 153u8, + 117u8, 210u8, 128u8, 80u8, 130u8, 163u8, 38u8, 76u8, 230u8, 107u8, + 112u8, 90u8, 102u8, 24u8, 217u8, 2u8, 244u8, 197u8, 103u8, 215u8, + 247u8, 133u8, + ], + ) + } + #[doc = " The index of each ranks's member into the group of members who have at least that rank."] + pub fn id_to_index_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "IdToIndex", + vec![], + [ + 121u8, 225u8, 69u8, 131u8, 194u8, 3u8, 82u8, 27u8, 129u8, 152u8, 157u8, + 45u8, 39u8, 47u8, 166u8, 28u8, 42u8, 92u8, 217u8, 189u8, 160u8, 102u8, + 153u8, 196u8, 94u8, 48u8, 248u8, 113u8, 164u8, 111u8, 27u8, 9u8, + ], + ) + } + #[doc = " The index of each ranks's member into the group of members who have at least that rank."] + pub fn id_to_index_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u16>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "IdToIndex", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 121u8, 225u8, 69u8, 131u8, 194u8, 3u8, 82u8, 27u8, 129u8, 152u8, 157u8, + 45u8, 39u8, 47u8, 166u8, 28u8, 42u8, 92u8, 217u8, 189u8, 160u8, 102u8, + 153u8, 196u8, 94u8, 48u8, 248u8, 113u8, 164u8, 111u8, 27u8, 9u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "IdToIndex", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 121u8, 225u8, 69u8, 131u8, 194u8, 3u8, 82u8, 27u8, 129u8, 152u8, 157u8, + 45u8, 39u8, 47u8, 166u8, 28u8, 42u8, 92u8, 217u8, 189u8, 160u8, 102u8, + 153u8, 196u8, 94u8, 48u8, 248u8, 113u8, 164u8, 111u8, 27u8, 9u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::AccountId32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "IndexToId", + vec![], + [ + 110u8, 48u8, 214u8, 224u8, 56u8, 195u8, 186u8, 24u8, 111u8, 37u8, 15u8, + 153u8, 245u8, 101u8, 229u8, 149u8, 216u8, 185u8, 7u8, 242u8, 196u8, + 29u8, 205u8, 243u8, 162u8, 92u8, 71u8, 253u8, 102u8, 152u8, 137u8, + 70u8, + ], + ) + } + #[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_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u16>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::AccountId32, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "IndexToId", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 110u8, 48u8, 214u8, 224u8, 56u8, 195u8, 186u8, 24u8, 111u8, 37u8, 15u8, + 153u8, 245u8, 101u8, 229u8, 149u8, 216u8, 185u8, 7u8, 242u8, 196u8, + 29u8, 205u8, 243u8, 162u8, 92u8, 71u8, 253u8, 102u8, 152u8, 137u8, + 70u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::AccountId32, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "IndexToId", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 110u8, 48u8, 214u8, 224u8, 56u8, 195u8, 186u8, 24u8, 111u8, 37u8, 15u8, + 153u8, 245u8, 101u8, 229u8, 149u8, 216u8, 185u8, 7u8, 242u8, 196u8, + 29u8, 205u8, 243u8, 162u8, 92u8, 71u8, 253u8, 102u8, 152u8, 137u8, + 70u8, + ], + ) + } + #[doc = " Votes on a given proposal, if it is ongoing."] + pub fn voting_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_ranked_collective::VoteRecord, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "Voting", + vec![], + [ + 180u8, 146u8, 236u8, 178u8, 30u8, 50u8, 161u8, 50u8, 140u8, 110u8, + 220u8, 1u8, 109u8, 209u8, 17u8, 94u8, 234u8, 223u8, 222u8, 177u8, + 243u8, 194u8, 246u8, 48u8, 178u8, 86u8, 30u8, 185u8, 56u8, 206u8, + 175u8, 18u8, + ], + ) + } + #[doc = " Votes on a given proposal, if it is ongoing."] + pub fn voting_iter1( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_ranked_collective::VoteRecord, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "Voting", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 180u8, 146u8, 236u8, 178u8, 30u8, 50u8, 161u8, 50u8, 140u8, 110u8, + 220u8, 1u8, 109u8, 209u8, 17u8, 94u8, 234u8, 223u8, 222u8, 177u8, + 243u8, 194u8, 246u8, 48u8, 178u8, 86u8, 30u8, 185u8, 56u8, 206u8, + 175u8, 18u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_ranked_collective::VoteRecord, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "Voting", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 180u8, 146u8, 236u8, 178u8, 30u8, 50u8, 161u8, 50u8, 140u8, 110u8, + 220u8, 1u8, 109u8, 209u8, 17u8, 94u8, 234u8, 223u8, 222u8, 177u8, + 243u8, 194u8, 246u8, 48u8, 178u8, 86u8, 30u8, 185u8, 56u8, 206u8, + 175u8, 18u8, + ], + ) + } + pub fn voting_cleanup_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "VotingCleanup", + vec![], + [ + 223u8, 130u8, 79u8, 104u8, 94u8, 221u8, 222u8, 72u8, 187u8, 95u8, + 231u8, 59u8, 28u8, 119u8, 191u8, 63u8, 40u8, 186u8, 58u8, 254u8, 14u8, + 233u8, 152u8, 36u8, 2u8, 231u8, 120u8, 13u8, 120u8, 211u8, 232u8, 11u8, + ], + ) + } + pub fn voting_cleanup( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "FellowshipCollective", + "VotingCleanup", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 223u8, 130u8, 79u8, 104u8, 94u8, 221u8, 222u8, 72u8, 187u8, 95u8, + 231u8, 59u8, 28u8, 119u8, 191u8, 63u8, 40u8, 186u8, 58u8, 254u8, 14u8, + 233u8, 152u8, 36u8, 2u8, 231u8, 120u8, 13u8, 120u8, 211u8, 232u8, 11u8, + ], + ) + } + } + } + } + pub mod fellowship_referenda { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_referenda::pallet::Error2; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_referenda::pallet::Call2; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Submit { + pub proposal_origin: + ::std::boxed::Box, + pub proposal: runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_runtime::RuntimeCall, + >, + pub enactment_moment: + runtime_types::frame_support::traits::schedule::DispatchTime< + ::core::primitive::u32, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Submit { + const PALLET: &'static str = "FellowshipReferenda"; + const CALL: &'static str = "submit"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PlaceDecisionDeposit { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for PlaceDecisionDeposit { + const PALLET: &'static str = "FellowshipReferenda"; + const CALL: &'static str = "place_decision_deposit"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RefundDecisionDeposit { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RefundDecisionDeposit { + const PALLET: &'static str = "FellowshipReferenda"; + const CALL: &'static str = "refund_decision_deposit"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Cancel { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for Cancel { + const PALLET: &'static str = "FellowshipReferenda"; + const CALL: &'static str = "cancel"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Kill { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for Kill { + const PALLET: &'static str = "FellowshipReferenda"; + const CALL: &'static str = "kill"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct NudgeReferendum { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for NudgeReferendum { + const PALLET: &'static str = "FellowshipReferenda"; + const CALL: &'static str = "nudge_referendum"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct OneFewerDeciding { + pub track: ::core::primitive::u16, + } + impl ::subxt::blocks::StaticExtrinsic for OneFewerDeciding { + const PALLET: &'static str = "FellowshipReferenda"; + const CALL: &'static str = "one_fewer_deciding"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RefundSubmissionDeposit { + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RefundSubmissionDeposit { + const PALLET: &'static str = "FellowshipReferenda"; + const CALL: &'static str = "refund_submission_deposit"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetMetadata { + pub index: ::core::primitive::u32, + pub maybe_hash: ::core::option::Option<::subxt::utils::H256>, + } + impl ::subxt::blocks::StaticExtrinsic for SetMetadata { + const PALLET: &'static str = "FellowshipReferenda"; + const CALL: &'static str = "set_metadata"; + } + } + 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::enjin_runtime::OriginCaller, + proposal: runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_runtime::RuntimeCall, + >, + enactment_moment: runtime_types::frame_support::traits::schedule::DispatchTime< + ::core::primitive::u32, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipReferenda", + "submit", + types::Submit { + proposal_origin: ::std::boxed::Box::new(proposal_origin), + proposal, + enactment_moment, + }, + [ + 156u8, 222u8, 29u8, 238u8, 117u8, 111u8, 60u8, 24u8, 232u8, 221u8, + 52u8, 115u8, 62u8, 8u8, 236u8, 40u8, 50u8, 202u8, 201u8, 146u8, 4u8, + 250u8, 229u8, 131u8, 178u8, 93u8, 210u8, 231u8, 66u8, 45u8, 212u8, + 137u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipReferenda", + "place_decision_deposit", + types::PlaceDecisionDeposit { index }, + [ + 247u8, 158u8, 55u8, 191u8, 188u8, 200u8, 3u8, 47u8, 20u8, 175u8, 86u8, + 203u8, 52u8, 253u8, 91u8, 131u8, 21u8, 213u8, 56u8, 68u8, 40u8, 84u8, + 184u8, 30u8, 9u8, 193u8, 63u8, 182u8, 178u8, 241u8, 247u8, 220u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipReferenda", + "refund_decision_deposit", + types::RefundDecisionDeposit { index }, + [ + 159u8, 19u8, 35u8, 216u8, 114u8, 105u8, 18u8, 42u8, 148u8, 151u8, + 136u8, 92u8, 117u8, 30u8, 29u8, 41u8, 238u8, 58u8, 195u8, 91u8, 115u8, + 135u8, 96u8, 99u8, 154u8, 233u8, 8u8, 249u8, 145u8, 165u8, 77u8, 164u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipReferenda", + "cancel", + types::Cancel { index }, + [ + 55u8, 206u8, 119u8, 156u8, 238u8, 165u8, 193u8, 73u8, 242u8, 13u8, + 212u8, 75u8, 136u8, 156u8, 151u8, 14u8, 35u8, 41u8, 156u8, 107u8, 60u8, + 190u8, 39u8, 216u8, 8u8, 74u8, 213u8, 130u8, 160u8, 131u8, 237u8, + 122u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipReferenda", + "kill", + types::Kill { index }, + [ + 50u8, 89u8, 57u8, 0u8, 87u8, 129u8, 113u8, 140u8, 179u8, 178u8, 126u8, + 198u8, 92u8, 92u8, 189u8, 64u8, 123u8, 232u8, 57u8, 227u8, 223u8, + 219u8, 73u8, 217u8, 179u8, 44u8, 210u8, 125u8, 180u8, 10u8, 143u8, + 48u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipReferenda", + "nudge_referendum", + types::NudgeReferendum { index }, + [ + 75u8, 99u8, 172u8, 30u8, 170u8, 150u8, 211u8, 229u8, 249u8, 128u8, + 194u8, 246u8, 100u8, 142u8, 193u8, 184u8, 232u8, 81u8, 29u8, 17u8, + 99u8, 91u8, 236u8, 85u8, 230u8, 226u8, 57u8, 115u8, 45u8, 170u8, 54u8, + 213u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipReferenda", + "one_fewer_deciding", + types::OneFewerDeciding { track }, + [ + 15u8, 84u8, 79u8, 231u8, 21u8, 239u8, 244u8, 143u8, 183u8, 215u8, + 181u8, 25u8, 225u8, 195u8, 95u8, 171u8, 17u8, 156u8, 182u8, 128u8, + 111u8, 40u8, 151u8, 102u8, 196u8, 55u8, 36u8, 212u8, 89u8, 190u8, + 131u8, 167u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipReferenda", + "refund_submission_deposit", + types::RefundSubmissionDeposit { index }, + [ + 20u8, 217u8, 115u8, 6u8, 1u8, 60u8, 54u8, 136u8, 35u8, 41u8, 38u8, + 23u8, 85u8, 100u8, 141u8, 126u8, 30u8, 160u8, 61u8, 46u8, 134u8, 98u8, + 82u8, 38u8, 211u8, 124u8, 208u8, 222u8, 210u8, 10u8, 155u8, 122u8, + ], + ) + } + #[doc = "Set or clear metadata of a referendum."] + #[doc = ""] + #[doc = "Parameters:"] + #[doc = "- `origin`: Must be `Signed` by a creator of a referendum or by anyone to clear a"] + #[doc = " metadata of a finished referendum."] + #[doc = "- `index`: The index of a referendum to set or clear metadata for."] + #[doc = "- `maybe_hash`: The hash of an on-chain stored preimage. `None` to clear a metadata."] + pub fn set_metadata( + &self, + index: ::core::primitive::u32, + maybe_hash: ::core::option::Option<::subxt::utils::H256>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "FellowshipReferenda", + "set_metadata", + types::SetMetadata { index, maybe_hash }, + [ + 207u8, 29u8, 146u8, 233u8, 219u8, 205u8, 88u8, 118u8, 106u8, 61u8, + 124u8, 101u8, 2u8, 41u8, 169u8, 70u8, 114u8, 189u8, 162u8, 118u8, 1u8, + 108u8, 234u8, 98u8, 245u8, 245u8, 183u8, 126u8, 89u8, 13u8, 112u8, + 88u8, + ], + ) + } + } + } + #[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::Event2; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::enjin_runtime::RuntimeCall, + >, + } + impl ::subxt::events::StaticEvent for Submitted { + const PALLET: &'static str = "FellowshipReferenda"; + const EVENT: &'static str = "Submitted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipReferenda"; + const EVENT: &'static str = "DecisionDepositPlaced"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipReferenda"; + const EVENT: &'static str = "DecisionDepositRefunded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipReferenda"; + const EVENT: &'static str = "DepositSlashed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::enjin_runtime::RuntimeCall, + >, + pub tally: runtime_types::pallet_ranked_collective::Tally, + } + impl ::subxt::events::StaticEvent for DecisionStarted { + const PALLET: &'static str = "FellowshipReferenda"; + const EVENT: &'static str = "DecisionStarted"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ConfirmStarted { + pub index: ::core::primitive::u32, + } + impl ::subxt::events::StaticEvent for ConfirmStarted { + const PALLET: &'static str = "FellowshipReferenda"; + const EVENT: &'static str = "ConfirmStarted"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ConfirmAborted { + pub index: ::core::primitive::u32, + } + impl ::subxt::events::StaticEvent for ConfirmAborted { + const PALLET: &'static str = "FellowshipReferenda"; + const EVENT: &'static str = "ConfirmAborted"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipReferenda"; + const EVENT: &'static str = "Confirmed"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipReferenda"; + const EVENT: &'static str = "Approved"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipReferenda"; + const EVENT: &'static str = "Rejected"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipReferenda"; + const EVENT: &'static str = "TimedOut"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipReferenda"; + const EVENT: &'static str = "Cancelled"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipReferenda"; + const EVENT: &'static str = "Killed"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "FellowshipReferenda"; + const EVENT: &'static str = "SubmissionDepositRefunded"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Metadata for a referendum has been set."] + pub struct MetadataSet { + pub index: ::core::primitive::u32, + pub hash: ::subxt::utils::H256, + } + impl ::subxt::events::StaticEvent for MetadataSet { + const PALLET: &'static str = "FellowshipReferenda"; + const EVENT: &'static str = "MetadataSet"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Metadata for a referendum has been cleared."] + pub struct MetadataCleared { + pub index: ::core::primitive::u32, + pub hash: ::subxt::utils::H256, + } + impl ::subxt::events::StaticEvent for MetadataCleared { + const PALLET: &'static str = "FellowshipReferenda"; + const EVENT: &'static str = "MetadataCleared"; + } + } + 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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "FellowshipReferenda", + "ReferendumCount", + vec![], + [ + 64u8, 145u8, 232u8, 153u8, 121u8, 87u8, 128u8, 253u8, 170u8, 192u8, + 139u8, 18u8, 0u8, 33u8, 243u8, 11u8, 238u8, 222u8, 244u8, 5u8, 247u8, + 198u8, 149u8, 31u8, 122u8, 208u8, 86u8, 179u8, 166u8, 167u8, 93u8, + 67u8, + ], + ) + } + #[doc = " Information concerning any given referendum."] + pub fn referendum_info_for_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_referenda::types::ReferendumInfo< + ::core::primitive::u16, + runtime_types::enjin_runtime::OriginCaller, + ::core::primitive::u32, + runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_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::Address::new_static( + "FellowshipReferenda", + "ReferendumInfoFor", + vec![], + [ + 23u8, 99u8, 243u8, 249u8, 96u8, 70u8, 140u8, 238u8, 32u8, 147u8, 178u8, + 242u8, 24u8, 87u8, 126u8, 206u8, 203u8, 156u8, 155u8, 65u8, 151u8, + 90u8, 80u8, 17u8, 71u8, 86u8, 32u8, 94u8, 53u8, 61u8, 157u8, 82u8, + ], + ) + } + #[doc = " Information concerning any given referendum."] + pub fn referendum_info_for( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_referenda::types::ReferendumInfo< + ::core::primitive::u16, + runtime_types::enjin_runtime::OriginCaller, + ::core::primitive::u32, + runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_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::Address::new_static( + "FellowshipReferenda", + "ReferendumInfoFor", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 23u8, 99u8, 243u8, 249u8, 96u8, 70u8, 140u8, 238u8, 32u8, 147u8, 178u8, + 242u8, 24u8, 87u8, 126u8, 206u8, 203u8, 156u8, 155u8, 65u8, 151u8, + 90u8, 80u8, 17u8, 71u8, 86u8, 32u8, 94u8, 53u8, 61u8, 157u8, 82u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec<( + ::core::primitive::u32, + ::core::primitive::u32, + )>, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipReferenda", + "TrackQueue", + vec![], + [ + 187u8, 113u8, 225u8, 99u8, 159u8, 207u8, 182u8, 41u8, 116u8, 136u8, + 119u8, 196u8, 152u8, 50u8, 192u8, 22u8, 171u8, 182u8, 237u8, 228u8, + 80u8, 255u8, 227u8, 141u8, 155u8, 83u8, 71u8, 131u8, 118u8, 109u8, + 186u8, 65u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::bounded_vec::BoundedVec<( + ::core::primitive::u32, + ::core::primitive::u32, + )>, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "FellowshipReferenda", + "TrackQueue", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 187u8, 113u8, 225u8, 99u8, 159u8, 207u8, 182u8, 41u8, 116u8, 136u8, + 119u8, 196u8, 152u8, 50u8, 192u8, 22u8, 171u8, 182u8, 237u8, 228u8, + 80u8, 255u8, 227u8, 141u8, 155u8, 83u8, 71u8, 131u8, 118u8, 109u8, + 186u8, 65u8, + ], + ) + } + #[doc = " The number of referenda being decided currently."] + pub fn deciding_count_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipReferenda", + "DecidingCount", + vec![], + [ + 203u8, 89u8, 158u8, 179u8, 194u8, 82u8, 248u8, 162u8, 93u8, 140u8, + 146u8, 51u8, 110u8, 232u8, 51u8, 1u8, 128u8, 212u8, 199u8, 14u8, 182u8, + 103u8, 47u8, 252u8, 126u8, 108u8, 166u8, 69u8, 252u8, 179u8, 126u8, + 245u8, + ], + ) + } + #[doc = " The number of referenda being decided currently."] + pub fn deciding_count( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u16>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::core::primitive::u32, + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "FellowshipReferenda", + "DecidingCount", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 203u8, 89u8, 158u8, 179u8, 194u8, 82u8, 248u8, 162u8, 93u8, 140u8, + 146u8, 51u8, 110u8, 232u8, 51u8, 1u8, 128u8, 212u8, 199u8, 14u8, 182u8, + 103u8, 47u8, 252u8, 126u8, 108u8, 166u8, 69u8, 252u8, 179u8, 126u8, + 245u8, + ], + ) + } + #[doc = " The metadata is a general information concerning the referendum."] + #[doc = " The `PreimageHash` refers to the preimage of the `Preimages` provider which can be a JSON"] + #[doc = " dump or IPFS hash of a JSON file."] + #[doc = ""] + #[doc = " Consider a garbage collection for a metadata of finished referendums to `unrequest` (remove)"] + #[doc = " large preimages."] + pub fn metadata_of_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "FellowshipReferenda", + "MetadataOf", + vec![], + [ + 159u8, 250u8, 56u8, 189u8, 247u8, 165u8, 206u8, 166u8, 91u8, 139u8, + 124u8, 164u8, 25u8, 246u8, 199u8, 36u8, 159u8, 56u8, 227u8, 136u8, 4u8, + 45u8, 193u8, 72u8, 200u8, 164u8, 39u8, 207u8, 224u8, 124u8, 191u8, + 110u8, + ], + ) + } + #[doc = " The metadata is a general information concerning the referendum."] + #[doc = " The `PreimageHash` refers to the preimage of the `Preimages` provider which can be a JSON"] + #[doc = " dump or IPFS hash of a JSON file."] + #[doc = ""] + #[doc = " Consider a garbage collection for a metadata of finished referendums to `unrequest` (remove)"] + #[doc = " large preimages."] + pub fn metadata_of( + &self, + _0: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ::subxt::utils::H256, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "FellowshipReferenda", + "MetadataOf", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 159u8, 250u8, 56u8, 189u8, 247u8, 165u8, 206u8, 166u8, 91u8, 139u8, + 124u8, 164u8, 25u8, 246u8, 199u8, 36u8, 159u8, 56u8, 227u8, 136u8, 4u8, + 45u8, 193u8, 72u8, 200u8, 164u8, 39u8, 207u8, 224u8, 124u8, 191u8, + 110u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "FellowshipReferenda", + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FellowshipReferenda", + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FellowshipReferenda", + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "FellowshipReferenda", + "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::Address< + ::std::vec::Vec<( + ::core::primitive::u16, + runtime_types::pallet_referenda::types::TrackInfo< + ::core::primitive::u128, + ::core::primitive::u32, + >, + )>, + > { + ::subxt::constants::Address::new_static( + "FellowshipReferenda", + "Tracks", + [ + 35u8, 226u8, 207u8, 234u8, 184u8, 139u8, 187u8, 184u8, 128u8, 199u8, + 227u8, 15u8, 31u8, 196u8, 5u8, 207u8, 138u8, 174u8, 130u8, 201u8, + 200u8, 113u8, 86u8, 93u8, 221u8, 243u8, 229u8, 24u8, 18u8, 150u8, 56u8, + 159u8, + ], + ) + } + } + } + } + pub mod identity { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_identity::pallet::Error; + #[doc = "Identity pallet declaration."] + pub type Call = runtime_types::pallet_identity::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AddRegistrar { + pub account: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for AddRegistrar { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "add_registrar"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetIdentity { + pub info: + ::std::boxed::Box, + } + impl ::subxt::blocks::StaticExtrinsic for SetIdentity { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "set_identity"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetSubs { + pub subs: ::std::vec::Vec<( + ::subxt::utils::AccountId32, + runtime_types::pallet_identity::types::Data, + )>, + } + impl ::subxt::blocks::StaticExtrinsic for SetSubs { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "set_subs"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ClearIdentity; + impl ::subxt::blocks::StaticExtrinsic for ClearIdentity { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "clear_identity"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RequestJudgement { + #[codec(compact)] + pub reg_index: ::core::primitive::u32, + #[codec(compact)] + pub max_fee: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for RequestJudgement { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "request_judgement"; + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CancelRequest { + pub reg_index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for CancelRequest { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "cancel_request"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetFee { + #[codec(compact)] + pub index: ::core::primitive::u32, + #[codec(compact)] + pub fee: ::core::primitive::u128, + } + impl ::subxt::blocks::StaticExtrinsic for SetFee { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "set_fee"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetAccountId { + #[codec(compact)] + pub index: ::core::primitive::u32, + pub new: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for SetAccountId { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "set_account_id"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SetFields { + #[codec(compact)] + pub index: ::core::primitive::u32, + pub fields: runtime_types::pallet_identity::types::BitFlags< + runtime_types::pallet_identity::types::IdentityField, + >, + } + impl ::subxt::blocks::StaticExtrinsic for SetFields { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "set_fields"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ProvideJudgement { + #[codec(compact)] + pub reg_index: ::core::primitive::u32, + pub target: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub judgement: + runtime_types::pallet_identity::types::Judgement<::core::primitive::u128>, + pub identity: ::subxt::utils::H256, + } + impl ::subxt::blocks::StaticExtrinsic for ProvideJudgement { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "provide_judgement"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct KillIdentity { + pub target: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for KillIdentity { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "kill_identity"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AddSub { + pub sub: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub data: runtime_types::pallet_identity::types::Data, + } + impl ::subxt::blocks::StaticExtrinsic for AddSub { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "add_sub"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RenameSub { + pub sub: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub data: runtime_types::pallet_identity::types::Data, + } + impl ::subxt::blocks::StaticExtrinsic for RenameSub { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "rename_sub"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveSub { + pub sub: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveSub { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "remove_sub"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct QuitSub; + impl ::subxt::blocks::StaticExtrinsic for QuitSub { + const PALLET: &'static str = "Identity"; + const CALL: &'static str = "quit_sub"; + } + } + 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 = "## Complexity"] + #[doc = "- `O(R)` where `R` registrar-count (governance-bounded and code-bounded)."] + pub fn add_registrar( + &self, + account: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "add_registrar", + types::AddRegistrar { account }, + [ + 6u8, 131u8, 82u8, 191u8, 37u8, 240u8, 158u8, 187u8, 247u8, 98u8, 175u8, + 200u8, 147u8, 78u8, 88u8, 176u8, 227u8, 179u8, 184u8, 194u8, 91u8, 1u8, + 1u8, 20u8, 121u8, 4u8, 96u8, 94u8, 103u8, 140u8, 247u8, 253u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- `O(X + X' + R)`"] + #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)"] + #[doc = " - where `R` judgements-count (registrar-count-bounded)"] + pub fn set_identity( + &self, + info: runtime_types::pallet_identity::types::IdentityInfo, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "set_identity", + types::SetIdentity { + info: ::std::boxed::Box::new(info), + }, + [ + 18u8, 86u8, 67u8, 10u8, 116u8, 254u8, 94u8, 95u8, 166u8, 30u8, 204u8, + 189u8, 174u8, 70u8, 191u8, 255u8, 149u8, 93u8, 156u8, 120u8, 105u8, + 138u8, 199u8, 181u8, 43u8, 150u8, 143u8, 254u8, 182u8, 81u8, 86u8, + 45u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- `O(P + S)`"] + #[doc = " - where `P` old-subs-count (hard- and deposit-bounded)."] + #[doc = " - where `S` subs-count (hard- and deposit-bounded)."] + pub fn set_subs( + &self, + subs: ::std::vec::Vec<( + ::subxt::utils::AccountId32, + runtime_types::pallet_identity::types::Data, + )>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "set_subs", + types::SetSubs { subs }, + [ + 34u8, 184u8, 18u8, 155u8, 112u8, 247u8, 235u8, 75u8, 209u8, 236u8, + 21u8, 238u8, 43u8, 237u8, 223u8, 147u8, 48u8, 6u8, 39u8, 231u8, 174u8, + 164u8, 243u8, 184u8, 220u8, 151u8, 165u8, 69u8, 219u8, 122u8, 234u8, + 100u8, + ], + ) + } + #[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 = "## Complexity"] + #[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)."] + pub fn clear_identity(&self) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "clear_identity", + types::ClearIdentity {}, + [ + 43u8, 115u8, 205u8, 44u8, 24u8, 130u8, 220u8, 69u8, 247u8, 176u8, + 200u8, 175u8, 67u8, 183u8, 36u8, 200u8, 162u8, 132u8, 242u8, 25u8, + 21u8, 106u8, 197u8, 219u8, 141u8, 51u8, 204u8, 13u8, 191u8, 201u8, + 31u8, 31u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- `O(R + X)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)."] + pub fn request_judgement( + &self, + reg_index: ::core::primitive::u32, + max_fee: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "request_judgement", + types::RequestJudgement { reg_index, max_fee }, + [ + 83u8, 85u8, 55u8, 184u8, 14u8, 54u8, 49u8, 212u8, 26u8, 148u8, 33u8, + 147u8, 182u8, 54u8, 180u8, 12u8, 61u8, 179u8, 216u8, 157u8, 103u8, + 52u8, 120u8, 252u8, 83u8, 203u8, 144u8, 65u8, 15u8, 3u8, 21u8, 33u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- `O(R + X)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)."] + pub fn cancel_request( + &self, + reg_index: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "cancel_request", + types::CancelRequest { reg_index }, + [ + 81u8, 14u8, 133u8, 219u8, 43u8, 84u8, 163u8, 208u8, 21u8, 185u8, 75u8, + 117u8, 126u8, 33u8, 210u8, 106u8, 122u8, 210u8, 35u8, 207u8, 104u8, + 206u8, 41u8, 117u8, 247u8, 108u8, 56u8, 23u8, 123u8, 169u8, 169u8, + 61u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- `O(R)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + pub fn set_fee( + &self, + index: ::core::primitive::u32, + fee: ::core::primitive::u128, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "set_fee", + types::SetFee { index, fee }, + [ + 131u8, 20u8, 17u8, 127u8, 180u8, 65u8, 225u8, 144u8, 193u8, 60u8, + 131u8, 241u8, 30u8, 149u8, 8u8, 76u8, 29u8, 52u8, 102u8, 108u8, 127u8, + 130u8, 70u8, 18u8, 94u8, 145u8, 179u8, 109u8, 252u8, 219u8, 58u8, + 163u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- `O(R)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + pub fn set_account_id( + &self, + index: ::core::primitive::u32, + new: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "set_account_id", + types::SetAccountId { index, new }, + [ + 68u8, 57u8, 39u8, 134u8, 39u8, 82u8, 156u8, 107u8, 113u8, 99u8, 9u8, + 163u8, 58u8, 249u8, 247u8, 208u8, 38u8, 203u8, 54u8, 153u8, 116u8, + 143u8, 81u8, 46u8, 228u8, 149u8, 127u8, 115u8, 252u8, 83u8, 33u8, + 101u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- `O(R)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + pub fn set_fields( + &self, + index: ::core::primitive::u32, + fields: runtime_types::pallet_identity::types::BitFlags< + runtime_types::pallet_identity::types::IdentityField, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "set_fields", + types::SetFields { index, fields }, + [ + 25u8, 129u8, 119u8, 232u8, 18u8, 32u8, 77u8, 23u8, 185u8, 56u8, 32u8, + 199u8, 74u8, 174u8, 104u8, 203u8, 171u8, 253u8, 19u8, 225u8, 101u8, + 239u8, 14u8, 242u8, 157u8, 51u8, 203u8, 74u8, 1u8, 65u8, 165u8, 205u8, + ], + ) + } + #[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 = "## Complexity"] + #[doc = "- `O(R + X)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)."] + pub fn provide_judgement( + &self, + reg_index: ::core::primitive::u32, + target: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + judgement: runtime_types::pallet_identity::types::Judgement< + ::core::primitive::u128, + >, + identity: ::subxt::utils::H256, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "provide_judgement", + types::ProvideJudgement { + reg_index, + target, + judgement, + identity, + }, + [ + 145u8, 188u8, 61u8, 236u8, 183u8, 49u8, 49u8, 149u8, 240u8, 184u8, + 202u8, 75u8, 69u8, 0u8, 95u8, 103u8, 132u8, 24u8, 107u8, 221u8, 236u8, + 75u8, 231u8, 125u8, 39u8, 189u8, 45u8, 202u8, 116u8, 123u8, 236u8, + 96u8, + ], + ) + } + #[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 = "## Complexity"] + #[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)."] + pub fn kill_identity( + &self, + target: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "kill_identity", + types::KillIdentity { target }, + [ + 114u8, 249u8, 102u8, 62u8, 118u8, 105u8, 185u8, 61u8, 173u8, 52u8, + 57u8, 190u8, 102u8, 74u8, 108u8, 239u8, 142u8, 176u8, 116u8, 51u8, + 49u8, 197u8, 6u8, 183u8, 248u8, 202u8, 202u8, 140u8, 134u8, 59u8, + 103u8, 182u8, + ], + ) + } + #[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, ()>, + data: runtime_types::pallet_identity::types::Data, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "add_sub", + types::AddSub { sub, data }, + [ + 3u8, 65u8, 137u8, 35u8, 238u8, 133u8, 56u8, 233u8, 37u8, 125u8, 221u8, + 186u8, 153u8, 74u8, 69u8, 196u8, 244u8, 82u8, 51u8, 7u8, 216u8, 29u8, + 18u8, 16u8, 198u8, 184u8, 0u8, 181u8, 71u8, 227u8, 144u8, 33u8, + ], + ) + } + #[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, ()>, + data: runtime_types::pallet_identity::types::Data, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "rename_sub", + types::RenameSub { sub, data }, + [ + 252u8, 50u8, 201u8, 112u8, 49u8, 248u8, 223u8, 239u8, 219u8, 226u8, + 64u8, 68u8, 227u8, 20u8, 30u8, 24u8, 36u8, 77u8, 26u8, 235u8, 144u8, + 240u8, 11u8, 111u8, 145u8, 167u8, 184u8, 207u8, 173u8, 58u8, 152u8, + 202u8, + ], + ) + } + #[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, ()>, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "remove_sub", + types::RemoveSub { sub }, + [ + 95u8, 249u8, 171u8, 27u8, 100u8, 186u8, 67u8, 214u8, 226u8, 6u8, 118u8, + 39u8, 91u8, 122u8, 1u8, 87u8, 1u8, 226u8, 101u8, 9u8, 199u8, 167u8, + 84u8, 202u8, 141u8, 196u8, 80u8, 195u8, 15u8, 114u8, 140u8, 144u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "Identity", + "quit_sub", + types::QuitSub {}, + [ + 147u8, 131u8, 175u8, 171u8, 187u8, 201u8, 240u8, 26u8, 146u8, 224u8, + 74u8, 166u8, 242u8, 193u8, 204u8, 247u8, 168u8, 93u8, 18u8, 32u8, 27u8, + 208u8, 149u8, 146u8, 179u8, 172u8, 75u8, 112u8, 84u8, 141u8, 233u8, + 223u8, + ], + ) + } + } + } + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_identity::types::Registration<::core::primitive::u128>, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Identity", + "IdentityOf", + vec![], + [ + 112u8, 2u8, 209u8, 123u8, 138u8, 171u8, 80u8, 243u8, 226u8, 88u8, 81u8, + 49u8, 59u8, 172u8, 88u8, 180u8, 255u8, 119u8, 57u8, 16u8, 169u8, 149u8, + 77u8, 239u8, 73u8, 182u8, 28u8, 112u8, 150u8, 110u8, 65u8, 139u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_identity::types::Registration<::core::primitive::u128>, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Identity", + "IdentityOf", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 112u8, 2u8, 209u8, 123u8, 138u8, 171u8, 80u8, 243u8, 226u8, 88u8, 81u8, + 49u8, 59u8, 172u8, 88u8, 180u8, 255u8, 119u8, 57u8, 16u8, 169u8, 149u8, + 77u8, 239u8, 73u8, 182u8, 28u8, 112u8, 150u8, 110u8, 65u8, 139u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ( + ::subxt::utils::AccountId32, + runtime_types::pallet_identity::types::Data, + ), + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Identity", + "SuperOf", + vec![], + [ + 84u8, 72u8, 64u8, 14u8, 56u8, 9u8, 143u8, 100u8, 141u8, 163u8, 36u8, + 55u8, 38u8, 254u8, 164u8, 17u8, 3u8, 110u8, 88u8, 175u8, 161u8, 65u8, + 159u8, 40u8, 46u8, 8u8, 177u8, 81u8, 130u8, 38u8, 193u8, 28u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ( + ::subxt::utils::AccountId32, + runtime_types::pallet_identity::types::Data, + ), + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "Identity", + "SuperOf", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 84u8, 72u8, 64u8, 14u8, 56u8, 9u8, 143u8, 100u8, 141u8, 163u8, 36u8, + 55u8, 38u8, 254u8, 164u8, 17u8, 3u8, 110u8, 88u8, 175u8, 161u8, 65u8, + 159u8, 40u8, 46u8, 8u8, 177u8, 81u8, 130u8, 38u8, 193u8, 28u8, + ], + ) + } + #[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_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + ( + ::core::primitive::u128, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::AccountId32, + >, + ), + (), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "Identity", + "SubsOf", + vec![], + [ + 164u8, 140u8, 52u8, 123u8, 220u8, 118u8, 147u8, 3u8, 67u8, 22u8, 191u8, + 18u8, 186u8, 21u8, 154u8, 8u8, 205u8, 224u8, 163u8, 173u8, 174u8, + 107u8, 144u8, 215u8, 116u8, 64u8, 159u8, 115u8, 159u8, 205u8, 91u8, + 28u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + ( + ::core::primitive::u128, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::AccountId32, + >, + ), + ::subxt::storage::address::Yes, + ::subxt::storage::address::Yes, + (), + > { + ::subxt::storage::address::Address::new_static( + "Identity", + "SubsOf", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 164u8, 140u8, 52u8, 123u8, 220u8, 118u8, 147u8, 3u8, 67u8, 22u8, 191u8, + 18u8, 186u8, 21u8, 154u8, 8u8, 205u8, 224u8, 163u8, 173u8, 174u8, + 107u8, 144u8, 215u8, 116u8, 64u8, 159u8, 115u8, 159u8, 205u8, 91u8, + 28u8, + ], + ) + } + #[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::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::bounded_collections::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::Address::new_static( + "Identity", + "Registrars", + vec![], + [ + 207u8, 253u8, 229u8, 237u8, 228u8, 85u8, 173u8, 74u8, 164u8, 67u8, + 144u8, 144u8, 5u8, 242u8, 84u8, 187u8, 110u8, 181u8, 2u8, 162u8, 239u8, + 212u8, 72u8, 233u8, 160u8, 196u8, 121u8, 218u8, 100u8, 0u8, 219u8, + 181u8, + ], + ) + } + } + } + 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::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u128> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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::Address<::core::primitive::u32> { + ::subxt::constants::Address::new_static( + "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 vote_manager { + use super::root_mod; + use super::runtime_types; + #[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 type Error = runtime_types::pallet_vote_manager::pallet::Error; + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub type Call = runtime_types::pallet_vote_manager::pallet::Call; + pub mod calls { + use super::root_mod; + use super::runtime_types; + type DispatchError = runtime_types::sp_runtime::DispatchError; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Vote { + #[codec(compact)] + pub poll_index: ::core::primitive::u32, + pub vote: runtime_types::pallet_conviction_voting::vote::AccountVote< + ::core::primitive::u128, + >, + pub currency: runtime_types::pallet_vote_manager::types::VoteCurrency< + ::core::primitive::u128, + >, + } + impl ::subxt::blocks::StaticExtrinsic for Vote { + const PALLET: &'static str = "VoteManager"; + const CALL: &'static str = "vote"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveVote { + pub class: ::core::option::Option<::core::primitive::u16>, + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveVote { + const PALLET: &'static str = "VoteManager"; + const CALL: &'static str = "remove_vote"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoveOtherVote { + pub target: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub class: ::core::primitive::u16, + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for RemoveOtherVote { + const PALLET: &'static str = "VoteManager"; + const CALL: &'static str = "remove_other_vote"; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Unlock { + pub class: ::core::primitive::u16, + pub target: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + pub index: ::core::primitive::u32, + } + impl ::subxt::blocks::StaticExtrinsic for Unlock { + const PALLET: &'static str = "VoteManager"; + const CALL: &'static str = "unlock"; + } + } + 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, + >, + currency: runtime_types::pallet_vote_manager::types::VoteCurrency< + ::core::primitive::u128, + >, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "VoteManager", + "vote", + types::Vote { + poll_index, + vote, + currency, + }, + [ + 2u8, 191u8, 105u8, 149u8, 201u8, 154u8, 36u8, 241u8, 102u8, 212u8, + 86u8, 236u8, 245u8, 232u8, 26u8, 88u8, 169u8, 217u8, 125u8, 173u8, + 80u8, 231u8, 76u8, 244u8, 118u8, 97u8, 40u8, 38u8, 43u8, 207u8, 27u8, + 0u8, + ], + ) + } + #[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::Payload { + ::subxt::tx::Payload::new_static( + "VoteManager", + "remove_vote", + types::RemoveVote { class, index }, + [ + 255u8, 108u8, 211u8, 146u8, 168u8, 231u8, 207u8, 44u8, 76u8, 24u8, + 235u8, 60u8, 23u8, 79u8, 192u8, 192u8, 46u8, 40u8, 134u8, 27u8, 125u8, + 114u8, 125u8, 247u8, 85u8, 102u8, 76u8, 159u8, 34u8, 167u8, 152u8, + 148u8, + ], + ) + } + #[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, ()>, + class: ::core::primitive::u16, + index: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "VoteManager", + "remove_other_vote", + types::RemoveOtherVote { + target, + class, + index, + }, + [ + 165u8, 26u8, 166u8, 37u8, 10u8, 174u8, 243u8, 10u8, 73u8, 93u8, 213u8, + 69u8, 200u8, 16u8, 48u8, 146u8, 160u8, 92u8, 28u8, 26u8, 158u8, 55u8, + 6u8, 251u8, 36u8, 132u8, 46u8, 195u8, 107u8, 34u8, 0u8, 100u8, + ], + ) + } + #[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, ()>, + index: ::core::primitive::u32, + ) -> ::subxt::tx::Payload { + ::subxt::tx::Payload::new_static( + "VoteManager", + "unlock", + types::Unlock { + class, + target, + index, + }, + [ + 238u8, 244u8, 136u8, 79u8, 160u8, 148u8, 67u8, 238u8, 144u8, 107u8, + 202u8, 151u8, 70u8, 38u8, 212u8, 192u8, 198u8, 127u8, 235u8, 106u8, + 77u8, 100u8, 215u8, 31u8, 249u8, 148u8, 127u8, 121u8, 141u8, 8u8, + 167u8, 11u8, + ], + ) + } + } + } + #[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_vote_manager::pallet::Event; + pub mod events { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "An account has voted in a referendum"] + pub struct Voted { + pub voter: ::subxt::utils::AccountId32, + pub poll_index: ::core::primitive::u32, + pub vote: runtime_types::pallet_conviction_voting::vote::AccountVote< + ::core::primitive::u128, + >, + } + impl ::subxt::events::StaticEvent for Voted { + const PALLET: &'static str = "VoteManager"; + const EVENT: &'static str = "Voted"; + } + } + pub mod storage { + use super::runtime_types; + pub struct StorageApi; + impl StorageApi { + #[doc = " The currency used by `AccountId` to vote in Poll with"] + #[doc = " `PollIndex`"] + #[doc = ""] + #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] + pub fn vote_currencies_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_vote_manager::types::VoteCurrency< + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "VoteManager", + "VoteCurrencies", + vec![], + [ + 135u8, 52u8, 153u8, 192u8, 183u8, 83u8, 121u8, 160u8, 143u8, 152u8, + 189u8, 73u8, 51u8, 12u8, 200u8, 250u8, 166u8, 44u8, 187u8, 93u8, 17u8, + 91u8, 164u8, 111u8, 78u8, 154u8, 60u8, 152u8, 13u8, 58u8, 150u8, 79u8, + ], + ) + } + #[doc = " The currency used by `AccountId` to vote in Poll with"] + #[doc = " `PollIndex`"] + #[doc = ""] + #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] + pub fn vote_currencies_iter1( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_vote_manager::types::VoteCurrency< + ::core::primitive::u128, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "VoteManager", + "VoteCurrencies", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 135u8, 52u8, 153u8, 192u8, 183u8, 83u8, 121u8, 160u8, 143u8, 152u8, + 189u8, 73u8, 51u8, 12u8, 200u8, 250u8, 166u8, 44u8, 187u8, 93u8, 17u8, + 91u8, 164u8, 111u8, 78u8, 154u8, 60u8, 152u8, 13u8, 58u8, 150u8, 79u8, + ], + ) + } + #[doc = " The currency used by `AccountId` to vote in Poll with"] + #[doc = " `PollIndex`"] + #[doc = ""] + #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] + pub fn vote_currencies( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + _1: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_vote_manager::types::VoteCurrency< + ::core::primitive::u128, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "VoteManager", + "VoteCurrencies", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 135u8, 52u8, 153u8, 192u8, 183u8, 83u8, 121u8, 160u8, 143u8, 152u8, + 189u8, 73u8, 51u8, 12u8, 200u8, 250u8, 166u8, 44u8, 187u8, 93u8, 17u8, + 91u8, 164u8, 111u8, 78u8, 154u8, 60u8, 152u8, 13u8, 58u8, 150u8, 79u8, + ], + ) + } + #[doc = " The currency used by `AccountId` to vote in referendum with"] + #[doc = " `ReferendumIndex`"] + #[doc = ""] + #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] + pub fn votes_to_unlock_iter( + &self, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_vote_manager::types::BalanceToUnlock< + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u32, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "VoteManager", + "VotesToUnlock", + vec![], + [ + 27u8, 151u8, 192u8, 61u8, 77u8, 49u8, 105u8, 227u8, 18u8, 229u8, 80u8, + 47u8, 5u8, 47u8, 145u8, 251u8, 30u8, 249u8, 246u8, 174u8, 116u8, 170u8, + 221u8, 163u8, 178u8, 215u8, 109u8, 53u8, 140u8, 232u8, 200u8, 110u8, + ], + ) + } + #[doc = " The currency used by `AccountId` to vote in referendum with"] + #[doc = " `ReferendumIndex`"] + #[doc = ""] + #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] + pub fn votes_to_unlock_iter1( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_vote_manager::types::BalanceToUnlock< + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u32, + >, + (), + (), + ::subxt::storage::address::Yes, + > { + ::subxt::storage::address::Address::new_static( + "VoteManager", + "VotesToUnlock", + vec![::subxt::storage::address::make_static_storage_map_key( + _0.borrow(), + )], + [ + 27u8, 151u8, 192u8, 61u8, 77u8, 49u8, 105u8, 227u8, 18u8, 229u8, 80u8, + 47u8, 5u8, 47u8, 145u8, 251u8, 30u8, 249u8, 246u8, 174u8, 116u8, 170u8, + 221u8, 163u8, 178u8, 215u8, 109u8, 53u8, 140u8, 232u8, 200u8, 110u8, + ], + ) + } + #[doc = " The currency used by `AccountId` to vote in referendum with"] + #[doc = " `ReferendumIndex`"] + #[doc = ""] + #[doc = " TWOX-NOTE: SAFE since `AccountId` is a secure hash."] + pub fn votes_to_unlock( + &self, + _0: impl ::std::borrow::Borrow<::subxt::utils::AccountId32>, + _1: impl ::std::borrow::Borrow<::core::primitive::u32>, + ) -> ::subxt::storage::address::Address< + ::subxt::storage::address::StaticStorageMapKey, + runtime_types::pallet_vote_manager::types::BalanceToUnlock< + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u32, + >, + ::subxt::storage::address::Yes, + (), + (), + > { + ::subxt::storage::address::Address::new_static( + "VoteManager", + "VotesToUnlock", + vec![ + ::subxt::storage::address::make_static_storage_map_key(_0.borrow()), + ::subxt::storage::address::make_static_storage_map_key(_1.borrow()), + ], + [ + 27u8, 151u8, 192u8, 61u8, 77u8, 49u8, 105u8, 227u8, 18u8, 229u8, 80u8, + 47u8, 5u8, 47u8, 145u8, 251u8, 30u8, 249u8, 246u8, 174u8, 116u8, 170u8, + 221u8, 163u8, 178u8, 215u8, 109u8, 53u8, 140u8, 232u8, 200u8, 110u8, + ], + ) + } + } + } + } + pub mod runtime_types { + use super::runtime_types; + pub mod bounded_collections { + use super::runtime_types; + pub mod bounded_btree_map { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct WeakBoundedVec<_0>(pub ::std::vec::Vec<_0>); + } + } + pub mod enjin_runtime { + use super::runtime_types; + pub mod opaque { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SessionKeys { + pub grandpa: runtime_types::sp_consensus_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 para_validator: + runtime_types::polkadot_primitives::v4::validator_app::Public, + pub para_assignment: + runtime_types::polkadot_primitives::v4::assignment_app::Public, + pub authority_discovery: runtime_types::sp_authority_discovery::app::Public, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForeignTokenNameLength; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForeignTokenSymbolLength; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxAccountRuleDataLength; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxCallFilters; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxCollectionIds; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxExtrinsicNameLength; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxFilteredTokenCount; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxFuelTankNameLength; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxMigrationKeyLength; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxMultiTokensLocks; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxMultiTokensReserves; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxNameLength; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxOperatorsPerAccount; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxPermittedExtrinsicLength; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxRuleSets; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxRulesPerSet; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxWhitelistedCallers; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum OriginCaller { + # [codec (index = 0)] system (runtime_types :: frame_support :: dispatch :: RawOrigin < :: subxt :: utils :: AccountId32 > ,) , # [codec (index = 50)] ParachainsOrigin (runtime_types :: polkadot_runtime_parachains :: origin :: pallet :: Origin ,) , # [codec (index = 99)] XcmPallet (runtime_types :: pallet_xcm :: pallet :: Origin ,) , # [codec (index = 104)] Origins (runtime_types :: enjin_runtime_common :: governance :: origins :: pallet_custom_origins :: Origin ,) , # [codec (index = 4)] Void (runtime_types :: sp_core :: Void ,) , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Runtime; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum RuntimeCall { + #[codec(index = 0)] + System(runtime_types::frame_system::pallet::Call), + #[codec(index = 2)] + Timestamp(runtime_types::pallet_timestamp::pallet::Call), + #[codec(index = 3)] + Babe(runtime_types::pallet_babe::pallet::Call), + #[codec(index = 6)] + Balances(runtime_types::pallet_balances::pallet::Call), + #[codec(index = 8)] + ElectionProviderMultiPhase( + runtime_types::pallet_election_provider_multi_phase::pallet::Call, + ), + #[codec(index = 9)] + Staking(runtime_types::pallet_staking::pallet::pallet::Call), + #[codec(index = 10)] + Session(runtime_types::pallet_session::pallet::Call), + #[codec(index = 11)] + Grandpa(runtime_types::pallet_grandpa::pallet::Call), + #[codec(index = 12)] + Treasury(runtime_types::pallet_treasury::pallet::Call), + #[codec(index = 14)] + Sudo(runtime_types::pallet_sudo::pallet::Call), + #[codec(index = 15)] + ImOnline(runtime_types::pallet_im_online::pallet::Call), + #[codec(index = 17)] + VoterList(runtime_types::pallet_bags_list::pallet::Call), + #[codec(index = 18)] + NominationPools(runtime_types::pallet_nomination_pools::pallet::Call), + #[codec(index = 19)] + StakeExchange(runtime_types::pallet_stake_exchange::pallet::Call), + #[codec(index = 20)] + Utility(runtime_types::pallet_utility::pallet::Call), + #[codec(index = 21)] + Multisig(runtime_types::pallet_multisig::pallet::Call), + #[codec(index = 51)] + Configuration( + runtime_types::polkadot_runtime_parachains::configuration::pallet::Call, + ), + #[codec(index = 52)] + ParasShared(runtime_types::polkadot_runtime_parachains::shared::pallet::Call), + #[codec(index = 53)] + ParaInclusion(runtime_types::polkadot_runtime_parachains::inclusion::pallet::Call), + #[codec(index = 54)] + ParaInherent( + runtime_types::polkadot_runtime_parachains::paras_inherent::pallet::Call, + ), + #[codec(index = 56)] + Paras(runtime_types::polkadot_runtime_parachains::paras::pallet::Call), + #[codec(index = 57)] + Initializer(runtime_types::polkadot_runtime_parachains::initializer::pallet::Call), + #[codec(index = 60)] + Hrmp(runtime_types::polkadot_runtime_parachains::hrmp::pallet::Call), + #[codec(index = 62)] + ParasDisputes(runtime_types::polkadot_runtime_parachains::disputes::pallet::Call), + #[codec(index = 63)] + ParasSlashing( + runtime_types::polkadot_runtime_parachains::disputes::slashing::pallet::Call, + ), + #[codec(index = 70)] + Registrar(runtime_types::polkadot_runtime_common::paras_registrar::pallet::Call), + #[codec(index = 71)] + Slots(runtime_types::polkadot_runtime_common::slots::pallet::Call), + #[codec(index = 72)] + Auctions(runtime_types::polkadot_runtime_common::auctions::pallet::Call), + #[codec(index = 73)] + Crowdloan(runtime_types::polkadot_runtime_common::crowdloan::pallet::Call), + #[codec(index = 99)] + XcmPallet(runtime_types::pallet_xcm::pallet::Call), + #[codec(index = 110)] + MessageQueue(runtime_types::pallet_message_queue::pallet::Call), + #[codec(index = 250)] + ParasSudoWrapper( + runtime_types::polkadot_runtime_common::paras_sudo_wrapper::pallet::Call, + ), + #[codec(index = 251)] + AssignedSlots(runtime_types::polkadot_runtime_common::assigned_slots::pallet::Call), + #[codec(index = 252)] + ValidatorManager(runtime_types::pallet_validator_manager::pallet::Call), + #[codec(index = 253)] + MultiTokens(runtime_types::pallet_multi_tokens::pallet::Call), + #[codec(index = 254)] + FuelTanks(runtime_types::pallet_fuel_tanks::pallet::Call), + #[codec(index = 255)] + ExtrinsicPause(runtime_types::pallet_extrinsic_pause::pallet::Call), + #[codec(index = 249)] + Marketplace(runtime_types::pallet_marketplace::pallet::Call), + #[codec(index = 240)] + Beefy(runtime_types::pallet_beefy::pallet::Call), + #[codec(index = 100)] + Scheduler(runtime_types::pallet_scheduler::pallet::Call), + #[codec(index = 101)] + Preimage(runtime_types::pallet_preimage::pallet::Call), + #[codec(index = 102)] + ConvictionVoting(runtime_types::pallet_conviction_voting::pallet::Call), + #[codec(index = 103)] + Referenda(runtime_types::pallet_referenda::pallet::Call), + #[codec(index = 105)] + Whitelist(runtime_types::pallet_whitelist::pallet::Call), + #[codec(index = 106)] + FellowshipCollective(runtime_types::pallet_ranked_collective::pallet::Call), + #[codec(index = 107)] + FellowshipReferenda(runtime_types::pallet_referenda::pallet::Call2), + #[codec(index = 108)] + Identity(runtime_types::pallet_identity::pallet::Call), + #[codec(index = 109)] + VoteManager(runtime_types::pallet_vote_manager::pallet::Call), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum RuntimeError { + #[codec(index = 0)] + System(runtime_types::frame_system::pallet::Error), + #[codec(index = 3)] + Babe(runtime_types::pallet_babe::pallet::Error), + #[codec(index = 6)] + Balances(runtime_types::pallet_balances::pallet::Error), + #[codec(index = 8)] + ElectionProviderMultiPhase( + runtime_types::pallet_election_provider_multi_phase::pallet::Error, + ), + #[codec(index = 9)] + Staking(runtime_types::pallet_staking::pallet::pallet::Error), + #[codec(index = 10)] + Session(runtime_types::pallet_session::pallet::Error), + #[codec(index = 11)] + Grandpa(runtime_types::pallet_grandpa::pallet::Error), + #[codec(index = 12)] + Treasury(runtime_types::pallet_treasury::pallet::Error), + #[codec(index = 14)] + Sudo(runtime_types::pallet_sudo::pallet::Error), + #[codec(index = 15)] + ImOnline(runtime_types::pallet_im_online::pallet::Error), + #[codec(index = 17)] + VoterList(runtime_types::pallet_bags_list::pallet::Error), + #[codec(index = 18)] + NominationPools(runtime_types::pallet_nomination_pools::pallet::Error), + #[codec(index = 19)] + StakeExchange(runtime_types::pallet_stake_exchange::pallet::Error), + #[codec(index = 20)] + Utility(runtime_types::pallet_utility::pallet::Error), + #[codec(index = 21)] + Multisig(runtime_types::pallet_multisig::pallet::Error), + #[codec(index = 51)] + Configuration( + runtime_types::polkadot_runtime_parachains::configuration::pallet::Error, + ), + #[codec(index = 53)] + ParaInclusion(runtime_types::polkadot_runtime_parachains::inclusion::pallet::Error), + #[codec(index = 54)] + ParaInherent( + runtime_types::polkadot_runtime_parachains::paras_inherent::pallet::Error, + ), + #[codec(index = 56)] + Paras(runtime_types::polkadot_runtime_parachains::paras::pallet::Error), + #[codec(index = 60)] + Hrmp(runtime_types::polkadot_runtime_parachains::hrmp::pallet::Error), + #[codec(index = 62)] + ParasDisputes(runtime_types::polkadot_runtime_parachains::disputes::pallet::Error), + #[codec(index = 63)] + ParasSlashing( + runtime_types::polkadot_runtime_parachains::disputes::slashing::pallet::Error, + ), + #[codec(index = 70)] + Registrar(runtime_types::polkadot_runtime_common::paras_registrar::pallet::Error), + #[codec(index = 71)] + Slots(runtime_types::polkadot_runtime_common::slots::pallet::Error), + #[codec(index = 72)] + Auctions(runtime_types::polkadot_runtime_common::auctions::pallet::Error), + #[codec(index = 73)] + Crowdloan(runtime_types::polkadot_runtime_common::crowdloan::pallet::Error), + #[codec(index = 99)] + XcmPallet(runtime_types::pallet_xcm::pallet::Error), + #[codec(index = 110)] + MessageQueue(runtime_types::pallet_message_queue::pallet::Error), + #[codec(index = 250)] + ParasSudoWrapper( + runtime_types::polkadot_runtime_common::paras_sudo_wrapper::pallet::Error, + ), + #[codec(index = 251)] + AssignedSlots( + runtime_types::polkadot_runtime_common::assigned_slots::pallet::Error, + ), + #[codec(index = 253)] + MultiTokens(runtime_types::pallet_multi_tokens::pallet::Error), + #[codec(index = 254)] + FuelTanks(runtime_types::pallet_fuel_tanks::pallet::Error), + #[codec(index = 255)] + ExtrinsicPause(runtime_types::pallet_extrinsic_pause::pallet::Error), + #[codec(index = 249)] + Marketplace(runtime_types::pallet_marketplace::pallet::Error), + #[codec(index = 240)] + Beefy(runtime_types::pallet_beefy::pallet::Error), + #[codec(index = 100)] + Scheduler(runtime_types::pallet_scheduler::pallet::Error), + #[codec(index = 101)] + Preimage(runtime_types::pallet_preimage::pallet::Error), + #[codec(index = 102)] + ConvictionVoting(runtime_types::pallet_conviction_voting::pallet::Error), + #[codec(index = 103)] + Referenda(runtime_types::pallet_referenda::pallet::Error), + #[codec(index = 105)] + Whitelist(runtime_types::pallet_whitelist::pallet::Error), + #[codec(index = 106)] + FellowshipCollective(runtime_types::pallet_ranked_collective::pallet::Error), + #[codec(index = 107)] + FellowshipReferenda(runtime_types::pallet_referenda::pallet::Error2), + #[codec(index = 108)] + Identity(runtime_types::pallet_identity::pallet::Error), + #[codec(index = 109)] + VoteManager(runtime_types::pallet_vote_manager::pallet::Error), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum RuntimeEvent { + #[codec(index = 0)] + System(runtime_types::frame_system::pallet::Event), + #[codec(index = 6)] + Balances(runtime_types::pallet_balances::pallet::Event), + #[codec(index = 7)] + Offences(runtime_types::pallet_offences::pallet::Event), + #[codec(index = 8)] + ElectionProviderMultiPhase( + runtime_types::pallet_election_provider_multi_phase::pallet::Event, + ), + #[codec(index = 9)] + Staking(runtime_types::pallet_staking::pallet::pallet::Event), + #[codec(index = 10)] + Session(runtime_types::pallet_session::pallet::Event), + #[codec(index = 11)] + Grandpa(runtime_types::pallet_grandpa::pallet::Event), + #[codec(index = 12)] + Treasury(runtime_types::pallet_treasury::pallet::Event), + #[codec(index = 13)] + TransactionPayment(runtime_types::pallet_transaction_payment::pallet::Event), + #[codec(index = 14)] + Sudo(runtime_types::pallet_sudo::pallet::Event), + #[codec(index = 15)] + ImOnline(runtime_types::pallet_im_online::pallet::Event), + #[codec(index = 17)] + VoterList(runtime_types::pallet_bags_list::pallet::Event), + #[codec(index = 18)] + NominationPools(runtime_types::pallet_nomination_pools::pallet::Event), + #[codec(index = 19)] + StakeExchange(runtime_types::pallet_stake_exchange::pallet::Event), + #[codec(index = 20)] + Utility(runtime_types::pallet_utility::pallet::Event), + #[codec(index = 21)] + Multisig(runtime_types::pallet_multisig::pallet::Event), + #[codec(index = 53)] + ParaInclusion(runtime_types::polkadot_runtime_parachains::inclusion::pallet::Event), + #[codec(index = 56)] + Paras(runtime_types::polkadot_runtime_parachains::paras::pallet::Event), + #[codec(index = 60)] + Hrmp(runtime_types::polkadot_runtime_parachains::hrmp::pallet::Event), + #[codec(index = 62)] + ParasDisputes(runtime_types::polkadot_runtime_parachains::disputes::pallet::Event), + #[codec(index = 70)] + Registrar(runtime_types::polkadot_runtime_common::paras_registrar::pallet::Event), + #[codec(index = 71)] + Slots(runtime_types::polkadot_runtime_common::slots::pallet::Event), + #[codec(index = 72)] + Auctions(runtime_types::polkadot_runtime_common::auctions::pallet::Event), + #[codec(index = 73)] + Crowdloan(runtime_types::polkadot_runtime_common::crowdloan::pallet::Event), + #[codec(index = 99)] + XcmPallet(runtime_types::pallet_xcm::pallet::Event), + #[codec(index = 110)] + MessageQueue(runtime_types::pallet_message_queue::pallet::Event), + #[codec(index = 251)] + AssignedSlots( + runtime_types::polkadot_runtime_common::assigned_slots::pallet::Event, + ), + #[codec(index = 252)] + ValidatorManager(runtime_types::pallet_validator_manager::pallet::Event), + #[codec(index = 253)] + MultiTokens(runtime_types::pallet_multi_tokens::pallet::Event), + #[codec(index = 254)] + FuelTanks(runtime_types::pallet_fuel_tanks::pallet::Event), + #[codec(index = 255)] + ExtrinsicPause(runtime_types::pallet_extrinsic_pause::pallet::Event), + #[codec(index = 249)] + Marketplace(runtime_types::pallet_marketplace::pallet::Event), + #[codec(index = 100)] + Scheduler(runtime_types::pallet_scheduler::pallet::Event), + #[codec(index = 101)] + Preimage(runtime_types::pallet_preimage::pallet::Event), + #[codec(index = 102)] + ConvictionVoting(runtime_types::pallet_conviction_voting::pallet::Event), + #[codec(index = 103)] + Referenda(runtime_types::pallet_referenda::pallet::Event), + #[codec(index = 105)] + Whitelist(runtime_types::pallet_whitelist::pallet::Event), + #[codec(index = 106)] + FellowshipCollective(runtime_types::pallet_ranked_collective::pallet::Event), + #[codec(index = 107)] + FellowshipReferenda(runtime_types::pallet_referenda::pallet::Event2), + #[codec(index = 108)] + Identity(runtime_types::pallet_identity::pallet::Event), + #[codec(index = 109)] + VoteManager(runtime_types::pallet_vote_manager::pallet::Event), + } + } + pub mod enjin_runtime_common { + use super::runtime_types; + pub mod governance { + use super::runtime_types; + pub mod origins { + use super::runtime_types; + pub mod pallet_custom_origins { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Origin { + #[codec(index = 0)] + StakingAdmin, + #[codec(index = 1)] + TreasuryAdmin, + #[codec(index = 2)] + FellowshipAdmin, + #[codec(index = 3)] + GeneralAdmin, + #[codec(index = 4)] + AuctionAdmin, + #[codec(index = 5)] + LeaseAdmin, + #[codec(index = 6)] + MultiTokensAdmin, + #[codec(index = 7)] + FuelTanksAdmin, + #[codec(index = 8)] + ClaimsAdmin, + #[codec(index = 9)] + ExtrinsicPauseAdmin, + #[codec(index = 10)] + PreimageAdmin, + #[codec(index = 11)] + WhitelistAdmin, + #[codec(index = 12)] + ParachainsAdmin, + #[codec(index = 13)] + ReferendumCanceller, + #[codec(index = 14)] + ReferendumKiller, + #[codec(index = 15)] + SmallTipper, + #[codec(index = 16)] + BigTipper, + #[codec(index = 17)] + SmallSpender, + #[codec(index = 18)] + MediumSpender, + #[codec(index = 19)] + BigSpender, + #[codec(index = 20)] + WhitelistedCaller, + #[codec(index = 21)] + FellowshipInitiates, + #[codec(index = 22)] + Fellows, + #[codec(index = 23)] + FellowshipExperts, + #[codec(index = 24)] + FellowshipMasters, + #[codec(index = 25)] + Fellowship1Dan, + #[codec(index = 26)] + Fellowship2Dan, + #[codec(index = 27)] + Fellowship3Dan, + #[codec(index = 28)] + Fellowship4Dan, + #[codec(index = 29)] + Fellowship5Dan, + #[codec(index = 30)] + Fellowship6Dan, + #[codec(index = 31)] + Fellowship7Dan, + #[codec(index = 32)] + Fellowship8Dan, + #[codec(index = 33)] + Fellowship9Dan, + } + } + } + } + } + pub mod ep_core { + use super::runtime_types; + pub mod frame { + use super::runtime_types; + pub mod migrations { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Migration<_0> { + pub stage: runtime_types::ep_core::frame::migrations::MigrationStage, + pub last_iterated_key: ::core::option::Option< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + #[codec(skip)] + pub __subxt_unused_type_params: ::core::marker::PhantomData<_0>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum MigrationStage { + #[codec(index = 0)] + NotStarted, + #[codec(index = 1)] + InProgress, + #[codec(index = 2)] + Completed, + #[codec(index = 3)] + Failed, + } + } + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BoundedString<_0>( + pub runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + #[codec(skip)] pub ::core::marker::PhantomData<_0>, + ); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ExtrinsicInfo<_0> { + pub pallet_name: runtime_types::ep_core::frame::types::BoundedString<_0>, + pub extrinsic_name: ::core::option::Option< + runtime_types::ep_core::frame::types::BoundedString<_0>, + >, + } + } + } + } + pub mod ep_multi_tokens { + use super::runtime_types; + pub mod attribute { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Attribute<_0, _1> { + pub value: _0, + #[codec(compact)] + pub deposit: _1, + } + } + pub mod batch { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AttributeKeyValuePair<_0, _1> { + pub key: _0, + pub value: _1, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Recipient<_0, _1> { + pub account_id: _0, + pub params: _1, + } + } + pub mod collection { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Collection<_0, _1, _2, _3> { + pub owner: _0, + pub policy: _2, + #[codec(compact)] + pub token_count: ::core::primitive::u64, + #[codec(compact)] + pub attribute_count: ::core::primitive::u32, + #[codec(compact)] + pub total_deposit: _1, + pub explicit_royalty_currencies: _3, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultCollectionDescriptor<_0, _1, _2, _3> { + pub policy: + runtime_types::ep_multi_tokens::policy::DefaultCollectionPolicyDescriptor< + _0, + _1, + >, + pub explicit_royalty_currencies: _2, + pub attributes: _3, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultCollectionMutation<_0, _1, _2> { + pub owner: ::core::option::Option<_0>, + pub royalty: runtime_types::ep_multi_tokens::types::ShouldMutate< + ::core::option::Option<_1>, + >, + pub explicit_royalty_currencies: ::core::option::Option<_2>, + } + } + pub mod frame { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultForeignTokenMetadata<_0, _1, _2, _3> { + #[codec(compact)] + pub decimal_count: ::core::primitive::u32, + pub name: _1, + pub symbol: _2, + pub location: ::core::option::Option<_3>, + pub units_per_second: ::core::option::Option<_0>, + #[codec(compact)] + pub preminted_supply: _0, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum DefaultTokenMetadata<_0> { + #[codec(index = 0)] + Native, + #[codec(index = 1)] + Foreign(_0), + } + } + pub mod policy { + use super::runtime_types; + pub mod attribute { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultAttributePolicy; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultAttributePolicyDescriptor; + } + pub mod burn { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultBurnParams<_0, _1> { + #[codec(compact)] + pub token_id: _0, + #[codec(compact)] + pub amount: _0, + pub keep_alive: ::core::primitive::bool, + pub remove_token_storage: ::core::primitive::bool, + #[codec(skip)] + pub __subxt_unused_type_params: ::core::marker::PhantomData<_1>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultBurnPolicy; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultBurnPolicyDescriptor; + } + pub mod market { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultMarketPolicy<_0> { + pub royalty: ::core::option::Option<_0>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultMarketPolicyDescriptor<_0> { + pub royalty: ::core::option::Option<_0>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultRoyalty<_0> { + pub beneficiary: _0, + #[codec(compact)] + pub percentage: runtime_types::sp_arithmetic::per_things::Perbill, + } + } + pub mod mint { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum DefaultMintParams<_0, _1, _2, _3, _4, _5, _6, _7> { + # [codec (index = 0)] CreateToken { # [codec (compact)] token_id : _0 , # [codec (compact)] initial_supply : _0 , sufficiency : runtime_types :: ep_multi_tokens :: policy :: mint :: SufficiencyParam < _0 , _0 > , cap : :: core :: option :: Option < runtime_types :: ep_multi_tokens :: token :: TokenCap < _0 > > , behavior : :: core :: option :: Option < runtime_types :: ep_multi_tokens :: token :: TokenMarketBehavior < _3 > > , listing_forbidden : :: core :: primitive :: bool , freeze_state : :: core :: option :: Option < runtime_types :: ep_multi_tokens :: token :: FreezeState > , attributes : _4 , foreign_params : :: core :: option :: Option < runtime_types :: ep_multi_tokens :: policy :: mint :: ForeignTokenCreationParams < _5 , _6 , _7 > > , } , # [codec (index = 1)] Mint { # [codec (compact)] token_id : _0 , # [codec (compact)] amount : _0 , unit_price : :: core :: option :: Option < _0 > , } , __Ignore (:: core :: marker :: PhantomData < (_2 , _1) >) , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultMintPolicy<_0> { + pub max_token_count: ::core::option::Option<::core::primitive::u64>, + pub max_token_supply: ::core::option::Option<_0>, + pub force_single_mint: ::core::primitive::bool, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultMintPolicyDescriptor<_0> { + pub max_token_count: ::core::option::Option<::core::primitive::u64>, + pub max_token_supply: ::core::option::Option<_0>, + pub force_single_mint: ::core::primitive::bool, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ForeignTokenCreationParams<_0, _1, _2> { + #[codec(compact)] + pub decimal_count: ::core::primitive::u32, + pub name: _0, + pub symbol: _1, + pub location: ::core::option::Option<_2>, + pub units_per_second: ::core::option::Option<::core::primitive::u128>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum SufficiencyParam<_0, _1> { + #[codec(index = 0)] + Insufficient { + unit_price: ::core::option::Option<_0>, + }, + #[codec(index = 1)] + Sufficient { minimum_balance: _1 }, + } + } + pub mod transfer { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum DefaultTransferParams<_0, _1, _2> { + #[codec(index = 0)] + Simple { + #[codec(compact)] + token_id: _1, + #[codec(compact)] + amount: _1, + keep_alive: ::core::primitive::bool, + }, + #[codec(index = 1)] + Operator { + #[codec(compact)] + token_id: _1, + source: _0, + #[codec(compact)] + amount: _1, + keep_alive: ::core::primitive::bool, + }, + __Ignore(::core::marker::PhantomData<_2>), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultTransferPolicy { + pub is_frozen: ::core::primitive::bool, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultTransferPolicyDescriptor; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultCollectionPolicy<_0, _1> { + pub mint: runtime_types::ep_multi_tokens::policy::mint::DefaultMintPolicy<_0>, + pub burn: runtime_types::ep_multi_tokens::policy::burn::DefaultBurnPolicy, + pub transfer: + runtime_types::ep_multi_tokens::policy::transfer::DefaultTransferPolicy, + pub attribute: + runtime_types::ep_multi_tokens::policy::attribute::DefaultAttributePolicy, + pub market: + runtime_types::ep_multi_tokens::policy::market::DefaultMarketPolicy<_1>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultCollectionPolicyDescriptor < _0 , _1 > { pub mint : runtime_types :: ep_multi_tokens :: policy :: mint :: DefaultMintPolicyDescriptor < _0 > , pub burn : runtime_types :: ep_multi_tokens :: policy :: burn :: DefaultBurnPolicyDescriptor , pub transfer : runtime_types :: ep_multi_tokens :: policy :: transfer :: DefaultTransferPolicyDescriptor , pub attribute : runtime_types :: ep_multi_tokens :: policy :: attribute :: DefaultAttributePolicyDescriptor , pub market : runtime_types :: ep_multi_tokens :: policy :: market :: DefaultMarketPolicyDescriptor < _1 > , } + } + pub mod token { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AssetId<_0, _1> { + #[codec(compact)] + pub collection_id: _0, + #[codec(compact)] + pub token_id: _0, + #[codec(skip)] + pub __subxt_unused_type_params: ::core::marker::PhantomData<_1>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultTokenMutation<_0, _1> { + pub behavior: runtime_types::ep_multi_tokens::types::ShouldMutate< + ::core::option::Option< + runtime_types::ep_multi_tokens::token::TokenMarketBehavior<_0>, + >, + >, + pub listing_forbidden: runtime_types::ep_multi_tokens::types::ShouldMutate< + ::core::primitive::bool, + >, + pub metadata: runtime_types::ep_multi_tokens::types::ShouldMutate<_1>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum FreezeState { + #[codec(index = 0)] + Permanent, + #[codec(index = 1)] + Temporary, + #[codec(index = 2)] + Never, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Sufficiency<_0> { + #[codec(index = 0)] + Sufficient, + #[codec(index = 1)] + Insufficient { + #[codec(compact)] + unit_price: _0, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Token<_0, _1, _2, _3> { + #[codec(compact)] + pub supply: _0, + pub cap: + ::core::option::Option>, + pub freeze_state: + ::core::option::Option, + #[codec(compact)] + pub minimum_balance: _0, + pub sufficiency: runtime_types::ep_multi_tokens::token::Sufficiency<_0>, + #[codec(compact)] + pub mint_deposit: _0, + #[codec(compact)] + pub attribute_count: ::core::primitive::u32, + pub market_behavior: ::core::option::Option< + runtime_types::ep_multi_tokens::token::TokenMarketBehavior<_2>, + >, + pub listing_forbidden: ::core::primitive::bool, + pub metadata: _3, + #[codec(skip)] + pub __subxt_unused_type_params: ::core::marker::PhantomData<_1>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum TokenCap<_0> { + #[codec(index = 0)] + SingleMint, + #[codec(index = 1)] + Supply(#[codec(compact)] _0), + #[codec(index = 2)] + CollapsingSupply(#[codec(compact)] _0), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum TokenMarketBehavior<_0> { + #[codec(index = 0)] + HasRoyalty(_0), + #[codec(index = 1)] + IsCurrency, + } + } + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Freeze<_0, _1, _2> { + #[codec(compact)] + pub collection_id: _1, + pub freeze_type: runtime_types::ep_multi_tokens::types::FreezeType<_0, _1>, + #[codec(skip)] + pub __subxt_unused_type_params: ::core::marker::PhantomData<_2>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum FreezeType<_0, _1> { + #[codec(index = 0)] + Collection, + #[codec(index = 1)] + Token { + token_id: _1, + freeze_state: ::core::option::Option< + runtime_types::ep_multi_tokens::token::FreezeState, + >, + }, + #[codec(index = 2)] + CollectionAccount(_0), + #[codec(index = 3)] + TokenAccount { + #[codec(compact)] + token_id: _1, + account_id: _0, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct NativeAssetInfo<_0> { + pub id: _0, + pub units_per_second: ::core::primitive::u128, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum RootOrSigned<_0> { + #[codec(index = 0)] + Root, + #[codec(index = 1)] + Signed(_0), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum ShouldMutate<_0> { + #[codec(index = 0)] + NoMutation, + #[codec(index = 1)] + SomeMutation(_0), + } + } + } + pub mod finality_grandpa { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Precommit<_0, _1> { + pub target_hash: _0, + pub target_number: _1, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Prevote<_0, _1> { + pub target_hash: _0, + pub target_number: _1, + } + } + pub mod frame_support { + use super::runtime_types; + pub mod dispatch { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum DispatchClass { + #[codec(index = 0)] + Normal, + #[codec(index = 1)] + Operational, + #[codec(index = 2)] + Mandatory, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Pays { + #[codec(index = 0)] + Yes, + #[codec(index = 1)] + No, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PerDispatchClass<_0> { + pub normal: _0, + pub operational: _0, + pub mandatory: _0, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PostDispatchInfo { + pub actual_weight: + ::core::option::Option, + pub pays_fee: runtime_types::frame_support::dispatch::Pays, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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), + #[codec(index = 4)] + Yield, + } + } + pub mod misc { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Bounded<_0> { + #[codec(index = 0)] + Legacy { + hash: ::subxt::utils::H256, + }, + #[codec(index = 1)] + Inline( + runtime_types::bounded_collections::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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum BalanceStatus { + #[codec(index = 0)] + Free, + #[codec(index = 1)] + Reserved, + } + } + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CheckGenesis; + } + pub mod check_mortality { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CheckNonZeroSender; + } + pub mod check_nonce { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CheckSpecVersion; + } + pub mod check_tx_version { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CheckTxVersion; + } + pub mod check_weight { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CheckWeight; + } + } + pub mod limits { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BlockLength { + pub max: runtime_types::frame_support::dispatch::PerDispatchClass< + ::core::primitive::u32, + >, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct WeightsPerClass { + pub base_extrinsic: runtime_types::sp_weights::weight_v2::Weight, + pub max_extrinsic: + ::core::option::Option, + pub max_total: + ::core::option::Option, + pub reserved: + ::core::option::Option, + } + } + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "- `O(1)`"] + 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."] + 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`."] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AccountInfo<_0, _1> { + pub nonce: _0, + pub consumers: ::core::primitive::u32, + pub providers: ::core::primitive::u32, + pub sufficients: ::core::primitive::u32, + pub data: _1, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Phase { + #[codec(index = 0)] + ApplyExtrinsic(::core::primitive::u32), + #[codec(index = 1)] + Finalization, + #[codec(index = 2)] + Initialization, + } + } + pub mod pallet_babe { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, ()>, + }, + #[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, ()>, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_allow_death` 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."] + transfer_allow_death { + dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + value: ::core::primitive::u128, + }, + #[codec(index = 1)] + #[doc = "Set the regular balance of a given account; it also takes a reserved balance but this"] + #[doc = "must be the same as the account's current reserved balance."] + #[doc = ""] + #[doc = "The dispatch origin for this call is `root`."] + #[doc = ""] + #[doc = "WARNING: This call is DEPRECATED! Use `force_set_balance` instead."] + set_balance_deprecated { + who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + new_free: ::core::primitive::u128, + #[codec(compact)] + old_reserved: ::core::primitive::u128, + }, + #[codec(index = 2)] + #[doc = "Exactly as `transfer_allow_death`, except the origin must be root and the source account"] + #[doc = "may be specified."] + force_transfer { + source: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + value: ::core::primitive::u128, + }, + #[codec(index = 3)] + #[doc = "Same as the [`transfer_allow_death`] call, but with a check that the transfer will not"] + #[doc = "kill the origin account."] + #[doc = ""] + #[doc = "99% of the time you want [`transfer_allow_death`] instead."] + #[doc = ""] + #[doc = "[`transfer_allow_death`]: struct.Pallet.html#method.transfer"] + transfer_keep_alive { + dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[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)."] + transfer_all { + dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + 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, ()>, + amount: ::core::primitive::u128, + }, + #[codec(index = 6)] + #[doc = "Upgrade a specified account."] + #[doc = ""] + #[doc = "- `origin`: Must be `Signed`."] + #[doc = "- `who`: The account to be upgraded."] + #[doc = ""] + #[doc = "This will waive the transaction fee if at least all but 10% of the accounts needed to"] + #[doc = "be upgraded. (We let some not have to be upgraded just in order to allow for the"] + #[doc = "possibililty of churn)."] + upgrade_accounts { + who: ::std::vec::Vec<::subxt::utils::AccountId32>, + }, + #[codec(index = 7)] + #[doc = "Alias for `transfer_allow_death`, provided only for name-wise compatibility."] + #[doc = ""] + #[doc = "WARNING: DEPRECATED! Will be released in approximately 3 months."] + transfer { + dest: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + value: ::core::primitive::u128, + }, + #[codec(index = 8)] + #[doc = "Set the regular balance of a given account."] + #[doc = ""] + #[doc = "The dispatch origin for this call is `root`."] + force_set_balance { + who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[codec(compact)] + new_free: ::core::primitive::u128, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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."] + Expendability, + #[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, + #[codec(index = 8)] + #[doc = "Number of holds exceed `MaxHolds`."] + TooManyHolds, + #[codec(index = 9)] + #[doc = "Number of freezes exceed `MaxFreezes`."] + TooManyFreezes, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + }, + #[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, + }, + #[codec(index = 10)] + #[doc = "Some amount was minted into an account."] + Minted { + who: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + }, + #[codec(index = 11)] + #[doc = "Some amount was burned from an account."] + Burned { + who: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + }, + #[codec(index = 12)] + #[doc = "Some amount was suspended from an account (it can be restored later)."] + Suspended { + who: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + }, + #[codec(index = 13)] + #[doc = "Some amount was restored into an account."] + Restored { + who: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + }, + #[codec(index = 14)] + #[doc = "An account was upgraded."] + Upgraded { who: ::subxt::utils::AccountId32 }, + #[codec(index = 15)] + #[doc = "Total issuance was increased by `amount`, creating a credit to be balanced."] + Issued { amount: ::core::primitive::u128 }, + #[codec(index = 16)] + #[doc = "Total issuance was decreased by `amount`, creating a debt to be balanced."] + Rescinded { amount: ::core::primitive::u128 }, + #[codec(index = 17)] + #[doc = "Some balance was locked."] + Locked { + who: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + }, + #[codec(index = 18)] + #[doc = "Some balance was unlocked."] + Unlocked { + who: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + }, + #[codec(index = 19)] + #[doc = "Some balance was frozen."] + Frozen { + who: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + }, + #[codec(index = 20)] + #[doc = "Some balance was thawed."] + Thawed { + who: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + }, + } + } + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AccountData<_0> { + pub free: _0, + pub reserved: _0, + pub frozen: _0, + pub flags: runtime_types::pallet_balances::types::ExtraFlags, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BalanceLock<_0> { + pub id: [::core::primitive::u8; 8usize], + pub amount: _0, + pub reasons: runtime_types::pallet_balances::types::Reasons, + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ExtraFlags(pub ::core::primitive::u128); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct IdAmount<_0, _1> { + pub id: _0, + pub amount: _1, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Reasons { + #[codec(index = 0)] + Fee, + #[codec(index = 1)] + Misc, + #[codec(index = 2)] + All, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ReserveData<_0, _1> { + pub id: _0, + pub amount: _1, + } + } + } + pub mod pallet_beefy { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_consensus_beefy::EquivocationProof< + ::core::primitive::u32, + runtime_types::sp_consensus_beefy::crypto::Public, + runtime_types::sp_consensus_beefy::crypto::Signature, + >, + >, + 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_consensus_beefy::EquivocationProof< + ::core::primitive::u32, + runtime_types::sp_consensus_beefy::crypto::Public, + runtime_types::sp_consensus_beefy::crypto::Signature, + >, + >, + key_owner_proof: runtime_types::sp_session::MembershipProof, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 key ownership proof provided as part of an equivocation report is invalid."] + InvalidKeyOwnershipProof, + #[codec(index = 1)] + #[doc = "An equivocation proof provided as part of an equivocation report is invalid."] + InvalidEquivocationProof, + #[codec(index = 2)] + #[doc = "A given equivocation report is valid but already previously reported."] + DuplicateOffenceReport, + } + } + } + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, ()>, + 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, ()>, + }, + #[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, ()>, + class: ::core::primitive::u16, + index: ::core::primitive::u32, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Delegations<_0> { + pub votes: _0, + pub capital: _0, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Casting<_0, _1, _2> { + pub votes: runtime_types::bounded_collections::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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PriorLock<_0, _1>(pub _0, pub _1); + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Vote(pub ::core::primitive::u8); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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_election_provider_multi_phase { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 :: enjin_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 :: enjin_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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ReadySolution { + pub supports: runtime_types::bounded_collections::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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RoundSnapshot<_0, _1> { + pub voters: ::std::vec::Vec<_1>, + pub targets: ::std::vec::Vec<_0>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SolutionOrSnapshotSize { + #[codec(compact)] + pub voters: ::core::primitive::u32, + #[codec(compact)] + pub targets: ::core::primitive::u32, + } + } + pub mod pallet_extrinsic_pause { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Pause execution of extrinsic(s)"] + #[doc = ""] + #[doc = "The values of pallet_name and extrinsic_name are extracted from the `call` parameter."] + #[doc = "Ex : To pause the multi_tokens pallet, the `call` parameter should be of the type"] + #[doc = "`pallet_multi_tokens::Call` If `pause_only_extrinsic` is true, then only the extrinsic"] + #[doc = "is paused, else the entire pallet is paused."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::CannotProcessInput`] if the pallet name or extrinsic name is faulty."] + #[doc = "- [`Error::CannotPauseSelf`] if the pallet name is the same as the name of this pallet."] + pause_extrinsic { + call: ::std::boxed::Box, + pause_only_extrinsic: ::core::primitive::bool, + }, + #[codec(index = 1)] + #[doc = "Resume execution of extrinsic(s)"] + #[doc = ""] + #[doc = "The values of pallet_name and extrinsic_name are extracted from the `call` parameter."] + #[doc = "Ex : To resume the multi_tokens pallet, the `call` parameter should be of the type"] + #[doc = "`pallet_multi_tokens::Call` If `pause_only_extrinsic` is true, then only the extrinsic"] + #[doc = "is resumed, else the entire pallet is resumed."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::CannotProcessInput`] if the pallet name or extrinsic name is faulty."] + resume_extrinsic { + call: ::std::boxed::Box, + resume_only_extrinsic: ::core::primitive::bool, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Pallet's error type."] + pub enum Error { + #[codec(index = 0)] + #[doc = "Cannot pause this pallet or it's extrinsic"] + CannotPauseSelf, + #[codec(index = 1)] + #[doc = "Cannot read the pallet or extrinsic name"] + CannotProcessInput, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The pallet's event type."] + pub enum Event { + #[codec(index = 0)] + #[doc = "All pallet extrinsics are paused."] + PalletPaused { + pallet_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + }, + #[codec(index = 1)] + #[doc = "All pallet extrinsics are resumed."] + PalletResumed { + pallet_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + }, + #[codec(index = 2)] + #[doc = "Extrinsic is paused."] + ExtrinsicPaused { + pallet_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + extrinsic_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + }, + #[codec(index = 3)] + #[doc = "Extrinsic is resumed"] + ExtrinsicResumed { + pallet_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + extrinsic_name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxNameLength, + >, + }, + } + } + } + pub mod pallet_fuel_tanks { + use super::runtime_types; + pub mod extension { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CheckFuelTank; + } + pub mod impls { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DefaultTankMutation<_0> { + pub user_account_management: + runtime_types::ep_multi_tokens::types::ShouldMutate< + ::core::option::Option< + runtime_types::pallet_fuel_tanks::types::UserAccountManagement, + >, + >, + pub provides_deposit: ::core::option::Option<::core::primitive::bool>, + pub account_rules: ::core::option::Option< + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_fuel_tanks::rules::AccountRuleDescriptor, + >, + >, + #[codec(skip)] + pub __subxt_unused_type_params: ::core::marker::PhantomData<_0>, + } + } + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Creates a fuel tank, given a descriptor"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankAlreadyExists`] if `tank_id` already exists"] + #[doc = "- [`Error::DuplicateRuleKinds`] if a rule set has multiple rules of the same kind"] + create_fuel_tank { + descriptor: runtime_types::pallet_fuel_tanks::types::FuelTankDescriptor< + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxFuelTankNameLength, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + ::core::primitive::u32, + runtime_types::pallet_fuel_tanks::rules::RuleSetDescriptor< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleDescriptor, + runtime_types::enjin_runtime::MaxRulesPerSet, + >, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_fuel_tanks::rules::AccountRuleDescriptor, + >, + >, + }, + #[codec(index = 1)] + #[doc = "Apply `mutation` to fuel tank with `tank_id`."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if `tank_id` does not exist."] + #[doc = "- [`Error::NoPermission`] if `origin` is not the fuel tank owner"] + mutate_fuel_tank { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + mutation: runtime_types::pallet_fuel_tanks::impls::DefaultTankMutation< + runtime_types::enjin_runtime::Runtime, + >, + }, + #[codec(index = 2)] + #[doc = "Adds new account for `user_id` to fuel tank at `tank_id`. An account is"] + #[doc = "required to dispatch calls. A deposit is required, and may be paid by"] + #[doc = "the user or the fuel tank, depending on the settings."] + #[doc = ""] + #[doc = "### Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist"] + #[doc = "- [`Error::NoPermission`] if `origin` does not have permission to add an account"] + #[doc = "- [`Error::AccountAlreadyExists`] if account at `user_id` already exists"] + add_account { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + }, + #[codec(index = 3)] + #[doc = "Removes account for `user_id` from fuel tank at `tank_id`. Any deposits"] + #[doc = "are returned."] + #[doc = ""] + #[doc = "### Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist"] + #[doc = "- [`Error::NoPermission`] if `origin` does not have permission to add an account"] + #[doc = "- [`Error::AccountNotFound`] if account at `user_id` does not exist"] + remove_account { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + }, + #[codec(index = 4)] + #[doc = "Remove account rule data if it exists. Only callable by the fuel tank's owner. Requires"] + #[doc = "the fuel tank or the rule set to be frozen."] + #[doc = ""] + #[doc = "### Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if fuel tank for `tank_id` doesn't exist"] + #[doc = "- [`Error::NoPermission`] if called by non-owner"] + #[doc = "- [`Error::AccountNotFound`] if account does not exist for `user_id`"] + #[doc = "- [`Error::RuleSetNotFound`] if rule set does not exist for `rule_set_id`"] + #[doc = "- [`Error::RequiresFrozenTankOrRuleset`] if tank or rule set is not frozen"] + #[doc = "- [`Error::RuleNotFound`] if rule does not exist for `rule_kind`"] + remove_account_rule_data { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::primitive::u32, + rule_kind: runtime_types::pallet_fuel_tanks::rules::DispatchRuleKind, + }, + #[codec(index = 5)] + #[doc = "Dispatch a call using the `tank_id` subject to the rules of `rule_set_id`"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::FuelTankNotFound`] if `tank_id` does not exist."] + #[doc = "- [`Error::UsageRestricted`] if caller is not part of ruleset whitelist"] + #[doc = "- [`Error::CallerDoesNotHaveRuleSetTokenBalance`] if caller does not own the tokens to"] + #[doc = " use the ruleset for remaining_fee when `pays_remaining_fee` is true"] + #[doc = "- [`Error::FuelTankOutOfFunds`] if the fuel tank account cannot pay fees"] + dispatch { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::primitive::u32, + call: ::std::boxed::Box, + settings: ::core::option::Option< + runtime_types::pallet_fuel_tanks::types::DispatchSettings, + >, + }, + #[codec(index = 6)] + #[doc = "Same as [dispatch](Self::dispatch), but creates an account for `origin` if it does not"] + #[doc = "exist and is allowed by the fuel tank's `user_account_management` settings."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "Returns the same errors as [dispatch](Self::dispatch) and"] + #[doc = "[add_account](Self::add_account)"] + dispatch_and_touch { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::primitive::u32, + call: ::std::boxed::Box, + settings: ::core::option::Option< + runtime_types::pallet_fuel_tanks::types::DispatchSettings, + >, + }, + #[codec(index = 7)] + #[doc = "Schedule mutating of `is_frozen` state that determines if fuel tank or rule set can be"] + #[doc = "used"] + #[doc = ""] + #[doc = "Additional 1 read and 1 write are added to account for `on_finalize` storage operations"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::FuelTankNotFound`] if `tank_id` does not exist."] + #[doc = "- [`Error::NoPermission`] if caller is not a fuel tank owner"] + #[doc = "- [`Error::FreezeQueueFull`] if the queue is full"] + schedule_mutate_freeze_state { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::option::Option<::core::primitive::u32>, + is_frozen: ::core::primitive::bool, + }, + #[codec(index = 8)] + #[doc = "Insert a new rule set for `tank_id` and `rule_set_id`. It can be a new rule set"] + #[doc = "or it can replace an existing one. If it is replacing a rule set, a rule that is storing"] + #[doc = "data on any accounts cannot be removed. Use [Self::remove_account_rule_data] to remove"] + #[doc = "the data first. If a rule is being replaced, it will be mutated with the new parameters,"] + #[doc = "and it will maintain any persistent data it already has."] + #[doc = ""] + #[doc = "This is only callable by the fuel tank's owner."] + #[doc = "### Errors"] + #[doc = "- [`Error::FuelTankNotFound`] if `tank_id` does not exist."] + #[doc = "- [`Error::NoPermission`] if caller is not the fuel tank owner"] + #[doc = "- [`Error::RequiresFrozenTankOrRuleset`] if tank or rule set is not frozen"] + #[doc = "- [`Error::CannotRemoveRuleThatIsStoringAccountData`] if removing a rule that is storing"] + #[doc = " account data"] + #[doc = "- [`Error::MaxRuleSetsExceeded`] if max number of rule sets was exceeded"] + #[doc = "- [`Error::DuplicateRuleKinds`] if adding a rule set with multiple rules of the same"] + #[doc = " kind"] + insert_rule_set { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::primitive::u32, + rules: runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleDescriptor, + >, + }, + #[codec(index = 9)] + #[doc = "Remove rule set for `tank_id` and `rule_set_id`. A rule that is storing data on"] + #[doc = "any accounts cannot be removed. Use [Self::remove_account_rule_data] to remove the"] + #[doc = "data first. This is only callable by the fuel tank's owner."] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if `tank_id` does not exist."] + #[doc = "- [`Error::NoPermission`] if caller is not the fuel tank owner"] + #[doc = "- [`Error::RequiresFrozenTankOrRuleset`] if tank or rule set is not frozen"] + #[doc = "- [`Error::CannotRemoveRuleThatIsStoringAccountData`] if removing a rule that is storing"] + #[doc = " account data"] + remove_rule_set { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + rule_set_id: ::core::primitive::u32, + }, + #[codec(index = 10)] + #[doc = "Similar to add_account but takes a list of"] + #[doc = "[`AccountId`](frame_system::Config::AccountId)s to insert into a fuel tank."] + #[doc = "### Errors"] + #[doc = "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist"] + #[doc = "- [`Error::NoPermission`] if `origin` does not have permission to add an account"] + #[doc = "- [`Error::AccountAlreadyExists`] if account at `user_id` already exists"] + batch_add_account { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_ids: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + }, + #[codec(index = 11)] + #[doc = "Similar to remove_account but takes a list of"] + #[doc = "[`AccountId`](frame_system::Config::AccountId)s to remove from a fuel tank."] + #[doc = "### Errors"] + #[doc = "- [`Error::FuelTankNotFound`] if fuel tank at `tank_id` does not exist"] + #[doc = "- [`Error::NoPermission`] if `origin` does not have permission to add an account"] + #[doc = "- [`Error::AccountNotFound`] if account at `user_id` does not exist"] + batch_remove_account { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_ids: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + }, + #[codec(index = 12)] + #[doc = "Force set the fuel tank consumption"] + #[doc = "If `user_id` is [`Some`], it sets the consumption for that account."] + #[doc = "If it is [`None`], it sets the consumption on the fuel tank directly."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::AccountNotFound`] if `user_id` is `Some` and account does not exist"] + #[doc = "- [`Error::FuelTankNotFound`] if tank_id does not exist"] + #[doc = "- [`Error::NoPermission`] if caller is not ForceOrigin or fuel tank owner"] + #[doc = "- [`Error::InvalidRuleSet`] if `rule_set_id` does not exist"] + #[doc = "- [`Error::MissingRequiredRule`] if `rule_set_id` does not have the required role"] + force_set_consumption { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_id: ::core::option::Option< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + rule_set_id: ::core::primitive::u32, + consumption: runtime_types::pallet_fuel_tanks::types::Consumption< + ::core::primitive::u128, + ::core::primitive::u32, + >, + }, + #[codec(index = 13)] + #[doc = "Destroy the fuel tank by scheduling the deletion for `on_finalize` to execute"] + #[doc = "Only callable by owner"] + #[doc = "The fuel tank must be frozen"] + #[doc = "Can only be destroyed if all accounts are removed"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankNotFound`] if tank_id does not exist"] + #[doc = "- [`Error::NoPermission`] if caller is not owner"] + #[doc = "- [`Error::DestroyUnfrozenTank`] if tank is not frozen"] + #[doc = "- [`Error::DestroyWithExistingAccounts`] if there are still accounts on the tank"] + destroy_fuel_tank { + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + }, + #[codec(index = 14)] + #[doc = "Force creates a fuel tank"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::FuelTankAlreadyExists`] if `tank_id` already exists"] + force_create_fuel_tank { + owner: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + descriptor: runtime_types::pallet_fuel_tanks::types::FuelTankDescriptor< + runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxFuelTankNameLength, + >, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + ::core::primitive::u32, + runtime_types::pallet_fuel_tanks::rules::RuleSetDescriptor< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleDescriptor, + runtime_types::enjin_runtime::MaxRulesPerSet, + >, + >, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_fuel_tanks::rules::AccountRuleDescriptor, + >, + >, + }, + #[codec(index = 15)] + #[doc = "Sets the account storage for give tank_id and account"] + force_batch_add_account { + owner: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + tank_id: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + user_ids: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "Fuel Tank not found"] + FuelTankNotFound, + #[codec(index = 1)] + #[doc = "Fuel Tank already exists"] + FuelTankAlreadyExists, + #[codec(index = 2)] + #[doc = "Not enough funds to perform operation"] + InsufficientBalance, + #[codec(index = 3)] + #[doc = "Fuel tank cannot be used due to restrictions"] + UsageRestricted, + #[codec(index = 4)] + #[doc = "Fuel tank doesnt have enough funds"] + FuelTankOutOfFunds, + #[codec(index = 5)] + #[doc = "The rule set does not exist"] + RuleSetNotFound, + #[codec(index = 6)] + #[doc = "The rule is missing"] + RuleNotFound, + #[codec(index = 7)] + #[doc = "User does not have permission to perform operation"] + NoPermission, + #[codec(index = 8)] + #[doc = "The account already exists"] + AccountAlreadyExists, + #[codec(index = 9)] + #[doc = "The account was not found"] + AccountNotFound, + #[codec(index = 10)] + #[doc = "Destroying fuel tank is not possible while it has existing accounts attached"] + DestroyWithExistingAccounts, + #[codec(index = 11)] + #[doc = "Destroying fuel tank is not possible while it is not frozen"] + DestroyUnfrozenTank, + #[codec(index = 12)] + #[doc = "Max number of rules sets per fuel tank was exceeded"] + MaxRuleSetsExceeded, + #[codec(index = 13)] + #[doc = "The size of the user rule data is greater than the allowed amount"] + UserRuleDataExceededMaxSize, + #[codec(index = 14)] + #[doc = "The user rule data could not be decoded"] + DecodeUserRuleDataFailed, + #[codec(index = 15)] + #[doc = "The queue for fuel tank and rule set freezing is full"] + FreezeQueueFull, + #[codec(index = 16)] + #[doc = "Either the tank or ruleset must be frozen for this operation"] + RequiresFrozenTankOrRuleset, + #[codec(index = 17)] + #[doc = "The fuel tank must be frozen for this operation"] + RequiresFrozenTank, + #[codec(index = 18)] + #[doc = "A rule that is required for this operation does not exist"] + MissingRequiredRule, + #[codec(index = 19)] + #[doc = "User data for the required rule does not exist"] + MissingRequiredRuleUserData, + #[codec(index = 20)] + #[doc = "The rule set of the fuel tank is misconfigured. This error should never occur."] + InvalidRuleSet, + #[codec(index = 21)] + #[doc = "A user cannot remove an account that is storing data for a rule"] + AccountContainsRuleData, + #[codec(index = 22)] + #[doc = "A rule cannot be removed from a rule set if it is storing data on any account"] + CannotRemoveRuleThatIsStoringAccountData, + #[codec(index = 23)] + #[doc = "A fuel tank cannot have more than one rule of the same kind"] + DuplicateRuleKinds, + #[codec(index = 24)] + #[doc = "Problems calculating the mint deposit for a call"] + MintDepositCalculationError, + #[codec(index = 25)] + #[doc = "The fuel tank is frozen"] + FuelTankFrozen, + #[codec(index = 26)] + #[doc = "The user does not have the token required by rule set"] + CallerDoesNotHaveRuleSetTokenBalance, + #[codec(index = 27)] + #[doc = "The user does not have any data stored for rule set"] + NoDataToRemove, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 [`FuelTank`] was created."] + FuelTankCreated { + owner: ::subxt::utils::AccountId32, + name: runtime_types::ep_core::frame::types::BoundedString< + runtime_types::enjin_runtime::MaxFuelTankNameLength, + >, + tank_id: ::subxt::utils::AccountId32, + }, + #[codec(index = 1)] + #[doc = "A [`FuelTank`] was mutated"] + FuelTankMutated { + tank_id: ::subxt::utils::AccountId32, + mutation: runtime_types::pallet_fuel_tanks::impls::DefaultTankMutation< + runtime_types::enjin_runtime::Runtime, + >, + }, + #[codec(index = 2)] + #[doc = "A [`FuelTank`] was destroyed"] + FuelTankDestroyed { + tank_id: ::subxt::utils::AccountId32, + }, + #[codec(index = 3)] + #[doc = "A call was dispatched through a [`FuelTank`]."] + CallDispatched { + caller: ::subxt::utils::AccountId32, + tank_id: ::subxt::utils::AccountId32, + }, + #[codec(index = 4)] + #[doc = "An account was added to a [`FuelTank`]"] + AccountAdded { + tank_id: ::subxt::utils::AccountId32, + user_id: ::subxt::utils::AccountId32, + tank_deposit: ::core::primitive::u128, + user_deposit: ::core::primitive::u128, + }, + #[codec(index = 5)] + #[doc = "An account was removed from a [`FuelTank`]"] + AccountRemoved { + tank_id: ::subxt::utils::AccountId32, + user_id: ::subxt::utils::AccountId32, + }, + #[codec(index = 6)] + #[doc = "Account data of [`AccountId`](frame_system::Config::AccountId) was removed from"] + #[doc = "[`RuleSetId`](Config::RuleSetId)"] + AccountRuleDataRemoved { + tank_id: ::subxt::utils::AccountId32, + user_id: ::subxt::utils::AccountId32, + rule_set_id: ::core::primitive::u32, + rule_kind: runtime_types::pallet_fuel_tanks::rules::DispatchRuleKind, + }, + #[codec(index = 7)] + #[doc = "A new rule set was added to [`FuelTank`]"] + RuleSetInserted { + tank_id: ::subxt::utils::AccountId32, + rule_set_id: ::core::primitive::u32, + }, + #[codec(index = 8)] + #[doc = "A rule set was removed from [`FuelTank`]"] + RuleSetRemoved { + tank_id: ::subxt::utils::AccountId32, + rule_set_id: ::core::primitive::u32, + }, + #[codec(index = 9)] + #[doc = "The freeze state mutation for fuel tank or its rule set was scheduled"] + MutateFreezeStateScheduled { + tank_id: ::subxt::utils::AccountId32, + rule_set_id: ::core::option::Option<::core::primitive::u32>, + is_frozen: ::core::primitive::bool, + }, + #[codec(index = 10)] + #[doc = "The freeze state change for fuel tank or its rule set was executed in `on_finalize`"] + FreezeStateMutated { + tank_id: ::subxt::utils::AccountId32, + rule_set_id: ::core::option::Option<::core::primitive::u32>, + is_frozen: ::core::primitive::bool, + }, + #[codec(index = 11)] + #[doc = "The freeze state change for fuel tank or its rule set failed in `on_finalize`"] + ScheduleMutateFreezeStateFailed { + tank_id: ::subxt::utils::AccountId32, + rule_set_id: ::core::option::Option<::core::primitive::u32>, + is_frozen: ::core::primitive::bool, + error: runtime_types::sp_runtime::DispatchError, + }, + #[codec(index = 12)] + #[doc = "The dispatch of a call has failed"] + DispatchFailed { + tank_id: ::subxt::utils::AccountId32, + caller: ::subxt::utils::AccountId32, + error: runtime_types::sp_runtime::DispatchError, + }, + #[codec(index = 13)] + #[doc = "The consumption for an account was set for a rule set on a [`FuelTank`]"] + ConsumptionSet { + tank_id: ::subxt::utils::AccountId32, + user_id: ::core::option::Option<::subxt::utils::AccountId32>, + rule_set_id: ::core::primitive::u32, + consumption: runtime_types::pallet_fuel_tanks::types::Consumption< + ::core::primitive::u128, + ::core::primitive::u32, + >, + }, + } + } + pub mod rules { + use super::runtime_types; + pub mod max_fuel_burn_per_tx { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MaxFuelBurnPerTransactionRule<_0>(pub _0); + } + pub mod permitted_calls { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PermittedCallsRule<_0, _1>( + pub runtime_types::bounded_collections::bounded_btree_set::BoundedBTreeSet< + _0, + >, + #[codec(skip)] pub ::core::marker::PhantomData<_1>, + ); + } + pub mod permitted_extrinsics { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PermittedExtrinsicsDescriptor<_0, _1>( + pub runtime_types::bounded_collections::bounded_vec::BoundedVec<_0>, + #[codec(skip)] pub ::core::marker::PhantomData<_1>, + ); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PermittedExtrinsicsRule<_0, _1>( + pub runtime_types::bounded_collections::bounded_vec::BoundedVec<_0>, + #[codec(skip)] pub ::core::marker::PhantomData<_1>, + ); + } + pub mod require_token { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RequireTokenRule<_0, _1> { + pub collection_id: _0, + pub token_id: _1, + } + } + pub mod tank_fuel_budget { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct TankFuelBudgetRule<_0, _1> { + pub budget: runtime_types::pallet_fuel_tanks::types::Budget<_0, _1>, + pub consumption: + runtime_types::pallet_fuel_tanks::types::Consumption<_0, _1>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct TankFuelBudgetRuleDescriptor<_0>(pub _0); + } + pub mod user_fuel_budget { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UserFuelBudgetRule<_0> { + pub budget: _0, + #[codec(compact)] + pub user_count: ::core::primitive::u32, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UserFuelBudgetRuleDescriptor<_0>(pub _0); + } + pub mod whitelisted_callers { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct WhitelistedCallersRule<_0, _1>( + pub runtime_types::bounded_collections::bounded_btree_set::BoundedBTreeSet< + _0, + >, + #[codec(skip)] pub ::core::marker::PhantomData<_1>, + ); + } + pub mod whitelisted_collections { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct WhitelistedCollectionsRule<_0, _1>( + pub runtime_types::bounded_collections::bounded_btree_set::BoundedBTreeSet< + _0, + >, + #[codec(skip)] pub ::core::marker::PhantomData<_1>, + ); + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum AccountRuleDescriptor { + # [codec (index = 0)] WhitelistedCallers (runtime_types :: pallet_fuel_tanks :: rules :: whitelisted_callers :: WhitelistedCallersRule < :: subxt :: utils :: AccountId32 , runtime_types :: enjin_runtime :: MaxWhitelistedCallers > ,) , # [codec (index = 1)] RequireToken (runtime_types :: pallet_fuel_tanks :: rules :: require_token :: RequireTokenRule < :: core :: primitive :: u128 , :: core :: primitive :: u128 > ,) , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum AccountRuleKind { + #[codec(index = 0)] + WhitelistedCallers, + #[codec(index = 1)] + RequireToken, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum AccountRuleWrapper { + # [codec (index = 0)] WhitelistedCallers (runtime_types :: pallet_fuel_tanks :: rules :: whitelisted_callers :: WhitelistedCallersRule < :: subxt :: utils :: AccountId32 , runtime_types :: enjin_runtime :: MaxWhitelistedCallers > ,) , # [codec (index = 1)] RequireToken (runtime_types :: pallet_fuel_tanks :: rules :: require_token :: RequireTokenRule < :: core :: primitive :: u128 , :: core :: primitive :: u128 > ,) , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum DispatchRuleDescriptor { + # [codec (index = 0)] WhitelistedCallers (runtime_types :: pallet_fuel_tanks :: rules :: whitelisted_callers :: WhitelistedCallersRule < :: subxt :: utils :: AccountId32 , runtime_types :: enjin_runtime :: MaxWhitelistedCallers > ,) , # [codec (index = 1)] WhitelistedCollections (runtime_types :: pallet_fuel_tanks :: rules :: whitelisted_collections :: WhitelistedCollectionsRule < :: core :: primitive :: u128 , runtime_types :: enjin_runtime :: MaxCollectionIds > ,) , # [codec (index = 2)] MaxFuelBurnPerTransaction (runtime_types :: pallet_fuel_tanks :: rules :: max_fuel_burn_per_tx :: MaxFuelBurnPerTransactionRule < :: core :: primitive :: u128 > ,) , # [codec (index = 3)] UserFuelBudget (runtime_types :: pallet_fuel_tanks :: rules :: user_fuel_budget :: UserFuelBudgetRuleDescriptor < runtime_types :: pallet_fuel_tanks :: types :: Budget < :: core :: primitive :: u128 , :: core :: primitive :: u32 > > ,) , # [codec (index = 4)] TankFuelBudget (runtime_types :: pallet_fuel_tanks :: rules :: tank_fuel_budget :: TankFuelBudgetRuleDescriptor < runtime_types :: pallet_fuel_tanks :: types :: Budget < :: core :: primitive :: u128 , :: core :: primitive :: u32 > > ,) , # [codec (index = 5)] RequireToken (runtime_types :: pallet_fuel_tanks :: rules :: require_token :: RequireTokenRule < :: core :: primitive :: u128 , :: core :: primitive :: u128 > ,) , # [codec (index = 6)] PermittedCalls (runtime_types :: pallet_fuel_tanks :: rules :: permitted_calls :: PermittedCallsRule < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: enjin_runtime :: MaxCallFilters > ,) , # [codec (index = 7)] PermittedExtrinsics (runtime_types :: pallet_fuel_tanks :: rules :: permitted_extrinsics :: PermittedExtrinsicsDescriptor < runtime_types :: enjin_runtime :: RuntimeCall , runtime_types :: enjin_runtime :: MaxPermittedExtrinsicLength > ,) , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum DispatchRuleKind { + #[codec(index = 0)] + WhitelistedCallers, + #[codec(index = 1)] + WhitelistedCollections, + #[codec(index = 2)] + MaxFuelBurnPerTransaction, + #[codec(index = 3)] + UserFuelBudget, + #[codec(index = 4)] + TankFuelBudget, + #[codec(index = 5)] + RequireToken, + #[codec(index = 6)] + PermittedCalls, + #[codec(index = 7)] + PermittedExtrinsics, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum DispatchRuleWrapper { + # [codec (index = 0)] WhitelistedCallers (runtime_types :: pallet_fuel_tanks :: rules :: whitelisted_callers :: WhitelistedCallersRule < :: subxt :: utils :: AccountId32 , runtime_types :: enjin_runtime :: MaxWhitelistedCallers > ,) , # [codec (index = 1)] WhitelistedCollections (runtime_types :: pallet_fuel_tanks :: rules :: whitelisted_collections :: WhitelistedCollectionsRule < :: core :: primitive :: u128 , runtime_types :: enjin_runtime :: MaxCollectionIds > ,) , # [codec (index = 2)] MaxFuelBurnPerTransaction (runtime_types :: pallet_fuel_tanks :: rules :: max_fuel_burn_per_tx :: MaxFuelBurnPerTransactionRule < :: core :: primitive :: u128 > ,) , # [codec (index = 3)] UserFuelBudget (runtime_types :: pallet_fuel_tanks :: rules :: user_fuel_budget :: UserFuelBudgetRule < runtime_types :: pallet_fuel_tanks :: types :: Budget < :: core :: primitive :: u128 , :: core :: primitive :: u32 > > ,) , # [codec (index = 4)] TankFuelBudget (runtime_types :: pallet_fuel_tanks :: rules :: tank_fuel_budget :: TankFuelBudgetRule < :: core :: primitive :: u128 , :: core :: primitive :: u32 > ,) , # [codec (index = 5)] RequireToken (runtime_types :: pallet_fuel_tanks :: rules :: require_token :: RequireTokenRule < :: core :: primitive :: u128 , :: core :: primitive :: u128 > ,) , # [codec (index = 6)] PermittedCalls (runtime_types :: pallet_fuel_tanks :: rules :: permitted_calls :: PermittedCallsRule < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: enjin_runtime :: MaxCallFilters > ,) , # [codec (index = 7)] PermittedExtrinsics (runtime_types :: pallet_fuel_tanks :: rules :: permitted_extrinsics :: PermittedExtrinsicsRule < runtime_types :: pallet_fuel_tanks :: types :: ExtrinsicInfo < runtime_types :: enjin_runtime :: MaxExtrinsicNameLength > , runtime_types :: enjin_runtime :: MaxPermittedExtrinsicLength > ,) , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RuleSet<_0, _1> { + pub rules: + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleKind, + _0, + >, + pub is_frozen: ::core::primitive::bool, + #[codec(skip)] + pub __subxt_unused_type_params: ::core::marker::PhantomData<_1>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RuleSetDescriptor<_0, _1>( + pub runtime_types::bounded_collections::bounded_vec::BoundedVec<_0>, + #[codec(skip)] pub ::core::marker::PhantomData<_1>, + ); + } + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Budget<_0, _1> { + #[codec(compact)] + pub amount: _0, + pub reset_period: _1, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Consumption<_0, _1> { + #[codec(compact)] + pub total_consumed: _0, + pub last_reset_block: ::core::option::Option<_1>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DispatchSettings { + pub use_none_origin: ::core::primitive::bool, + pub pays_remaining_fee: ::core::primitive::bool, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ExtrinsicInfo<_0> { + pub pallet_name: runtime_types::ep_core::frame::types::BoundedString<_0>, + pub extrinsic_name: runtime_types::ep_core::frame::types::BoundedString<_0>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct FreezeQueueItem<_0, _1> { + pub tank_id: _0, + pub rule_set_id: ::core::option::Option<_1>, + pub is_frozen: ::core::primitive::bool, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct FuelTank<_0, _1, _2, _3, _4> { + pub owner: _1, + pub name: _0, + pub rule_sets: _3, + #[codec(compact)] + pub total_reserved: _2, + #[codec(compact)] + pub account_count: ::core::primitive::u32, + pub user_account_management: ::core::option::Option< + runtime_types::pallet_fuel_tanks::types::UserAccountManagement, + >, + pub is_frozen: ::core::primitive::bool, + pub provides_deposit: ::core::primitive::bool, + pub account_rules: _4, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct FuelTankDescriptor<_0, _1, _2> { + pub name: _0, + pub user_account_management: ::core::option::Option< + runtime_types::pallet_fuel_tanks::types::UserAccountManagement, + >, + pub rule_sets: _1, + pub provides_deposit: ::core::primitive::bool, + pub account_rules: _2, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UserAccount<_0, _1, _2, _3, _4> { + #[codec(compact)] + pub tank_deposit: _0, + #[codec(compact)] + pub user_deposit: _0, + pub rule_data_sets: + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + _1, + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + runtime_types::pallet_fuel_tanks::rules::DispatchRuleKind, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + >, + #[codec(skip)] + pub __subxt_unused_type_params: ::core::marker::PhantomData<(_3, _2, _4)>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UserAccountManagement { + pub tank_reserves_existential_deposit: ::core::primitive::bool, + pub tank_reserves_account_creation_deposit: ::core::primitive::bool, + } + } + } + pub mod pallet_grandpa { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_consensus_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_consensus_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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_consensus_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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct StoredPendingChange<_0> { + pub scheduled_at: _0, + pub delay: _0, + pub next_authorities: + runtime_types::bounded_collections::weak_bounded_vec::WeakBoundedVec<( + runtime_types::sp_consensus_grandpa::app::Public, + ::core::primitive::u64, + )>, + pub forced: ::core::option::Option<_0>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "## Complexity"] + #[doc = "- `O(R)` where `R` registrar-count (governance-bounded and code-bounded)."] + add_registrar { + account: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + }, + #[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 = "## Complexity"] + #[doc = "- `O(X + X' + R)`"] + #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)"] + #[doc = " - where `R` judgements-count (registrar-count-bounded)"] + set_identity { + info: + ::std::boxed::Box, + }, + #[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 = "## Complexity"] + #[doc = "- `O(P + S)`"] + #[doc = " - where `P` old-subs-count (hard- and deposit-bounded)."] + #[doc = " - where `S` subs-count (hard- and deposit-bounded)."] + 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 = "## Complexity"] + #[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)."] + 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 = "## Complexity"] + #[doc = "- `O(R + X)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)."] + 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 = "## Complexity"] + #[doc = "- `O(R + X)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)."] + 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 = "## Complexity"] + #[doc = "- `O(R)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + 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 = "## Complexity"] + #[doc = "- `O(R)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + set_account_id { + #[codec(compact)] + index: ::core::primitive::u32, + new: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + }, + #[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 = "## Complexity"] + #[doc = "- `O(R)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + 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 = "## Complexity"] + #[doc = "- `O(R + X)`."] + #[doc = " - where `R` registrar-count (governance-bounded)."] + #[doc = " - where `X` additional-field-count (deposit-bounded and code-bounded)."] + provide_judgement { + #[codec(compact)] + reg_index: ::core::primitive::u32, + target: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + 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 = "## Complexity"] + #[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)."] + kill_identity { + target: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + }, + #[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, ()>, + 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, ()>, + 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, ()>, + }, + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BitFlags<_0>( + pub ::core::primitive::u64, + #[codec(skip)] pub ::core::marker::PhantomData<_0>, + ); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct IdentityInfo { + pub additional: runtime_types::bounded_collections::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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Registration<_0> { + pub judgements: runtime_types::bounded_collections::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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "## Complexity:"] + #[doc = "- `O(K + E)` where K is length of `Keys` (heartbeat.validators_len) and E is length of"] + #[doc = " `heartbeat.network_state.external_address`"] + #[doc = " - `O(K)`: decoding of length `K`"] + #[doc = " - `O(E)`: decoding/encoding of length `E`"] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Public(pub runtime_types::sp_core::sr25519::Public); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Signature(pub runtime_types::sp_core::sr25519::Signature); + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BoundedOpaqueNetworkState { + pub peer_id: runtime_types::bounded_collections::weak_bounded_vec::WeakBoundedVec< + ::core::primitive::u8, + >, + pub external_addresses: + runtime_types::bounded_collections::weak_bounded_vec::WeakBoundedVec< + runtime_types::bounded_collections::weak_bounded_vec::WeakBoundedVec< + ::core::primitive::u8, + >, + >, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Heartbeat<_0> { + pub block_number: _0, + pub network_state: runtime_types::sp_core::offchain::OpaqueNetworkState, + pub session_index: ::core::primitive::u32, + pub authority_index: ::core::primitive::u32, + pub validators_len: ::core::primitive::u32, + } + } + pub mod pallet_marketplace { + use super::runtime_types; + pub mod features { + use super::runtime_types; + pub mod auction { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AuctionData<_0> { + #[codec(compact)] + pub start_block: _0, + #[codec(compact)] + pub end_block: _0, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AuctionState<_0, _1> { + pub high_bid: ::core::option::Option< + runtime_types::pallet_marketplace::features::auction::Bid<_0, _1>, + >, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Bid<_0, _1> { + pub bidder: _0, + #[codec(compact)] + pub price: _1, + } + } + pub mod listing { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum FeeSide { + #[codec(index = 0)] + NoFee, + #[codec(index = 1)] + Make, + #[codec(index = 2)] + Take, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Listing<_0, _1, _2, _3, _4, _5, _6> { + pub seller: _2, + pub make_asset_id: runtime_types::ep_multi_tokens::token::AssetId<_0, _0>, + pub take_asset_id: runtime_types::ep_multi_tokens::token::AssetId<_0, _0>, + #[codec(compact)] + pub amount: _0, + #[codec(compact)] + pub price: _0, + #[codec(compact)] + pub min_take_value: _0, + pub fee_side: runtime_types::pallet_marketplace::features::listing::FeeSide, + #[codec(compact)] + pub creation_block: _5, + #[codec(compact)] + pub deposit: _0, + pub salt: _6, + pub data: + runtime_types::pallet_marketplace::features::listing::ListingData<_5>, + pub state: + runtime_types::pallet_marketplace::features::listing::ListingState< + _2, + _0, + >, + #[codec(skip)] + pub __subxt_unused_type_params: ::core::marker::PhantomData<(_4, _3, _1)>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum ListingData<_0> { + #[codec(index = 0)] + FixedPrice, + #[codec(index = 1)] + Auction( + runtime_types::pallet_marketplace::features::auction::AuctionData<_0>, + ), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum ListingState<_0, _1> { + #[codec(index = 0)] + FixedPrice { + #[codec(compact)] + amount_filled: _1, + }, + #[codec(index = 1)] + Auction( + runtime_types::pallet_marketplace::features::auction::AuctionState< + _0, + _1, + >, + ), + } + } + } + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Places a sell order. Requires `make_asset_id` or `take_asset_id` to be a currency."] + #[doc = "The id for the listing is generated by hashing the encoded bytes of the listing."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "- `make_asset_id`: The id of the asset being sold"] + #[doc = "- `take_asset_id`: The id of the asset being requested"] + #[doc = "- `amount`: The number of units being sold"] + #[doc = "- `price`: The requested price for each unit. If it's an auction, this is the minimum"] + #[doc = " bid"] + #[doc = "- `salt`: Can be used to differentiate listings"] + #[doc = "- `auction_data`: Including this makes the listing an auction"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::InvalidAuctionStart`] if the start is less than the current block +"] + #[doc = " `T::ListingActiveDelay`"] + #[doc = "- [`Error::NoCurrency`] Neither the make or take side is considered a currency"] + #[doc = "- [`Error::ListingForbidden`] if make or take side tokens are not allowed to be listed"] + #[doc = "- [`Error::CurrencyNotAllowedAsRoyalty`] if currency cannot be used as a royalty"] + #[doc = "- [`Error::LowBaseCurrencyBalance`] if base currency balance is too low"] + #[doc = "- [`Error::LowTokenBalance`] token balance is too low for reserve"] + #[doc = "- [`Error::ListingAlreadyExists`] if a listing with the same ID already exists"] + create_listing { + make_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + take_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + #[codec(compact)] + amount: ::core::primitive::u128, + #[codec(compact)] + price: ::core::primitive::u128, + salt: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + auction_data: ::core::option::Option< + runtime_types::pallet_marketplace::features::auction::AuctionData< + ::core::primitive::u32, + >, + >, + }, + #[codec(index = 1)] + #[doc = "Cancels the listing with `listing_id`. Only callable by the seller."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "- `listing_id`: The ID of the listing to cancel"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::ListingNotFound`] if the listing under `listing_id` does not exist"] + #[doc = "- [`Error::NoPermission`] if the listing seller is not the caller, `origin`"] + cancel_listing { listing_id: ::subxt::utils::H256 }, + #[codec(index = 2)] + #[doc = "Fills a fixed price listing. This will execute immediately."] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "- `listing_id`: The id for the listing to buy from"] + #[doc = "- `amount`: The number of units purchased"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::ListingNotFound`] if the listing under `listing_id` does not exist"] + #[doc = "- [`Error::BuyerIsSeller`] if the buyer is the seller of the listing"] + #[doc = "- [`Error::ListingIsWrongType`] if the listing is not under auction"] + #[doc = "- [`Error::InvalidAmount`] if the amount that still needs to be filled is greater than"] + #[doc = " `amount`"] + #[doc = "- [`Error::ListingNotActive`] if the listing has not passed the `ListingActiveDelay` yet"] + #[doc = "- [`Error::TakeValueUnderMinimum`] if the listings `take` value is under the minimum"] + #[doc = " required"] + #[doc = "- [`Error::LowTokenBalance`] if the buyer does not have enough tokens for reserve"] + fill_listing { + listing_id: ::subxt::utils::H256, + #[codec(compact)] + amount: ::core::primitive::u128, + }, + #[codec(index = 3)] + #[doc = "Places a bid on a listing. The listing must be an auction, and it must be currently"] + #[doc = "active."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "- `listing_id`: The id for the listing to buy from"] + #[doc = "- `price`: The price for a single unit"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::ListingNotFound`] if listing under `listing_id` does not exist"] + #[doc = "- [`Error::BuyerIsSeller`] if the bidder is the seller of the listing"] + #[doc = "- [`Error::InactiveAuction`] if listing operates outside of specified start and end"] + #[doc = " block"] + #[doc = "- [`Error::InvalidPrice`] if price is less than minimum_price for a bid"] + place_bid { + listing_id: ::subxt::utils::H256, + #[codec(compact)] + price: ::core::primitive::u128, + }, + #[codec(index = 4)] + #[doc = "Finalize the auction with id: `listing_id`. This will end the auction and transfer"] + #[doc = "funds. It fails if the auction is not over."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "- `listing_id`: The ID for the listing to finalize"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "- [`Error::ListingNotFound`] if listing under `listing_id` does not exist"] + #[doc = "- [`Error::ListingIsWrongType`] if listing is not an auction"] + #[doc = "- [`Error::AuctionNotOver`] if the auction has not finished yet"] + #[doc = "- [`Error::TakeValueUnderMinimum`] if the take value is less than the minimum required"] + finalize_auction { listing_id: ::subxt::utils::H256 }, + #[codec(index = 5)] + #[doc = "Change the protocol fee to `protocol_fee`. Fails if `origin` is invalid."] + #[doc = ""] + #[doc = "#Parameters"] + #[doc = ""] + #[doc = "- `protocol_fee`: Percentage of fee to set"] + set_protocol_fee { + protocol_fee: runtime_types::sp_arithmetic::per_things::Perbill, + }, + #[codec(index = 6)] + #[doc = "Force create a listing. This is only callable by the [`Config::ForceOrigin`]."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = ""] + #[doc = "Mostly the same as [`Self::create_listing`], but `deposit_backer` can be included to pay"] + #[doc = "a deposit if `seller` does not have enough."] + #[doc = ""] + #[doc = "# Errors"] + #[doc = ""] + #[doc = "Same as [`Self::create_listing`], except `BadOrigin` if the origin is not"] + #[doc = "[`Config::ForceOrigin`]"] + force_create_listing { + seller: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + make_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + take_asset_id: runtime_types::ep_multi_tokens::token::AssetId< + ::core::primitive::u128, + ::core::primitive::u128, + >, + #[codec(compact)] + amount: ::core::primitive::u128, + #[codec(compact)] + price: ::core::primitive::u128, + salt: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + auction_data: ::core::option::Option< + runtime_types::pallet_marketplace::features::auction::AuctionData< + ::core::primitive::u32, + >, + >, + deposit_backer: ::core::option::Option< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + }, + #[codec(index = 7)] + #[doc = "Same as [create_listing](Self::place_bid), but allows specifying the `bidder` and can"] + #[doc = "place a bid in an inactive auction. Only callable by [`Config::ForceOrigin`]. If"] + #[doc = "`funds_backer` is `Some`, it will transfer balance if `bidder` does not have enough."] + force_place_bid { + bidder: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + listing_id: ::subxt::utils::H256, + #[codec(compact)] + price: ::core::primitive::u128, + funds_backer: ::core::option::Option< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The error for this pallet"] + pub enum Error { + #[codec(index = 0)] + #[doc = "the order cannot be filled"] + UnableToFill, + #[codec(index = 1)] + #[doc = "The listing does not exist"] + ListingNotFound, + #[codec(index = 2)] + #[doc = "The caller does not have permission for this operation"] + NoPermission, + #[codec(index = 3)] + #[doc = "The max rounding error was exceeded"] + MaxRoundingErrorExceeded, + #[codec(index = 4)] + #[doc = "The base currency balance is too low"] + LowBaseCurrencyBalance, + #[codec(index = 5)] + #[doc = "The token balance is too low"] + LowTokenBalance, + #[codec(index = 6)] + #[doc = "Transfer params could not be created"] + TransferParamCreationFailed, + #[codec(index = 7)] + #[doc = "The take value is under the minimum requirement"] + TakeValueUnderMinimum, + #[codec(index = 8)] + #[doc = "A listing with this id already exists"] + ListingAlreadyExists, + #[codec(index = 9)] + #[doc = "The start time of the auction must be greater than the current block plus the"] + #[doc = "minimum requirement"] + InvalidAuctionStart, + #[codec(index = 10)] + #[doc = "The end time of the auction must be after the start"] + InvalidAuctionEnd, + #[codec(index = 11)] + #[doc = "Cannot bid on an auction that has not started or is over"] + InactiveAuction, + #[codec(index = 12)] + #[doc = "Cannot finalize an auction that is not over"] + AuctionNotOver, + #[codec(index = 13)] + #[doc = "An action was taken that is not compatible with the listing's type."] + ListingIsWrongType, + #[codec(index = 14)] + #[doc = "The amount is invalid"] + InvalidAmount, + #[codec(index = 15)] + #[doc = "The price is invalid"] + InvalidPrice, + #[codec(index = 16)] + #[doc = "Listing is forbidden for this token"] + ListingForbidden, + #[codec(index = 17)] + #[doc = "Neither the make side or the take side of the listing is considered a currency"] + NoCurrency, + #[codec(index = 18)] + #[doc = "The listing has not crossed the mandatory delay before its considered active"] + ListingNotActive, + #[codec(index = 19)] + #[doc = "The currency is not allowed to be used as a royalty payment"] + CurrencyNotAllowedAsRoyalty, + #[codec(index = 20)] + #[doc = "The seller is not allowed to buy their own listing"] + BuyerIsSeller, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The Event for this pallet"] + pub enum Event { + #[codec(index = 0)] + #[doc = "A listing was created"] + ListingCreated { + listing_id: ::subxt::utils::H256, + listing: runtime_types::pallet_marketplace::features::listing::Listing< + ::core::primitive::u128, + ::core::primitive::u128, + ::subxt::utils::AccountId32, + ::core::primitive::u128, + ::core::primitive::u128, + ::core::primitive::u32, + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + >, + }, + #[codec(index = 1)] + #[doc = "A listing was cancelled"] + ListingCancelled { listing_id: ::subxt::utils::H256 }, + #[codec(index = 2)] + #[doc = "A listing was filled or partially filled"] + ListingFilled { + listing_id: ::subxt::utils::H256, + buyer: ::subxt::utils::AccountId32, + amount_filled: ::core::primitive::u128, + amount_remaining: ::core::primitive::u128, + protocol_fee: ::core::primitive::u128, + royalty: ::core::primitive::u128, + }, + #[codec(index = 3)] + #[doc = "A bid was placed"] + BidPlaced { + listing_id: ::subxt::utils::H256, + bid: runtime_types::pallet_marketplace::features::auction::Bid< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + }, + #[codec(index = 4)] + #[doc = "An auction was finalized"] + AuctionFinalized { + listing_id: ::subxt::utils::H256, + winning_bid: ::core::option::Option< + runtime_types::pallet_marketplace::features::auction::Bid< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + >, + protocol_fee: ::core::primitive::u128, + royalty: ::core::primitive::u128, + }, + #[codec(index = 5)] + #[doc = "Protocol fee was set"] + ProtocolFeeSet { + protocol_fee: runtime_types::sp_arithmetic::per_things::Perbill, + }, + } + } + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MarketPlaceInfo { + #[codec(compact)] + pub protocol_fee: runtime_types::sp_arithmetic::per_things::Perbill, + } + } + } + pub mod pallet_message_queue { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin , page_index : :: core :: primitive :: u32 , } , # [codec (index = 1)] # [doc = "Execute an overweight message."] # [doc = ""] # [doc = "Temporary processing errors will be propagated whereas permanent errors are treated"] # [doc = "as success condition."] # [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 :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin , 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + #[codec(index = 6)] + #[doc = "This message is temporarily unprocessable."] + #[doc = ""] + #[doc = "Such errors are expected, but not guaranteed, to resolve themselves eventually through"] + #[doc = "retrying."] + TemporarilyUnprocessable, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 error in the `MessageProcessor` (usually a format error)."] ProcessingFailed { id : [:: core :: primitive :: u8 ; 32usize] , origin : runtime_types :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin , error : runtime_types :: frame_support :: traits :: messages :: ProcessMessageError , } , # [codec (index = 1)] # [doc = "Message is processed."] Processed { id : [:: core :: primitive :: u8 ; 32usize] , origin : runtime_types :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin , weight_used : runtime_types :: sp_weights :: weight_v2 :: Weight , success : :: core :: primitive :: bool , } , # [codec (index = 2)] # [doc = "Message placed in overweight queue."] OverweightEnqueued { id : [:: core :: primitive :: u8 ; 32usize] , origin : runtime_types :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin , page_index : :: core :: primitive :: u32 , message_index : :: core :: primitive :: u32 , } , # [codec (index = 3)] # [doc = "This page was reaped."] PageReaped { origin : runtime_types :: polkadot_runtime_parachains :: inclusion :: AggregateMessageOrigin , index : :: core :: primitive :: u32 , } , } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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>, + pub message_count: ::core::primitive::u64, + pub size: ::core::primitive::u64, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Neighbours<_0> { + pub prev: _0, + pub next: _0, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + } + } + pub mod pallet_multi_tokens { + use super::runtime_types; + pub mod features { + use super::runtime_types; + pub mod claim { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AssetIdWithEth<_0, _1> { + pub ethereum_collection_id: _0, + pub collection_id: _0, + pub token_id: _1, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CollectionIdPair<_0> { + pub ethereum: _0, + pub native: _0, + } + } + pub mod collection { + use super::runtime_types; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CollectionAccount < _0 , _1 , _2 > { pub is_frozen : :: core :: primitive :: bool , pub approvals : runtime_types :: bounded_collections :: bounded_btree_map :: BoundedBTreeMap < _0 , _1 > , # [codec (compact)] pub account_count : :: core :: primitive :: u32 , # [codec (skip)] pub __subxt_unused_type_params : :: core :: marker :: PhantomData < _2 > } + } + } + pub mod ethereum { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RangeInclusive<_0> { + #[codec(compact)] + pub start: _0, + #[codec(compact)] + pub end: _0, + } + } + pub mod operator { + use super::runtime_types; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Approval<_0, _1> { + #[codec(compact)] + pub amount: _0, + pub expiration: _1, + } + } + } + pub mod token { + use super::runtime_types; + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct TokenAccount < _0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 > { # [codec (compact)] pub balance : _1 , # [codec (compact)] pub reserved_balance : _1 , # [codec (compact)] pub locked_balance : _1 , pub named_reserves : runtime_types :: bounded_collections :: bounded_btree_map :: BoundedBTreeMap < _4 , _1 > , pub locks : runtime_types :: bounded_collections :: bounded_btree_map :: BoundedBTreeMap < _4 , _1 > , pub approvals : runtime_types :: bounded_collections :: bounded_btree_map :: BoundedBTreeMap < _0 , _2 > , pub is_frozen : :: core :: primitive :: bool , # [codec (skip)] pub __subxt_unused_type_params : :: core :: marker :: PhantomData < (_5 , _3 , _6 , _7) > } + } + } + } + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + # [codec (index = 0)] # [doc = "Creates a new [`Collection`](ep_multi_tokens::Collection) from `descriptor`"] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "- [`Error::DepositReserveFailed`] if the deposit cannot be reserved"] create_collection { descriptor : :: std :: boxed :: Box < runtime_types :: ep_multi_tokens :: collection :: DefaultCollectionDescriptor < :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: AttributeKeyValuePair < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > > > > > , } , # [codec (index = 1)] # [doc = "Destroys [`Collection`](ep_multi_tokens::Collection) with `id`. `origin` must be the"] # [doc = "owner of the [`Collection`](ep_multi_tokens::Collection)."] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "- [`Error::NoPermission`] if `origin` is not the owner of the collection."] # [doc = "- [`Error::CollectionNotFound`] if `Collection` with `id` does not exist."] # [doc = "- [`Error::DestroyForbiddenByCollectionEvent`] if another pallet is blocking the"] # [doc = " collection's destruction"] # [doc = "- [`Error::DestroyForbiddenByRemainingTokens`] if collection still has tokens when"] # [doc = " destroying"] # [doc = "- [`Error::DestroyForbiddenByAttributeCount`] if collection still has attributes when"] # [doc = " destroying"] # [doc = "current number of collection attributes."] destroy_collection { # [codec (compact)] collection_id : :: core :: primitive :: u128 , } , # [codec (index = 2)] # [doc = "Modify [`Collection`](ep_multi_tokens::Collection) with `id` by applying `mutation`"] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "- [`Error::CollectionNotFound`] if `collection_id` does not exist."] # [doc = "- [`Error::NoPermission`] if `origin` is not the owner of `collection`."] mutate_collection { # [codec (compact)] collection_id : :: core :: primitive :: u128 , mutation : :: std :: boxed :: Box < runtime_types :: ep_multi_tokens :: collection :: DefaultCollectionMutation < :: subxt :: utils :: AccountId32 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > > > > , } , # [codec (index = 3)] # [doc = "Modify [`Token`](ep_multi_tokens::Token) with `token_id` from"] # [doc = "[`Collection`](ep_multi_tokens::Collection) with `collection_id` by applying `mutation`"] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "- [`Error::CurrencyIncompatibleWithCollectionRoyalty`] if token has already been"] # [doc = " assigned a royalty"] # [doc = "- [`Error::NoPermission`] if not the collection owner"] # [doc = "- [`Error::TokenNotFound`] if Token does not exist"] # [doc = "- [`Error::ConflictingLocation`] if the new location is already occupied"] mutate_token { # [codec (compact)] collection_id : :: core :: primitive :: u128 , # [codec (compact)] token_id : :: core :: primitive :: u128 , mutation : :: std :: boxed :: Box < runtime_types :: ep_multi_tokens :: token :: DefaultTokenMutation < runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: ep_multi_tokens :: frame :: DefaultTokenMetadata < runtime_types :: ep_multi_tokens :: frame :: DefaultForeignTokenMetadata < :: core :: primitive :: u128 , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenNameLength > , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenSymbolLength > , runtime_types :: xcm :: v3 :: multilocation :: MultiLocation > > > > , } , # [codec (index = 4)] # [doc = "`origin` mints to `recipient` for `collection_id` with `params` using the pallet's"] # [doc = "[`MintPolicy`](traits::CollectionPolicy::Mint)."] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "- [`Error::AmountZero`] if `amount == 0`."] # [doc = "- [`Error::CollectionNotFound`] if `Collection` does not exist."] # [doc = "- [`Error::TokenNotFound`] if `Token` does not exist."] # [doc = "- [`Error::TokenAlreadyExists`] if attempting to create a token that already exists"] # [doc = "- [`Error::NoPermission`] if `caller` is not allowed to mint the `collection`."] # [doc = "- [`Error::TokenMintCapExceeded`] if the mint policy TokenCap does not allow minting"] # [doc = "- `MaxTokenCountExceeded` if the mint policy max_token_count is exceeded"] # [doc = "- [`Error::DepositReserveFailed`] if the issuer does not have sufficient balance for"] # [doc = " token deposit"] # [doc = "- [`Error::ConflictingLocation`] if the token is foreign and the location is already"] # [doc = " mapped to another asset in `AssetIdsByLocation`"] mint { recipient : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > , # [codec (compact)] collection_id : :: core :: primitive :: u128 , params : :: std :: boxed :: Box < runtime_types :: ep_multi_tokens :: policy :: mint :: DefaultMintParams < :: core :: primitive :: u128 , :: core :: primitive :: u128 , :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: AttributeKeyValuePair < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > > > , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenNameLength > , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenSymbolLength > , runtime_types :: xcm :: v3 :: multilocation :: MultiLocation > > , } , # [codec (index = 5)] # [doc = "Reduces the balance of `owner` by `amount` of `token_id` from `collection_id`."] # [doc = "It also updates the total supply of `collection_id`."] # [doc = ""] # [doc = "# Errors"] # [doc = "- [`Error::CollectionNotFound`] if `collection` does not exist."] # [doc = "- [`Error::BalanceLow`] if `owner` account does not has enough amount of any token in"] # [doc = " `tokens` of `collection`."] # [doc = "- [`Error::DepositUnreserveFailed`] if caller does not have enough reserved balance to"] # [doc = " unreserve"] # [doc = "- [`Error::DestroyForbiddenByAttributeCount`] if removing token from storage but the"] # [doc = " attribute count is greater than zero"] burn { # [codec (compact)] collection_id : :: core :: primitive :: u128 , params : runtime_types :: ep_multi_tokens :: policy :: burn :: DefaultBurnParams < :: core :: primitive :: u128 , :: core :: primitive :: u128 > , } , # [codec (index = 6)] # [doc = "`operator` transfers to `recipient` for `collection_id` with `params`"] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "- [`Error::AmountZero`] if `amount == 0`."] # [doc = "- [`Error::BalanceLow`] if `source` does not own enough amount of `collection`."] transfer { recipient : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > , # [codec (compact)] collection_id : :: core :: primitive :: u128 , params : runtime_types :: ep_multi_tokens :: policy :: transfer :: DefaultTransferParams < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , :: core :: primitive :: u128 > , } , # [codec (index = 7)] # [doc = "Freeze collection, token or account"] freeze { info : runtime_types :: ep_multi_tokens :: types :: Freeze < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , :: core :: primitive :: u128 > , } , # [codec (index = 8)] # [doc = "Thaw collection, token or account"] thaw { info : runtime_types :: ep_multi_tokens :: types :: Freeze < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , :: core :: primitive :: u128 > , } , # [codec (index = 9)] # [doc = "Sets the attribute `key` to `value` for `collection_id`."] # [doc = "If `token_id` is [`None`], the attribute is added to the collection. If it is [`Some`],"] # [doc = "the attribute is added to the token."] # [doc = ""] # [doc = "# Errors"] # [doc = "- [`Error::InvalidAttributeKey`] if `key.len() == 0`"] # [doc = "- [`Error::CollectionNotFound`] if `collection_id` does not exist."] # [doc = "- [`Error::TokenNotFound`] if `token_id` is `Some` and does not exist."] # [doc = "- [`Error::NoPermission`] if `source` account is not the owner of the collection."] # [doc = "- [`Error::DepositReserveFailed`] if unable to reserve the deposit for the attribute"] # [doc = " storage."] set_attribute { # [codec (compact)] collection_id : :: core :: primitive :: u128 , token_id : :: core :: option :: Option < :: core :: primitive :: u128 > , key : runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , value : runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } , # [codec (index = 10)] # [doc = "Removes the `key` attribute from the given `collection_id` or `token_id`."] # [doc = ""] # [doc = "# Errors"] # [doc = "- [`Error::InvalidAttributeKey`] if `key.len() == 0`"] # [doc = "- [`Error::CollectionNotFound`] if `collection_id` does not exist."] # [doc = "- [`Error::TokenNotFound`] if `token_id` is `Some` and does not exist."] # [doc = "- [`Error::NoPermission`] if `caller` is not the owner of the collection."] # [doc = "- `Underflow` if an attribute counter underflows"] remove_attribute { # [codec (compact)] collection_id : :: core :: primitive :: u128 , token_id : :: core :: option :: Option < :: core :: primitive :: u128 > , key : runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } , # [codec (index = 11)] # [doc = "Removes all attributes from the given `collection_id` or `token_id`."] # [doc = ""] # [doc = "# Errors"] # [doc = "- `InvalidAttributeCount` if `attribute_count` doesn't match the number of attributes"] # [doc = "- [`Error::CollectionNotFound`] if Collection with `collection_id` does not exist."] # [doc = "- [`Error::TokenNotFound`] if Token with `token_id` does not exist."] # [doc = "- [`Error::NoPermission`] if `origin` account is not the owner of the Collection or"] # [doc = " Token"] # [doc = "- other errors from `remove_attribute`"] remove_all_attributes { # [codec (compact)] collection_id : :: core :: primitive :: u128 , token_id : :: core :: option :: Option < :: core :: primitive :: u128 > , attribute_count : :: core :: primitive :: u32 , } , # [codec (index = 12)] # [doc = "Transfers the specific amount of tokens of `collection` to `recipients` from `origin`"] # [doc = "account. A single failure will fail all transfers."] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "- [`Error::AmountZero`] if `amount == 0`."] # [doc = "- [`Error::BalanceLow`] if `source` does not own enough amount of `collection`."] batch_transfer { # [codec (compact)] collection_id : :: core :: primitive :: u128 , recipients : runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: Recipient < :: subxt :: utils :: AccountId32 , runtime_types :: ep_multi_tokens :: policy :: transfer :: DefaultTransferParams < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , :: core :: primitive :: u128 > > > , } , # [codec (index = 13)] # [doc = "Collection owner mints tokens of `collection_id` to `recipients` consisting of an"] # [doc = "[`AccountId`](frame_system::Config::AccountId) and [`MintParams`]. A single mint failure"] # [doc = "will fail all of them in the batch."] # [doc = ""] # [doc = "# Errors"] # [doc = "- [`Error::AmountZero`] if `amount == 0`."] # [doc = "- [`Error::CollectionNotFound`] if `collection` does **not** exist."] # [doc = "- [`Error::NoPermission`] if `caller` is not allowed to mint the `collection`."] # [doc = "- [`Error::TokenMintCapExceeded`] if the mint policy TokenCap does not allow minting"] # [doc = "- [`Error::MaxTokenCountExceeded`] if the mint policy max_token_count is exceeded"] # [doc = "- [`Error::DepositReserveFailed`] if the issuer does not have sufficient balance for"] # [doc = " token deposit"] batch_mint { # [codec (compact)] collection_id : :: core :: primitive :: u128 , recipients : runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: Recipient < :: subxt :: utils :: AccountId32 , runtime_types :: ep_multi_tokens :: policy :: mint :: DefaultMintParams < :: core :: primitive :: u128 , :: core :: primitive :: u128 , :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: AttributeKeyValuePair < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > > > , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenNameLength > , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenSymbolLength > , runtime_types :: xcm :: v3 :: multilocation :: MultiLocation > > > , } , # [codec (index = 14)] # [doc = "Collection owner sets `attributes` to `collection_id`"] # [doc = ""] # [doc = "If `token_id` is [`None`], the attribute is added to the collection. If it is [`Some`],"] # [doc = "the attribute is added to the token."] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "- [`Error::InvalidAttributeKey`] if `key.len() == 0`"] # [doc = "- [`Error::CollectionNotFound`] if `collection_id` does not exist."] # [doc = "- [`Error::TokenNotFound`] if `token_id` is `Some` and does not exist."] # [doc = "- [`Error::NoPermission`] if `source` account is not the owner of the collection."] # [doc = "- [`Error::DepositReserveFailed`] if unable to reserve the deposit for the attribute"] # [doc = " storage."] batch_set_attribute { # [codec (compact)] collection_id : :: core :: primitive :: u128 , token_id : :: core :: option :: Option < :: core :: primitive :: u128 > , attributes : runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: AttributeKeyValuePair < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > > > , } , # [codec (index = 15)] # [doc = "Approve the `operator` to manage all of `origin`'s tokens belonging to `collection_id`."] # [doc = "If an `expiration` is provided, the approval will end when it expires."] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "- [`Error::CannotApproveSelf`] if `origin == operator`"] # [doc = "- [`Error::AlreadyExpired`] if `expiration` is earlier than now"] # [doc = "- [`Error::CollectionAccountNotFound`] if the collection account does not exist"] # [doc = "- [`Error::MaxApprovalsExceeded`] if approval count has exceeded the maximum"] approve_collection { # [codec (compact)] collection_id : :: core :: primitive :: u128 , operator : :: subxt :: utils :: AccountId32 , expiration : :: core :: option :: Option < :: core :: primitive :: u32 > , } , # [codec (index = 16)] # [doc = "Unapprove the `operator` to manage all of `origin`'s tokens belonging to `collection`"] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "- [`Error::CollectionAccountNotFound`] if the collection account cannot be found"] unapprove_collection { # [codec (compact)] collection_id : :: core :: primitive :: u128 , operator : :: subxt :: utils :: AccountId32 , } , # [codec (index = 17)] # [doc = "Approve `operator` to transfer up to `amount` of `caller`'s balance for `token_id` of"] # [doc = "`collection_id`. An `expiration` can be provided. `current_amount` must match the"] # [doc = "current approved amount."] # [doc = ""] # [doc = "# Errors"] # [doc = "- [`Error::CannotApproveSelf`] if `origin == operator`"] # [doc = "- [`Error::CollectionAlreadyApproved`] if `collection_id` is already approved"] # [doc = "- [`Error::AlreadyExpired`] if `expiration` is earlier than now"] # [doc = "- [`Error::TokenAccountNotFound`] if the token account does not exist"] # [doc = "- [`Error::MaxApprovalsExceeded`] if approval count has exceeded the maximum"] # [doc = "- [`Error::WrongCurrentApprovedAmount`] if `current_amount` does not match the current"] # [doc = " approval amount"] approve_token { # [codec (compact)] collection_id : :: core :: primitive :: u128 , # [codec (compact)] token_id : :: core :: primitive :: u128 , operator : :: subxt :: utils :: AccountId32 , # [codec (compact)] amount : :: core :: primitive :: u128 , expiration : :: core :: option :: Option < :: core :: primitive :: u32 > , # [codec (compact)] current_amount : :: core :: primitive :: u128 , } , # [codec (index = 18)] # [doc = "Unapprove `operator` to transfer `origin`'s `token_id` of `collection_id`"] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "- [`Error::TokenAccountNotFound`] if the token account does not exist"] unapprove_token { # [codec (compact)] collection_id : :: core :: primitive :: u128 , # [codec (compact)] token_id : :: core :: primitive :: u128 , operator : :: subxt :: utils :: AccountId32 , } , # [codec (index = 32)] # [doc = "Transfers ownership of collections to `destination` if the signature matches."] # [doc = ""] # [doc = "The dispatch origin for this call must be _None_."] # [doc = ""] # [doc = "Unsigned Validation:"] # [doc = "A call to claim is deemed valid if the signature provided matches"] # [doc = "the expected signed message of:"] # [doc = ""] # [doc = "> Ethereum Signed Message:"] # [doc = "> (configured prefix string)(address)"] # [doc = ""] # [doc = "and `address` matches the `destination` account."] # [doc = ""] # [doc = "This will always execute with weight of [`Config::MaxClaimableCollectionsPerAccount`]"] # [doc = "and it will reimburse weight for collections under that number."] # [doc = ""] # [doc = "### Parameters:"] # [doc = "- `destination`: The account that will receive ownership of the collections"] # [doc = "- `ethereum_signature`: The signature of an ethereum signed message matching the format"] # [doc = " described above."] # [doc = "- `ethereum_address` : The Ethereum address from which the message is signed."] claim_collections { destination : :: subxt :: utils :: AccountId32 , ethereum_signature : runtime_types :: sp_core :: ecdsa :: Signature , ethereum_address : :: subxt :: utils :: H160 , } , # [codec (index = 33)] # [doc = "Transfers balances of tokens to `destination` if the signature matches. Mints tokens if"] # [doc = "needed."] # [doc = ""] # [doc = "The dispatch origin for this call must be _None_."] # [doc = ""] # [doc = "Unsigned Validation:"] # [doc = "A call to claim is deemed valid if the signature provided matches"] # [doc = "the expected signed message of:"] # [doc = ""] # [doc = "> Ethereum Signed Message:"] # [doc = "> (configured prefix string)(address)"] # [doc = ""] # [doc = "and `address` matches the `destination` account."] # [doc = ""] # [doc = "This will always execute with weight of [`Config::MaxClaimableTokensPerCall`]"] # [doc = "and it will reimburse weight for tokens under that number."] # [doc = ""] # [doc = "### Parameters:"] # [doc = "- `destination`: The account that will receive token balances"] # [doc = "- `ethereum_signature`: The signature of an ethereum signed message matching the format"] # [doc = " described above."] # [doc = "- `ethereum_address` : The Ethereum address from which the message is signed."] claim_tokens { destination : :: subxt :: utils :: AccountId32 , ethereum_signature : runtime_types :: sp_core :: ecdsa :: Signature , ethereum_address : :: subxt :: utils :: H160 , } , # [codec (index = 19)] # [doc = "Exactly as [`mutate_collection`](Self::mutate_collection), except the origin must be"] # [doc = "root and the `caller` account should be specified."] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "Same as [`mutate_collection`](Self::mutate_collection)"] force_mutate_collection { # [codec (compact)] collection_id : :: core :: primitive :: u128 , mutation : :: std :: boxed :: Box < runtime_types :: ep_multi_tokens :: collection :: DefaultCollectionMutation < :: subxt :: utils :: AccountId32 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > > > > , } , # [codec (index = 20)] # [doc = "Exactly as [`transfer`](Self::transfer), except the origin must be root and the source"] # [doc = "account should be specified."] # [doc = ""] # [doc = "# Errors"] # [doc = ""] # [doc = "Same as [`transfer`](Self::transfer)"] force_transfer { source : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > , destination : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > , # [codec (compact)] collection_id : :: core :: primitive :: u128 , params : runtime_types :: ep_multi_tokens :: policy :: transfer :: DefaultTransferParams < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , :: core :: primitive :: u128 > , } , # [codec (index = 21)] # [doc = "Set the Collections storage to the given `value`, origin must be root"] force_set_collection { # [codec (compact)] collection_id : :: core :: primitive :: u128 , value : :: std :: boxed :: Box < :: core :: option :: Option < runtime_types :: ep_multi_tokens :: collection :: Collection < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: DefaultCollectionPolicy < :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > > , runtime_types :: bounded_collections :: bounded_btree_map :: BoundedBTreeMap < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > , () > > > > , } , # [codec (index = 22)] # [doc = "Set the Tokens storage to the given `value`, origin must be root"] force_set_token { # [codec (compact)] collection_id : :: core :: primitive :: u128 , # [codec (compact)] token_id : :: core :: primitive :: u128 , value : :: std :: boxed :: Box < :: core :: option :: Option < runtime_types :: ep_multi_tokens :: token :: Token < :: core :: primitive :: u128 , :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: ep_multi_tokens :: frame :: DefaultTokenMetadata < runtime_types :: ep_multi_tokens :: frame :: DefaultForeignTokenMetadata < :: core :: primitive :: u128 , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenNameLength > , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenSymbolLength > , runtime_types :: xcm :: v3 :: multilocation :: MultiLocation > > > > > , } , # [codec (index = 23)] # [doc = "Set the Tokens storage to the given `value`, origin must be root"] force_set_attribute { # [codec (compact)] collection_id : :: core :: primitive :: u128 , token_id : :: core :: option :: Option < :: core :: primitive :: u128 > , key : runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , value : :: core :: option :: Option < runtime_types :: ep_multi_tokens :: attribute :: Attribute < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , :: core :: primitive :: u128 > > , } , # [codec (index = 24)] # [doc = "Set the CollectionAccounts storage to the given `value`, origin must be root"] force_set_collection_account { # [codec (compact)] collection_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > , value : :: core :: option :: Option < runtime_types :: pallet_multi_tokens :: features :: collection :: types :: CollectionAccount < :: subxt :: utils :: AccountId32 , :: core :: option :: Option < :: core :: primitive :: u32 > , runtime_types :: enjin_runtime :: MaxOperatorsPerAccount > > , } , # [codec (index = 25)] # [doc = "Set the TokenAccounts storage to the given `value`, origin must be root"] force_set_token_account { # [codec (compact)] collection_id : :: core :: primitive :: u128 , # [codec (compact)] token_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > , value : :: core :: option :: Option < runtime_types :: pallet_multi_tokens :: features :: token :: types :: TokenAccount < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , runtime_types :: pallet_multi_tokens :: features :: operator :: types :: Approval < :: core :: primitive :: u128 , :: core :: option :: Option < :: core :: primitive :: u32 > > , runtime_types :: enjin_runtime :: MaxOperatorsPerAccount , [:: core :: primitive :: u8 ; 8usize] , [:: core :: primitive :: u8 ; 8usize] , runtime_types :: enjin_runtime :: MaxMultiTokensReserves , runtime_types :: enjin_runtime :: MaxMultiTokensLocks > > , } , # [codec (index = 26)] # [doc = "Creates a new collection from `descriptor` at `collection_id`, origin must be root"] # [doc = ""] # [doc = "# Errors"] # [doc = "- [`Error::DepositReserveFailed`] if the deposit cannot be reserved"] # [doc = "- [`Error::CollectionIdAlreadyInUse`] if the collection id is already in use"] force_create_collection { owner : :: subxt :: utils :: AccountId32 , # [codec (compact)] collection_id : :: core :: primitive :: u128 , descriptor : :: std :: boxed :: Box < runtime_types :: ep_multi_tokens :: collection :: DefaultCollectionDescriptor < :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: AttributeKeyValuePair < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > > > > > , } , # [codec (index = 27)] # [doc = "Same as [`mint`](Self::mint), but it is callable by"] # [doc = "[`Config::ForceOrigin`]."] force_mint { caller : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > , recipient : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > , # [codec (compact)] collection_id : :: core :: primitive :: u128 , params : :: std :: boxed :: Box < runtime_types :: ep_multi_tokens :: policy :: mint :: DefaultMintParams < :: core :: primitive :: u128 , :: core :: primitive :: u128 , :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: AttributeKeyValuePair < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > > > , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenNameLength > , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenSymbolLength > , runtime_types :: xcm :: v3 :: multilocation :: MultiLocation > > , deposit_backer : :: core :: option :: Option < :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > > , } , # [codec (index = 28)] # [doc = "Same as [`burn`](Self::burn), but it is only callable by"] # [doc = "[`Config::ForceOrigin`]. Executes the burn by `caller`."] force_burn { caller : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > , # [codec (compact)] collection_id : :: core :: primitive :: u128 , params : runtime_types :: ep_multi_tokens :: policy :: burn :: DefaultBurnParams < :: core :: primitive :: u128 , :: core :: primitive :: u128 > , } , # [codec (index = 29)] # [doc = "Same as [`approve_collection`](Self::approve_collection), but it is callable by"] # [doc = "[`Config::ForceOrigin`]."] force_approve_collection { caller : :: subxt :: utils :: MultiAddress < :: subxt :: utils :: AccountId32 , () > , # [codec (compact)] collection_id : :: core :: primitive :: u128 , operator : :: subxt :: utils :: AccountId32 , expiration : :: core :: option :: Option < :: core :: primitive :: u32 > , } , # [codec (index = 30)] # [doc = "Same as [`freeze`](Self::freeze), but it is callable by [`Config::ForceOrigin`]"] force_freeze { info : runtime_types :: ep_multi_tokens :: types :: Freeze < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , :: core :: primitive :: u128 > , } , # [codec (index = 31)] # [doc = "Sets [`NextCollectionId`] to `value`. Only callable by [`Config::ForceOrigin`]."] force_set_next_collection_id { # [codec (compact)] value : :: core :: primitive :: u128 , } , # [codec (index = 34)] # [doc = "Sets [`ClaimableCollectionIds`] to `value`. Only callable by [`Config::ForceOrigin`]."] force_set_ethereum_account { address : :: subxt :: utils :: H160 , value : :: core :: option :: Option < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u128 > > , } , # [codec (index = 35)] # [doc = "Sets [`NativeCollectionIds`] to `native_collection_id`. Only callable by"] # [doc = "[`Config::ForceOrigin`]."] force_set_ethereum_collection_id { # [codec (compact)] ethereum_collection_id : :: core :: primitive :: u128 , native_collection_id : :: core :: option :: Option < :: core :: primitive :: u128 > , } , # [codec (index = 38)] # [doc = "Sets [`UnmintableTokenIds`] to `value`. Only callable by [`Config::ForceOrigin`]."] force_set_unmintable_token_ids { # [codec (compact)] collection_id : :: core :: primitive :: u128 , value : :: core :: option :: Option < runtime_types :: pallet_multi_tokens :: features :: ethereum :: RangeInclusive < :: core :: primitive :: u128 > > , } , # [codec (index = 39)] # [doc = "Creates a new collection from `descriptor` at `collection_id`, origin must be root"] # [doc = "It differes from `force_create_collection` since it writes to NativeCollectionId and"] # [doc = "UnmintableTokenIds"] # [doc = ""] # [doc = "# Errors"] # [doc = "- [`Error::DepositReserveFailed`] if the deposit cannot be reserved"] # [doc = "- [`Error::CollectionIdAlreadyInUse`] if the collection id is already in use"] force_create_ethereum_collection { owner : :: subxt :: utils :: AccountId32 , # [codec (compact)] native_collection_id : :: core :: primitive :: u128 , # [codec (compact)] ethereum_collection_id : :: core :: primitive :: u128 , token_range : runtime_types :: pallet_multi_tokens :: features :: ethereum :: RangeInclusive < :: core :: primitive :: u128 > , descriptor : :: std :: boxed :: Box < runtime_types :: ep_multi_tokens :: collection :: DefaultCollectionDescriptor < :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: batch :: AttributeKeyValuePair < runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > > > > > , } , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "Collection was not found"] + CollectionNotFound, + #[codec(index = 1)] + #[doc = "CollectionAccount was not found"] + CollectionAccountNotFound, + #[codec(index = 2)] + #[doc = "Token was not found"] + TokenNotFound, + #[codec(index = 3)] + #[doc = "TokenAccount was not found"] + TokenAccountNotFound, + #[codec(index = 4)] + #[doc = "Caller is not allowed to execute this extrinsic"] + NoPermission, + #[codec(index = 5)] + #[doc = "Not enough balance to perform the operation."] + BalanceLow, + #[codec(index = 6)] + #[doc = "The operation failed due to an item being frozen"] + Frozen, + #[codec(index = 7)] + #[doc = "The token has a never freeze state. The state cannot be changed and the token cannot be"] + #[doc = "frozen."] + HasNeverFreezeState, + #[codec(index = 8)] + #[doc = "The token is permanently frozen"] + PermanentlyFrozen, + #[codec(index = 9)] + #[doc = "The freeze state is not valid"] + InvalidFreezeState, + #[codec(index = 10)] + #[doc = "An amount of zero was used when it's not allowed"] + AmountZero, + #[codec(index = 11)] + #[doc = "Attribute key invalid"] + InvalidAttributeKey, + #[codec(index = 12)] + #[doc = "Tried to mint more tokens than allowed"] + MaxTokenCountExceeded, + #[codec(index = 13)] + #[doc = "The cap for the token was exceeded during mint"] + TokenMintCapExceeded, + #[codec(index = 14)] + #[doc = "Tried to create Token that already exists"] + TokenAlreadyExists, + #[codec(index = 15)] + #[doc = "The collection or token cannot be destroyed because it has attributes"] + DestroyForbiddenByAttributeCount, + #[codec(index = 16)] + #[doc = "Destroy is not allowed on collections that have tokens. Destroy all tokens before"] + #[doc = "calling [`destroy_collection`](Pallet::destroy_collection). Keep in mind that the"] + #[doc = "[`Tokens`] storage can remain even if all of [`Token`](ep_multi_tokens::Token)'s units"] + #[doc = "were burned. A token can only be destroyed by setting"] + #[doc = "[`remove_token_storage`](OnBurnInput::remove_token_storage) to true in"] + #[doc = "[`burn`](Pallet::burn)."] + DestroyForbiddenByRemainingTokens, + #[codec(index = 17)] + #[doc = "The `OnCollectionEvent` trait has forbidden burning of the collection"] + DestroyForbiddenByCollectionEvent, + #[codec(index = 18)] + #[doc = "Unable to reserve the amount to create a new collection/token"] + DepositReserveFailed, + #[codec(index = 19)] + #[doc = "Unable to unreserve the amount to burn an existing collection/token"] + DepositUnreserveFailed, + #[codec(index = 20)] + #[doc = "The unit price cannot be zero, cannot decrease, and `unit_price * total_supply` must"] + #[doc = "be greater than `TokenAccountDeposit`"] + InvalidUnitPrice, + #[codec(index = 21)] + #[doc = "The balance is below the minimum required balance"] + BalanceBelowMinimumRequirement, + #[codec(index = 22)] + #[doc = "The minting did not meet the requirements set by the mint policy"] + MintFailedRequirements, + #[codec(index = 23)] + #[doc = "The idle operation queue is full and cannot accept new operations"] + IdleOperationQueueFull, + #[codec(index = 24)] + #[doc = "Reserved balance is not enough to perform the operation"] + ReservesLow, + #[codec(index = 25)] + #[doc = "Max named reserves for an account are exceeded"] + TooManyReserves, + #[codec(index = 26)] + #[doc = "Max named locks for an account are exceeded"] + TooManyLocks, + #[codec(index = 27)] + #[doc = "The balance is locked or restricted"] + LiquidityRestrictions, + #[codec(index = 28)] + #[doc = "Royalty percentage is above or below allowed bounds"] + PercentageOutOfBounds, + #[codec(index = 29)] + #[doc = "Token cannot act as both a currency and a royalty"] + CurrencyIncompatibleWithCollectionRoyalty, + #[codec(index = 30)] + #[doc = "The max number of approvals for this account was exceeded"] + MaxApprovalsExceeded, + #[codec(index = 31)] + #[doc = "Tried to set an expiration that has already passed"] + AlreadyExpired, + #[codec(index = 32)] + #[doc = "The collection is already approved for all, so it is useless to approve for a single"] + #[doc = "token"] + CollectionAlreadyApproved, + #[codec(index = 33)] + #[doc = "Not enough allowance to perform the operation"] + InsufficientAllowance, + #[codec(index = 34)] + #[doc = "The passed `current_amount` does not match the actual current amount of the approval"] + WrongCurrentApprovedAmount, + #[codec(index = 35)] + #[doc = "An account cannot approve itself as an operator"] + CannotApproveSelf, + #[codec(index = 36)] + #[doc = "An account cannot transfer tokens to itself"] + CannotTransferToSelf, + #[codec(index = 37)] + #[doc = "Transfer params could not be created"] + TransferParamCreationFailed, + #[codec(index = 38)] + #[doc = "This operation is not allowed for the native token"] + OperationNotAllowedForNativeToken, + #[codec(index = 39)] + #[doc = "One or more of the explicit royalty currencies are invalid"] + InvalidExplicitRoyaltyCurrencies, + #[codec(index = 40)] + #[doc = "Provided attribute count doesnt match the count is storage"] + InvalidAttributeCount, + #[codec(index = 41)] + #[doc = "Conflicting MultiLocation for an AssetId"] + ConflictingLocation, + #[codec(index = 42)] + #[doc = "Collection ID is already in use"] + CollectionIdAlreadyInUse, + #[codec(index = 43)] + #[doc = "Freeze state is required when freezing a token"] + FreezeStateRequired, + #[codec(index = 44)] + #[doc = "The preminted amount would be exceeded by the mint operation"] + PremintExceeded, + #[codec(index = 45)] + #[doc = "Token metadata could not be created from mint params"] + TokenMetadataCreationFailed, + #[codec(index = 46)] + #[doc = "There is nothing to claim"] + NoClaimAvailable, + #[codec(index = 47)] + #[doc = "The ethereum signature is invalid"] + InvalidEthereumSignature, + #[codec(index = 48)] + #[doc = "The ethereum address does not match the signature"] + InvalidEthereumAddress, + #[codec(index = 49)] + #[doc = "The ethereum collection id could not be converted to a native collection id"] + EthereumCollectionIdConversionFailed, + #[codec(index = 50)] + #[doc = "The token id cannot be minted because it's reserved for claiming"] + TokenIdReservedForClaim, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 collection was created"] CollectionCreated { collection_id : :: core :: primitive :: u128 , owner : :: subxt :: utils :: AccountId32 , } , # [codec (index = 1)] # [doc = "A collection was destroyed."] CollectionDestroyed { collection_id : :: core :: primitive :: u128 , caller : :: subxt :: utils :: AccountId32 , } , # [codec (index = 2)] # [doc = "A collection was mutated"] CollectionMutated { collection_id : :: core :: primitive :: u128 , mutation : runtime_types :: ep_multi_tokens :: collection :: DefaultCollectionMutation < :: subxt :: utils :: AccountId32 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > > > , } , # [codec (index = 3)] # [doc = "Units of a token were minted"] Minted { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , issuer : runtime_types :: ep_multi_tokens :: types :: RootOrSigned < :: subxt :: utils :: AccountId32 > , recipient : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 4)] # [doc = "A token was created"] TokenCreated { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , issuer : runtime_types :: ep_multi_tokens :: types :: RootOrSigned < :: subxt :: utils :: AccountId32 > , initial_supply : :: core :: primitive :: u128 , } , # [codec (index = 5)] # [doc = "A token was mutated"] TokenMutated { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , mutation : runtime_types :: ep_multi_tokens :: token :: DefaultTokenMutation < runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: ep_multi_tokens :: frame :: DefaultTokenMetadata < runtime_types :: ep_multi_tokens :: frame :: DefaultForeignTokenMetadata < :: core :: primitive :: u128 , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenNameLength > , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenSymbolLength > , runtime_types :: xcm :: v3 :: multilocation :: MultiLocation > > > , } , # [codec (index = 6)] # [doc = "Units of a token were burned"] Burned { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 7)] # [doc = "A token was destroyed"] TokenDestroyed { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , caller : :: subxt :: utils :: AccountId32 , } , # [codec (index = 8)] # [doc = "Units of a token were transferred"] Transferred { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , operator : :: subxt :: utils :: AccountId32 , from : :: subxt :: utils :: AccountId32 , to : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 9)] # [doc = "Collection, token or account was frozen"] Frozen (runtime_types :: ep_multi_tokens :: types :: Freeze < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , :: core :: primitive :: u128 > ,) , # [codec (index = 10)] # [doc = "Collection, token or account was unfrozen"] Thawed (runtime_types :: ep_multi_tokens :: types :: Freeze < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , :: core :: primitive :: u128 > ,) , # [codec (index = 11)] # [doc = "New attribute has been set"] AttributeSet { collection_id : :: core :: primitive :: u128 , token_id : :: core :: option :: Option < :: core :: primitive :: u128 > , key : runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , value : runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } , # [codec (index = 12)] # [doc = "An attribute has been removed"] AttributeRemoved { collection_id : :: core :: primitive :: u128 , token_id : :: core :: option :: Option < :: core :: primitive :: u128 > , key : runtime_types :: bounded_collections :: bounded_vec :: BoundedVec < :: core :: primitive :: u8 > , } , # [codec (index = 13)] # [doc = "An approval took place. If `token_id` is `None`, it applies to the whole collection."] Approved { collection_id : :: core :: primitive :: u128 , token_id : :: core :: option :: Option < :: core :: primitive :: u128 > , owner : :: subxt :: utils :: AccountId32 , operator : :: subxt :: utils :: AccountId32 , amount : :: core :: option :: Option < :: core :: primitive :: u128 > , expiration : :: core :: option :: Option < :: core :: primitive :: u32 > , } , # [codec (index = 14)] # [doc = "An unapproval took place. If `token_id` is `None`, it applies to the collection."] Unapproved { collection_id : :: core :: primitive :: u128 , token_id : :: core :: option :: Option < :: core :: primitive :: u128 > , owner : :: subxt :: utils :: AccountId32 , operator : :: subxt :: utils :: AccountId32 , } , # [codec (index = 15)] # [doc = "A new collection account was created"] CollectionAccountCreated { collection_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , } , # [codec (index = 16)] # [doc = "A new token account was created"] TokenAccountCreated { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , balance : :: core :: primitive :: u128 , } , # [codec (index = 17)] # [doc = "A collection account was destroyed"] CollectionAccountDestroyed { collection_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , } , # [codec (index = 18)] # [doc = "A token account was destroyed"] TokenAccountDestroyed { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , } , # [codec (index = 19)] # [doc = "Token units were reserved"] Reserved { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , reserve_id : :: core :: option :: Option < [:: core :: primitive :: u8 ; 8usize] > , } , # [codec (index = 20)] # [doc = "Token units were unreserved"] Unreserved { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , reserve_id : :: core :: option :: Option < [:: core :: primitive :: u8 ; 8usize] > , } , # [codec (index = 21)] # [doc = "Reserved token units were moved"] MovedReserves { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , source : :: subxt :: utils :: AccountId32 , destination : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , reserve_id : :: core :: option :: Option < [:: core :: primitive :: u8 ; 8usize] > , } , # [codec (index = 22)] # [doc = "Reserved token units were transferred"] ReserveRepatriated { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , source : :: subxt :: utils :: AccountId32 , destination : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , reserve_id : :: core :: option :: Option < [:: core :: primitive :: u8 ; 8usize] > , } , # [codec (index = 23)] # [doc = "The balance of an account was set"] BalanceSet { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , balance : :: core :: primitive :: u128 , reserved_balance : :: core :: primitive :: u128 , } , # [codec (index = 24)] # [doc = "Token units were withdrawn"] Withdraw { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 25)] # [doc = "Token units were deposited"] Deposit { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 26)] # [doc = "An amount of tokens were slashed from account"] Slashed { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , amount : :: core :: primitive :: u128 , } , # [codec (index = 27)] # [doc = "Collection storage was set to `value`"] CollectionUpdated { collection_id : :: core :: primitive :: u128 , value : :: core :: option :: Option < runtime_types :: ep_multi_tokens :: collection :: Collection < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: DefaultCollectionPolicy < :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > > , runtime_types :: bounded_collections :: bounded_btree_map :: BoundedBTreeMap < runtime_types :: ep_multi_tokens :: token :: AssetId < :: core :: primitive :: u128 , :: core :: primitive :: u128 > , () > > > , } , # [codec (index = 28)] # [doc = "Token storage was set to `value`"] TokenUpdated { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , value : :: core :: option :: Option < runtime_types :: ep_multi_tokens :: token :: Token < :: core :: primitive :: u128 , :: core :: primitive :: u128 , runtime_types :: ep_multi_tokens :: policy :: market :: DefaultRoyalty < :: subxt :: utils :: AccountId32 > , runtime_types :: ep_multi_tokens :: frame :: DefaultTokenMetadata < runtime_types :: ep_multi_tokens :: frame :: DefaultForeignTokenMetadata < :: core :: primitive :: u128 , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenNameLength > , runtime_types :: ep_core :: frame :: types :: BoundedString < runtime_types :: enjin_runtime :: ForeignTokenSymbolLength > , runtime_types :: xcm :: v3 :: multilocation :: MultiLocation > > > > , } , # [codec (index = 29)] # [doc = "NextCollectionId storage was set to `collection_id`"] NextCollectionIdUpdated { collection_id : :: core :: primitive :: u128 , } , # [codec (index = 30)] # [doc = "TokenAccount storage was set to `value`"] CollectionAccountUpdated { collection_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , value : :: core :: option :: Option < runtime_types :: pallet_multi_tokens :: features :: collection :: types :: CollectionAccount < :: subxt :: utils :: AccountId32 , :: core :: option :: Option < :: core :: primitive :: u32 > , runtime_types :: enjin_runtime :: MaxOperatorsPerAccount > > , } , # [codec (index = 31)] # [doc = "TokenAccount storage was set to `value`"] TokenAccountUpdated { collection_id : :: core :: primitive :: u128 , token_id : :: core :: primitive :: u128 , account_id : :: subxt :: utils :: AccountId32 , value : :: core :: option :: Option < runtime_types :: pallet_multi_tokens :: features :: token :: types :: TokenAccount < :: subxt :: utils :: AccountId32 , :: core :: primitive :: u128 , runtime_types :: pallet_multi_tokens :: features :: operator :: types :: Approval < :: core :: primitive :: u128 , :: core :: option :: Option < :: core :: primitive :: u32 > > , runtime_types :: enjin_runtime :: MaxOperatorsPerAccount , [:: core :: primitive :: u8 ; 8usize] , [:: core :: primitive :: u8 ; 8usize] , runtime_types :: enjin_runtime :: MaxMultiTokensReserves , runtime_types :: enjin_runtime :: MaxMultiTokensLocks > > , } , # [codec (index = 32)] # [doc = "Migration stage updated"] MigrationStatusUpdated { stage : runtime_types :: ep_core :: frame :: migrations :: MigrationStage , } , # [codec (index = 33)] # [doc = "Collections were claimed"] ClaimedCollections { account_id : :: subxt :: utils :: AccountId32 , ethereum_address : :: subxt :: utils :: H160 , collection_ids : :: std :: vec :: Vec < runtime_types :: pallet_multi_tokens :: features :: claim :: CollectionIdPair < :: core :: primitive :: u128 > > , } , # [codec (index = 34)] # [doc = "Tokens were claimed"] ClaimedTokens { account_id : :: subxt :: utils :: AccountId32 , ethereum_address : :: subxt :: utils :: H160 , asset_ids : :: std :: vec :: Vec < runtime_types :: pallet_multi_tokens :: features :: claim :: AssetIdWithEth < :: core :: primitive :: u128 , :: core :: primitive :: u128 > > , more_tokens_remain : :: core :: primitive :: bool , } , # [codec (index = 35)] # [doc = "Claims tokens initiated"] ClaimTokensInitiated { account_id : :: subxt :: utils :: AccountId32 , ethereum_address : :: subxt :: utils :: H160 , } , } + } + } + pub mod pallet_multisig { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "## Complexity"] + #[doc = "O(Z + C) where Z is the length of the call and C its execution weight."] + as_multi_threshold_1 { + other_signatories: ::std::vec::Vec<::subxt::utils::AccountId32>, + call: ::std::boxed::Box, + }, + #[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 = "## Complexity"] + #[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`."] + 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, + 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 = "## Complexity"] + #[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`."] + 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 = "## Complexity"] + #[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."] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Multisig<_0, _1, _2> { + pub when: runtime_types::pallet_multisig::Timepoint<_0>, + pub deposit: _1, + pub depositor: _2, + pub approvals: runtime_types::bounded_collections::bounded_vec::BoundedVec<_2>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Timepoint<_0> { + pub height: _0, + pub index: ::core::primitive::u32, + } + } + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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. The sENJ token will be minted"] + #[doc = "and transferred to `origin`."] + #[doc = ""] + #[doc = "# Parameters"] + #[doc = "- `origin`: the caller"] + #[doc = "- `pool_id`: the pool id to bond"] + #[doc = "- `amount`: the amount of tokens deposited into the pool"] + #[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"] + bond { + pool_id: ::core::primitive::u32, + amount: runtime_types::pallet_nomination_pools::types::BondValue< + ::core::primitive::u128, + >, + }, + #[codec(index = 3)] + #[doc = "Unbond up to `unbonding_points` of the `member_account`'s funds from the pool by burning"] + #[doc = "sENJ."] + #[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 holding the pool's token. This is refereed to as"] + #[doc = " a kick."] + #[doc = "* The pool is destroying."] + #[doc = "* The pool is destroying and no other members are in the pool."] + #[doc = ""] + #[doc = "## Conditions for permissioned dispatch (i.e. the caller is also the"] + #[doc = "`member_account`):"] + #[doc = ""] + #[doc = "* The caller is not the last member."] + #[doc = "* The caller is the last member and the pool is destroying."] + #[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 { + pool_id: ::core::primitive::u32, + member_account: + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + #[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."] + #[doc = "* The target is the only member in the sub pools."] + #[doc = "* The pool is blocked and the caller is either the admin or state-toggler."] + #[doc = ""] + #[doc = "# Conditions for permissioned dispatch"] + #[doc = ""] + #[doc = "* The caller is the target and they are not the last member."] + #[doc = ""] + #[doc = "# Note"] + #[doc = ""] + #[doc = "If the target is the last member, the pool will be destroyed."] + withdraw_unbonded { + pool_id: ::core::primitive::u32, + member_account: + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + num_slashing_spans: ::core::primitive::u32, + }, + #[codec(index = 6)] + #[doc = "Create a new nomination pool."] + #[doc = ""] + #[doc = "# Arguments"] + #[doc = ""] + #[doc = "* `token_id` - Token that that will control the pool. This token must be from the"] + #[doc = " [`Config::PoolCollectionId`] collection and it must be held by the caller."] + #[doc = "* `deposit` - The amount of funds to delegate to the pool. This also acts as a deposit"] + #[doc = " because the pool's creator cannot fully unbond funds until the pool is destroyed."] + #[doc = "* `capacity` - The maximum total balance allowed in the pool. This is measured in sENJ."] + #[doc = " It must be below the pool's capacity. See `Capacity` section in crate level docs."] + #[doc = "* `duration` - The duration in blocks of the pool's bonus cycle"] + #[doc = ""] + #[doc = "# Note"] + #[doc = ""] + #[doc = "In addition to `deposit`, the caller will transfer the existential deposit for the"] + #[doc = "pool's accounts; so the caller needs at have at least `deposit + existential_deposit *"] + #[doc = "2` transferable."] + create { + token_id: ::core::primitive::u128, + #[codec(compact)] + deposit: ::core::primitive::u128, + #[codec(compact)] + capacity: ::core::primitive::u128, + #[codec(compact)] + duration: ::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 holder of the pool token."] + #[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 = 11)] + #[doc = "Update configurations for the nomination pools. Callable only by"] + #[doc = "[`Config::ForceOrigin`]."] + #[doc = ""] + #[doc = "# Arguments"] + #[doc = ""] + #[doc = "* `min_join_bond` - Set [`MinJoinBond`]."] + #[doc = "* `min_create_bond` - Set [`MinCreateBond`]."] + #[doc = "* `global_max_commission` - Set [`GlobalMaxCommission`]."] + set_configs { + min_join_bond: runtime_types::pallet_nomination_pools::types::ConfigOp< + ::core::primitive::u128, + >, + min_create_bond: runtime_types::pallet_nomination_pools::types::ConfigOp< + ::core::primitive::u128, + >, + global_max_commission: + runtime_types::pallet_nomination_pools::types::ConfigOp< + runtime_types::sp_arithmetic::per_things::Perbill, + >, + required_payout_count: + runtime_types::pallet_nomination_pools::types::ConfigOp< + runtime_types::sp_arithmetic::per_things::Perbill, + >, + }, + #[codec(index = 13)] + #[doc = "Chill on behalf of the pool."] + #[doc = ""] + #[doc = "The dispatch origin of this call must be signed by the pool token holder, same as"] + #[doc = "[`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 }, + #[codec(index = 14)] + #[doc = "Destroy the pool."] + #[doc = ""] + #[doc = "The dispatch origin of this call must be signed by the account holding the pool token"] + #[doc = "of the given pool_id."] + destroy { pool_id: ::core::primitive::u32 }, + #[codec(index = 18)] + #[doc = "Pays rewards to `validator_stash` and also distributes rewards to the reward accounts of"] + #[doc = "the pools nominating it. The appropriate bonus is also calculated and stored in the"] + #[doc = "bonus account."] + #[doc = ""] + #[doc = "This should be called once per era per validator. It is a permissionless call. It also"] + #[doc = "processes rewards for the previous era if [`Self::process_payouts`] was not called."] + #[doc = ""] + #[doc = "## Bonus Calculation"] + #[doc = ""] + #[doc = "1. Minimum duration and max duration are found for all pools nominating"] + #[doc = " `validator_stash`"] + #[doc = "2. [`Config::BonusPercentage`] is set aside from rewards for bonus"] + #[doc = "3. Normalized weight is calculated and then scaled according to the total bonus. See"] + #[doc = " `functions::calculate_real_weight`."] + #[doc = "4. The scaled weight is offset according to [`Config::BaseBonusRewardPercentage`] so"] + #[doc = " that all pools at least get the minimum weight"] + #[doc = "5. Final calculation is done in [`traits::Bonus::calculate_bonus`] and then transferred"] + #[doc = " to the bonus account"] + payout_rewards { + validator_stash: ::subxt::utils::AccountId32, + era: ::core::primitive::u32, + }, + #[codec(index = 25)] + #[doc = "Processes the rewards for all pools that were distributed in [`Self::payout_rewards`]."] + #[doc = "It will only succeed if it is called on the same era that payouts were made. It uses the"] + #[doc = "[`EraPayoutInfo`] storage to verify this. This extrinsic is permissionless."] + #[doc = ""] + #[doc = "The following is done for each pool:"] + #[doc = "1. If the pool has reached the end of its cycle, it cycles the pool."] + #[doc = "2. Sends bonus for the current era from the bonus account to the rewards account."] + #[doc = "3. Sends reward commission to the depositor."] + #[doc = "4. It bonds the pool's reward balance."] + #[doc = ""] + #[doc = "It is not required to call this extrinsic. If it is not called, the rewards will be"] + #[doc = "processed when `payout_rewards` is called in the next era."] + process_payouts { pool_count: ::core::primitive::u32 }, + #[codec(index = 19)] + #[doc = "Mutate the nomination pool data."] + #[doc = ""] + #[doc = "The dispatch origin of this call must be signed by the account holding the pool token"] + #[doc = "of the given pool_id."] + mutate { + pool_id: ::core::primitive::u32, + mutation: runtime_types::pallet_nomination_pools::types::PoolMutation< + ::core::primitive::u32, + ::core::primitive::u128, + >, + }, + #[codec(index = 20)] + #[doc = "Unbonds the deposit"] + #[doc = ""] + #[doc = "This call is permissionless but certain conditions must be met before the deposit can"] + #[doc = "be unbonded:"] + #[doc = ""] + #[doc = "- Pool must be in [`PoolState::Destroying`] mode"] + #[doc = "- Deposit points must be the only points in the pool"] + #[doc = "- [`UnbondingMembers`] must be empty"] + #[doc = ""] + #[doc = "This will unbond the deposit from the pool."] + unbond_deposit { pool_id: ::core::primitive::u32 }, + #[codec(index = 21)] + #[doc = "Withdraws the deposit"] + #[doc = ""] + #[doc = "This call is permissionless and should be called after the deposit has been unbonded."] + withdraw_deposit { pool_id: ::core::primitive::u32 }, + #[codec(index = 26)] + #[doc = "Transfers `amount` from the pool's free balance to `destination`. Only callable by"] + #[doc = "[`Config::ForceOrigin`]."] + withdraw_free_balance { + pool_id: ::core::primitive::u32, + destination: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + amount: ::core::primitive::u128, + }, + #[codec(index = 22)] + #[doc = "Set the annual inflation rate and collator payout cut"] + #[doc = ""] + #[doc = "Callable only by [`Config::ForceOrigin`]"] + set_staking_info { + info: runtime_types::pallet_nomination_pools::types::StakingInfo, + }, + #[codec(index = 23)] + #[doc = "Calculate and prepare early bird bonus if it is ready to be queued."] + #[doc = ""] + #[doc = "Callable by any signed origin after [`Config::EarlyBirdBonusDistributionBlock`]."] + #[doc = ""] + #[doc = "## Details"] + #[doc = ""] + #[doc = "1. Calculates the normalized weights for each pool by calling"] + #[doc = " [`Pallet::early_bird_normalized_weight`]. Factors for the weight are each pool's"] + #[doc = " total points and the creation date."] + #[doc = "2. Each pool's weight is multiplied by the total reward to determine each pool's reward."] + #[doc = "3. The rewards are stored in [`EarlyBirdBonusInfo`] and can be distributed by calling"] + #[doc = " [`Self::distribute_early_bird_bonus`]."] + queue_early_bird_bonus { pool_count: ::core::primitive::u32 }, + #[codec(index = 24)] + #[doc = "Distribute early bird bonus to pools. The `transfer_count` parameter is the max number"] + #[doc = "of transfers to be made in this call. If there are less items in the queue, it will end"] + #[doc = "early."] + #[doc = ""] + #[doc = "Callable by any signed origin after the bonus has been queued."] + distribute_early_bird_bonus { + transfer_count: ::core::primitive::u32, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum DefensiveError { + #[codec(index = 0)] + NotEnoughSpaceInUnbondPool, + #[codec(index = 1)] + PoolNotFound, + #[codec(index = 2)] + RewardPoolNotFound, + #[codec(index = 3)] + SubPoolsNotFound, + #[codec(index = 4)] + BondedStashKilledPrematurely, + #[codec(index = 5)] + DivisionError, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "Pool already exists for the given token_id"] + PoolTokenAlreadyInUse, + #[codec(index = 2)] + #[doc = "An account is not a member."] + PoolMemberNotFound, + #[codec(index = 3)] + #[doc = "A reward pool does not exist. In all cases this is a system logic error."] + RewardPoolNotFound, + #[codec(index = 4)] + #[doc = "A sub pool does not exist."] + SubPoolsNotFound, + #[codec(index = 5)] + #[doc = "An account is already delegating in another pool. An account may only belong to one"] + #[doc = "pool at a time."] + AccountBelongsToOtherPool, + #[codec(index = 6)] + #[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 = 7)] + #[doc = "The member cannot unbond further chunks due to reaching the limit."] + MaxUnbondingLimit, + #[codec(index = 8)] + #[doc = "None of the funds can be withdrawn yet because the bonding duration has not passed."] + CannotWithdrawAny, + #[codec(index = 9)] + #[doc = "The amount does not meet the minimum bond to either join or create a pool."] + #[doc = ""] + #[doc = "If the chain is not being destroyed no member can 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 = 10)] + #[doc = "The transaction could not be executed due to overflow risk for the pool."] + OverflowRisk, + #[codec(index = 11)] + #[doc = "A pool must be in [`PoolState::Destroying`] in order for"] + #[doc = "other members to be permissionlessly unbonded."] + NotDestroying, + #[codec(index = 12)] + #[doc = "The caller does not have nominating permissions for the pool."] + NotNominator, + #[codec(index = 13)] + #[doc = "Either a) the caller cannot make a valid kick or b) the pool is not destroying."] + NotKickerOrDestroying, + #[codec(index = 14)] + #[doc = "The pool is not open to join"] + NotOpen, + #[codec(index = 15)] + #[doc = "The pools state cannot be changed."] + CanNotChangeState, + #[codec(index = 16)] + #[doc = "The caller does not have adequate permissions."] + DoesNotHavePermission, + #[codec(index = 17)] + #[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 = 18)] + #[doc = "Partial unbonding now allowed permissionlessly."] + PartialUnbondNotAllowedPermissionlessly, + #[codec(index = 19)] + #[doc = "Pool id currently in use."] + PoolIdInUse, + #[codec(index = 20)] + #[doc = "Pool id provided is not correct/usable."] + InvalidPoolId, + #[codec(index = 21)] + #[doc = "Mint parameters are invalid."] + MintParamsCreationFailed, + #[codec(index = 22)] + #[doc = "Burn parameters are invalid."] + BurnParamsCreationFailed, + #[codec(index = 23)] + #[doc = "Transfer parameters are invalid."] + TransferParamsCreationFailed, + #[codec(index = 24)] + #[doc = "The capacity of the pool is exceeded by the amount"] + CapacityExceeded, + #[codec(index = 25)] + #[doc = "The capacity can only be mutated for the first 14 eras of a cycle"] + CapacityMutationRestricted, + #[codec(index = 26)] + #[doc = "The duration is out of bounds"] + DurationOutOfBounds, + #[codec(index = 27)] + #[doc = "The required token is not owned by the caller"] + TokenRequired, + #[codec(index = 28)] + #[doc = "Deposit should be the last supply of pool's sENJ token to be unbonded"] + DepositNotReadyForUnbonding, + #[codec(index = 29)] + #[doc = "The pool's max commission cannot be set higher than the existing value."] + MaxCommissionRestricted, + #[codec(index = 30)] + #[doc = "The supplied commission exceeds the max allowed commission."] + CommissionExceedsMaximum, + #[codec(index = 31)] + #[doc = "Not enough blocks have surpassed since the last commission update."] + CommissionChangeThrottled, + #[codec(index = 32)] + #[doc = "The submitted changes to commission change rate are not allowed."] + CommissionChangeRateNotAllowed, + #[codec(index = 33)] + #[doc = "There is no pending commission to claim."] + NoPendingCommission, + #[codec(index = 34)] + #[doc = "No commission current has been set."] + NoCommissionCurrentSet, + #[codec(index = 35)] + #[doc = "The mutation does not change anything"] + NoopMutation, + #[codec(index = 36)] + #[doc = "The pool is not empty"] + PoolMembersRemaining, + #[codec(index = 37)] + #[doc = "The early bird bonus is not yet ready to claim"] + EarlyBirdBonusNotReady, + #[codec(index = 38)] + #[doc = "Total Weighted Rewards is 0"] + EarlyBirdTotalRewardsIsZero, + #[codec(index = 39)] + #[doc = "There are more [`Config::MaxEarlyBirdBonusQueueItems`] than the storage item,"] + #[doc = "[`EarlyBirdBonusInfo`] can handle."] + TooManyEarlyBirdPoolRewards, + #[codec(index = 40)] + #[doc = "EarlyBirdReward has already been queued."] + EarlyBirdBonusAlreadyQueued, + #[codec(index = 41)] + #[doc = "Not all payouts have been made"] + MissingPayouts, + #[codec(index = 42)] + #[doc = "The pool count does not match the number of pools"] + WrongPoolCount, + #[codec(index = 43)] + #[doc = "Payouts were already processed for this era"] + PayoutsAlreadyProcessed, + #[codec(index = 44)] + #[doc = "Attribute key exceeds max length"] + AttributeKeyExceedsLength, + #[codec(index = 45)] + #[doc = "Unable to decode the attribute value"] + AttributeValueDecodeFailed, + #[codec(index = 46)] + #[doc = "Attribute capacity exceeds the global max capacity"] + AttributeCapacityExceedsGlobalCapacity, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Events of this pallet."] + pub enum Event { + #[codec(index = 0)] + #[doc = "A pool has been created."] + Created { + creator: ::subxt::utils::AccountId32, + pool_id: ::core::primitive::u32, + capacity: ::core::primitive::u128, + }, + #[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, + }, + #[codec(index = 2)] + #[doc = "A member has unbonded from their pool."] + Unbonded { + member: ::subxt::utils::AccountId32, + pool_id: ::core::primitive::u32, + balance: ::core::primitive::u128, + points: ::core::primitive::u128, + era: ::core::primitive::u32, + }, + #[codec(index = 3)] + #[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 = 4)] + #[doc = "A pool has been destroyed."] + Destroyed { pool_id: ::core::primitive::u32 }, + #[codec(index = 5)] + #[doc = "The state of a pool has changed"] + StateChanged { + pool_id: ::core::primitive::u32, + new_state: runtime_types::pallet_nomination_pools::types::PoolState, + }, + #[codec(index = 6)] + #[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 = 7)] + #[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, + }, + #[codec(index = 8)] + #[doc = "A pool's commission rate has been changed."] + CommissionUpdated { + pool_id: ::core::primitive::u32, + current: ::core::option::Option< + runtime_types::sp_arithmetic::per_things::Perbill, + >, + }, + #[codec(index = 9)] + #[doc = "This event happens once per era on the previous era that rewards are paid out for. It"] + #[doc = "pays commission, distributes bonus, and reinvests rewards."] + EraRewardsProcessed { + pool_id: ::core::primitive::u32, + era: ::core::primitive::u32, + commission: ::core::option::Option< + runtime_types::pallet_nomination_pools::types::CommissionPayment< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + >, + bonus: ::core::primitive::u128, + reinvested: ::core::primitive::u128, + bonus_cycle_ended: ::core::primitive::bool, + }, + #[codec(index = 10)] + #[doc = "Rewards were paid to a pool"] + RewardPaid { + pool_id: ::core::primitive::u32, + era: ::core::primitive::u32, + validator_stash: ::subxt::utils::AccountId32, + reward: ::core::primitive::u128, + bonus: ::core::primitive::u128, + }, + #[codec(index = 11)] + #[doc = "Pool has been mutated."] + PoolMutated { + pool_id: ::core::primitive::u32, + mutation: runtime_types::pallet_nomination_pools::types::PoolMutation< + ::core::primitive::u32, + ::core::primitive::u128, + >, + }, + #[codec(index = 12)] + #[doc = "A nomination took place"] + Nominated { + pool_id: ::core::primitive::u32, + validators: ::std::vec::Vec<::subxt::utils::AccountId32>, + }, + #[codec(index = 13)] + EarlyBirdBonusQueued { + total_amount: ::core::primitive::u128, + }, + #[codec(index = 14)] + #[doc = "The early bird bonus has been distributed"] + EarlyBirdBonusDistributed { + pool_id: ::core::primitive::u32, + amount: ::core::primitive::u128, + }, + } + } + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum BondValue<_0> { + #[codec(index = 0)] + Amount(#[codec(compact)] _0), + #[codec(index = 1)] + Fill, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BondedPoolInner { + pub state: runtime_types::pallet_nomination_pools::types::PoolState, + pub commission: runtime_types::pallet_nomination_pools::types::Commission, + #[codec(compact)] + pub token_id: ::core::primitive::u128, + #[codec(compact)] + pub capacity: ::core::primitive::u128, + pub bonus_cycle: runtime_types::pallet_nomination_pools::types::BonusCycle, + #[codec(compact)] + pub creation_block: ::core::primitive::u32, + pub bonuses_paid: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u32, + >, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BonusCycle { + pub previous_start: ::core::option::Option<::core::primitive::u32>, + #[codec(compact)] + pub start: ::core::primitive::u32, + #[codec(compact)] + pub end: ::core::primitive::u32, + pub pending_duration: ::core::option::Option<::core::primitive::u32>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Commission { + pub current: + ::core::option::Option, + pub max: + ::core::option::Option, + pub change_rate: ::core::option::Option< + runtime_types::pallet_nomination_pools::types::CommissionChangeRate< + ::core::primitive::u32, + >, + >, + pub throttle_from: ::core::option::Option<::core::primitive::u32>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CommissionChangeRate<_0> { + pub max_delta: runtime_types::sp_arithmetic::per_things::Perbill, + pub min_delay: _0, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CommissionPayment<_0, _1> { + pub beneficiary: _0, + pub amount: _1, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct EarlyBirdInfo<_0> { + pub has_been_queued: ::core::primitive::bool, + pub queued_items: runtime_types::bounded_collections::bounded_vec::BoundedVec< + (::core::primitive::u32, _0), + >, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct EraPayout { + #[codec(compact)] + pub era: ::core::primitive::u32, + #[codec(compact)] + pub payout_count: ::core::primitive::u32, + pub payouts_processed: ::core::primitive::bool, + pub required_payments_percent: + runtime_types::sp_arithmetic::per_things::Perbill, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PoolMember { + pub unbonding_eras: + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + ::core::primitive::u32, + ::core::primitive::u128, + >, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PoolMutation<_0, _1> { + pub duration: ::core::option::Option<_0>, + pub new_commission: runtime_types::ep_multi_tokens::types::ShouldMutate< + ::core::option::Option, + >, + pub max_commission: + ::core::option::Option, + pub change_rate: ::core::option::Option< + runtime_types::pallet_nomination_pools::types::CommissionChangeRate<_0>, + >, + pub capacity: ::core::option::Option<_1>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum PoolState { + #[codec(index = 0)] + Open, + #[codec(index = 1)] + Destroying, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct StakingInfo { + pub annual_inflation_rate: runtime_types::sp_arithmetic::per_things::Perbill, + pub collator_payout_cut: runtime_types::sp_arithmetic::per_things::Perbill, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SubPools { + pub no_era: runtime_types::pallet_nomination_pools::types::UnbondPool, + pub with_era: + runtime_types::bounded_collections::bounded_btree_map::BoundedBTreeMap< + ::core::primitive::u32, + runtime_types::pallet_nomination_pools::types::UnbondPool, + >, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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_ranked_collective { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, ()>, + }, + #[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, ()>, + }, + #[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, ()>, + }, + #[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, ()>, + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MemberRecord { + pub rank: ::core::primitive::u16, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum VoteRecord { + #[codec(index = 0)] + Aye(::core::primitive::u32), + #[codec(index = 1)] + Nay(::core::primitive::u32), + } + } + pub mod pallet_referenda { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + proposal: runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_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 }, + #[codec(index = 8)] + #[doc = "Set or clear metadata of a referendum."] + #[doc = ""] + #[doc = "Parameters:"] + #[doc = "- `origin`: Must be `Signed` by a creator of a referendum or by anyone to clear a"] + #[doc = " metadata of a finished referendum."] + #[doc = "- `index`: The index of a referendum to set or clear metadata for."] + #[doc = "- `maybe_hash`: The hash of an on-chain stored preimage. `None` to clear a metadata."] + set_metadata { + index: ::core::primitive::u32, + maybe_hash: ::core::option::Option<::subxt::utils::H256>, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call2 { + #[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, + proposal: runtime_types::frame_support::traits::preimages::Bounded< + runtime_types::enjin_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 }, + #[codec(index = 8)] + #[doc = "Set or clear metadata of a referendum."] + #[doc = ""] + #[doc = "Parameters:"] + #[doc = "- `origin`: Must be `Signed` by a creator of a referendum or by anyone to clear a"] + #[doc = " metadata of a finished referendum."] + #[doc = "- `index`: The index of a referendum to set or clear metadata for."] + #[doc = "- `maybe_hash`: The hash of an on-chain stored preimage. `None` to clear a metadata."] + set_metadata { + index: ::core::primitive::u32, + maybe_hash: ::core::option::Option<::subxt::utils::H256>, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + #[codec(index = 12)] + #[doc = "The preimage does not exist."] + PreimageNotExist, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 Error2 { + #[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, + #[codec(index = 12)] + #[doc = "The preimage does not exist."] + PreimageNotExist, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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::enjin_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::enjin_runtime::RuntimeCall, + >, + tally: runtime_types::pallet_conviction_voting::types::Tally< + ::core::primitive::u128, + >, + }, + #[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_conviction_voting::types::Tally< + ::core::primitive::u128, + >, + }, + #[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_conviction_voting::types::Tally< + ::core::primitive::u128, + >, + }, + #[codec(index = 10)] + #[doc = "A referendum has been timed out without being decided."] + TimedOut { + index: ::core::primitive::u32, + tally: runtime_types::pallet_conviction_voting::types::Tally< + ::core::primitive::u128, + >, + }, + #[codec(index = 11)] + #[doc = "A referendum has been cancelled."] + Cancelled { + index: ::core::primitive::u32, + tally: runtime_types::pallet_conviction_voting::types::Tally< + ::core::primitive::u128, + >, + }, + #[codec(index = 12)] + #[doc = "A referendum has been killed."] + Killed { + index: ::core::primitive::u32, + tally: runtime_types::pallet_conviction_voting::types::Tally< + ::core::primitive::u128, + >, + }, + #[codec(index = 13)] + #[doc = "The submission deposit has been refunded."] + SubmissionDepositRefunded { + index: ::core::primitive::u32, + who: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + }, + #[codec(index = 14)] + #[doc = "Metadata for a referendum has been set."] + MetadataSet { + index: ::core::primitive::u32, + hash: ::subxt::utils::H256, + }, + #[codec(index = 15)] + #[doc = "Metadata for a referendum has been cleared."] + MetadataCleared { + index: ::core::primitive::u32, + hash: ::subxt::utils::H256, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 Event2 { + #[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::enjin_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::enjin_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, + }, + #[codec(index = 14)] + #[doc = "Metadata for a referendum has been set."] + MetadataSet { + index: ::core::primitive::u32, + hash: ::subxt::utils::H256, + }, + #[codec(index = 15)] + #[doc = "Metadata for a referendum has been cleared."] + MetadataCleared { + index: ::core::primitive::u32, + hash: ::subxt::utils::H256, + }, + } + } + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DecidingStatus<_0> { + pub since: _0, + pub confirming: ::core::option::Option<_0>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Deposit<_0, _1> { + pub who: _0, + pub amount: _1, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct TrackInfo<_0, _1> { + pub name: ::std::string::String, + pub max_deciding: ::core::primitive::u32, + 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_scheduler { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + }, + #[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, + }, + #[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."] + 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, + }, + #[codec(index = 5)] + #[doc = "Schedule a named task after a delay."] + 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, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "## Complexity"] + #[doc = "- `O(1)`. Actual cost depends on the number of length of `T::Keys::key_ids()` which is"] + #[doc = " fixed."] + set_keys { + keys: runtime_types::enjin_runtime::opaque::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 = "## Complexity"] + #[doc = "- `O(1)` in number of key types. Actual cost depends on the number of length of"] + #[doc = " `T::Keys::key_ids()` which is fixed."] + purge_keys, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_stake_exchange { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The pallet's extrinsics."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Place a new offer with the given parameters"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CallerNotOfferCreator`] if the caller account does not match offer account."] + #[doc = "- [`Error::ZeroOffer`] if offer amount is zero."] + #[doc = "- [`Error::ZeroRate`] if rate amount is zero."] + #[doc = "- [`Error::Overflow`] if arithmetic overflow occurs"] + create_offer { + offer: runtime_types::pallet_stake_exchange::types::CreateOffer< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + }, + #[codec(index = 1)] + #[doc = "Cancel an existing offer with `offer_id`"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CallerNotOfferCreator`] if the caller account does not match offer account."] + #[doc = "- [`Error::OfferNotFound`] if the `offer_id` does not exist"] + cancel_offer { + #[codec(compact)] + offer_id: ::core::primitive::u128, + }, + #[codec(index = 2)] + #[doc = "Set the liquidity config for the caller account"] + configure_liquidity_account { + config: runtime_types::pallet_stake_exchange::types::LiquidityAccountConfig< + ::core::primitive::u128, + runtime_types::enjin_runtime::MaxFilteredTokenCount, + >, + }, + #[codec(index = 3)] + #[doc = "Withdraw liquidity from a current active offer"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CallerNotOfferCreator`] if the caller account does not match offer account."] + #[doc = "- [`Error::OfferNotFound`] if the offerId does not exist"] + withdraw_liquidity { + #[codec(compact)] + offer_id: ::core::primitive::u128, + #[codec(compact)] + amount: ::core::primitive::u128, + }, + #[codec(index = 4)] + #[doc = "Add liquidity to a current active offer"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CallerNotOfferCreator`] if the caller account does not match bidding account."] + #[doc = "- [`Error::OfferNotFound`] if the offerId does not exist"] + add_liquidity { + #[codec(compact)] + offer_id: ::core::primitive::u128, + #[codec(compact)] + amount: ::core::primitive::u128, + }, + #[codec(index = 5)] + #[doc = "Buy from a current active offer, returning the native currency by exchanging the staked"] + #[doc = "tokens"] + #[doc = ""] + #[doc = "# Errors"] + #[doc = "- [`Error::CallerNotOfferCreator`] if the caller account does not match bidding account."] + #[doc = "- [`Error::TokenRestriction`] if the tokenId is restricted by the LP"] + #[doc = "- [`Error::NotEnoughLiquidity`] if the offer cannot cover the amount requested"] + #[doc = "- [`Error::TransferParamCreationFailed`] if the multitokens transfer failed"] + buy { + #[codec(compact)] + offer_id: ::core::primitive::u128, + #[codec(compact)] + amount: ::core::primitive::u128, + #[codec(compact)] + token_id: ::core::primitive::u128, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Pallet's error type."] + pub enum Error { + #[codec(index = 0)] + #[doc = "Caller is not the account of"] + CallerNotOfferCreator, + #[codec(index = 1)] + #[doc = "Cannot create a offer with zero amount"] + ZeroOffer, + #[codec(index = 2)] + #[doc = "Cannot create a offer with zero rate"] + ZeroRate, + #[codec(index = 3)] + #[doc = "Arithmetic overflow"] + Overflow, + #[codec(index = 4)] + #[doc = "A offer was not found"] + OfferNotFound, + #[codec(index = 5)] + #[doc = "The offer does not have liquidity to perform the operation"] + NotEnoughLiquidity, + #[codec(index = 6)] + #[doc = "Cannot perform multi tokens transfer"] + TransferParamCreationFailed, + #[codec(index = 7)] + #[doc = "LP does not support this tokenId"] + TokenRestriction, + #[codec(index = 8)] + #[doc = "Zero amount buy not supported"] + ZeroAmount, + #[codec(index = 9)] + #[doc = "Pool rewards outside acceptable range"] + RewardRateOutOfRange, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "The pallet's event type."] + pub enum Event { + #[codec(index = 0)] + #[doc = "A offer was placed"] + OfferCreated { + offer_id: ::core::primitive::u128, + offer: runtime_types::pallet_stake_exchange::types::Offer< + ::subxt::utils::AccountId32, + ::core::primitive::u128, + >, + }, + #[codec(index = 1)] + #[doc = "A offer was cancelled"] + OfferCancelled { offer_id: ::core::primitive::u128 }, + #[codec(index = 2)] + #[doc = "Liquidity config was set for account"] + LiquidityConfigUpdated { + who: ::subxt::utils::AccountId32, + config: runtime_types::pallet_stake_exchange::types::LiquidityAccountConfig< + ::core::primitive::u128, + runtime_types::enjin_runtime::MaxFilteredTokenCount, + >, + }, + #[codec(index = 3)] + #[doc = "Liquidity was withdrawn from a offer"] + LiquidityWithdrawn { + who: ::subxt::utils::AccountId32, + offer_id: ::core::primitive::u128, + }, + #[codec(index = 4)] + #[doc = "Liquidity was added to a offer"] + LiquidityAdded { + who: ::subxt::utils::AccountId32, + offer_id: ::core::primitive::u128, + }, + #[codec(index = 5)] + #[doc = "Buy order was completed"] + BuyOrderCompleted { + who: ::subxt::utils::AccountId32, + token_id: ::core::primitive::u128, + amount: ::core::primitive::u128, + rate: runtime_types::sp_arithmetic::per_things::Perbill, + }, + #[codec(index = 6)] + #[doc = "A offer was completed and removed"] + OfferCompleted { offer_id: ::core::primitive::u128 }, + } + } + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CreateOffer<_0, _1> { + pub account: _0, + #[codec(compact)] + pub total: _1, + #[codec(compact)] + pub rate: runtime_types::sp_arithmetic::per_things::Perbill, + pub min_average_reward_rate: runtime_types::sp_arithmetic::per_things::Perbill, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct LiquidityAccountConfig<_0, _1> { + pub token_filter: + runtime_types::pallet_stake_exchange::types::TokenFilter<_0, _1>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Offer<_0, _1> { + pub account: _0, + #[codec(compact)] + pub total: _1, + #[codec(compact)] + pub rate: runtime_types::sp_arithmetic::per_things::Perbill, + pub min_average_reward_rate: runtime_types::sp_arithmetic::per_things::Perbill, + #[codec(compact)] + pub deposit: _1, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum TokenFilter<_0, _1> { + #[codec(index = 0)] + All, + #[codec(index = 1)] + Whitelist( + runtime_types::bounded_collections::bounded_btree_set::BoundedBTreeSet<_0>, + ), + #[codec(index = 2)] + BlockList( + runtime_types::bounded_collections::bounded_btree_set::BoundedBTreeSet<_0>, + ), + __Ignore(::core::marker::PhantomData<_1>), + } + } + } + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "## Complexity"] + #[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."] + bond { + #[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 = "## Complexity"] + #[doc = "- Independent of the arguments. Insignificant complexity."] + #[doc = "- O(1)."] + 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 = "## Complexity"] + #[doc = "O(S) where S is the number of slashing spans to remove"] + #[doc = "NOTE: Weight annotation is the kill scenario, we refund otherwise."] + 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 = "## Complexity"] + #[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."] + nominate { + targets: ::std::vec::Vec< + ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + >, + }, + #[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 = "## Complexity"] + #[doc = "- Independent of the arguments. Insignificant complexity."] + #[doc = "- Contains one read."] + #[doc = "- Writes are limited to the `origin` account key."] + 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 = "## Complexity"] + #[doc = "- O(1)"] + #[doc = "- Independent of the arguments. Insignificant complexity."] + #[doc = "- Contains a limited number of reads."] + #[doc = "- Writes are limited to the `origin` account key."] + #[doc = "---------"] + set_payee { + payee: runtime_types::pallet_staking::RewardDestination< + ::subxt::utils::AccountId32, + >, + }, + #[codec(index = 8)] + #[doc = "(Re-)sets the controller of a stash to the stash itself. This function previously"] + #[doc = "accepted a `controller` argument to set the controller to an account other than the"] + #[doc = "stash itself. This functionality has now been removed, now only setting the controller"] + #[doc = "to the stash, if it is not already."] + #[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 = "## Complexity"] + #[doc = "O(1)"] + #[doc = "- Independent of the arguments. Insignificant complexity."] + #[doc = "- Contains a limited number of reads."] + #[doc = "- Writes are limited to the `origin` account key."] + set_controller, + #[codec(index = 9)] + #[doc = "Sets the ideal number of validators."] + #[doc = ""] + #[doc = "The dispatch origin must be Root."] + #[doc = ""] + #[doc = "## Complexity"] + #[doc = "O(1)"] + 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 = "## Complexity"] + #[doc = "Same as [`Self::set_validator_count`]."] + 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 = "## Complexity"] + #[doc = "Same as [`Self::set_validator_count`]."] + 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 = "## Complexity"] + #[doc = "- No arguments."] + #[doc = "- Weight: O(1)"] + 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 = "## Complexity"] + #[doc = "- No arguments."] + #[doc = "- Weight: O(1)"] + 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 = "## Complexity"] + #[doc = "- At most O(MaxNominatorRewardedPerValidator)."] + 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 = "## Complexity"] + #[doc = "- Time complexity: O(L), where L is unlocking chunks"] + #[doc = "- Bounded by `MaxUnlockingChunks`."] + 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, ()>, + >, + }, + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SpanRecord<_0> { + pub slashed: _0, + pub paid_out: _0, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Exposure<_0, _1> { + #[codec(compact)] + pub total: _1, + #[codec(compact)] + pub own: _1, + pub others: + ::std::vec::Vec>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct IndividualExposure<_0, _1> { + pub who: _0, + #[codec(compact)] + pub value: _1, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Nominations { + pub targets: runtime_types::bounded_collections::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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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::bounded_collections::bounded_vec::BoundedVec< + runtime_types::pallet_staking::UnlockChunk<::core::primitive::u128>, + >, + pub claimed_rewards: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u32, + >, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ValidatorPrefs { + #[codec(compact)] + pub commission: runtime_types::sp_arithmetic::per_things::Perbill, + pub blocked: ::core::primitive::bool, + } + } + pub mod pallet_sudo { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "## Complexity"] + #[doc = "- O(1)."] + sudo { + call: ::std::boxed::Box, + }, + #[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 = "## Complexity"] + #[doc = "- O(1)."] + sudo_unchecked_weight { + call: ::std::boxed::Box, + 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 = "## Complexity"] + #[doc = "- O(1)."] + set_key { + new: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + }, + #[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 = "## Complexity"] + #[doc = "- O(1)."] + sudo_as { + who: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + call: ::std::boxed::Box, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "## Complexity"] + #[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)`."] + set { + #[codec(compact)] + now: ::core::primitive::u64, + }, + } + } + } + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + }, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ChargeTransactionPayment(#[codec(compact)] pub ::core::primitive::u128); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Releases { + #[codec(index = 0)] + V1Ancient, + #[codec(index = 1)] + V2, + } + } + pub mod pallet_treasury { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "## Complexity"] + #[doc = "- O(1)"] + propose_spend { + #[codec(compact)] + value: ::core::primitive::u128, + beneficiary: ::subxt::utils::MultiAddress<::subxt::utils::AccountId32, ()>, + }, + #[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 = "## Complexity"] + #[doc = "- O(1)"] + 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 = "## Complexity"] + #[doc = " - O(1)."] + 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, ()>, + }, + #[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 = "## Complexity"] + #[doc = "- O(A) where `A` is the number of approvals"] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Proposal<_0, _1> { + pub proposer: _0, + pub value: _1, + pub beneficiary: _0, + pub bond: _1, + } + } + pub mod pallet_utility { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "## Complexity"] + #[doc = "- O(C) where C is the number of calls to be batched."] + #[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, + }, + #[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, + }, + #[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 = "## Complexity"] + #[doc = "- O(C) where C is the number of calls to be batched."] + batch_all { + calls: ::std::vec::Vec, + }, + #[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 = "## Complexity"] + #[doc = "- O(1)."] + dispatch_as { + as_origin: ::std::boxed::Box, + call: ::std::boxed::Box, + }, + #[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 = "## Complexity"] + #[doc = "- O(C) where C is the number of calls to be batched."] + force_batch { + calls: ::std::vec::Vec, + }, + #[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, + weight: runtime_types::sp_weights::weight_v2::Weight, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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_validator_manager { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Add new validators to the set."] + #[doc = ""] + #[doc = "The new validators will be active from current session + 2."] + register_validators { + validators: ::std::vec::Vec<::subxt::utils::AccountId32>, + }, + #[codec(index = 1)] + #[doc = "Remove validators from the set."] + #[doc = ""] + #[doc = "The removed validators will be deactivated from current session + 2."] + deregister_validators { + validators: ::std::vec::Vec<::subxt::utils::AccountId32>, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 validators were added to the set."] + ValidatorsRegistered(::std::vec::Vec<::subxt::utils::AccountId32>), + #[codec(index = 1)] + #[doc = "Validators were removed from the set."] + ValidatorsDeregistered(::std::vec::Vec<::subxt::utils::AccountId32>), + } + } + } + pub mod pallet_vote_manager { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + >, + currency: runtime_types::pallet_vote_manager::types::VoteCurrency< + ::core::primitive::u128, + >, + }, + #[codec(index = 1)] + #[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 = 2)] + #[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, ()>, + class: ::core::primitive::u16, + index: ::core::primitive::u32, + }, + #[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, ()>, + index: ::core::primitive::u32, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 account is already delegating their vote."] + AlreadyDelegating, + #[codec(index = 1)] + #[doc = "The account has insufficient funds to cast the vote."] + InsufficientFunds, + #[codec(index = 2)] + #[doc = "The maximum number of votes for this referendum has been reached."] + NotOngoing, + #[codec(index = 3)] + #[doc = "The account is not a registered voter for the referendum."] + NotVoter, + #[codec(index = 4)] + #[doc = "The account does not have permission to perform the operation."] + NoPermission, + #[codec(index = 5)] + #[doc = "The vote unlock information was not found."] + UnlockVoteNotFound, + #[codec(index = 6)] + #[doc = "The unlock period for the vote has not yet passed."] + UnlockPeriodNotPassed, + #[codec(index = 7)] + #[doc = "Max votes exceeded"] + MaxVotesReached, + #[codec(index = 8)] + #[doc = "Class info missing"] + ClassNeeded, + #[codec(index = 9)] + #[doc = "The account does not have permission, usually related to unlock periods"] + NoPermissionYet, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 voted in a referendum"] + Voted { + voter: ::subxt::utils::AccountId32, + poll_index: ::core::primitive::u32, + vote: runtime_types::pallet_conviction_voting::vote::AccountVote< + ::core::primitive::u128, + >, + }, + } + } + pub mod types { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BalanceToUnlock<_0, _1, _2> { + pub balance: _0, + pub currency: runtime_types::pallet_vote_manager::types::VoteCurrency<_0>, + pub unlocks_at: _2, + #[codec(skip)] + pub __subxt_unused_type_params: ::core::marker::PhantomData<_1>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum VoteCurrency<_0> { + #[codec(index = 0)] + Enj, + #[codec(index = 1)] + SEnj(_0), + } + } + } + pub mod pallet_whitelist { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 pallet_xcm { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + send { + dest: ::std::boxed::Box, + message: ::std::boxed::Box, + }, + #[codec(index = 1)] + #[doc = "Teleport some assets from the local chain to some destination chain."] + #[doc = ""] + #[doc = "Fee payment on the destination side is made from the asset in the `assets` vector of"] + #[doc = "index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,"] + #[doc = "with all fees taken as needed from the asset."] + #[doc = ""] + #[doc = "- `origin`: Must be capable of withdrawing the `assets` and executing XCM."] + #[doc = "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send"] + #[doc = " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain."] + #[doc = "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be"] + #[doc = " an `AccountId32` value."] + #[doc = "- `assets`: The assets to be withdrawn. The first item should be the currency used to to pay the fee on the"] + #[doc = " `dest` side. May not be empty."] + #[doc = "- `fee_asset_item`: The index into `assets` of the item which should be used to pay"] + #[doc = " fees."] + teleport_assets { + dest: ::std::boxed::Box, + beneficiary: ::std::boxed::Box, + assets: ::std::boxed::Box, + fee_asset_item: ::core::primitive::u32, + }, + #[codec(index = 2)] + #[doc = "Transfer some assets from the local chain to the sovereign account of a destination"] + #[doc = "chain and forward a notification XCM."] + #[doc = ""] + #[doc = "Fee payment on the destination side is made from the asset in the `assets` vector of"] + #[doc = "index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,"] + #[doc = "with all fees taken as needed from the asset."] + #[doc = ""] + #[doc = "- `origin`: Must be capable of withdrawing the `assets` and executing XCM."] + #[doc = "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send"] + #[doc = " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain."] + #[doc = "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be"] + #[doc = " an `AccountId32` value."] + #[doc = "- `assets`: The assets to be withdrawn. This should include the assets used to pay the fee on the"] + #[doc = " `dest` side."] + #[doc = "- `fee_asset_item`: The index into `assets` of the item which should be used to pay"] + #[doc = " fees."] + reserve_transfer_assets { + dest: ::std::boxed::Box, + beneficiary: ::std::boxed::Box, + assets: ::std::boxed::Box, + fee_asset_item: ::core::primitive::u32, + }, + #[codec(index = 3)] + #[doc = "Execute an XCM message from a local, signed, origin."] + #[doc = ""] + #[doc = "An event is deposited indicating whether `msg` could be executed completely or only"] + #[doc = "partially."] + #[doc = ""] + #[doc = "No more than `max_weight` will be used in its attempted execution. If this is less than the"] + #[doc = "maximum amount of weight that the message could take to be executed, then no execution"] + #[doc = "attempt will be made."] + #[doc = ""] + #[doc = "NOTE: A successful return to this does *not* imply that the `msg` was executed successfully"] + #[doc = "to completion; only that *some* of it was executed."] + execute { + message: ::std::boxed::Box, + max_weight: runtime_types::sp_weights::weight_v2::Weight, + }, + #[codec(index = 4)] + #[doc = "Extoll that a particular destination can be communicated with through a particular"] + #[doc = "version of XCM."] + #[doc = ""] + #[doc = "- `origin`: Must be an origin specified by AdminOrigin."] + #[doc = "- `location`: The destination that is being described."] + #[doc = "- `xcm_version`: The latest version of XCM that `location` supports."] + force_xcm_version { + location: + ::std::boxed::Box, + xcm_version: ::core::primitive::u32, + }, + #[codec(index = 5)] + #[doc = "Set a safe XCM version (the version that XCM should be encoded with if the most recent"] + #[doc = "version a destination can accept is unknown)."] + #[doc = ""] + #[doc = "- `origin`: Must be an origin specified by AdminOrigin."] + #[doc = "- `maybe_xcm_version`: The default XCM encoding version, or `None` to disable."] + force_default_xcm_version { + maybe_xcm_version: ::core::option::Option<::core::primitive::u32>, + }, + #[codec(index = 6)] + #[doc = "Ask a location to notify us regarding their XCM version and any changes to it."] + #[doc = ""] + #[doc = "- `origin`: Must be an origin specified by AdminOrigin."] + #[doc = "- `location`: The location to which we should subscribe for XCM version notifications."] + force_subscribe_version_notify { + location: ::std::boxed::Box, + }, + #[codec(index = 7)] + #[doc = "Require that a particular destination should no longer notify us regarding any XCM"] + #[doc = "version changes."] + #[doc = ""] + #[doc = "- `origin`: Must be an origin specified by AdminOrigin."] + #[doc = "- `location`: The location to which we are currently subscribed for XCM version"] + #[doc = " notifications which we no longer desire."] + force_unsubscribe_version_notify { + location: ::std::boxed::Box, + }, + #[codec(index = 8)] + #[doc = "Transfer some assets from the local chain to the sovereign account of a destination"] + #[doc = "chain and forward a notification XCM."] + #[doc = ""] + #[doc = "Fee payment on the destination side is made from the asset in the `assets` vector of"] + #[doc = "index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight"] + #[doc = "is needed than `weight_limit`, then the operation will fail and the assets send may be"] + #[doc = "at risk."] + #[doc = ""] + #[doc = "- `origin`: Must be capable of withdrawing the `assets` and executing XCM."] + #[doc = "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send"] + #[doc = " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain."] + #[doc = "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be"] + #[doc = " an `AccountId32` value."] + #[doc = "- `assets`: The assets to be withdrawn. This should include the assets used to pay the fee on the"] + #[doc = " `dest` side."] + #[doc = "- `fee_asset_item`: The index into `assets` of the item which should be used to pay"] + #[doc = " fees."] + #[doc = "- `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase."] + limited_reserve_transfer_assets { + dest: ::std::boxed::Box, + beneficiary: ::std::boxed::Box, + assets: ::std::boxed::Box, + fee_asset_item: ::core::primitive::u32, + weight_limit: runtime_types::xcm::v3::WeightLimit, + }, + #[codec(index = 9)] + #[doc = "Teleport some assets from the local chain to some destination chain."] + #[doc = ""] + #[doc = "Fee payment on the destination side is made from the asset in the `assets` vector of"] + #[doc = "index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight"] + #[doc = "is needed than `weight_limit`, then the operation will fail and the assets send may be"] + #[doc = "at risk."] + #[doc = ""] + #[doc = "- `origin`: Must be capable of withdrawing the `assets` and executing XCM."] + #[doc = "- `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send"] + #[doc = " from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain."] + #[doc = "- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be"] + #[doc = " an `AccountId32` value."] + #[doc = "- `assets`: The assets to be withdrawn. The first item should be the currency used to to pay the fee on the"] + #[doc = " `dest` side. May not be empty."] + #[doc = "- `fee_asset_item`: The index into `assets` of the item which should be used to pay"] + #[doc = " fees."] + #[doc = "- `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase."] + limited_teleport_assets { + dest: ::std::boxed::Box, + beneficiary: ::std::boxed::Box, + assets: ::std::boxed::Box, + fee_asset_item: ::core::primitive::u32, + weight_limit: runtime_types::xcm::v3::WeightLimit, + }, + #[codec(index = 10)] + #[doc = "Set or unset the global suspension state of the XCM executor."] + #[doc = ""] + #[doc = "- `origin`: Must be an origin specified by AdminOrigin."] + #[doc = "- `suspended`: `true` to suspend, `false` to resume."] + force_suspension { suspended: ::core::primitive::bool }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 desired destination was unreachable, generally because there is a no way of routing"] + #[doc = "to it."] + Unreachable, + #[codec(index = 1)] + #[doc = "There was some other issue (i.e. not to do with routing) in sending the message. Perhaps"] + #[doc = "a lack of space for buffering the message."] + SendFailure, + #[codec(index = 2)] + #[doc = "The message execution fails the filter."] + Filtered, + #[codec(index = 3)] + #[doc = "The message's weight could not be determined."] + UnweighableMessage, + #[codec(index = 4)] + #[doc = "The destination `MultiLocation` provided cannot be inverted."] + DestinationNotInvertible, + #[codec(index = 5)] + #[doc = "The assets to be sent are empty."] + Empty, + #[codec(index = 6)] + #[doc = "Could not re-anchor the assets to declare the fees for the destination chain."] + CannotReanchor, + #[codec(index = 7)] + #[doc = "Too many assets have been attempted for transfer."] + TooManyAssets, + #[codec(index = 8)] + #[doc = "Origin is invalid for sending."] + InvalidOrigin, + #[codec(index = 9)] + #[doc = "The version of the `Versioned` value used is not able to be interpreted."] + BadVersion, + #[codec(index = 10)] + #[doc = "The given location could not be used (e.g. because it cannot be expressed in the"] + #[doc = "desired version of XCM)."] + BadLocation, + #[codec(index = 11)] + #[doc = "The referenced subscription could not be found."] + NoSubscription, + #[codec(index = 12)] + #[doc = "The location is invalid since it already has a subscription from us."] + AlreadySubscribed, + #[codec(index = 13)] + #[doc = "Invalid asset for the operation."] + InvalidAsset, + #[codec(index = 14)] + #[doc = "The owner does not own (all) of the asset that they wish to do the operation on."] + LowBalance, + #[codec(index = 15)] + #[doc = "The asset owner has too many locks on the asset."] + TooManyLocks, + #[codec(index = 16)] + #[doc = "The given account is not an identifiable sovereign account for any location."] + AccountNotSovereign, + #[codec(index = 17)] + #[doc = "The operation required fees to be paid which the initiator could not meet."] + FeesNotMet, + #[codec(index = 18)] + #[doc = "A remote lock with the corresponding data could not be found."] + LockNotFound, + #[codec(index = 19)] + #[doc = "The unlock operation cannot succeed because there are still consumers of the lock."] + InUse, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "Execution of an XCM message was attempted."] + #[doc = ""] + #[doc = "\\[ outcome \\]"] + Attempted(runtime_types::xcm::v3::traits::Outcome), + #[codec(index = 1)] + #[doc = "A XCM message was sent."] + #[doc = ""] + #[doc = "\\[ origin, destination, message \\]"] + Sent( + runtime_types::xcm::v3::multilocation::MultiLocation, + runtime_types::xcm::v3::multilocation::MultiLocation, + runtime_types::xcm::v3::Xcm, + ), + #[codec(index = 2)] + #[doc = "Query response received which does not match a registered query. This may be because a"] + #[doc = "matching query was never registered, it may be because it is a duplicate response, or"] + #[doc = "because the query timed out."] + #[doc = ""] + #[doc = "\\[ origin location, id \\]"] + UnexpectedResponse( + runtime_types::xcm::v3::multilocation::MultiLocation, + ::core::primitive::u64, + ), + #[codec(index = 3)] + #[doc = "Query response has been received and is ready for taking with `take_response`. There is"] + #[doc = "no registered notification call."] + #[doc = ""] + #[doc = "\\[ id, response \\]"] + ResponseReady(::core::primitive::u64, runtime_types::xcm::v3::Response), + #[codec(index = 4)] + #[doc = "Query response has been received and query is removed. The registered notification has"] + #[doc = "been dispatched and executed successfully."] + #[doc = ""] + #[doc = "\\[ id, pallet index, call index \\]"] + Notified( + ::core::primitive::u64, + ::core::primitive::u8, + ::core::primitive::u8, + ), + #[codec(index = 5)] + #[doc = "Query response has been received and query is removed. The registered notification could"] + #[doc = "not be dispatched because the dispatch weight is greater than the maximum weight"] + #[doc = "originally budgeted by this runtime for the query result."] + #[doc = ""] + #[doc = "\\[ id, pallet index, call index, actual weight, max budgeted weight \\]"] + NotifyOverweight( + ::core::primitive::u64, + ::core::primitive::u8, + ::core::primitive::u8, + runtime_types::sp_weights::weight_v2::Weight, + runtime_types::sp_weights::weight_v2::Weight, + ), + #[codec(index = 6)] + #[doc = "Query response has been received and query is removed. There was a general error with"] + #[doc = "dispatching the notification call."] + #[doc = ""] + #[doc = "\\[ id, pallet index, call index \\]"] + NotifyDispatchError( + ::core::primitive::u64, + ::core::primitive::u8, + ::core::primitive::u8, + ), + #[codec(index = 7)] + #[doc = "Query response has been received and query is removed. The dispatch was unable to be"] + #[doc = "decoded into a `Call`; this might be due to dispatch function having a signature which"] + #[doc = "is not `(origin, QueryId, Response)`."] + #[doc = ""] + #[doc = "\\[ id, pallet index, call index \\]"] + NotifyDecodeFailed( + ::core::primitive::u64, + ::core::primitive::u8, + ::core::primitive::u8, + ), + #[codec(index = 8)] + #[doc = "Expected query response has been received but the origin location of the response does"] + #[doc = "not match that expected. The query remains registered for a later, valid, response to"] + #[doc = "be received and acted upon."] + #[doc = ""] + #[doc = "\\[ origin location, id, expected location \\]"] + InvalidResponder( + runtime_types::xcm::v3::multilocation::MultiLocation, + ::core::primitive::u64, + ::core::option::Option< + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + ), + #[codec(index = 9)] + #[doc = "Expected query response has been received but the expected origin location placed in"] + #[doc = "storage by this runtime previously cannot be decoded. The query remains registered."] + #[doc = ""] + #[doc = "This is unexpected (since a location placed in storage in a previously executing"] + #[doc = "runtime should be readable prior to query timeout) and dangerous since the possibly"] + #[doc = "valid response will be dropped. Manual governance intervention is probably going to be"] + #[doc = "needed."] + #[doc = ""] + #[doc = "\\[ origin location, id \\]"] + InvalidResponderVersion( + runtime_types::xcm::v3::multilocation::MultiLocation, + ::core::primitive::u64, + ), + #[codec(index = 10)] + #[doc = "Received query response has been read and removed."] + #[doc = ""] + #[doc = "\\[ id \\]"] + ResponseTaken(::core::primitive::u64), + #[codec(index = 11)] + #[doc = "Some assets have been placed in an asset trap."] + #[doc = ""] + #[doc = "\\[ hash, origin, assets \\]"] + AssetsTrapped( + ::subxt::utils::H256, + runtime_types::xcm::v3::multilocation::MultiLocation, + runtime_types::xcm::VersionedMultiAssets, + ), + #[codec(index = 12)] + #[doc = "An XCM version change notification message has been attempted to be sent."] + #[doc = ""] + #[doc = "The cost of sending it (borne by the chain) is included."] + #[doc = ""] + #[doc = "\\[ destination, result, cost \\]"] + VersionChangeNotified( + runtime_types::xcm::v3::multilocation::MultiLocation, + ::core::primitive::u32, + runtime_types::xcm::v3::multiasset::MultiAssets, + ), + #[codec(index = 13)] + #[doc = "The supported version of a location has been changed. This might be through an"] + #[doc = "automatic notification or a manual intervention."] + #[doc = ""] + #[doc = "\\[ location, XCM version \\]"] + SupportedVersionChanged( + runtime_types::xcm::v3::multilocation::MultiLocation, + ::core::primitive::u32, + ), + #[codec(index = 14)] + #[doc = "A given location which had a version change subscription was dropped owing to an error"] + #[doc = "sending the notification to it."] + #[doc = ""] + #[doc = "\\[ location, query ID, error \\]"] + NotifyTargetSendFail( + runtime_types::xcm::v3::multilocation::MultiLocation, + ::core::primitive::u64, + runtime_types::xcm::v3::traits::Error, + ), + #[codec(index = 15)] + #[doc = "A given location which had a version change subscription was dropped owing to an error"] + #[doc = "migrating the location to our new XCM format."] + #[doc = ""] + #[doc = "\\[ location, query ID \\]"] + NotifyTargetMigrationFail( + runtime_types::xcm::VersionedMultiLocation, + ::core::primitive::u64, + ), + #[codec(index = 16)] + #[doc = "Expected query response has been received but the expected querier location placed in"] + #[doc = "storage by this runtime previously cannot be decoded. The query remains registered."] + #[doc = ""] + #[doc = "This is unexpected (since a location placed in storage in a previously executing"] + #[doc = "runtime should be readable prior to query timeout) and dangerous since the possibly"] + #[doc = "valid response will be dropped. Manual governance intervention is probably going to be"] + #[doc = "needed."] + #[doc = ""] + #[doc = "\\[ origin location, id \\]"] + InvalidQuerierVersion( + runtime_types::xcm::v3::multilocation::MultiLocation, + ::core::primitive::u64, + ), + #[codec(index = 17)] + #[doc = "Expected query response has been received but the querier location of the response does"] + #[doc = "not match the expected. The query remains registered for a later, valid, response to"] + #[doc = "be received and acted upon."] + #[doc = ""] + #[doc = "\\[ origin location, id, expected querier, maybe actual querier \\]"] + InvalidQuerier( + runtime_types::xcm::v3::multilocation::MultiLocation, + ::core::primitive::u64, + runtime_types::xcm::v3::multilocation::MultiLocation, + ::core::option::Option< + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + ), + #[codec(index = 18)] + #[doc = "A remote has requested XCM version change notification from us and we have honored it."] + #[doc = "A version information message is sent to them and its cost is included."] + #[doc = ""] + #[doc = "\\[ destination location, cost \\]"] + VersionNotifyStarted( + runtime_types::xcm::v3::multilocation::MultiLocation, + runtime_types::xcm::v3::multiasset::MultiAssets, + ), + #[codec(index = 19)] + #[doc = "We have requested that a remote chain sends us XCM version change notifications."] + #[doc = ""] + #[doc = "\\[ destination location, cost \\]"] + VersionNotifyRequested( + runtime_types::xcm::v3::multilocation::MultiLocation, + runtime_types::xcm::v3::multiasset::MultiAssets, + ), + #[codec(index = 20)] + #[doc = "We have requested that a remote chain stops sending us XCM version change notifications."] + #[doc = ""] + #[doc = "\\[ destination location, cost \\]"] + VersionNotifyUnrequested( + runtime_types::xcm::v3::multilocation::MultiLocation, + runtime_types::xcm::v3::multiasset::MultiAssets, + ), + #[codec(index = 21)] + #[doc = "Fees were paid from a location for an operation (often for using `SendXcm`)."] + #[doc = ""] + #[doc = "\\[ paying location, fees \\]"] + FeesPaid( + runtime_types::xcm::v3::multilocation::MultiLocation, + runtime_types::xcm::v3::multiasset::MultiAssets, + ), + #[codec(index = 22)] + #[doc = "Some assets have been claimed from an asset trap"] + #[doc = ""] + #[doc = "\\[ hash, origin, assets \\]"] + AssetsClaimed( + ::subxt::utils::H256, + runtime_types::xcm::v3::multilocation::MultiLocation, + runtime_types::xcm::VersionedMultiAssets, + ), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Origin { + #[codec(index = 0)] + Xcm(runtime_types::xcm::v3::multilocation::MultiLocation), + #[codec(index = 1)] + Response(runtime_types::xcm::v3::multilocation::MultiLocation), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum QueryStatus<_0> { + #[codec(index = 0)] + Pending { + responder: runtime_types::xcm::VersionedMultiLocation, + maybe_match_querier: + ::core::option::Option, + maybe_notify: + ::core::option::Option<(::core::primitive::u8, ::core::primitive::u8)>, + timeout: _0, + }, + #[codec(index = 1)] + VersionNotifier { + origin: runtime_types::xcm::VersionedMultiLocation, + is_active: ::core::primitive::bool, + }, + #[codec(index = 2)] + Ready { + response: runtime_types::xcm::VersionedResponse, + at: _0, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RemoteLockedFungibleRecord<_0> { + pub amount: ::core::primitive::u128, + pub owner: runtime_types::xcm::VersionedMultiLocation, + pub locker: runtime_types::xcm::VersionedMultiLocation, + pub consumers: runtime_types::bounded_collections::bounded_vec::BoundedVec<( + _0, + ::core::primitive::u128, + )>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum VersionMigrationStage { + #[codec(index = 0)] + MigrateSupportedVersion, + #[codec(index = 1)] + MigrateVersionNotifiers, + #[codec(index = 2)] + NotifyCurrentTargets( + ::core::option::Option<::std::vec::Vec<::core::primitive::u8>>, + ), + #[codec(index = 3)] + MigrateAndNotifyOldTargets, + } + } + } + pub mod polkadot_core_primitives { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CandidateHash(pub ::subxt::utils::H256); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct InboundDownwardMessage<_0> { + pub sent_at: _0, + pub msg: ::std::vec::Vec<::core::primitive::u8>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct InboundHrmpMessage<_0> { + pub sent_at: _0, + pub data: ::std::vec::Vec<::core::primitive::u8>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct OutboundHrmpMessage<_0> { + pub recipient: _0, + pub data: ::std::vec::Vec<::core::primitive::u8>, + } + } + pub mod polkadot_parachain { + use super::runtime_types; + pub mod primitives { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct HeadData(pub ::std::vec::Vec<::core::primitive::u8>); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct HrmpChannelId { + pub sender: runtime_types::polkadot_parachain::primitives::Id, + pub recipient: runtime_types::polkadot_parachain::primitives::Id, + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Id(pub ::core::primitive::u32); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ValidationCode(pub ::std::vec::Vec<::core::primitive::u8>); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ValidationCodeHash(pub ::subxt::utils::H256); + } + } + pub mod polkadot_primitives { + use super::runtime_types; + pub mod v4 { + use super::runtime_types; + pub mod assignment_app { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Public(pub runtime_types::sp_core::sr25519::Public); + } + pub mod collator_app { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Public(pub runtime_types::sp_core::sr25519::Public); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Signature(pub runtime_types::sp_core::sr25519::Signature); + } + pub mod executor_params { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum ExecutorParam { + #[codec(index = 1)] + MaxMemoryPages(::core::primitive::u32), + #[codec(index = 2)] + StackLogicalMax(::core::primitive::u32), + #[codec(index = 3)] + StackNativeMax(::core::primitive::u32), + #[codec(index = 4)] + PrecheckingMaxMemory(::core::primitive::u64), + #[codec(index = 5)] + PvfPrepTimeout( + runtime_types::polkadot_primitives::v4::PvfPrepTimeoutKind, + ::core::primitive::u64, + ), + #[codec(index = 6)] + PvfExecTimeout( + runtime_types::polkadot_primitives::v4::PvfExecTimeoutKind, + ::core::primitive::u64, + ), + #[codec(index = 7)] + WasmExtBulkMemory, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ExecutorParams( + pub ::std::vec::Vec< + runtime_types::polkadot_primitives::v4::executor_params::ExecutorParam, + >, + ); + } + pub mod signed { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct UncheckedSigned<_0, _1> { + pub payload: _0, + pub validator_index: runtime_types::polkadot_primitives::v4::ValidatorIndex, + pub signature: + runtime_types::polkadot_primitives::v4::validator_app::Signature, + #[codec(skip)] + pub __subxt_unused_type_params: ::core::marker::PhantomData<_1>, + } + } + pub mod validator_app { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Public(pub runtime_types::sp_core::sr25519::Public); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Signature(pub runtime_types::sp_core::sr25519::Signature); + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AvailabilityBitfield( + pub ::subxt::utils::bits::DecodedBits< + ::core::primitive::u8, + ::subxt::utils::bits::Lsb0, + >, + ); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BackedCandidate<_0> { + pub candidate: + runtime_types::polkadot_primitives::v4::CommittedCandidateReceipt<_0>, + pub validity_votes: ::std::vec::Vec< + runtime_types::polkadot_primitives::v4::ValidityAttestation, + >, + pub validator_indices: ::subxt::utils::bits::DecodedBits< + ::core::primitive::u8, + ::subxt::utils::bits::Lsb0, + >, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CandidateCommitments<_0> { + pub upward_messages: + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::std::vec::Vec<::core::primitive::u8>, + >, + pub horizontal_messages: + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::polkadot_core_primitives::OutboundHrmpMessage< + runtime_types::polkadot_parachain::primitives::Id, + >, + >, + pub new_validation_code: ::core::option::Option< + runtime_types::polkadot_parachain::primitives::ValidationCode, + >, + pub head_data: runtime_types::polkadot_parachain::primitives::HeadData, + pub processed_downward_messages: ::core::primitive::u32, + pub hrmp_watermark: _0, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CandidateDescriptor<_0> { + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + pub relay_parent: _0, + pub collator: runtime_types::polkadot_primitives::v4::collator_app::Public, + pub persisted_validation_data_hash: ::subxt::utils::H256, + pub pov_hash: ::subxt::utils::H256, + pub erasure_root: ::subxt::utils::H256, + pub signature: runtime_types::polkadot_primitives::v4::collator_app::Signature, + pub para_head: ::subxt::utils::H256, + pub validation_code_hash: + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CandidateReceipt<_0> { + pub descriptor: runtime_types::polkadot_primitives::v4::CandidateDescriptor<_0>, + pub commitments_hash: ::subxt::utils::H256, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CommittedCandidateReceipt<_0> { + pub descriptor: runtime_types::polkadot_primitives::v4::CandidateDescriptor<_0>, + pub commitments: runtime_types::polkadot_primitives::v4::CandidateCommitments< + ::core::primitive::u32, + >, + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CoreIndex(pub ::core::primitive::u32); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum CoreOccupied { + #[codec(index = 0)] + Parathread(runtime_types::polkadot_primitives::v4::ParathreadEntry), + #[codec(index = 1)] + Parachain, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DisputeState<_0> { + pub validators_for: ::subxt::utils::bits::DecodedBits< + ::core::primitive::u8, + ::subxt::utils::bits::Lsb0, + >, + pub validators_against: ::subxt::utils::bits::DecodedBits< + ::core::primitive::u8, + ::subxt::utils::bits::Lsb0, + >, + pub start: _0, + pub concluded_at: ::core::option::Option<_0>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum DisputeStatement { + #[codec(index = 0)] + Valid(runtime_types::polkadot_primitives::v4::ValidDisputeStatementKind), + #[codec(index = 1)] + Invalid(runtime_types::polkadot_primitives::v4::InvalidDisputeStatementKind), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DisputeStatementSet { + pub candidate_hash: runtime_types::polkadot_core_primitives::CandidateHash, + pub session: ::core::primitive::u32, + pub statements: ::std::vec::Vec<( + runtime_types::polkadot_primitives::v4::DisputeStatement, + runtime_types::polkadot_primitives::v4::ValidatorIndex, + runtime_types::polkadot_primitives::v4::validator_app::Signature, + )>, + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct GroupIndex(pub ::core::primitive::u32); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct IndexedVec<_0, _1>( + pub ::std::vec::Vec<_1>, + #[codec(skip)] pub ::core::marker::PhantomData<_0>, + ); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct InherentData<_0> { + pub bitfields: ::std::vec::Vec< + runtime_types::polkadot_primitives::v4::signed::UncheckedSigned< + runtime_types::polkadot_primitives::v4::AvailabilityBitfield, + runtime_types::polkadot_primitives::v4::AvailabilityBitfield, + >, + >, + pub backed_candidates: ::std::vec::Vec< + runtime_types::polkadot_primitives::v4::BackedCandidate< + ::subxt::utils::H256, + >, + >, + pub disputes: ::std::vec::Vec< + runtime_types::polkadot_primitives::v4::DisputeStatementSet, + >, + pub parent_header: _0, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum InvalidDisputeStatementKind { + #[codec(index = 0)] + Explicit, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ParathreadClaim( + pub runtime_types::polkadot_parachain::primitives::Id, + pub runtime_types::polkadot_primitives::v4::collator_app::Public, + ); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ParathreadEntry { + pub claim: runtime_types::polkadot_primitives::v4::ParathreadClaim, + pub retries: ::core::primitive::u32, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PvfCheckStatement { + pub accept: ::core::primitive::bool, + pub subject: runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + pub session_index: ::core::primitive::u32, + pub validator_index: runtime_types::polkadot_primitives::v4::ValidatorIndex, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum PvfExecTimeoutKind { + #[codec(index = 0)] + Backing, + #[codec(index = 1)] + Approval, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum PvfPrepTimeoutKind { + #[codec(index = 0)] + Precheck, + #[codec(index = 1)] + Lenient, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ScrapedOnChainVotes<_0> { + pub session: ::core::primitive::u32, + pub backing_validators_per_candidate: ::std::vec::Vec<( + runtime_types::polkadot_primitives::v4::CandidateReceipt<_0>, + ::std::vec::Vec<( + runtime_types::polkadot_primitives::v4::ValidatorIndex, + runtime_types::polkadot_primitives::v4::ValidityAttestation, + )>, + )>, + pub disputes: ::std::vec::Vec< + runtime_types::polkadot_primitives::v4::DisputeStatementSet, + >, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SessionInfo { + pub active_validator_indices: + ::std::vec::Vec, + pub random_seed: [::core::primitive::u8; 32usize], + pub dispute_period: ::core::primitive::u32, + pub validators: runtime_types::polkadot_primitives::v4::IndexedVec< + runtime_types::polkadot_primitives::v4::ValidatorIndex, + runtime_types::polkadot_primitives::v4::validator_app::Public, + >, + pub discovery_keys: + ::std::vec::Vec, + pub assignment_keys: ::std::vec::Vec< + runtime_types::polkadot_primitives::v4::assignment_app::Public, + >, + pub validator_groups: runtime_types::polkadot_primitives::v4::IndexedVec< + runtime_types::polkadot_primitives::v4::GroupIndex, + ::std::vec::Vec, + >, + pub n_cores: ::core::primitive::u32, + pub zeroth_delay_tranche_width: ::core::primitive::u32, + pub relay_vrf_modulo_samples: ::core::primitive::u32, + pub n_delay_tranches: ::core::primitive::u32, + pub no_show_slots: ::core::primitive::u32, + pub needed_approvals: ::core::primitive::u32, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum UpgradeGoAhead { + #[codec(index = 0)] + Abort, + #[codec(index = 1)] + GoAhead, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum UpgradeRestriction { + #[codec(index = 0)] + Present, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum ValidDisputeStatementKind { + #[codec(index = 0)] + Explicit, + #[codec(index = 1)] + BackingSeconded(::subxt::utils::H256), + #[codec(index = 2)] + BackingValid(::subxt::utils::H256), + #[codec(index = 3)] + ApprovalChecking, + } + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ValidatorIndex(pub ::core::primitive::u32); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum ValidityAttestation { + #[codec(index = 1)] + Implicit(runtime_types::polkadot_primitives::v4::validator_app::Signature), + #[codec(index = 2)] + Explicit(runtime_types::polkadot_primitives::v4::validator_app::Signature), + } + } + pub mod vstaging { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AsyncBackingParams { + pub max_candidate_depth: ::core::primitive::u32, + pub allowed_ancestry_len: ::core::primitive::u32, + } + } + } + pub mod polkadot_runtime_common { + use super::runtime_types; + pub mod assigned_slots { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + # [codec (index = 0)] # [doc = "Assign a permanent parachain slot and immediately create a lease for it."] assign_perm_parachain_slot { id : runtime_types :: polkadot_parachain :: primitives :: Id , } , # [codec (index = 1)] # [doc = "Assign a temporary parachain slot. The function tries to create a lease for it"] # [doc = "immediately if `SlotLeasePeriodStart::Current` is specified, and if the number"] # [doc = "of currently active temporary slots is below `MaxTemporarySlotPerLeasePeriod`."] assign_temp_parachain_slot { id : runtime_types :: polkadot_parachain :: primitives :: Id , lease_period_start : runtime_types :: polkadot_runtime_common :: assigned_slots :: SlotLeasePeriodStart , } , # [codec (index = 2)] # [doc = "Unassign a permanent or temporary parachain slot"] unassign_parachain_slot { id : runtime_types :: polkadot_parachain :: primitives :: Id , } , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 specified parachain or parathread is not registered."] + ParaDoesntExist, + #[codec(index = 1)] + #[doc = "Not a parathread."] + NotParathread, + #[codec(index = 2)] + #[doc = "Cannot upgrade parathread."] + CannotUpgrade, + #[codec(index = 3)] + #[doc = "Cannot downgrade parachain."] + CannotDowngrade, + #[codec(index = 4)] + #[doc = "Permanent or Temporary slot already assigned."] + SlotAlreadyAssigned, + #[codec(index = 5)] + #[doc = "Permanent or Temporary slot has not been assigned."] + SlotNotAssigned, + #[codec(index = 6)] + #[doc = "An ongoing lease already exists."] + OngoingLeaseExists, + #[codec(index = 7)] + MaxPermanentSlotsExceeded, + #[codec(index = 8)] + MaxTemporarySlotsExceeded, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 para was assigned a permanent parachain slot"] + PermanentSlotAssigned(runtime_types::polkadot_parachain::primitives::Id), + #[codec(index = 1)] + #[doc = "A para was assigned a temporary parachain slot"] + TemporarySlotAssigned(runtime_types::polkadot_parachain::primitives::Id), + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ParachainTemporarySlot<_0, _1> { + pub manager: _0, + pub period_begin: _1, + pub period_count: _1, + pub last_lease: ::core::option::Option<_1>, + pub lease_count: ::core::primitive::u32, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum SlotLeasePeriodStart { + #[codec(index = 0)] + Current, + #[codec(index = 1)] + Next, + } + } + pub mod auctions { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Create a new auction."] + #[doc = ""] + #[doc = "This can only happen when there isn't already an auction in progress and may only be"] + #[doc = "called by the root origin. Accepts the `duration` of this auction and the"] + #[doc = "`lease_period_index` of the initial lease period of the four that are to be auctioned."] + new_auction { + #[codec(compact)] + duration: ::core::primitive::u32, + #[codec(compact)] + lease_period_index: ::core::primitive::u32, + }, + #[codec(index = 1)] + #[doc = "Make a new bid from an account (including a parachain account) for deploying a new"] + #[doc = "parachain."] + #[doc = ""] + #[doc = "Multiple simultaneous bids from the same bidder are allowed only as long as all active"] + #[doc = "bids overlap each other (i.e. are mutually exclusive). Bids cannot be redacted."] + #[doc = ""] + #[doc = "- `sub` is the sub-bidder ID, allowing for multiple competing bids to be made by (and"] + #[doc = "funded by) the same account."] + #[doc = "- `auction_index` is the index of the auction to bid on. Should just be the present"] + #[doc = "value of `AuctionCounter`."] + #[doc = "- `first_slot` is the first lease period index of the range to bid on. This is the"] + #[doc = "absolute lease period index value, not an auction-specific offset."] + #[doc = "- `last_slot` is the last lease period index of the range to bid on. This is the"] + #[doc = "absolute lease period index value, not an auction-specific offset."] + #[doc = "- `amount` is the amount to bid to be held as deposit for the parachain should the"] + #[doc = "bid win. This amount is held throughout the range."] + bid { + #[codec(compact)] + para: runtime_types::polkadot_parachain::primitives::Id, + #[codec(compact)] + auction_index: ::core::primitive::u32, + #[codec(compact)] + first_slot: ::core::primitive::u32, + #[codec(compact)] + last_slot: ::core::primitive::u32, + #[codec(compact)] + amount: ::core::primitive::u128, + }, + #[codec(index = 2)] + #[doc = "Cancel an in-progress auction."] + #[doc = ""] + #[doc = "Can only be called by Root origin."] + cancel_auction, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "This auction is already in progress."] + AuctionInProgress, + #[codec(index = 1)] + #[doc = "The lease period is in the past."] + LeasePeriodInPast, + #[codec(index = 2)] + #[doc = "Para is not registered"] + ParaNotRegistered, + #[codec(index = 3)] + #[doc = "Not a current auction."] + NotCurrentAuction, + #[codec(index = 4)] + #[doc = "Not an auction."] + NotAuction, + #[codec(index = 5)] + #[doc = "Auction has already ended."] + AuctionEnded, + #[codec(index = 6)] + #[doc = "The para is already leased out for part of this range."] + AlreadyLeasedOut, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 auction started. Provides its index and the block number where it will begin to"] + #[doc = "close and the first lease period of the quadruplet that is auctioned."] + AuctionStarted { + auction_index: ::core::primitive::u32, + lease_period: ::core::primitive::u32, + ending: ::core::primitive::u32, + }, + #[codec(index = 1)] + #[doc = "An auction ended. All funds become unreserved."] + AuctionClosed { + auction_index: ::core::primitive::u32, + }, + #[codec(index = 2)] + #[doc = "Funds were reserved for a winning bid. First balance is the extra amount reserved."] + #[doc = "Second is the total."] + Reserved { + bidder: ::subxt::utils::AccountId32, + extra_reserved: ::core::primitive::u128, + total_amount: ::core::primitive::u128, + }, + #[codec(index = 3)] + #[doc = "Funds were unreserved since bidder is no longer active. `[bidder, amount]`"] + Unreserved { + bidder: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + }, + #[codec(index = 4)] + #[doc = "Someone attempted to lease the same slot twice for a parachain. The amount is held in reserve"] + #[doc = "but no parachain slot has been leased."] + ReserveConfiscated { + para_id: runtime_types::polkadot_parachain::primitives::Id, + leaser: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + }, + #[codec(index = 5)] + #[doc = "A new bid has been accepted as the current winner."] + BidAccepted { + bidder: ::subxt::utils::AccountId32, + para_id: runtime_types::polkadot_parachain::primitives::Id, + amount: ::core::primitive::u128, + first_slot: ::core::primitive::u32, + last_slot: ::core::primitive::u32, + }, + #[codec(index = 6)] + #[doc = "The winning offset was chosen for an auction. This will map into the `Winning` storage map."] + WinningOffset { + auction_index: ::core::primitive::u32, + block_number: ::core::primitive::u32, + }, + } + } + } + pub mod crowdloan { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Create a new crowdloaning campaign for a parachain slot with the given lease period range."] + #[doc = ""] + #[doc = "This applies a lock to your parachain configuration, ensuring that it cannot be changed"] + #[doc = "by the parachain manager."] + create { + #[codec(compact)] + index: runtime_types::polkadot_parachain::primitives::Id, + #[codec(compact)] + cap: ::core::primitive::u128, + #[codec(compact)] + first_period: ::core::primitive::u32, + #[codec(compact)] + last_period: ::core::primitive::u32, + #[codec(compact)] + end: ::core::primitive::u32, + verifier: + ::core::option::Option, + }, + #[codec(index = 1)] + #[doc = "Contribute to a crowd sale. This will transfer some balance over to fund a parachain"] + #[doc = "slot. It will be withdrawable when the crowdloan has ended and the funds are unused."] + contribute { + #[codec(compact)] + index: runtime_types::polkadot_parachain::primitives::Id, + #[codec(compact)] + value: ::core::primitive::u128, + signature: + ::core::option::Option, + }, + #[codec(index = 2)] + #[doc = "Withdraw full balance of a specific contributor."] + #[doc = ""] + #[doc = "Origin must be signed, but can come from anyone."] + #[doc = ""] + #[doc = "The fund must be either in, or ready for, retirement. For a fund to be *in* retirement, then the retirement"] + #[doc = "flag must be set. For a fund to be ready for retirement, then:"] + #[doc = "- it must not already be in retirement;"] + #[doc = "- the amount of raised funds must be bigger than the _free_ balance of the account;"] + #[doc = "- and either:"] + #[doc = " - the block number must be at least `end`; or"] + #[doc = " - the current lease period must be greater than the fund's `last_period`."] + #[doc = ""] + #[doc = "In this case, the fund's retirement flag is set and its `end` is reset to the current block"] + #[doc = "number."] + #[doc = ""] + #[doc = "- `who`: The account whose contribution should be withdrawn."] + #[doc = "- `index`: The parachain to whose crowdloan the contribution was made."] + withdraw { + who: ::subxt::utils::AccountId32, + #[codec(compact)] + index: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 3)] + #[doc = "Automatically refund contributors of an ended crowdloan."] + #[doc = "Due to weight restrictions, this function may need to be called multiple"] + #[doc = "times to fully refund all users. We will refund `RemoveKeysLimit` users at a time."] + #[doc = ""] + #[doc = "Origin must be signed, but can come from anyone."] + refund { + #[codec(compact)] + index: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 4)] + #[doc = "Remove a fund after the retirement period has ended and all funds have been returned."] + dissolve { + #[codec(compact)] + index: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 5)] + #[doc = "Edit the configuration for an in-progress crowdloan."] + #[doc = ""] + #[doc = "Can only be called by Root origin."] + edit { + #[codec(compact)] + index: runtime_types::polkadot_parachain::primitives::Id, + #[codec(compact)] + cap: ::core::primitive::u128, + #[codec(compact)] + first_period: ::core::primitive::u32, + #[codec(compact)] + last_period: ::core::primitive::u32, + #[codec(compact)] + end: ::core::primitive::u32, + verifier: + ::core::option::Option, + }, + #[codec(index = 6)] + #[doc = "Add an optional memo to an existing crowdloan contribution."] + #[doc = ""] + #[doc = "Origin must be Signed, and the user must have contributed to the crowdloan."] + add_memo { + index: runtime_types::polkadot_parachain::primitives::Id, + memo: ::std::vec::Vec<::core::primitive::u8>, + }, + #[codec(index = 7)] + #[doc = "Poke the fund into `NewRaise`"] + #[doc = ""] + #[doc = "Origin must be Signed, and the fund has non-zero raise."] + poke { + index: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 8)] + #[doc = "Contribute your entire balance to a crowd sale. This will transfer the entire balance of a user over to fund a parachain"] + #[doc = "slot. It will be withdrawable when the crowdloan has ended and the funds are unused."] + contribute_all { + #[codec(compact)] + index: runtime_types::polkadot_parachain::primitives::Id, + signature: + ::core::option::Option, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 current lease period is more than the first lease period."] + FirstPeriodInPast, + #[codec(index = 1)] + #[doc = "The first lease period needs to at least be less than 3 `max_value`."] + FirstPeriodTooFarInFuture, + #[codec(index = 2)] + #[doc = "Last lease period must be greater than first lease period."] + LastPeriodBeforeFirstPeriod, + #[codec(index = 3)] + #[doc = "The last lease period cannot be more than 3 periods after the first period."] + LastPeriodTooFarInFuture, + #[codec(index = 4)] + #[doc = "The campaign ends before the current block number. The end must be in the future."] + CannotEndInPast, + #[codec(index = 5)] + #[doc = "The end date for this crowdloan is not sensible."] + EndTooFarInFuture, + #[codec(index = 6)] + #[doc = "There was an overflow."] + Overflow, + #[codec(index = 7)] + #[doc = "The contribution was below the minimum, `MinContribution`."] + ContributionTooSmall, + #[codec(index = 8)] + #[doc = "Invalid fund index."] + InvalidParaId, + #[codec(index = 9)] + #[doc = "Contributions exceed maximum amount."] + CapExceeded, + #[codec(index = 10)] + #[doc = "The contribution period has already ended."] + ContributionPeriodOver, + #[codec(index = 11)] + #[doc = "The origin of this call is invalid."] + InvalidOrigin, + #[codec(index = 12)] + #[doc = "This crowdloan does not correspond to a parachain."] + NotParachain, + #[codec(index = 13)] + #[doc = "This parachain lease is still active and retirement cannot yet begin."] + LeaseActive, + #[codec(index = 14)] + #[doc = "This parachain's bid or lease is still active and withdraw cannot yet begin."] + BidOrLeaseActive, + #[codec(index = 15)] + #[doc = "The crowdloan has not yet ended."] + FundNotEnded, + #[codec(index = 16)] + #[doc = "There are no contributions stored in this crowdloan."] + NoContributions, + #[codec(index = 17)] + #[doc = "The crowdloan is not ready to dissolve. Potentially still has a slot or in retirement period."] + NotReadyToDissolve, + #[codec(index = 18)] + #[doc = "Invalid signature."] + InvalidSignature, + #[codec(index = 19)] + #[doc = "The provided memo is too large."] + MemoTooLarge, + #[codec(index = 20)] + #[doc = "The fund is already in `NewRaise`"] + AlreadyInNewRaise, + #[codec(index = 21)] + #[doc = "No contributions allowed during the VRF delay"] + VrfDelayInProgress, + #[codec(index = 22)] + #[doc = "A lease period has not started yet, due to an offset in the starting block."] + NoLeasePeriod, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "Create a new crowdloaning campaign."] + Created { + para_id: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 1)] + #[doc = "Contributed to a crowd sale."] + Contributed { + who: ::subxt::utils::AccountId32, + fund_index: runtime_types::polkadot_parachain::primitives::Id, + amount: ::core::primitive::u128, + }, + #[codec(index = 2)] + #[doc = "Withdrew full balance of a contributor."] + Withdrew { + who: ::subxt::utils::AccountId32, + fund_index: runtime_types::polkadot_parachain::primitives::Id, + amount: ::core::primitive::u128, + }, + #[codec(index = 3)] + #[doc = "The loans in a fund have been partially dissolved, i.e. there are some left"] + #[doc = "over child keys that still need to be killed."] + PartiallyRefunded { + para_id: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 4)] + #[doc = "All loans in a fund have been refunded."] + AllRefunded { + para_id: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 5)] + #[doc = "Fund is dissolved."] + Dissolved { + para_id: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 6)] + #[doc = "The result of trying to submit a new bid to the Slots pallet."] + HandleBidResult { + para_id: runtime_types::polkadot_parachain::primitives::Id, + result: ::core::result::Result< + (), + runtime_types::sp_runtime::DispatchError, + >, + }, + #[codec(index = 7)] + #[doc = "The configuration to a crowdloan has been edited."] + Edited { + para_id: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 8)] + #[doc = "A memo has been updated."] + MemoUpdated { + who: ::subxt::utils::AccountId32, + para_id: runtime_types::polkadot_parachain::primitives::Id, + memo: ::std::vec::Vec<::core::primitive::u8>, + }, + #[codec(index = 9)] + #[doc = "A parachain has been moved to `NewRaise`"] + AddedToNewRaise { + para_id: runtime_types::polkadot_parachain::primitives::Id, + }, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct FundInfo<_0, _1, _2, _3> { + pub depositor: _0, + pub verifier: ::core::option::Option, + pub deposit: _1, + pub raised: _1, + pub end: _2, + pub cap: _1, + pub last_contribution: + runtime_types::polkadot_runtime_common::crowdloan::LastContribution<_2>, + pub first_period: _3, + pub last_period: _3, + pub fund_index: ::core::primitive::u32, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum LastContribution<_0> { + #[codec(index = 0)] + Never, + #[codec(index = 1)] + PreEnding(::core::primitive::u32), + #[codec(index = 2)] + Ending(_0), + } + } + pub mod paras_registrar { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Register head data and validation code for a reserved Para Id."] + #[doc = ""] + #[doc = "## Arguments"] + #[doc = "- `origin`: Must be called by a `Signed` origin."] + #[doc = "- `id`: The para ID. Must be owned/managed by the `origin` signing account."] + #[doc = "- `genesis_head`: The genesis head data of the parachain/thread."] + #[doc = "- `validation_code`: The initial validation code of the parachain/thread."] + #[doc = ""] + #[doc = "## Deposits/Fees"] + #[doc = "The origin signed account must reserve a corresponding deposit for the registration. Anything already"] + #[doc = "reserved previously for this para ID is accounted for."] + #[doc = ""] + #[doc = "## Events"] + #[doc = "The `Registered` event is emitted in case of success."] + register { + id: runtime_types::polkadot_parachain::primitives::Id, + genesis_head: runtime_types::polkadot_parachain::primitives::HeadData, + validation_code: + runtime_types::polkadot_parachain::primitives::ValidationCode, + }, + #[codec(index = 1)] + #[doc = "Force the registration of a Para Id on the relay chain."] + #[doc = ""] + #[doc = "This function must be called by a Root origin."] + #[doc = ""] + #[doc = "The deposit taken can be specified for this registration. Any `ParaId`"] + #[doc = "can be registered, including sub-1000 IDs which are System Parachains."] + force_register { + who: ::subxt::utils::AccountId32, + deposit: ::core::primitive::u128, + id: runtime_types::polkadot_parachain::primitives::Id, + genesis_head: runtime_types::polkadot_parachain::primitives::HeadData, + validation_code: + runtime_types::polkadot_parachain::primitives::ValidationCode, + }, + #[codec(index = 2)] + #[doc = "Deregister a Para Id, freeing all data and returning any deposit."] + #[doc = ""] + #[doc = "The caller must be Root, the `para` owner, or the `para` itself. The para must be a parathread."] + deregister { + id: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 3)] + #[doc = "Swap a parachain with another parachain or parathread."] + #[doc = ""] + #[doc = "The origin must be Root, the `para` owner, or the `para` itself."] + #[doc = ""] + #[doc = "The swap will happen only if there is already an opposite swap pending. If there is not,"] + #[doc = "the swap will be stored in the pending swaps map, ready for a later confirmatory swap."] + #[doc = ""] + #[doc = "The `ParaId`s remain mapped to the same head data and code so external code can rely on"] + #[doc = "`ParaId` to be a long-term identifier of a notional \"parachain\". However, their"] + #[doc = "scheduling info (i.e. whether they're a parathread or parachain), auction information"] + #[doc = "and the auction deposit are switched."] + swap { + id: runtime_types::polkadot_parachain::primitives::Id, + other: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 4)] + #[doc = "Remove a manager lock from a para. This will allow the manager of a"] + #[doc = "previously locked para to deregister or swap a para without using governance."] + #[doc = ""] + #[doc = "Can only be called by the Root origin or the parachain."] + remove_lock { + para: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 5)] + #[doc = "Reserve a Para Id on the relay chain."] + #[doc = ""] + #[doc = "This function will reserve a new Para Id to be owned/managed by the origin account."] + #[doc = "The origin account is able to register head data and validation code using `register` to create"] + #[doc = "a parathread. Using the Slots pallet, a parathread can then be upgraded to get a parachain slot."] + #[doc = ""] + #[doc = "## Arguments"] + #[doc = "- `origin`: Must be called by a `Signed` origin. Becomes the manager/owner of the new para ID."] + #[doc = ""] + #[doc = "## Deposits/Fees"] + #[doc = "The origin must reserve a deposit of `ParaDeposit` for the registration."] + #[doc = ""] + #[doc = "## Events"] + #[doc = "The `Reserved` event is emitted in case of success, which provides the ID reserved for use."] + reserve, + #[codec(index = 6)] + #[doc = "Add a manager lock from a para. This will prevent the manager of a"] + #[doc = "para to deregister or swap a para."] + #[doc = ""] + #[doc = "Can be called by Root, the parachain, or the parachain manager if the parachain is unlocked."] + add_lock { + para: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 7)] + #[doc = "Schedule a parachain upgrade."] + #[doc = ""] + #[doc = "Can be called by Root, the parachain, or the parachain manager if the parachain is unlocked."] + schedule_code_upgrade { + para: runtime_types::polkadot_parachain::primitives::Id, + new_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + }, + #[codec(index = 8)] + #[doc = "Set the parachain's current head."] + #[doc = ""] + #[doc = "Can be called by Root, the parachain, or the parachain manager if the parachain is unlocked."] + set_current_head { + para: runtime_types::polkadot_parachain::primitives::Id, + new_head: runtime_types::polkadot_parachain::primitives::HeadData, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 ID is not registered."] + NotRegistered, + #[codec(index = 1)] + #[doc = "The ID is already registered."] + AlreadyRegistered, + #[codec(index = 2)] + #[doc = "The caller is not the owner of this Id."] + NotOwner, + #[codec(index = 3)] + #[doc = "Invalid para code size."] + CodeTooLarge, + #[codec(index = 4)] + #[doc = "Invalid para head data size."] + HeadDataTooLarge, + #[codec(index = 5)] + #[doc = "Para is not a Parachain."] + NotParachain, + #[codec(index = 6)] + #[doc = "Para is not a Parathread."] + NotParathread, + #[codec(index = 7)] + #[doc = "Cannot deregister para"] + CannotDeregister, + #[codec(index = 8)] + #[doc = "Cannot schedule downgrade of parachain to parathread"] + CannotDowngrade, + #[codec(index = 9)] + #[doc = "Cannot schedule upgrade of parathread to parachain"] + CannotUpgrade, + #[codec(index = 10)] + #[doc = "Para is locked from manipulation by the manager. Must use parachain or relay chain governance."] + ParaLocked, + #[codec(index = 11)] + #[doc = "The ID given for registration has not been reserved."] + NotReserved, + #[codec(index = 12)] + #[doc = "Registering parachain with empty code is not allowed."] + EmptyCode, + #[codec(index = 13)] + #[doc = "Cannot perform a parachain slot / lifecycle swap. Check that the state of both paras are"] + #[doc = "correct for the swap to work."] + CannotSwap, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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)] + Registered { + para_id: runtime_types::polkadot_parachain::primitives::Id, + manager: ::subxt::utils::AccountId32, + }, + #[codec(index = 1)] + Deregistered { + para_id: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 2)] + Reserved { + para_id: runtime_types::polkadot_parachain::primitives::Id, + who: ::subxt::utils::AccountId32, + }, + #[codec(index = 3)] + Swapped { + para_id: runtime_types::polkadot_parachain::primitives::Id, + other_id: runtime_types::polkadot_parachain::primitives::Id, + }, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ParaInfo<_0, _1> { + pub manager: _0, + pub deposit: _1, + pub locked: ::core::primitive::bool, + } + } + pub mod paras_sudo_wrapper { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Schedule a para to be initialized at the start of the next session."] + sudo_schedule_para_initialize { + id: runtime_types::polkadot_parachain::primitives::Id, + genesis: + runtime_types::polkadot_runtime_parachains::paras::ParaGenesisArgs, + }, + #[codec(index = 1)] + #[doc = "Schedule a para to be cleaned up at the start of the next session."] + sudo_schedule_para_cleanup { + id: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 2)] + #[doc = "Upgrade a parathread to a parachain"] + sudo_schedule_parathread_upgrade { + id: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 3)] + #[doc = "Downgrade a parachain to a parathread"] + sudo_schedule_parachain_downgrade { + id: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 4)] + #[doc = "Send a downward XCM to the given para."] + #[doc = ""] + #[doc = "The given parachain should exist and the payload should not exceed the preconfigured size"] + #[doc = "`config.max_downward_message_size`."] + sudo_queue_downward_xcm { + id: runtime_types::polkadot_parachain::primitives::Id, + xcm: ::std::boxed::Box, + }, + #[codec(index = 5)] + #[doc = "Forcefully establish a channel from the sender to the recipient."] + #[doc = ""] + #[doc = "This is equivalent to sending an `Hrmp::hrmp_init_open_channel` extrinsic followed by"] + #[doc = "`Hrmp::hrmp_accept_open_channel`."] + sudo_establish_hrmp_channel { + sender: runtime_types::polkadot_parachain::primitives::Id, + recipient: runtime_types::polkadot_parachain::primitives::Id, + max_capacity: ::core::primitive::u32, + max_message_size: ::core::primitive::u32, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 specified parachain or parathread is not registered."] + ParaDoesntExist, + #[codec(index = 1)] + #[doc = "The specified parachain or parathread is already registered."] + ParaAlreadyExists, + #[codec(index = 2)] + #[doc = "A DMP message couldn't be sent because it exceeds the maximum size allowed for a downward"] + #[doc = "message."] + ExceedsMaxMessageSize, + #[codec(index = 3)] + #[doc = "Could not schedule para cleanup."] + CouldntCleanup, + #[codec(index = 4)] + #[doc = "Not a parathread."] + NotParathread, + #[codec(index = 5)] + #[doc = "Not a parachain."] + NotParachain, + #[codec(index = 6)] + #[doc = "Cannot upgrade parathread."] + CannotUpgrade, + #[codec(index = 7)] + #[doc = "Cannot downgrade parachain."] + CannotDowngrade, + } + } + } + pub mod slots { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Just a connect into the `lease_out` call, in case Root wants to force some lease to happen"] + #[doc = "independently of any other on-chain mechanism to use it."] + #[doc = ""] + #[doc = "The dispatch origin for this call must match `T::ForceOrigin`."] + force_lease { + para: runtime_types::polkadot_parachain::primitives::Id, + leaser: ::subxt::utils::AccountId32, + amount: ::core::primitive::u128, + period_begin: ::core::primitive::u32, + period_count: ::core::primitive::u32, + }, + #[codec(index = 1)] + #[doc = "Clear all leases for a Para Id, refunding any deposits back to the original owners."] + #[doc = ""] + #[doc = "The dispatch origin for this call must match `T::ForceOrigin`."] + clear_all_leases { + para: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 2)] + #[doc = "Try to onboard a parachain that has a lease for the current lease period."] + #[doc = ""] + #[doc = "This function can be useful if there was some state issue with a para that should"] + #[doc = "have onboarded, but was unable to. As long as they have a lease period, we can"] + #[doc = "let them onboard from here."] + #[doc = ""] + #[doc = "Origin must be signed, but can be called by anyone."] + trigger_onboard { + para: runtime_types::polkadot_parachain::primitives::Id, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 parachain ID is not onboarding."] + ParaNotOnboarding, + #[codec(index = 1)] + #[doc = "There was an error with the lease."] + LeaseError, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 `[lease_period]` is beginning."] + NewLeasePeriod { + lease_period: ::core::primitive::u32, + }, + #[codec(index = 1)] + #[doc = "A para has won the right to a continuous set of lease periods as a parachain."] + #[doc = "First balance is any extra amount reserved on top of the para's existing deposit."] + #[doc = "Second balance is the total amount reserved."] + Leased { + para_id: runtime_types::polkadot_parachain::primitives::Id, + leaser: ::subxt::utils::AccountId32, + period_begin: ::core::primitive::u32, + period_count: ::core::primitive::u32, + extra_reserved: ::core::primitive::u128, + total_amount: ::core::primitive::u128, + }, + } + } + } + } + pub mod polkadot_runtime_parachains { + use super::runtime_types; + pub mod configuration { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + # [codec (index = 0)] # [doc = "Set the validation upgrade cooldown."] set_validation_upgrade_cooldown { new : :: core :: primitive :: u32 , } , # [codec (index = 1)] # [doc = "Set the validation upgrade delay."] set_validation_upgrade_delay { new : :: core :: primitive :: u32 , } , # [codec (index = 2)] # [doc = "Set the acceptance period for an included candidate."] set_code_retention_period { new : :: core :: primitive :: u32 , } , # [codec (index = 3)] # [doc = "Set the max validation code size for incoming upgrades."] set_max_code_size { new : :: core :: primitive :: u32 , } , # [codec (index = 4)] # [doc = "Set the max POV block size for incoming upgrades."] set_max_pov_size { new : :: core :: primitive :: u32 , } , # [codec (index = 5)] # [doc = "Set the max head data size for paras."] set_max_head_data_size { new : :: core :: primitive :: u32 , } , # [codec (index = 6)] # [doc = "Set the number of parathread execution cores."] set_parathread_cores { new : :: core :: primitive :: u32 , } , # [codec (index = 7)] # [doc = "Set the number of retries for a particular parathread."] set_parathread_retries { new : :: core :: primitive :: u32 , } , # [codec (index = 8)] # [doc = "Set the parachain validator-group rotation frequency"] set_group_rotation_frequency { new : :: core :: primitive :: u32 , } , # [codec (index = 9)] # [doc = "Set the availability period for parachains."] set_chain_availability_period { new : :: core :: primitive :: u32 , } , # [codec (index = 10)] # [doc = "Set the availability period for parathreads."] set_thread_availability_period { new : :: core :: primitive :: u32 , } , # [codec (index = 11)] # [doc = "Set the scheduling lookahead, in expected number of blocks at peak throughput."] set_scheduling_lookahead { new : :: core :: primitive :: u32 , } , # [codec (index = 12)] # [doc = "Set the maximum number of validators to assign to any core."] set_max_validators_per_core { new : :: core :: option :: Option < :: core :: primitive :: u32 > , } , # [codec (index = 13)] # [doc = "Set the maximum number of validators to use in parachain consensus."] set_max_validators { new : :: core :: option :: Option < :: core :: primitive :: u32 > , } , # [codec (index = 14)] # [doc = "Set the dispute period, in number of sessions to keep for disputes."] set_dispute_period { new : :: core :: primitive :: u32 , } , # [codec (index = 15)] # [doc = "Set the dispute post conclusion acceptance period."] set_dispute_post_conclusion_acceptance_period { new : :: core :: primitive :: u32 , } , # [codec (index = 18)] # [doc = "Set the no show slots, in number of number of consensus slots."] # [doc = "Must be at least 1."] set_no_show_slots { new : :: core :: primitive :: u32 , } , # [codec (index = 19)] # [doc = "Set the total number of delay tranches."] set_n_delay_tranches { new : :: core :: primitive :: u32 , } , # [codec (index = 20)] # [doc = "Set the zeroth delay tranche width."] set_zeroth_delay_tranche_width { new : :: core :: primitive :: u32 , } , # [codec (index = 21)] # [doc = "Set the number of validators needed to approve a block."] set_needed_approvals { new : :: core :: primitive :: u32 , } , # [codec (index = 22)] # [doc = "Set the number of samples to do of the `RelayVRFModulo` approval assignment criterion."] set_relay_vrf_modulo_samples { new : :: core :: primitive :: u32 , } , # [codec (index = 23)] # [doc = "Sets the maximum items that can present in a upward dispatch queue at once."] set_max_upward_queue_count { new : :: core :: primitive :: u32 , } , # [codec (index = 24)] # [doc = "Sets the maximum total size of items that can present in a upward dispatch queue at once."] set_max_upward_queue_size { new : :: core :: primitive :: u32 , } , # [codec (index = 25)] # [doc = "Set the critical downward message size."] set_max_downward_message_size { new : :: core :: primitive :: u32 , } , # [codec (index = 27)] # [doc = "Sets the maximum size of an upward message that can be sent by a candidate."] set_max_upward_message_size { new : :: core :: primitive :: u32 , } , # [codec (index = 28)] # [doc = "Sets the maximum number of messages that a candidate can contain."] set_max_upward_message_num_per_candidate { new : :: core :: primitive :: u32 , } , # [codec (index = 29)] # [doc = "Sets the number of sessions after which an HRMP open channel request expires."] set_hrmp_open_request_ttl { new : :: core :: primitive :: u32 , } , # [codec (index = 30)] # [doc = "Sets the amount of funds that the sender should provide for opening an HRMP channel."] set_hrmp_sender_deposit { new : :: core :: primitive :: u128 , } , # [codec (index = 31)] # [doc = "Sets the amount of funds that the recipient should provide for accepting opening an HRMP"] # [doc = "channel."] set_hrmp_recipient_deposit { new : :: core :: primitive :: u128 , } , # [codec (index = 32)] # [doc = "Sets the maximum number of messages allowed in an HRMP channel at once."] set_hrmp_channel_max_capacity { new : :: core :: primitive :: u32 , } , # [codec (index = 33)] # [doc = "Sets the maximum total size of messages in bytes allowed in an HRMP channel at once."] set_hrmp_channel_max_total_size { new : :: core :: primitive :: u32 , } , # [codec (index = 34)] # [doc = "Sets the maximum number of inbound HRMP channels a parachain is allowed to accept."] set_hrmp_max_parachain_inbound_channels { new : :: core :: primitive :: u32 , } , # [codec (index = 35)] # [doc = "Sets the maximum number of inbound HRMP channels a parathread is allowed to accept."] set_hrmp_max_parathread_inbound_channels { new : :: core :: primitive :: u32 , } , # [codec (index = 36)] # [doc = "Sets the maximum size of a message that could ever be put into an HRMP channel."] set_hrmp_channel_max_message_size { new : :: core :: primitive :: u32 , } , # [codec (index = 37)] # [doc = "Sets the maximum number of outbound HRMP channels a parachain is allowed to open."] set_hrmp_max_parachain_outbound_channels { new : :: core :: primitive :: u32 , } , # [codec (index = 38)] # [doc = "Sets the maximum number of outbound HRMP channels a parathread is allowed to open."] set_hrmp_max_parathread_outbound_channels { new : :: core :: primitive :: u32 , } , # [codec (index = 39)] # [doc = "Sets the maximum number of outbound HRMP messages can be sent by a candidate."] set_hrmp_max_message_num_per_candidate { new : :: core :: primitive :: u32 , } , # [codec (index = 41)] # [doc = "Enable or disable PVF pre-checking. Consult the field documentation prior executing."] set_pvf_checking_enabled { new : :: core :: primitive :: bool , } , # [codec (index = 42)] # [doc = "Set the number of session changes after which a PVF pre-checking voting is rejected."] set_pvf_voting_ttl { new : :: core :: primitive :: u32 , } , # [codec (index = 43)] # [doc = "Sets the minimum delay between announcing the upgrade block for a parachain until the"] # [doc = "upgrade taking place."] # [doc = ""] # [doc = "See the field documentation for information and constraints for the new value."] set_minimum_validation_upgrade_delay { new : :: core :: primitive :: u32 , } , # [codec (index = 44)] # [doc = "Setting this to true will disable consistency checks for the configuration setters."] # [doc = "Use with caution."] set_bypass_consistency_check { new : :: core :: primitive :: bool , } , # [codec (index = 45)] # [doc = "Set the asynchronous backing parameters."] set_async_backing_params { new : runtime_types :: polkadot_primitives :: vstaging :: AsyncBackingParams , } , # [codec (index = 46)] # [doc = "Set PVF executor parameters."] set_executor_params { new : runtime_types :: polkadot_primitives :: v4 :: executor_params :: ExecutorParams , } , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 new value for a configuration parameter is invalid."] + InvalidNewValue, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct HostConfiguration<_0> { + pub max_code_size: ::core::primitive::u32, + pub max_head_data_size: ::core::primitive::u32, + pub max_upward_queue_count: ::core::primitive::u32, + pub max_upward_queue_size: ::core::primitive::u32, + pub max_upward_message_size: ::core::primitive::u32, + pub max_upward_message_num_per_candidate: ::core::primitive::u32, + pub hrmp_max_message_num_per_candidate: ::core::primitive::u32, + pub validation_upgrade_cooldown: _0, + pub validation_upgrade_delay: _0, + pub async_backing_params: + runtime_types::polkadot_primitives::vstaging::AsyncBackingParams, + pub max_pov_size: ::core::primitive::u32, + pub max_downward_message_size: ::core::primitive::u32, + pub hrmp_max_parachain_outbound_channels: ::core::primitive::u32, + pub hrmp_max_parathread_outbound_channels: ::core::primitive::u32, + pub hrmp_sender_deposit: ::core::primitive::u128, + pub hrmp_recipient_deposit: ::core::primitive::u128, + pub hrmp_channel_max_capacity: ::core::primitive::u32, + pub hrmp_channel_max_total_size: ::core::primitive::u32, + pub hrmp_max_parachain_inbound_channels: ::core::primitive::u32, + pub hrmp_max_parathread_inbound_channels: ::core::primitive::u32, + pub hrmp_channel_max_message_size: ::core::primitive::u32, + pub executor_params: + runtime_types::polkadot_primitives::v4::executor_params::ExecutorParams, + pub code_retention_period: _0, + pub parathread_cores: ::core::primitive::u32, + pub parathread_retries: ::core::primitive::u32, + pub group_rotation_frequency: _0, + pub chain_availability_period: _0, + pub thread_availability_period: _0, + pub scheduling_lookahead: ::core::primitive::u32, + pub max_validators_per_core: ::core::option::Option<_0>, + pub max_validators: ::core::option::Option<_0>, + pub dispute_period: ::core::primitive::u32, + pub dispute_post_conclusion_acceptance_period: _0, + pub no_show_slots: ::core::primitive::u32, + pub n_delay_tranches: ::core::primitive::u32, + pub zeroth_delay_tranche_width: ::core::primitive::u32, + pub needed_approvals: ::core::primitive::u32, + pub relay_vrf_modulo_samples: ::core::primitive::u32, + pub pvf_checking_enabled: ::core::primitive::bool, + pub pvf_voting_ttl: ::core::primitive::u32, + pub minimum_validation_upgrade_delay: _0, + } + } + pub mod disputes { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + force_unfreeze, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "Duplicate dispute statement sets provided."] + DuplicateDisputeStatementSets, + #[codec(index = 1)] + #[doc = "Ancient dispute statement provided."] + AncientDisputeStatement, + #[codec(index = 2)] + #[doc = "Validator index on statement is out of bounds for session."] + ValidatorIndexOutOfBounds, + #[codec(index = 3)] + #[doc = "Invalid signature on statement."] + InvalidSignature, + #[codec(index = 4)] + #[doc = "Validator vote submitted more than once to dispute."] + DuplicateStatement, + #[codec(index = 5)] + #[doc = "A dispute where there are only votes on one side."] + SingleSidedDispute, + #[codec(index = 6)] + #[doc = "A dispute vote from a malicious backer."] + MaliciousBacker, + #[codec(index = 7)] + #[doc = "No backing votes were provides along dispute statements."] + MissingBackingVotes, + #[codec(index = 8)] + #[doc = "Unconfirmed dispute statement sets provided."] + UnconfirmedDispute, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 dispute has been initiated. \\[candidate hash, dispute location\\]"] + DisputeInitiated( + runtime_types::polkadot_core_primitives::CandidateHash, + runtime_types::polkadot_runtime_parachains::disputes::DisputeLocation, + ), + #[codec(index = 1)] + #[doc = "A dispute has concluded for or against a candidate."] + #[doc = "`\\[para id, candidate hash, dispute result\\]`"] + DisputeConcluded( + runtime_types::polkadot_core_primitives::CandidateHash, + runtime_types::polkadot_runtime_parachains::disputes::DisputeResult, + ), + #[codec(index = 2)] + #[doc = "A dispute has concluded with supermajority against a candidate."] + #[doc = "Block authors should no longer build on top of this head and should"] + #[doc = "instead revert the block at the given height. This should be the"] + #[doc = "number of the child of the last known valid block in the chain."] + Revert(::core::primitive::u32), + } + } + pub mod slashing { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + # [codec (index = 0)] report_dispute_lost_unsigned { dispute_proof : :: std :: boxed :: Box < runtime_types :: polkadot_runtime_parachains :: disputes :: slashing :: DisputeProof > , key_owner_proof : runtime_types :: sp_session :: MembershipProof , } , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 key ownership proof is invalid."] + InvalidKeyOwnershipProof, + #[codec(index = 1)] + #[doc = "The session index is too old or invalid."] + InvalidSessionIndex, + #[codec(index = 2)] + #[doc = "The candidate hash is invalid."] + InvalidCandidateHash, + #[codec(index = 3)] + #[doc = "There is no pending slash for the given validator index and time"] + #[doc = "slot."] + InvalidValidatorIndex, + #[codec(index = 4)] + #[doc = "The validator index does not match the validator id."] + ValidatorIndexIdMismatch, + #[codec(index = 5)] + #[doc = "The given slashing report is valid but already previously reported."] + DuplicateSlashingReport, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DisputeProof { pub time_slot : runtime_types :: polkadot_runtime_parachains :: disputes :: slashing :: DisputesTimeSlot , pub kind : runtime_types :: polkadot_runtime_parachains :: disputes :: slashing :: SlashingOffenceKind , pub validator_index : runtime_types :: polkadot_primitives :: v4 :: ValidatorIndex , pub validator_id : runtime_types :: polkadot_primitives :: v4 :: validator_app :: Public , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DisputesTimeSlot { + pub session_index: ::core::primitive::u32, + pub candidate_hash: runtime_types::polkadot_core_primitives::CandidateHash, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PendingSlashes { pub keys : :: subxt :: utils :: KeyedVec < runtime_types :: polkadot_primitives :: v4 :: ValidatorIndex , runtime_types :: polkadot_primitives :: v4 :: validator_app :: Public > , pub kind : runtime_types :: polkadot_runtime_parachains :: disputes :: slashing :: SlashingOffenceKind , } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum SlashingOffenceKind { + #[codec(index = 0)] + ForInvalid, + #[codec(index = 1)] + AgainstValid, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum DisputeLocation { + #[codec(index = 0)] + Local, + #[codec(index = 1)] + Remote, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum DisputeResult { + #[codec(index = 0)] + Valid, + #[codec(index = 1)] + Invalid, + } + } + pub mod hrmp { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Initiate opening a channel from a parachain to a given recipient with given channel"] + #[doc = "parameters."] + #[doc = ""] + #[doc = "- `proposed_max_capacity` - specifies how many messages can be in the channel at once."] + #[doc = "- `proposed_max_message_size` - specifies the maximum size of the messages."] + #[doc = ""] + #[doc = "These numbers are a subject to the relay-chain configuration limits."] + #[doc = ""] + #[doc = "The channel can be opened only after the recipient confirms it and only on a session"] + #[doc = "change."] + hrmp_init_open_channel { + recipient: runtime_types::polkadot_parachain::primitives::Id, + proposed_max_capacity: ::core::primitive::u32, + proposed_max_message_size: ::core::primitive::u32, + }, + #[codec(index = 1)] + #[doc = "Accept a pending open channel request from the given sender."] + #[doc = ""] + #[doc = "The channel will be opened only on the next session boundary."] + hrmp_accept_open_channel { + sender: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 2)] + #[doc = "Initiate unilateral closing of a channel. The origin must be either the sender or the"] + #[doc = "recipient in the channel being closed."] + #[doc = ""] + #[doc = "The closure can only happen on a session change."] + hrmp_close_channel { + channel_id: + runtime_types::polkadot_parachain::primitives::HrmpChannelId, + }, + #[codec(index = 3)] + #[doc = "This extrinsic triggers the cleanup of all the HRMP storage items that"] + #[doc = "a para may have. Normally this happens once per session, but this allows"] + #[doc = "you to trigger the cleanup immediately for a specific parachain."] + #[doc = ""] + #[doc = "Origin must be Root."] + #[doc = ""] + #[doc = "Number of inbound and outbound channels for `para` must be provided as witness data of weighing."] + force_clean_hrmp { + para: runtime_types::polkadot_parachain::primitives::Id, + inbound: ::core::primitive::u32, + outbound: ::core::primitive::u32, + }, + #[codec(index = 4)] + #[doc = "Force process HRMP open channel requests."] + #[doc = ""] + #[doc = "If there are pending HRMP open channel requests, you can use this"] + #[doc = "function process all of those requests immediately."] + #[doc = ""] + #[doc = "Total number of opening channels must be provided as witness data of weighing."] + force_process_hrmp_open { channels: ::core::primitive::u32 }, + #[codec(index = 5)] + #[doc = "Force process HRMP close channel requests."] + #[doc = ""] + #[doc = "If there are pending HRMP close channel requests, you can use this"] + #[doc = "function process all of those requests immediately."] + #[doc = ""] + #[doc = "Total number of closing channels must be provided as witness data of weighing."] + force_process_hrmp_close { channels: ::core::primitive::u32 }, + #[codec(index = 6)] + #[doc = "This cancels a pending open channel request. It can be canceled by either of the sender"] + #[doc = "or the recipient for that request. The origin must be either of those."] + #[doc = ""] + #[doc = "The cancellation happens immediately. It is not possible to cancel the request if it is"] + #[doc = "already accepted."] + #[doc = ""] + #[doc = "Total number of open requests (i.e. `HrmpOpenChannelRequestsList`) must be provided as"] + #[doc = "witness data."] + hrmp_cancel_open_request { + channel_id: + runtime_types::polkadot_parachain::primitives::HrmpChannelId, + open_requests: ::core::primitive::u32, + }, + #[codec(index = 7)] + #[doc = "Open a channel from a `sender` to a `recipient` `ParaId` using the Root origin. Although"] + #[doc = "opened by Root, the `max_capacity` and `max_message_size` are still subject to the Relay"] + #[doc = "Chain's configured limits."] + #[doc = ""] + #[doc = "Expected use is when one of the `ParaId`s involved in the channel is governed by the"] + #[doc = "Relay Chain, e.g. a common good parachain."] + force_open_hrmp_channel { + sender: runtime_types::polkadot_parachain::primitives::Id, + recipient: runtime_types::polkadot_parachain::primitives::Id, + max_capacity: ::core::primitive::u32, + max_message_size: ::core::primitive::u32, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 sender tried to open a channel to themselves."] + OpenHrmpChannelToSelf, + #[codec(index = 1)] + #[doc = "The recipient is not a valid para."] + OpenHrmpChannelInvalidRecipient, + #[codec(index = 2)] + #[doc = "The requested capacity is zero."] + OpenHrmpChannelZeroCapacity, + #[codec(index = 3)] + #[doc = "The requested capacity exceeds the global limit."] + OpenHrmpChannelCapacityExceedsLimit, + #[codec(index = 4)] + #[doc = "The requested maximum message size is 0."] + OpenHrmpChannelZeroMessageSize, + #[codec(index = 5)] + #[doc = "The open request requested the message size that exceeds the global limit."] + OpenHrmpChannelMessageSizeExceedsLimit, + #[codec(index = 6)] + #[doc = "The channel already exists"] + OpenHrmpChannelAlreadyExists, + #[codec(index = 7)] + #[doc = "There is already a request to open the same channel."] + OpenHrmpChannelAlreadyRequested, + #[codec(index = 8)] + #[doc = "The sender already has the maximum number of allowed outbound channels."] + OpenHrmpChannelLimitExceeded, + #[codec(index = 9)] + #[doc = "The channel from the sender to the origin doesn't exist."] + AcceptHrmpChannelDoesntExist, + #[codec(index = 10)] + #[doc = "The channel is already confirmed."] + AcceptHrmpChannelAlreadyConfirmed, + #[codec(index = 11)] + #[doc = "The recipient already has the maximum number of allowed inbound channels."] + AcceptHrmpChannelLimitExceeded, + #[codec(index = 12)] + #[doc = "The origin tries to close a channel where it is neither the sender nor the recipient."] + CloseHrmpChannelUnauthorized, + #[codec(index = 13)] + #[doc = "The channel to be closed doesn't exist."] + CloseHrmpChannelDoesntExist, + #[codec(index = 14)] + #[doc = "The channel close request is already requested."] + CloseHrmpChannelAlreadyUnderway, + #[codec(index = 15)] + #[doc = "Canceling is requested by neither the sender nor recipient of the open channel request."] + CancelHrmpOpenChannelUnauthorized, + #[codec(index = 16)] + #[doc = "The open request doesn't exist."] + OpenHrmpChannelDoesntExist, + #[codec(index = 17)] + #[doc = "Cannot cancel an HRMP open channel request because it is already confirmed."] + OpenHrmpChannelAlreadyConfirmed, + #[codec(index = 18)] + #[doc = "The provided witness data is wrong."] + WrongWitness, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "Open HRMP channel requested."] + #[doc = "`[sender, recipient, proposed_max_capacity, proposed_max_message_size]`"] + OpenChannelRequested( + runtime_types::polkadot_parachain::primitives::Id, + runtime_types::polkadot_parachain::primitives::Id, + ::core::primitive::u32, + ::core::primitive::u32, + ), + #[codec(index = 1)] + #[doc = "An HRMP channel request sent by the receiver was canceled by either party."] + #[doc = "`[by_parachain, channel_id]`"] + OpenChannelCanceled( + runtime_types::polkadot_parachain::primitives::Id, + runtime_types::polkadot_parachain::primitives::HrmpChannelId, + ), + #[codec(index = 2)] + #[doc = "Open HRMP channel accepted. `[sender, recipient]`"] + OpenChannelAccepted( + runtime_types::polkadot_parachain::primitives::Id, + runtime_types::polkadot_parachain::primitives::Id, + ), + #[codec(index = 3)] + #[doc = "HRMP channel closed. `[by_parachain, channel_id]`"] + ChannelClosed( + runtime_types::polkadot_parachain::primitives::Id, + runtime_types::polkadot_parachain::primitives::HrmpChannelId, + ), + #[codec(index = 4)] + #[doc = "An HRMP channel was opened via Root origin."] + #[doc = "`[sender, recipient, proposed_max_capacity, proposed_max_message_size]`"] + HrmpChannelForceOpened( + runtime_types::polkadot_parachain::primitives::Id, + runtime_types::polkadot_parachain::primitives::Id, + ::core::primitive::u32, + ::core::primitive::u32, + ), + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct HrmpChannel { + pub max_capacity: ::core::primitive::u32, + pub max_total_size: ::core::primitive::u32, + pub max_message_size: ::core::primitive::u32, + pub msg_count: ::core::primitive::u32, + pub total_size: ::core::primitive::u32, + pub mqc_head: ::core::option::Option<::subxt::utils::H256>, + pub sender_deposit: ::core::primitive::u128, + pub recipient_deposit: ::core::primitive::u128, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct HrmpOpenChannelRequest { + pub confirmed: ::core::primitive::bool, + pub _age: ::core::primitive::u32, + pub sender_deposit: ::core::primitive::u128, + pub max_message_size: ::core::primitive::u32, + pub max_capacity: ::core::primitive::u32, + pub max_total_size: ::core::primitive::u32, + } + } + pub mod inclusion { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call {} + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "Validator indices are out of order or contains duplicates."] + UnsortedOrDuplicateValidatorIndices, + #[codec(index = 1)] + #[doc = "Dispute statement sets are out of order or contain duplicates."] + UnsortedOrDuplicateDisputeStatementSet, + #[codec(index = 2)] + #[doc = "Backed candidates are out of order (core index) or contain duplicates."] + UnsortedOrDuplicateBackedCandidates, + #[codec(index = 3)] + #[doc = "A different relay parent was provided compared to the on-chain stored one."] + UnexpectedRelayParent, + #[codec(index = 4)] + #[doc = "Availability bitfield has unexpected size."] + WrongBitfieldSize, + #[codec(index = 5)] + #[doc = "Bitfield consists of zeros only."] + BitfieldAllZeros, + #[codec(index = 6)] + #[doc = "Multiple bitfields submitted by same validator or validators out of order by index."] + BitfieldDuplicateOrUnordered, + #[codec(index = 7)] + #[doc = "Validator index out of bounds."] + ValidatorIndexOutOfBounds, + #[codec(index = 8)] + #[doc = "Invalid signature"] + InvalidBitfieldSignature, + #[codec(index = 9)] + #[doc = "Candidate submitted but para not scheduled."] + UnscheduledCandidate, + #[codec(index = 10)] + #[doc = "Candidate scheduled despite pending candidate already existing for the para."] + CandidateScheduledBeforeParaFree, + #[codec(index = 11)] + #[doc = "Candidate included with the wrong collator."] + WrongCollator, + #[codec(index = 12)] + #[doc = "Scheduled cores out of order."] + ScheduledOutOfOrder, + #[codec(index = 13)] + #[doc = "Head data exceeds the configured maximum."] + HeadDataTooLarge, + #[codec(index = 14)] + #[doc = "Code upgrade prematurely."] + PrematureCodeUpgrade, + #[codec(index = 15)] + #[doc = "Output code is too large"] + NewCodeTooLarge, + #[codec(index = 16)] + #[doc = "Candidate not in parent context."] + CandidateNotInParentContext, + #[codec(index = 17)] + #[doc = "Invalid group index in core assignment."] + InvalidGroupIndex, + #[codec(index = 18)] + #[doc = "Insufficient (non-majority) backing."] + InsufficientBacking, + #[codec(index = 19)] + #[doc = "Invalid (bad signature, unknown validator, etc.) backing."] + InvalidBacking, + #[codec(index = 20)] + #[doc = "Collator did not sign PoV."] + NotCollatorSigned, + #[codec(index = 21)] + #[doc = "The validation data hash does not match expected."] + ValidationDataHashMismatch, + #[codec(index = 22)] + #[doc = "The downward message queue is not processed correctly."] + IncorrectDownwardMessageHandling, + #[codec(index = 23)] + #[doc = "At least one upward message sent does not pass the acceptance criteria."] + InvalidUpwardMessages, + #[codec(index = 24)] + #[doc = "The candidate didn't follow the rules of HRMP watermark advancement."] + HrmpWatermarkMishandling, + #[codec(index = 25)] + #[doc = "The HRMP messages sent by the candidate is not valid."] + InvalidOutboundHrmp, + #[codec(index = 26)] + #[doc = "The validation code hash of the candidate is not valid."] + InvalidValidationCodeHash, + #[codec(index = 27)] + #[doc = "The `para_head` hash in the candidate descriptor doesn't match the hash of the actual para head in the"] + #[doc = "commitments."] + ParaHeadMismatch, + #[codec(index = 28)] + #[doc = "A bitfield that references a freed core,"] + #[doc = "either intentionally or as part of a concluded"] + #[doc = "invalid dispute."] + BitfieldReferencesFreedCore, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 candidate was backed. `[candidate, head_data]`"] + CandidateBacked( + runtime_types::polkadot_primitives::v4::CandidateReceipt< + ::subxt::utils::H256, + >, + runtime_types::polkadot_parachain::primitives::HeadData, + runtime_types::polkadot_primitives::v4::CoreIndex, + runtime_types::polkadot_primitives::v4::GroupIndex, + ), + #[codec(index = 1)] + #[doc = "A candidate was included. `[candidate, head_data]`"] + CandidateIncluded( + runtime_types::polkadot_primitives::v4::CandidateReceipt< + ::subxt::utils::H256, + >, + runtime_types::polkadot_parachain::primitives::HeadData, + runtime_types::polkadot_primitives::v4::CoreIndex, + runtime_types::polkadot_primitives::v4::GroupIndex, + ), + #[codec(index = 2)] + #[doc = "A candidate timed out. `[candidate, head_data]`"] + CandidateTimedOut( + runtime_types::polkadot_primitives::v4::CandidateReceipt< + ::subxt::utils::H256, + >, + runtime_types::polkadot_parachain::primitives::HeadData, + runtime_types::polkadot_primitives::v4::CoreIndex, + ), + #[codec(index = 3)] + #[doc = "Some upward messages have been received and will be processed."] + UpwardMessagesReceived { + from: runtime_types::polkadot_parachain::primitives::Id, + count: ::core::primitive::u32, + }, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum AggregateMessageOrigin { + #[codec(index = 0)] + Ump(runtime_types::polkadot_runtime_parachains::inclusion::UmpQueueId), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct AvailabilityBitfieldRecord<_0> { + pub bitfield: runtime_types::polkadot_primitives::v4::AvailabilityBitfield, + pub submitted_at: _0, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CandidatePendingAvailability<_0, _1> { + pub core: runtime_types::polkadot_primitives::v4::CoreIndex, + pub hash: runtime_types::polkadot_core_primitives::CandidateHash, + pub descriptor: runtime_types::polkadot_primitives::v4::CandidateDescriptor<_0>, + pub availability_votes: ::subxt::utils::bits::DecodedBits< + ::core::primitive::u8, + ::subxt::utils::bits::Lsb0, + >, + pub backers: ::subxt::utils::bits::DecodedBits< + ::core::primitive::u8, + ::subxt::utils::bits::Lsb0, + >, + pub relay_parent_number: _1, + pub backed_in_number: _1, + pub backing_group: runtime_types::polkadot_primitives::v4::GroupIndex, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum UmpQueueId { + #[codec(index = 0)] + Para(runtime_types::polkadot_parachain::primitives::Id), + } + } + pub mod initializer { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Issue a signal to the consensus engine to forcibly act as though all parachain"] + #[doc = "blocks in all relay chain blocks up to and including the given number in the current"] + #[doc = "chain are valid and should be finalized."] + force_approve { up_to: ::core::primitive::u32 }, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BufferedSessionChange { + pub validators: ::std::vec::Vec< + runtime_types::polkadot_primitives::v4::validator_app::Public, + >, + pub queued: ::std::vec::Vec< + runtime_types::polkadot_primitives::v4::validator_app::Public, + >, + pub session_index: ::core::primitive::u32, + } + } + pub mod origin { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Origin { + #[codec(index = 0)] + Parachain(runtime_types::polkadot_parachain::primitives::Id), + } + } + } + pub mod paras { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Set the storage for the parachain validation code immediately."] + force_set_current_code { + para: runtime_types::polkadot_parachain::primitives::Id, + new_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + }, + #[codec(index = 1)] + #[doc = "Set the storage for the current parachain head data immediately."] + force_set_current_head { + para: runtime_types::polkadot_parachain::primitives::Id, + new_head: runtime_types::polkadot_parachain::primitives::HeadData, + }, + #[codec(index = 2)] + #[doc = "Schedule an upgrade as if it was scheduled in the given relay parent block."] + force_schedule_code_upgrade { + para: runtime_types::polkadot_parachain::primitives::Id, + new_code: runtime_types::polkadot_parachain::primitives::ValidationCode, + relay_parent_number: ::core::primitive::u32, + }, + #[codec(index = 3)] + #[doc = "Note a new block head for para within the context of the current block."] + force_note_new_head { + para: runtime_types::polkadot_parachain::primitives::Id, + new_head: runtime_types::polkadot_parachain::primitives::HeadData, + }, + #[codec(index = 4)] + #[doc = "Put a parachain directly into the next session's action queue."] + #[doc = "We can't queue it any sooner than this without going into the"] + #[doc = "initializer..."] + force_queue_action { + para: runtime_types::polkadot_parachain::primitives::Id, + }, + #[codec(index = 5)] + #[doc = "Adds the validation code to the storage."] + #[doc = ""] + #[doc = "The code will not be added if it is already present. Additionally, if PVF pre-checking"] + #[doc = "is running for that code, it will be instantly accepted."] + #[doc = ""] + #[doc = "Otherwise, the code will be added into the storage. Note that the code will be added"] + #[doc = "into storage with reference count 0. This is to account the fact that there are no users"] + #[doc = "for this code yet. The caller will have to make sure that this code eventually gets"] + #[doc = "used by some parachain or removed from the storage to avoid storage leaks. For the latter"] + #[doc = "prefer to use the `poke_unused_validation_code` dispatchable to raw storage manipulation."] + #[doc = ""] + #[doc = "This function is mainly meant to be used for upgrading parachains that do not follow"] + #[doc = "the go-ahead signal while the PVF pre-checking feature is enabled."] + add_trusted_validation_code { + validation_code: + runtime_types::polkadot_parachain::primitives::ValidationCode, + }, + #[codec(index = 6)] + #[doc = "Remove the validation code from the storage iff the reference count is 0."] + #[doc = ""] + #[doc = "This is better than removing the storage directly, because it will not remove the code"] + #[doc = "that was suddenly got used by some parachain while this dispatchable was pending"] + #[doc = "dispatching."] + poke_unused_validation_code { + validation_code_hash: + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + }, + #[codec(index = 7)] + #[doc = "Includes a statement for a PVF pre-checking vote. Potentially, finalizes the vote and"] + #[doc = "enacts the results if that was the last vote before achieving the supermajority."] + include_pvf_check_statement { + stmt: runtime_types::polkadot_primitives::v4::PvfCheckStatement, + signature: + runtime_types::polkadot_primitives::v4::validator_app::Signature, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "Para is not registered in our system."] + NotRegistered, + #[codec(index = 1)] + #[doc = "Para cannot be onboarded because it is already tracked by our system."] + CannotOnboard, + #[codec(index = 2)] + #[doc = "Para cannot be offboarded at this time."] + CannotOffboard, + #[codec(index = 3)] + #[doc = "Para cannot be upgraded to a parachain."] + CannotUpgrade, + #[codec(index = 4)] + #[doc = "Para cannot be downgraded to a parathread."] + CannotDowngrade, + #[codec(index = 5)] + #[doc = "The statement for PVF pre-checking is stale."] + PvfCheckStatementStale, + #[codec(index = 6)] + #[doc = "The statement for PVF pre-checking is for a future session."] + PvfCheckStatementFuture, + #[codec(index = 7)] + #[doc = "Claimed validator index is out of bounds."] + PvfCheckValidatorIndexOutOfBounds, + #[codec(index = 8)] + #[doc = "The signature for the PVF pre-checking is invalid."] + PvfCheckInvalidSignature, + #[codec(index = 9)] + #[doc = "The given validator already has cast a vote."] + PvfCheckDoubleVote, + #[codec(index = 10)] + #[doc = "The given PVF does not exist at the moment of process a vote."] + PvfCheckSubjectInvalid, + #[codec(index = 11)] + #[doc = "Parachain cannot currently schedule a code upgrade."] + CannotUpgradeCode, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "Current code has been updated for a Para. `para_id`"] + CurrentCodeUpdated(runtime_types::polkadot_parachain::primitives::Id), + #[codec(index = 1)] + #[doc = "Current head has been updated for a Para. `para_id`"] + CurrentHeadUpdated(runtime_types::polkadot_parachain::primitives::Id), + #[codec(index = 2)] + #[doc = "A code upgrade has been scheduled for a Para. `para_id`"] + CodeUpgradeScheduled(runtime_types::polkadot_parachain::primitives::Id), + #[codec(index = 3)] + #[doc = "A new head has been noted for a Para. `para_id`"] + NewHeadNoted(runtime_types::polkadot_parachain::primitives::Id), + #[codec(index = 4)] + #[doc = "A para has been queued to execute pending actions. `para_id`"] + ActionQueued( + runtime_types::polkadot_parachain::primitives::Id, + ::core::primitive::u32, + ), + #[codec(index = 5)] + #[doc = "The given para either initiated or subscribed to a PVF check for the given validation"] + #[doc = "code. `code_hash` `para_id`"] + PvfCheckStarted( + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + runtime_types::polkadot_parachain::primitives::Id, + ), + #[codec(index = 6)] + #[doc = "The given validation code was accepted by the PVF pre-checking vote."] + #[doc = "`code_hash` `para_id`"] + PvfCheckAccepted( + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + runtime_types::polkadot_parachain::primitives::Id, + ), + #[codec(index = 7)] + #[doc = "The given validation code was rejected by the PVF pre-checking vote."] + #[doc = "`code_hash` `para_id`"] + PvfCheckRejected( + runtime_types::polkadot_parachain::primitives::ValidationCodeHash, + runtime_types::polkadot_parachain::primitives::Id, + ), + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ParaGenesisArgs { + pub genesis_head: runtime_types::polkadot_parachain::primitives::HeadData, + pub validation_code: + runtime_types::polkadot_parachain::primitives::ValidationCode, + pub para_kind: ::core::primitive::bool, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum ParaLifecycle { + #[codec(index = 0)] + Onboarding, + #[codec(index = 1)] + Parathread, + #[codec(index = 2)] + Parachain, + #[codec(index = 3)] + UpgradingParathread, + #[codec(index = 4)] + DowngradingParachain, + #[codec(index = 5)] + OffboardingParathread, + #[codec(index = 6)] + OffboardingParachain, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ParaPastCodeMeta<_0> { + pub upgrade_times: ::std::vec::Vec< + runtime_types::polkadot_runtime_parachains::paras::ReplacementTimes<_0>, + >, + pub last_pruned: ::core::option::Option<_0>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PvfCheckActiveVoteState<_0> { + pub votes_accept: ::subxt::utils::bits::DecodedBits< + ::core::primitive::u8, + ::subxt::utils::bits::Lsb0, + >, + pub votes_reject: ::subxt::utils::bits::DecodedBits< + ::core::primitive::u8, + ::subxt::utils::bits::Lsb0, + >, + pub age: ::core::primitive::u32, + pub created_at: _0, + pub causes: ::std::vec::Vec< + runtime_types::polkadot_runtime_parachains::paras::PvfCheckCause<_0>, + >, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum PvfCheckCause<_0> { + #[codec(index = 0)] + Onboarding(runtime_types::polkadot_parachain::primitives::Id), + #[codec(index = 1)] + Upgrade { + id: runtime_types::polkadot_parachain::primitives::Id, + relay_parent_number: _0, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ReplacementTimes<_0> { + pub expected_at: _0, + pub activated_at: _0, + } + } + pub mod paras_inherent { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call { + #[codec(index = 0)] + #[doc = "Enter the paras inherent. This will process bitfields and backed candidates."] + enter { + data: runtime_types::polkadot_primitives::v4::InherentData< + runtime_types::sp_runtime::generic::header::Header< + ::core::primitive::u32, + runtime_types::sp_runtime::traits::BlakeTwo256, + >, + >, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[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 = "Inclusion inherent called more than once per block."] + TooManyInclusionInherents, + #[codec(index = 1)] + #[doc = "The hash of the submitted parent header doesn't correspond to the saved block hash of"] + #[doc = "the parent."] + InvalidParentHeader, + #[codec(index = 2)] + #[doc = "Disputed candidate that was concluded invalid."] + CandidateConcludedInvalid, + #[codec(index = 3)] + #[doc = "The data given to the inherent will result in an overweight block."] + InherentOverweight, + #[codec(index = 4)] + #[doc = "The ordering of dispute statements was invalid."] + DisputeStatementsUnsortedOrDuplicates, + #[codec(index = 5)] + #[doc = "A dispute statement was invalid."] + DisputeInvalid, + } + } + } + pub mod scheduler { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum AssignmentKind { + #[codec(index = 0)] + Parachain, + #[codec(index = 1)] + Parathread( + runtime_types::polkadot_primitives::v4::collator_app::Public, + ::core::primitive::u32, + ), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct CoreAssignment { + pub core: runtime_types::polkadot_primitives::v4::CoreIndex, + pub para_id: runtime_types::polkadot_parachain::primitives::Id, + pub kind: runtime_types::polkadot_runtime_parachains::scheduler::AssignmentKind, + pub group_idx: runtime_types::polkadot_primitives::v4::GroupIndex, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ParathreadClaimQueue { + pub queue: ::std::vec::Vec< + runtime_types::polkadot_runtime_parachains::scheduler::QueuedParathread, + >, + pub next_core_offset: ::core::primitive::u32, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct QueuedParathread { + pub claim: runtime_types::polkadot_primitives::v4::ParathreadEntry, + pub core_offset: ::core::primitive::u32, + } + } + pub mod shared { + use super::runtime_types; + pub mod pallet { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + #[doc = "Contains one variant per dispatchable that can be called by an extrinsic."] + pub enum Call {} + } + } + } + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct FixedI64(pub ::core::primitive::i64); + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PerU16(pub ::core::primitive::u16); + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Perbill(pub ::core::primitive::u32); + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Percent(pub ::core::primitive::u8); + #[derive( + :: subxt :: ext :: codec :: CompactAs, + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Permill(pub ::core::primitive::u32); + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PrimaryPreDigest { + pub authority_index: ::core::primitive::u32, + pub slot: runtime_types::sp_consensus_slots::Slot, + pub vrf_signature: runtime_types::sp_core::sr25519::vrf::VrfSignature, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct SecondaryVRFPreDigest { + pub authority_index: ::core::primitive::u32, + pub slot: runtime_types::sp_consensus_slots::Slot, + pub vrf_signature: runtime_types::sp_core::sr25519::vrf::VrfSignature, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum AllowedSlots { + #[codec(index = 0)] + PrimarySlots, + #[codec(index = 1)] + PrimaryAndSecondaryPlainSlots, + #[codec(index = 2)] + PrimaryAndSecondaryVRFSlots, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BabeEpochConfiguration { + pub c: (::core::primitive::u64, ::core::primitive::u64), + pub allowed_slots: runtime_types::sp_consensus_babe::AllowedSlots, + } + } + pub mod sp_consensus_beefy { + use super::runtime_types; + pub mod commitment { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Commitment<_0> { + pub payload: runtime_types::sp_consensus_beefy::payload::Payload, + pub block_number: _0, + pub validator_set_id: ::core::primitive::u64, + } + } + pub mod crypto { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Public(pub runtime_types::sp_core::ecdsa::Public); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Signature(pub runtime_types::sp_core::ecdsa::Signature); + } + pub mod mmr { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BeefyAuthoritySet<_0> { + pub id: ::core::primitive::u64, + pub len: ::core::primitive::u32, + pub root: _0, + } + } + pub mod payload { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Payload( + pub ::std::vec::Vec<( + [::core::primitive::u8; 2usize], + ::std::vec::Vec<::core::primitive::u8>, + )>, + ); + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct EquivocationProof<_0, _1, _2> { + pub first: runtime_types::sp_consensus_beefy::VoteMessage<_0, _1, _2>, + pub second: runtime_types::sp_consensus_beefy::VoteMessage<_0, _1, _2>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct VoteMessage<_0, _1, _2> { + pub commitment: runtime_types::sp_consensus_beefy::commitment::Commitment<_0>, + pub id: _1, + pub signature: _2, + } + } + pub mod sp_consensus_grandpa { + use super::runtime_types; + pub mod app { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Public(pub runtime_types::sp_core::ed25519::Public); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Signature(pub runtime_types::sp_core::ed25519::Signature); + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Equivocation<_0, _1> { + #[codec(index = 0)] + Prevote( + runtime_types::finality_grandpa::Equivocation< + runtime_types::sp_consensus_grandpa::app::Public, + runtime_types::finality_grandpa::Prevote<_0, _1>, + runtime_types::sp_consensus_grandpa::app::Signature, + >, + ), + #[codec(index = 1)] + Precommit( + runtime_types::finality_grandpa::Equivocation< + runtime_types::sp_consensus_grandpa::app::Public, + runtime_types::finality_grandpa::Precommit<_0, _1>, + runtime_types::sp_consensus_grandpa::app::Signature, + >, + ), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct EquivocationProof<_0, _1> { + pub set_id: ::core::primitive::u64, + pub equivocation: runtime_types::sp_consensus_grandpa::Equivocation<_0, _1>, + } + } + pub mod sp_consensus_slots { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Slot(pub ::core::primitive::u64); + } + pub mod sp_core { + use super::runtime_types; + pub mod crypto { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct KeyTypeId(pub [::core::primitive::u8; 4usize]); + } + pub mod ecdsa { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Public(pub [::core::primitive::u8; 33usize]); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Signature(pub [::core::primitive::u8; 65usize]); + } + pub mod ed25519 { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Public(pub [::core::primitive::u8; 32usize]); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Signature(pub [::core::primitive::u8; 64usize]); + } + pub mod offchain { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct OpaqueMultiaddr(pub ::std::vec::Vec<::core::primitive::u8>); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct OpaqueNetworkState { + pub peer_id: runtime_types::sp_core::OpaquePeerId, + pub external_addresses: + ::std::vec::Vec, + } + } + pub mod sr25519 { + use super::runtime_types; + pub mod vrf { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct VrfSignature { + pub output: [::core::primitive::u8; 32usize], + pub proof: [::core::primitive::u8; 64usize], + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Public(pub [::core::primitive::u8; 32usize]); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Signature(pub [::core::primitive::u8; 64usize]); + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct OpaquePeerId(pub ::std::vec::Vec<::core::primitive::u8>); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Void {} + } + pub mod sp_npos_elections { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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 digest { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Digest { + pub logs: + ::std::vec::Vec, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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 traits { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct BlakeTwo256; + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + #[codec(index = 13)] + RootNotAllowed, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DispatchErrorWithPostInfo<_0> { + pub post_info: _0, + pub error: runtime_types::sp_runtime::DispatchError, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct ModuleError { + pub index: ::core::primitive::u8, + pub error: [::core::primitive::u8; 4usize], + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum MultiSigner { + #[codec(index = 0)] + Ed25519(runtime_types::sp_core::ed25519::Public), + #[codec(index = 1)] + Sr25519(runtime_types::sp_core::sr25519::Public), + #[codec(index = 2)] + Ecdsa(runtime_types::sp_core::ecdsa::Public), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum TokenError { + #[codec(index = 0)] + FundsUnavailable, + #[codec(index = 1)] + OnlyProvider, + #[codec(index = 2)] + BelowMinimum, + #[codec(index = 3)] + CannotCreate, + #[codec(index = 4)] + UnknownAsset, + #[codec(index = 5)] + Frozen, + #[codec(index = 6)] + Unsupported, + #[codec(index = 7)] + CannotCreateHold, + #[codec(index = 8)] + NotExpendable, + #[codec(index = 9)] + Blocked, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct OffenceDetails<_0, _1> { + pub offender: _1, + pub reporters: ::std::vec::Vec<_0>, + } + } + } + pub mod sp_version { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + 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, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Weight { + #[codec(compact)] + pub ref_time: ::core::primitive::u64, + #[codec(compact)] + pub proof_size: ::core::primitive::u64, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct RuntimeDbWeight { + pub read: ::core::primitive::u64, + pub write: ::core::primitive::u64, + } + } + pub mod xcm { + use super::runtime_types; + pub mod double_encoded { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DoubleEncoded { + pub encoded: ::std::vec::Vec<::core::primitive::u8>, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct DoubleEncoded2 { + pub encoded: ::std::vec::Vec<::core::primitive::u8>, + } + } + pub mod v2 { + use super::runtime_types; + pub mod junction { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Junction { + #[codec(index = 0)] + Parachain(#[codec(compact)] ::core::primitive::u32), + #[codec(index = 1)] + AccountId32 { + network: runtime_types::xcm::v2::NetworkId, + id: [::core::primitive::u8; 32usize], + }, + #[codec(index = 2)] + AccountIndex64 { + network: runtime_types::xcm::v2::NetworkId, + #[codec(compact)] + index: ::core::primitive::u64, + }, + #[codec(index = 3)] + AccountKey20 { + network: runtime_types::xcm::v2::NetworkId, + key: [::core::primitive::u8; 20usize], + }, + #[codec(index = 4)] + PalletInstance(::core::primitive::u8), + #[codec(index = 5)] + GeneralIndex(#[codec(compact)] ::core::primitive::u128), + #[codec(index = 6)] + GeneralKey( + runtime_types::bounded_collections::weak_bounded_vec::WeakBoundedVec< + ::core::primitive::u8, + >, + ), + #[codec(index = 7)] + OnlyChild, + #[codec(index = 8)] + Plurality { + id: runtime_types::xcm::v2::BodyId, + part: runtime_types::xcm::v2::BodyPart, + }, + } + } + pub mod multiasset { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum AssetId { + #[codec(index = 0)] + Concrete(runtime_types::xcm::v2::multilocation::MultiLocation), + #[codec(index = 1)] + Abstract(::std::vec::Vec<::core::primitive::u8>), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum AssetInstance { + #[codec(index = 0)] + Undefined, + #[codec(index = 1)] + Index(#[codec(compact)] ::core::primitive::u128), + #[codec(index = 2)] + Array4([::core::primitive::u8; 4usize]), + #[codec(index = 3)] + Array8([::core::primitive::u8; 8usize]), + #[codec(index = 4)] + Array16([::core::primitive::u8; 16usize]), + #[codec(index = 5)] + Array32([::core::primitive::u8; 32usize]), + #[codec(index = 6)] + Blob(::std::vec::Vec<::core::primitive::u8>), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Fungibility { + #[codec(index = 0)] + Fungible(#[codec(compact)] ::core::primitive::u128), + #[codec(index = 1)] + NonFungible(runtime_types::xcm::v2::multiasset::AssetInstance), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MultiAsset { + pub id: runtime_types::xcm::v2::multiasset::AssetId, + pub fun: runtime_types::xcm::v2::multiasset::Fungibility, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum MultiAssetFilter { + #[codec(index = 0)] + Definite(runtime_types::xcm::v2::multiasset::MultiAssets), + #[codec(index = 1)] + Wild(runtime_types::xcm::v2::multiasset::WildMultiAsset), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MultiAssets( + pub ::std::vec::Vec, + ); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum WildFungibility { + #[codec(index = 0)] + Fungible, + #[codec(index = 1)] + NonFungible, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum WildMultiAsset { + #[codec(index = 0)] + All, + #[codec(index = 1)] + AllOf { + id: runtime_types::xcm::v2::multiasset::AssetId, + fun: runtime_types::xcm::v2::multiasset::WildFungibility, + }, + } + } + pub mod multilocation { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Junctions { + #[codec(index = 0)] + Here, + #[codec(index = 1)] + X1(runtime_types::xcm::v2::junction::Junction), + #[codec(index = 2)] + X2( + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + ), + #[codec(index = 3)] + X3( + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + ), + #[codec(index = 4)] + X4( + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + ), + #[codec(index = 5)] + X5( + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + ), + #[codec(index = 6)] + X6( + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + ), + #[codec(index = 7)] + X7( + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + ), + #[codec(index = 8)] + X8( + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + runtime_types::xcm::v2::junction::Junction, + ), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MultiLocation { + pub parents: ::core::primitive::u8, + pub interior: runtime_types::xcm::v2::multilocation::Junctions, + } + } + pub mod traits { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Error { + #[codec(index = 0)] + Overflow, + #[codec(index = 1)] + Unimplemented, + #[codec(index = 2)] + UntrustedReserveLocation, + #[codec(index = 3)] + UntrustedTeleportLocation, + #[codec(index = 4)] + MultiLocationFull, + #[codec(index = 5)] + MultiLocationNotInvertible, + #[codec(index = 6)] + BadOrigin, + #[codec(index = 7)] + InvalidLocation, + #[codec(index = 8)] + AssetNotFound, + #[codec(index = 9)] + FailedToTransactAsset, + #[codec(index = 10)] + NotWithdrawable, + #[codec(index = 11)] + LocationCannotHold, + #[codec(index = 12)] + ExceedsMaxMessageSize, + #[codec(index = 13)] + DestinationUnsupported, + #[codec(index = 14)] + Transport, + #[codec(index = 15)] + Unroutable, + #[codec(index = 16)] + UnknownClaim, + #[codec(index = 17)] + FailedToDecode, + #[codec(index = 18)] + MaxWeightInvalid, + #[codec(index = 19)] + NotHoldingFees, + #[codec(index = 20)] + TooExpensive, + #[codec(index = 21)] + Trap(::core::primitive::u64), + #[codec(index = 22)] + UnhandledXcmVersion, + #[codec(index = 23)] + WeightLimitReached(::core::primitive::u64), + #[codec(index = 24)] + Barrier, + #[codec(index = 25)] + WeightNotComputable, + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum BodyId { + #[codec(index = 0)] + Unit, + #[codec(index = 1)] + Named( + runtime_types::bounded_collections::weak_bounded_vec::WeakBoundedVec< + ::core::primitive::u8, + >, + ), + #[codec(index = 2)] + Index(#[codec(compact)] ::core::primitive::u32), + #[codec(index = 3)] + Executive, + #[codec(index = 4)] + Technical, + #[codec(index = 5)] + Legislative, + #[codec(index = 6)] + Judicial, + #[codec(index = 7)] + Defense, + #[codec(index = 8)] + Administration, + #[codec(index = 9)] + Treasury, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum BodyPart { + #[codec(index = 0)] + Voice, + #[codec(index = 1)] + Members { + #[codec(compact)] + count: ::core::primitive::u32, + }, + #[codec(index = 2)] + Fraction { + #[codec(compact)] + nom: ::core::primitive::u32, + #[codec(compact)] + denom: ::core::primitive::u32, + }, + #[codec(index = 3)] + AtLeastProportion { + #[codec(compact)] + nom: ::core::primitive::u32, + #[codec(compact)] + denom: ::core::primitive::u32, + }, + #[codec(index = 4)] + MoreThanProportion { + #[codec(compact)] + nom: ::core::primitive::u32, + #[codec(compact)] + denom: ::core::primitive::u32, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Instruction { + #[codec(index = 0)] + WithdrawAsset(runtime_types::xcm::v2::multiasset::MultiAssets), + #[codec(index = 1)] + ReserveAssetDeposited(runtime_types::xcm::v2::multiasset::MultiAssets), + #[codec(index = 2)] + ReceiveTeleportedAsset(runtime_types::xcm::v2::multiasset::MultiAssets), + #[codec(index = 3)] + QueryResponse { + #[codec(compact)] + query_id: ::core::primitive::u64, + response: runtime_types::xcm::v2::Response, + #[codec(compact)] + max_weight: ::core::primitive::u64, + }, + #[codec(index = 4)] + TransferAsset { + assets: runtime_types::xcm::v2::multiasset::MultiAssets, + beneficiary: runtime_types::xcm::v2::multilocation::MultiLocation, + }, + #[codec(index = 5)] + TransferReserveAsset { + assets: runtime_types::xcm::v2::multiasset::MultiAssets, + dest: runtime_types::xcm::v2::multilocation::MultiLocation, + xcm: runtime_types::xcm::v2::Xcm, + }, + #[codec(index = 6)] + Transact { + origin_type: runtime_types::xcm::v2::OriginKind, + #[codec(compact)] + require_weight_at_most: ::core::primitive::u64, + call: runtime_types::xcm::double_encoded::DoubleEncoded, + }, + #[codec(index = 7)] + HrmpNewChannelOpenRequest { + #[codec(compact)] + sender: ::core::primitive::u32, + #[codec(compact)] + max_message_size: ::core::primitive::u32, + #[codec(compact)] + max_capacity: ::core::primitive::u32, + }, + #[codec(index = 8)] + HrmpChannelAccepted { + #[codec(compact)] + recipient: ::core::primitive::u32, + }, + #[codec(index = 9)] + HrmpChannelClosing { + #[codec(compact)] + initiator: ::core::primitive::u32, + #[codec(compact)] + sender: ::core::primitive::u32, + #[codec(compact)] + recipient: ::core::primitive::u32, + }, + #[codec(index = 10)] + ClearOrigin, + #[codec(index = 11)] + DescendOrigin(runtime_types::xcm::v2::multilocation::Junctions), + #[codec(index = 12)] + ReportError { + #[codec(compact)] + query_id: ::core::primitive::u64, + dest: runtime_types::xcm::v2::multilocation::MultiLocation, + #[codec(compact)] + max_response_weight: ::core::primitive::u64, + }, + #[codec(index = 13)] + DepositAsset { + assets: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + #[codec(compact)] + max_assets: ::core::primitive::u32, + beneficiary: runtime_types::xcm::v2::multilocation::MultiLocation, + }, + #[codec(index = 14)] + DepositReserveAsset { + assets: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + #[codec(compact)] + max_assets: ::core::primitive::u32, + dest: runtime_types::xcm::v2::multilocation::MultiLocation, + xcm: runtime_types::xcm::v2::Xcm, + }, + #[codec(index = 15)] + ExchangeAsset { + give: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + receive: runtime_types::xcm::v2::multiasset::MultiAssets, + }, + #[codec(index = 16)] + InitiateReserveWithdraw { + assets: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + reserve: runtime_types::xcm::v2::multilocation::MultiLocation, + xcm: runtime_types::xcm::v2::Xcm, + }, + #[codec(index = 17)] + InitiateTeleport { + assets: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + dest: runtime_types::xcm::v2::multilocation::MultiLocation, + xcm: runtime_types::xcm::v2::Xcm, + }, + #[codec(index = 18)] + QueryHolding { + #[codec(compact)] + query_id: ::core::primitive::u64, + dest: runtime_types::xcm::v2::multilocation::MultiLocation, + assets: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + #[codec(compact)] + max_response_weight: ::core::primitive::u64, + }, + #[codec(index = 19)] + BuyExecution { + fees: runtime_types::xcm::v2::multiasset::MultiAsset, + weight_limit: runtime_types::xcm::v2::WeightLimit, + }, + #[codec(index = 20)] + RefundSurplus, + #[codec(index = 21)] + SetErrorHandler(runtime_types::xcm::v2::Xcm), + #[codec(index = 22)] + SetAppendix(runtime_types::xcm::v2::Xcm), + #[codec(index = 23)] + ClearError, + #[codec(index = 24)] + ClaimAsset { + assets: runtime_types::xcm::v2::multiasset::MultiAssets, + ticket: runtime_types::xcm::v2::multilocation::MultiLocation, + }, + #[codec(index = 25)] + Trap(#[codec(compact)] ::core::primitive::u64), + #[codec(index = 26)] + SubscribeVersion { + #[codec(compact)] + query_id: ::core::primitive::u64, + #[codec(compact)] + max_response_weight: ::core::primitive::u64, + }, + #[codec(index = 27)] + UnsubscribeVersion, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Instruction2 { + #[codec(index = 0)] + WithdrawAsset(runtime_types::xcm::v2::multiasset::MultiAssets), + #[codec(index = 1)] + ReserveAssetDeposited(runtime_types::xcm::v2::multiasset::MultiAssets), + #[codec(index = 2)] + ReceiveTeleportedAsset(runtime_types::xcm::v2::multiasset::MultiAssets), + #[codec(index = 3)] + QueryResponse { + #[codec(compact)] + query_id: ::core::primitive::u64, + response: runtime_types::xcm::v2::Response, + #[codec(compact)] + max_weight: ::core::primitive::u64, + }, + #[codec(index = 4)] + TransferAsset { + assets: runtime_types::xcm::v2::multiasset::MultiAssets, + beneficiary: runtime_types::xcm::v2::multilocation::MultiLocation, + }, + #[codec(index = 5)] + TransferReserveAsset { + assets: runtime_types::xcm::v2::multiasset::MultiAssets, + dest: runtime_types::xcm::v2::multilocation::MultiLocation, + xcm: runtime_types::xcm::v2::Xcm, + }, + #[codec(index = 6)] + Transact { + origin_type: runtime_types::xcm::v2::OriginKind, + #[codec(compact)] + require_weight_at_most: ::core::primitive::u64, + call: runtime_types::xcm::double_encoded::DoubleEncoded2, + }, + #[codec(index = 7)] + HrmpNewChannelOpenRequest { + #[codec(compact)] + sender: ::core::primitive::u32, + #[codec(compact)] + max_message_size: ::core::primitive::u32, + #[codec(compact)] + max_capacity: ::core::primitive::u32, + }, + #[codec(index = 8)] + HrmpChannelAccepted { + #[codec(compact)] + recipient: ::core::primitive::u32, + }, + #[codec(index = 9)] + HrmpChannelClosing { + #[codec(compact)] + initiator: ::core::primitive::u32, + #[codec(compact)] + sender: ::core::primitive::u32, + #[codec(compact)] + recipient: ::core::primitive::u32, + }, + #[codec(index = 10)] + ClearOrigin, + #[codec(index = 11)] + DescendOrigin(runtime_types::xcm::v2::multilocation::Junctions), + #[codec(index = 12)] + ReportError { + #[codec(compact)] + query_id: ::core::primitive::u64, + dest: runtime_types::xcm::v2::multilocation::MultiLocation, + #[codec(compact)] + max_response_weight: ::core::primitive::u64, + }, + #[codec(index = 13)] + DepositAsset { + assets: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + #[codec(compact)] + max_assets: ::core::primitive::u32, + beneficiary: runtime_types::xcm::v2::multilocation::MultiLocation, + }, + #[codec(index = 14)] + DepositReserveAsset { + assets: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + #[codec(compact)] + max_assets: ::core::primitive::u32, + dest: runtime_types::xcm::v2::multilocation::MultiLocation, + xcm: runtime_types::xcm::v2::Xcm, + }, + #[codec(index = 15)] + ExchangeAsset { + give: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + receive: runtime_types::xcm::v2::multiasset::MultiAssets, + }, + #[codec(index = 16)] + InitiateReserveWithdraw { + assets: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + reserve: runtime_types::xcm::v2::multilocation::MultiLocation, + xcm: runtime_types::xcm::v2::Xcm, + }, + #[codec(index = 17)] + InitiateTeleport { + assets: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + dest: runtime_types::xcm::v2::multilocation::MultiLocation, + xcm: runtime_types::xcm::v2::Xcm, + }, + #[codec(index = 18)] + QueryHolding { + #[codec(compact)] + query_id: ::core::primitive::u64, + dest: runtime_types::xcm::v2::multilocation::MultiLocation, + assets: runtime_types::xcm::v2::multiasset::MultiAssetFilter, + #[codec(compact)] + max_response_weight: ::core::primitive::u64, + }, + #[codec(index = 19)] + BuyExecution { + fees: runtime_types::xcm::v2::multiasset::MultiAsset, + weight_limit: runtime_types::xcm::v2::WeightLimit, + }, + #[codec(index = 20)] + RefundSurplus, + #[codec(index = 21)] + SetErrorHandler(runtime_types::xcm::v2::Xcm2), + #[codec(index = 22)] + SetAppendix(runtime_types::xcm::v2::Xcm2), + #[codec(index = 23)] + ClearError, + #[codec(index = 24)] + ClaimAsset { + assets: runtime_types::xcm::v2::multiasset::MultiAssets, + ticket: runtime_types::xcm::v2::multilocation::MultiLocation, + }, + #[codec(index = 25)] + Trap(#[codec(compact)] ::core::primitive::u64), + #[codec(index = 26)] + SubscribeVersion { + #[codec(compact)] + query_id: ::core::primitive::u64, + #[codec(compact)] + max_response_weight: ::core::primitive::u64, + }, + #[codec(index = 27)] + UnsubscribeVersion, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum NetworkId { + #[codec(index = 0)] + Any, + #[codec(index = 1)] + Named( + runtime_types::bounded_collections::weak_bounded_vec::WeakBoundedVec< + ::core::primitive::u8, + >, + ), + #[codec(index = 2)] + Polkadot, + #[codec(index = 3)] + Kusama, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum OriginKind { + #[codec(index = 0)] + Native, + #[codec(index = 1)] + SovereignAccount, + #[codec(index = 2)] + Superuser, + #[codec(index = 3)] + Xcm, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Response { + #[codec(index = 0)] + Null, + #[codec(index = 1)] + Assets(runtime_types::xcm::v2::multiasset::MultiAssets), + #[codec(index = 2)] + ExecutionResult( + ::core::option::Option<( + ::core::primitive::u32, + runtime_types::xcm::v2::traits::Error, + )>, + ), + #[codec(index = 3)] + Version(::core::primitive::u32), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum WeightLimit { + #[codec(index = 0)] + Unlimited, + #[codec(index = 1)] + Limited(#[codec(compact)] ::core::primitive::u64), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Xcm(pub ::std::vec::Vec); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Xcm2(pub ::std::vec::Vec); + } + pub mod v3 { + use super::runtime_types; + pub mod junction { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum BodyId { + #[codec(index = 0)] + Unit, + #[codec(index = 1)] + Moniker([::core::primitive::u8; 4usize]), + #[codec(index = 2)] + Index(#[codec(compact)] ::core::primitive::u32), + #[codec(index = 3)] + Executive, + #[codec(index = 4)] + Technical, + #[codec(index = 5)] + Legislative, + #[codec(index = 6)] + Judicial, + #[codec(index = 7)] + Defense, + #[codec(index = 8)] + Administration, + #[codec(index = 9)] + Treasury, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum BodyPart { + #[codec(index = 0)] + Voice, + #[codec(index = 1)] + Members { + #[codec(compact)] + count: ::core::primitive::u32, + }, + #[codec(index = 2)] + Fraction { + #[codec(compact)] + nom: ::core::primitive::u32, + #[codec(compact)] + denom: ::core::primitive::u32, + }, + #[codec(index = 3)] + AtLeastProportion { + #[codec(compact)] + nom: ::core::primitive::u32, + #[codec(compact)] + denom: ::core::primitive::u32, + }, + #[codec(index = 4)] + MoreThanProportion { + #[codec(compact)] + nom: ::core::primitive::u32, + #[codec(compact)] + denom: ::core::primitive::u32, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Junction { + #[codec(index = 0)] + Parachain(#[codec(compact)] ::core::primitive::u32), + #[codec(index = 1)] + AccountId32 { + network: + ::core::option::Option, + id: [::core::primitive::u8; 32usize], + }, + #[codec(index = 2)] + AccountIndex64 { + network: + ::core::option::Option, + #[codec(compact)] + index: ::core::primitive::u64, + }, + #[codec(index = 3)] + AccountKey20 { + network: + ::core::option::Option, + key: [::core::primitive::u8; 20usize], + }, + #[codec(index = 4)] + PalletInstance(::core::primitive::u8), + #[codec(index = 5)] + GeneralIndex(#[codec(compact)] ::core::primitive::u128), + #[codec(index = 6)] + GeneralKey { + length: ::core::primitive::u8, + data: [::core::primitive::u8; 32usize], + }, + #[codec(index = 7)] + OnlyChild, + #[codec(index = 8)] + Plurality { + id: runtime_types::xcm::v3::junction::BodyId, + part: runtime_types::xcm::v3::junction::BodyPart, + }, + #[codec(index = 9)] + GlobalConsensus(runtime_types::xcm::v3::junction::NetworkId), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum NetworkId { + #[codec(index = 0)] + ByGenesis([::core::primitive::u8; 32usize]), + #[codec(index = 1)] + ByFork { + block_number: ::core::primitive::u64, + block_hash: [::core::primitive::u8; 32usize], + }, + #[codec(index = 2)] + Polkadot, + #[codec(index = 3)] + Kusama, + #[codec(index = 4)] + Westend, + #[codec(index = 5)] + Rococo, + #[codec(index = 6)] + Wococo, + #[codec(index = 7)] + Ethereum { + #[codec(compact)] + chain_id: ::core::primitive::u64, + }, + #[codec(index = 8)] + BitcoinCore, + #[codec(index = 9)] + BitcoinCash, + } + } + pub mod junctions { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Junctions { + #[codec(index = 0)] + Here, + #[codec(index = 1)] + X1(runtime_types::xcm::v3::junction::Junction), + #[codec(index = 2)] + X2( + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + ), + #[codec(index = 3)] + X3( + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + ), + #[codec(index = 4)] + X4( + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + ), + #[codec(index = 5)] + X5( + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + ), + #[codec(index = 6)] + X6( + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + ), + #[codec(index = 7)] + X7( + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + ), + #[codec(index = 8)] + X8( + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + runtime_types::xcm::v3::junction::Junction, + ), + } + } + pub mod multiasset { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum AssetId { + #[codec(index = 0)] + Concrete(runtime_types::xcm::v3::multilocation::MultiLocation), + #[codec(index = 1)] + Abstract([::core::primitive::u8; 32usize]), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum AssetInstance { + #[codec(index = 0)] + Undefined, + #[codec(index = 1)] + Index(#[codec(compact)] ::core::primitive::u128), + #[codec(index = 2)] + Array4([::core::primitive::u8; 4usize]), + #[codec(index = 3)] + Array8([::core::primitive::u8; 8usize]), + #[codec(index = 4)] + Array16([::core::primitive::u8; 16usize]), + #[codec(index = 5)] + Array32([::core::primitive::u8; 32usize]), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Fungibility { + #[codec(index = 0)] + Fungible(#[codec(compact)] ::core::primitive::u128), + #[codec(index = 1)] + NonFungible(runtime_types::xcm::v3::multiasset::AssetInstance), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MultiAsset { + pub id: runtime_types::xcm::v3::multiasset::AssetId, + pub fun: runtime_types::xcm::v3::multiasset::Fungibility, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum MultiAssetFilter { + #[codec(index = 0)] + Definite(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 1)] + Wild(runtime_types::xcm::v3::multiasset::WildMultiAsset), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MultiAssets( + pub ::std::vec::Vec, + ); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum WildFungibility { + #[codec(index = 0)] + Fungible, + #[codec(index = 1)] + NonFungible, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum WildMultiAsset { + #[codec(index = 0)] + All, + #[codec(index = 1)] + AllOf { + id: runtime_types::xcm::v3::multiasset::AssetId, + fun: runtime_types::xcm::v3::multiasset::WildFungibility, + }, + #[codec(index = 2)] + AllCounted(#[codec(compact)] ::core::primitive::u32), + #[codec(index = 3)] + AllOfCounted { + id: runtime_types::xcm::v3::multiasset::AssetId, + fun: runtime_types::xcm::v3::multiasset::WildFungibility, + #[codec(compact)] + count: ::core::primitive::u32, + }, + } + } + pub mod multilocation { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct MultiLocation { + pub parents: ::core::primitive::u8, + pub interior: runtime_types::xcm::v3::junctions::Junctions, + } + } + pub mod traits { + use super::runtime_types; + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Error { + #[codec(index = 0)] + Overflow, + #[codec(index = 1)] + Unimplemented, + #[codec(index = 2)] + UntrustedReserveLocation, + #[codec(index = 3)] + UntrustedTeleportLocation, + #[codec(index = 4)] + LocationFull, + #[codec(index = 5)] + LocationNotInvertible, + #[codec(index = 6)] + BadOrigin, + #[codec(index = 7)] + InvalidLocation, + #[codec(index = 8)] + AssetNotFound, + #[codec(index = 9)] + FailedToTransactAsset, + #[codec(index = 10)] + NotWithdrawable, + #[codec(index = 11)] + LocationCannotHold, + #[codec(index = 12)] + ExceedsMaxMessageSize, + #[codec(index = 13)] + DestinationUnsupported, + #[codec(index = 14)] + Transport, + #[codec(index = 15)] + Unroutable, + #[codec(index = 16)] + UnknownClaim, + #[codec(index = 17)] + FailedToDecode, + #[codec(index = 18)] + MaxWeightInvalid, + #[codec(index = 19)] + NotHoldingFees, + #[codec(index = 20)] + TooExpensive, + #[codec(index = 21)] + Trap(::core::primitive::u64), + #[codec(index = 22)] + ExpectationFalse, + #[codec(index = 23)] + PalletNotFound, + #[codec(index = 24)] + NameMismatch, + #[codec(index = 25)] + VersionIncompatible, + #[codec(index = 26)] + HoldingWouldOverflow, + #[codec(index = 27)] + ExportError, + #[codec(index = 28)] + ReanchorFailed, + #[codec(index = 29)] + NoDeal, + #[codec(index = 30)] + FeesNotMet, + #[codec(index = 31)] + LockError, + #[codec(index = 32)] + NoPermission, + #[codec(index = 33)] + Unanchored, + #[codec(index = 34)] + NotDepositable, + #[codec(index = 35)] + UnhandledXcmVersion, + #[codec(index = 36)] + WeightLimitReached(runtime_types::sp_weights::weight_v2::Weight), + #[codec(index = 37)] + Barrier, + #[codec(index = 38)] + WeightNotComputable, + #[codec(index = 39)] + ExceedsStackLimit, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Outcome { + #[codec(index = 0)] + Complete(runtime_types::sp_weights::weight_v2::Weight), + #[codec(index = 1)] + Incomplete( + runtime_types::sp_weights::weight_v2::Weight, + runtime_types::xcm::v3::traits::Error, + ), + #[codec(index = 2)] + Error(runtime_types::xcm::v3::traits::Error), + } + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Instruction { + #[codec(index = 0)] + WithdrawAsset(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 1)] + ReserveAssetDeposited(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 2)] + ReceiveTeleportedAsset(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 3)] + QueryResponse { + #[codec(compact)] + query_id: ::core::primitive::u64, + response: runtime_types::xcm::v3::Response, + max_weight: runtime_types::sp_weights::weight_v2::Weight, + querier: ::core::option::Option< + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + }, + #[codec(index = 4)] + TransferAsset { + assets: runtime_types::xcm::v3::multiasset::MultiAssets, + beneficiary: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 5)] + TransferReserveAsset { + assets: runtime_types::xcm::v3::multiasset::MultiAssets, + dest: runtime_types::xcm::v3::multilocation::MultiLocation, + xcm: runtime_types::xcm::v3::Xcm, + }, + #[codec(index = 6)] + Transact { + origin_kind: runtime_types::xcm::v2::OriginKind, + require_weight_at_most: runtime_types::sp_weights::weight_v2::Weight, + call: runtime_types::xcm::double_encoded::DoubleEncoded, + }, + #[codec(index = 7)] + HrmpNewChannelOpenRequest { + #[codec(compact)] + sender: ::core::primitive::u32, + #[codec(compact)] + max_message_size: ::core::primitive::u32, + #[codec(compact)] + max_capacity: ::core::primitive::u32, + }, + #[codec(index = 8)] + HrmpChannelAccepted { + #[codec(compact)] + recipient: ::core::primitive::u32, + }, + #[codec(index = 9)] + HrmpChannelClosing { + #[codec(compact)] + initiator: ::core::primitive::u32, + #[codec(compact)] + sender: ::core::primitive::u32, + #[codec(compact)] + recipient: ::core::primitive::u32, + }, + #[codec(index = 10)] + ClearOrigin, + #[codec(index = 11)] + DescendOrigin(runtime_types::xcm::v3::junctions::Junctions), + #[codec(index = 12)] + ReportError(runtime_types::xcm::v3::QueryResponseInfo), + #[codec(index = 13)] + DepositAsset { + assets: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + beneficiary: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 14)] + DepositReserveAsset { + assets: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + dest: runtime_types::xcm::v3::multilocation::MultiLocation, + xcm: runtime_types::xcm::v3::Xcm, + }, + #[codec(index = 15)] + ExchangeAsset { + give: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + want: runtime_types::xcm::v3::multiasset::MultiAssets, + maximal: ::core::primitive::bool, + }, + #[codec(index = 16)] + InitiateReserveWithdraw { + assets: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + reserve: runtime_types::xcm::v3::multilocation::MultiLocation, + xcm: runtime_types::xcm::v3::Xcm, + }, + #[codec(index = 17)] + InitiateTeleport { + assets: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + dest: runtime_types::xcm::v3::multilocation::MultiLocation, + xcm: runtime_types::xcm::v3::Xcm, + }, + #[codec(index = 18)] + ReportHolding { + response_info: runtime_types::xcm::v3::QueryResponseInfo, + assets: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + }, + #[codec(index = 19)] + BuyExecution { + fees: runtime_types::xcm::v3::multiasset::MultiAsset, + weight_limit: runtime_types::xcm::v3::WeightLimit, + }, + #[codec(index = 20)] + RefundSurplus, + #[codec(index = 21)] + SetErrorHandler(runtime_types::xcm::v3::Xcm), + #[codec(index = 22)] + SetAppendix(runtime_types::xcm::v3::Xcm), + #[codec(index = 23)] + ClearError, + #[codec(index = 24)] + ClaimAsset { + assets: runtime_types::xcm::v3::multiasset::MultiAssets, + ticket: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 25)] + Trap(#[codec(compact)] ::core::primitive::u64), + #[codec(index = 26)] + SubscribeVersion { + #[codec(compact)] + query_id: ::core::primitive::u64, + max_response_weight: runtime_types::sp_weights::weight_v2::Weight, + }, + #[codec(index = 27)] + UnsubscribeVersion, + #[codec(index = 28)] + BurnAsset(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 29)] + ExpectAsset(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 30)] + ExpectOrigin( + ::core::option::Option< + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + ), + #[codec(index = 31)] + ExpectError( + ::core::option::Option<( + ::core::primitive::u32, + runtime_types::xcm::v3::traits::Error, + )>, + ), + #[codec(index = 32)] + ExpectTransactStatus(runtime_types::xcm::v3::MaybeErrorCode), + #[codec(index = 33)] + QueryPallet { + module_name: ::std::vec::Vec<::core::primitive::u8>, + response_info: runtime_types::xcm::v3::QueryResponseInfo, + }, + #[codec(index = 34)] + ExpectPallet { + #[codec(compact)] + index: ::core::primitive::u32, + name: ::std::vec::Vec<::core::primitive::u8>, + module_name: ::std::vec::Vec<::core::primitive::u8>, + #[codec(compact)] + crate_major: ::core::primitive::u32, + #[codec(compact)] + min_crate_minor: ::core::primitive::u32, + }, + #[codec(index = 35)] + ReportTransactStatus(runtime_types::xcm::v3::QueryResponseInfo), + #[codec(index = 36)] + ClearTransactStatus, + #[codec(index = 37)] + UniversalOrigin(runtime_types::xcm::v3::junction::Junction), + #[codec(index = 38)] + ExportMessage { + network: runtime_types::xcm::v3::junction::NetworkId, + destination: runtime_types::xcm::v3::junctions::Junctions, + xcm: runtime_types::xcm::v3::Xcm, + }, + #[codec(index = 39)] + LockAsset { + asset: runtime_types::xcm::v3::multiasset::MultiAsset, + unlocker: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 40)] + UnlockAsset { + asset: runtime_types::xcm::v3::multiasset::MultiAsset, + target: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 41)] + NoteUnlockable { + asset: runtime_types::xcm::v3::multiasset::MultiAsset, + owner: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 42)] + RequestUnlock { + asset: runtime_types::xcm::v3::multiasset::MultiAsset, + locker: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 43)] + SetFeesMode { + jit_withdraw: ::core::primitive::bool, + }, + #[codec(index = 44)] + SetTopic([::core::primitive::u8; 32usize]), + #[codec(index = 45)] + ClearTopic, + #[codec(index = 46)] + AliasOrigin(runtime_types::xcm::v3::multilocation::MultiLocation), + #[codec(index = 47)] + UnpaidExecution { + weight_limit: runtime_types::xcm::v3::WeightLimit, + check_origin: ::core::option::Option< + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Instruction2 { + #[codec(index = 0)] + WithdrawAsset(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 1)] + ReserveAssetDeposited(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 2)] + ReceiveTeleportedAsset(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 3)] + QueryResponse { + #[codec(compact)] + query_id: ::core::primitive::u64, + response: runtime_types::xcm::v3::Response, + max_weight: runtime_types::sp_weights::weight_v2::Weight, + querier: ::core::option::Option< + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + }, + #[codec(index = 4)] + TransferAsset { + assets: runtime_types::xcm::v3::multiasset::MultiAssets, + beneficiary: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 5)] + TransferReserveAsset { + assets: runtime_types::xcm::v3::multiasset::MultiAssets, + dest: runtime_types::xcm::v3::multilocation::MultiLocation, + xcm: runtime_types::xcm::v3::Xcm, + }, + #[codec(index = 6)] + Transact { + origin_kind: runtime_types::xcm::v2::OriginKind, + require_weight_at_most: runtime_types::sp_weights::weight_v2::Weight, + call: runtime_types::xcm::double_encoded::DoubleEncoded2, + }, + #[codec(index = 7)] + HrmpNewChannelOpenRequest { + #[codec(compact)] + sender: ::core::primitive::u32, + #[codec(compact)] + max_message_size: ::core::primitive::u32, + #[codec(compact)] + max_capacity: ::core::primitive::u32, + }, + #[codec(index = 8)] + HrmpChannelAccepted { + #[codec(compact)] + recipient: ::core::primitive::u32, + }, + #[codec(index = 9)] + HrmpChannelClosing { + #[codec(compact)] + initiator: ::core::primitive::u32, + #[codec(compact)] + sender: ::core::primitive::u32, + #[codec(compact)] + recipient: ::core::primitive::u32, + }, + #[codec(index = 10)] + ClearOrigin, + #[codec(index = 11)] + DescendOrigin(runtime_types::xcm::v3::junctions::Junctions), + #[codec(index = 12)] + ReportError(runtime_types::xcm::v3::QueryResponseInfo), + #[codec(index = 13)] + DepositAsset { + assets: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + beneficiary: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 14)] + DepositReserveAsset { + assets: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + dest: runtime_types::xcm::v3::multilocation::MultiLocation, + xcm: runtime_types::xcm::v3::Xcm, + }, + #[codec(index = 15)] + ExchangeAsset { + give: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + want: runtime_types::xcm::v3::multiasset::MultiAssets, + maximal: ::core::primitive::bool, + }, + #[codec(index = 16)] + InitiateReserveWithdraw { + assets: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + reserve: runtime_types::xcm::v3::multilocation::MultiLocation, + xcm: runtime_types::xcm::v3::Xcm, + }, + #[codec(index = 17)] + InitiateTeleport { + assets: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + dest: runtime_types::xcm::v3::multilocation::MultiLocation, + xcm: runtime_types::xcm::v3::Xcm, + }, + #[codec(index = 18)] + ReportHolding { + response_info: runtime_types::xcm::v3::QueryResponseInfo, + assets: runtime_types::xcm::v3::multiasset::MultiAssetFilter, + }, + #[codec(index = 19)] + BuyExecution { + fees: runtime_types::xcm::v3::multiasset::MultiAsset, + weight_limit: runtime_types::xcm::v3::WeightLimit, + }, + #[codec(index = 20)] + RefundSurplus, + #[codec(index = 21)] + SetErrorHandler(runtime_types::xcm::v3::Xcm2), + #[codec(index = 22)] + SetAppendix(runtime_types::xcm::v3::Xcm2), + #[codec(index = 23)] + ClearError, + #[codec(index = 24)] + ClaimAsset { + assets: runtime_types::xcm::v3::multiasset::MultiAssets, + ticket: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 25)] + Trap(#[codec(compact)] ::core::primitive::u64), + #[codec(index = 26)] + SubscribeVersion { + #[codec(compact)] + query_id: ::core::primitive::u64, + max_response_weight: runtime_types::sp_weights::weight_v2::Weight, + }, + #[codec(index = 27)] + UnsubscribeVersion, + #[codec(index = 28)] + BurnAsset(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 29)] + ExpectAsset(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 30)] + ExpectOrigin( + ::core::option::Option< + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + ), + #[codec(index = 31)] + ExpectError( + ::core::option::Option<( + ::core::primitive::u32, + runtime_types::xcm::v3::traits::Error, + )>, + ), + #[codec(index = 32)] + ExpectTransactStatus(runtime_types::xcm::v3::MaybeErrorCode), + #[codec(index = 33)] + QueryPallet { + module_name: ::std::vec::Vec<::core::primitive::u8>, + response_info: runtime_types::xcm::v3::QueryResponseInfo, + }, + #[codec(index = 34)] + ExpectPallet { + #[codec(compact)] + index: ::core::primitive::u32, + name: ::std::vec::Vec<::core::primitive::u8>, + module_name: ::std::vec::Vec<::core::primitive::u8>, + #[codec(compact)] + crate_major: ::core::primitive::u32, + #[codec(compact)] + min_crate_minor: ::core::primitive::u32, + }, + #[codec(index = 35)] + ReportTransactStatus(runtime_types::xcm::v3::QueryResponseInfo), + #[codec(index = 36)] + ClearTransactStatus, + #[codec(index = 37)] + UniversalOrigin(runtime_types::xcm::v3::junction::Junction), + #[codec(index = 38)] + ExportMessage { + network: runtime_types::xcm::v3::junction::NetworkId, + destination: runtime_types::xcm::v3::junctions::Junctions, + xcm: runtime_types::xcm::v3::Xcm, + }, + #[codec(index = 39)] + LockAsset { + asset: runtime_types::xcm::v3::multiasset::MultiAsset, + unlocker: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 40)] + UnlockAsset { + asset: runtime_types::xcm::v3::multiasset::MultiAsset, + target: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 41)] + NoteUnlockable { + asset: runtime_types::xcm::v3::multiasset::MultiAsset, + owner: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 42)] + RequestUnlock { + asset: runtime_types::xcm::v3::multiasset::MultiAsset, + locker: runtime_types::xcm::v3::multilocation::MultiLocation, + }, + #[codec(index = 43)] + SetFeesMode { + jit_withdraw: ::core::primitive::bool, + }, + #[codec(index = 44)] + SetTopic([::core::primitive::u8; 32usize]), + #[codec(index = 45)] + ClearTopic, + #[codec(index = 46)] + AliasOrigin(runtime_types::xcm::v3::multilocation::MultiLocation), + #[codec(index = 47)] + UnpaidExecution { + weight_limit: runtime_types::xcm::v3::WeightLimit, + check_origin: ::core::option::Option< + runtime_types::xcm::v3::multilocation::MultiLocation, + >, + }, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum MaybeErrorCode { + #[codec(index = 0)] + Success, + #[codec(index = 1)] + Error( + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ), + #[codec(index = 2)] + TruncatedError( + runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + ), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct PalletInfo { + #[codec(compact)] + pub index: ::core::primitive::u32, + pub name: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + pub module_name: runtime_types::bounded_collections::bounded_vec::BoundedVec< + ::core::primitive::u8, + >, + #[codec(compact)] + pub major: ::core::primitive::u32, + #[codec(compact)] + pub minor: ::core::primitive::u32, + #[codec(compact)] + pub patch: ::core::primitive::u32, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct QueryResponseInfo { + pub destination: runtime_types::xcm::v3::multilocation::MultiLocation, + #[codec(compact)] + pub query_id: ::core::primitive::u64, + pub max_weight: runtime_types::sp_weights::weight_v2::Weight, + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum Response { + #[codec(index = 0)] + Null, + #[codec(index = 1)] + Assets(runtime_types::xcm::v3::multiasset::MultiAssets), + #[codec(index = 2)] + ExecutionResult( + ::core::option::Option<( + ::core::primitive::u32, + runtime_types::xcm::v3::traits::Error, + )>, + ), + #[codec(index = 3)] + Version(::core::primitive::u32), + #[codec(index = 4)] + PalletsInfo( + runtime_types::bounded_collections::bounded_vec::BoundedVec< + runtime_types::xcm::v3::PalletInfo, + >, + ), + #[codec(index = 5)] + DispatchResult(runtime_types::xcm::v3::MaybeErrorCode), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum WeightLimit { + #[codec(index = 0)] + Unlimited, + #[codec(index = 1)] + Limited(runtime_types::sp_weights::weight_v2::Weight), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Xcm(pub ::std::vec::Vec); + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub struct Xcm2(pub ::std::vec::Vec); + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum VersionedAssetId { + #[codec(index = 3)] + V3(runtime_types::xcm::v3::multiasset::AssetId), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum VersionedMultiAssets { + #[codec(index = 1)] + V2(runtime_types::xcm::v2::multiasset::MultiAssets), + #[codec(index = 3)] + V3(runtime_types::xcm::v3::multiasset::MultiAssets), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum VersionedMultiLocation { + #[codec(index = 1)] + V2(runtime_types::xcm::v2::multilocation::MultiLocation), + #[codec(index = 3)] + V3(runtime_types::xcm::v3::multilocation::MultiLocation), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum VersionedResponse { + #[codec(index = 2)] + V2(runtime_types::xcm::v2::Response), + #[codec(index = 3)] + V3(runtime_types::xcm::v3::Response), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum VersionedXcm { + #[codec(index = 2)] + V2(runtime_types::xcm::v2::Xcm), + #[codec(index = 3)] + V3(runtime_types::xcm::v3::Xcm), + } + #[derive( + :: subxt :: ext :: codec :: Decode, + :: subxt :: ext :: codec :: Encode, + :: subxt :: ext :: scale_decode :: DecodeAsType, + :: subxt :: ext :: scale_encode :: EncodeAsType, + Debug, + )] + # [codec (crate = :: subxt :: ext :: codec)] + #[decode_as_type(crate_path = ":: subxt :: ext :: scale_decode")] + #[encode_as_type(crate_path = ":: subxt :: ext :: scale_encode")] + pub enum VersionedXcm2 { + #[codec(index = 2)] + V2(runtime_types::xcm::v2::Xcm2), + #[codec(index = 3)] + V3(runtime_types::xcm::v3::Xcm2), + } + } + } +}