From 159d4fc7deeb75a13d93be9506bdb5ec9b9d8cf6 Mon Sep 17 00:00:00 2001 From: Yaroslav Bolyukin Date: Wed, 22 Feb 2023 22:00:46 +0000 Subject: [PATCH] Merge pull request #893 from UniqueNetwork/feature/preimage --- --- a/Cargo.lock +++ b/Cargo.lock @@ -5541,6 +5541,7 @@ "pallet-inflation", "pallet-maintenance", "pallet-nonfungible", + "pallet-preimage", "pallet-randomness-collective-flip", "pallet-refungible", "pallet-session", @@ -6480,6 +6481,7 @@ "frame-system", "parity-scale-codec", "scale-info", + "sp-core", "sp-std", ] @@ -8968,6 +8970,7 @@ "pallet-inflation", "pallet-maintenance", "pallet-nonfungible", + "pallet-preimage", "pallet-randomness-collective-flip", "pallet-refungible", "pallet-session", @@ -13198,6 +13201,7 @@ "pallet-inflation", "pallet-maintenance", "pallet-nonfungible", + "pallet-preimage", "pallet-randomness-collective-flip", "pallet-refungible", "pallet-session", --- a/Cargo.toml +++ b/Cargo.toml @@ -98,6 +98,7 @@ pallet-aura = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.37" } pallet-authorship = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.37" } pallet-balances = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.37" } +pallet-preimage = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.37" } pallet-randomness-collective-flip = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.37" } pallet-session = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.37" } pallet-sudo = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.37" } --- a/Makefile +++ b/Makefile @@ -137,9 +137,13 @@ bench-app-promotion: make _bench PALLET=app-promotion PALLET_DIR=app-promotion +.PHONY: bench-maintenance +bench-maintenance: + make _bench PALLET=maintenance + .PHONY: bench # Disabled: bench-scheduler, bench-collator-selection, bench-identity -bench: bench-common bench-evm-migration bench-unique bench-structure bench-fungible bench-refungible bench-nonfungible bench-configuration bench-foreign-assets +bench: bench-common bench-evm-migration bench-unique bench-structure bench-fungible bench-refungible bench-nonfungible bench-configuration bench-foreign-assets bench-maintenance .PHONY: check check: --- a/pallets/maintenance/Cargo.toml +++ b/pallets/maintenance/Cargo.toml @@ -18,10 +18,11 @@ frame-benchmarking = { workspace = true, optional = true } frame-support = { workspace = true } frame-system = { workspace = true } +sp-core = { workspace = true } sp-std = { workspace = true } [features] default = ["std"] runtime-benchmarks = ["frame-benchmarking", "frame-support/runtime-benchmarks", "frame-system/runtime-benchmarks"] -std = ["codec/std", "frame-benchmarking/std", "frame-support/std", "frame-system/std", "scale-info/std", "sp-std/std"] +std = ["codec/std", "frame-benchmarking/std", "frame-support/std", "frame-system/std", "scale-info/std", "sp-core/std", "sp-std/std"] try-runtime = ["frame-support/try-runtime"] --- a/pallets/maintenance/src/benchmarking.rs +++ b/pallets/maintenance/src/benchmarking.rs @@ -17,9 +17,10 @@ use super::*; use crate::{Pallet as Maintenance, Config}; +use codec::Encode; use frame_benchmarking::benchmarks; use frame_system::RawOrigin; -use frame_support::ensure; +use frame_support::{ensure, pallet_prelude::Weight, traits::StorePreimage}; benchmarks! { enable { @@ -34,4 +35,11 @@ verify { ensure!(!>::get(), "didn't disable the MM"); } + + execute_preimage { + let call = ::RuntimeCall::from(frame_system::Call::::remark { remark: 1u32.encode() }); + let hash = T::Preimages::note(call.encode().into())?; + }: _(RawOrigin::Root, hash, Weight::from_parts(100000000000, 100000000000)) + verify { + } } --- a/pallets/maintenance/src/lib.rs +++ b/pallets/maintenance/src/lib.rs @@ -25,13 +25,36 @@ #[frame_support::pallet] pub mod pallet { - use frame_support::pallet_prelude::*; + use frame_support::{dispatch::*, pallet_prelude::*}; + use frame_support::{ + traits::{QueryPreimage, StorePreimage}, + }; use frame_system::pallet_prelude::*; + use sp_core::H256; + use crate::weights::WeightInfo; #[pallet::config] pub trait Config: frame_system::Config { + /// The overarching event type. type RuntimeEvent: From> + IsType<::RuntimeEvent>; + + /// The runtime origin type. + type RuntimeOrigin: From> + + IsType<::RuntimeOrigin>; + + /// The aggregated call type. + type RuntimeCall: Parameter + + Dispatchable< + RuntimeOrigin = ::RuntimeOrigin, + PostInfo = PostDispatchInfo, + > + GetDispatchInfo + + From>; + + /// The preimage provider with which we look up call hashes to get the call. + type Preimages: QueryPreimage + StorePreimage; + + /// Weight information for extrinsics in this pallet. type WeightInfo: WeightInfo; } @@ -78,5 +101,49 @@ Ok(()) } + + /// Execute a runtime call stored as a preimage. + /// + /// `weight_bound` is the maximum weight that the caller is willing + /// to allow the extrinsic to be executed with. + #[pallet::call_index(2)] + #[pallet::weight(::WeightInfo::execute_preimage() + *weight_bound)] + pub fn execute_preimage( + origin: OriginFor, + hash: H256, + weight_bound: Weight, + ) -> DispatchResultWithPostInfo { + use codec::Decode; + + ensure_root(origin)?; + + let data = T::Preimages::fetch(&hash, None)?; + weight_bound.set_proof_size( + weight_bound + .proof_size() + .checked_sub( + data.len() + .try_into() + .map_err(|_| DispatchError::Corruption)?, + ) + .ok_or(DispatchError::Exhausted)?, + ); + + let call = ::RuntimeCall::decode(&mut &data[..]) + .map_err(|_| DispatchError::Corruption)?; + + ensure!( + call.get_dispatch_info().weight.all_lte(weight_bound), + DispatchError::Exhausted + ); + + match call.dispatch(frame_system::RawOrigin::Root.into()) { + Ok(_) => Ok(Pays::No.into()), + Err(error_and_info) => Err(DispatchErrorWithPostInfo { + post_info: Pays::No.into(), + error: error_and_info.error, + }), + } + } } } --- a/pallets/maintenance/src/weights.rs +++ b/pallets/maintenance/src/weights.rs @@ -3,7 +3,7 @@ //! Autogenerated weights for pallet_maintenance //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-11-01, STEPS: `50`, REPEAT: 80, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2023-02-22, STEPS: `50`, REPEAT: 80, LOW RANGE: `[]`, HIGH RANGE: `[]` //! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024 // Executed Command: @@ -26,6 +26,7 @@ #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(missing_docs)] #![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; @@ -35,6 +36,7 @@ pub trait WeightInfo { fn enable() -> Weight; fn disable() -> Weight; + fn execute_preimage() -> Weight; } /// Weights for pallet_maintenance using the Substrate node and recommended hardware. @@ -42,13 +44,19 @@ impl WeightInfo for SubstrateWeight { // Storage: Maintenance Enabled (r:0 w:1) fn enable() -> Weight { - Weight::from_ref_time(7_367_000) - .saturating_add(T::DbWeight::get().writes(1)) + Weight::from_ref_time(10_860_000 as u64) + .saturating_add(T::DbWeight::get().writes(1 as u64)) } // Storage: Maintenance Enabled (r:0 w:1) fn disable() -> Weight { - Weight::from_ref_time(7_273_000) - .saturating_add(T::DbWeight::get().writes(1)) + Weight::from_ref_time(10_871_000 as u64) + .saturating_add(T::DbWeight::get().writes(1 as u64)) + } + // Storage: Preimage StatusFor (r:1 w:0) + // Storage: Preimage PreimageFor (r:1 w:0) + fn execute_preimage() -> Weight { + Weight::from_ref_time(10_068_000 as u64) + .saturating_add(T::DbWeight::get().reads(2 as u64)) } } @@ -56,12 +64,18 @@ impl WeightInfo for () { // Storage: Maintenance Enabled (r:0 w:1) fn enable() -> Weight { - Weight::from_ref_time(7_367_000) - .saturating_add(RocksDbWeight::get().writes(1)) + Weight::from_ref_time(10_860_000 as u64) + .saturating_add(RocksDbWeight::get().writes(1 as u64)) } // Storage: Maintenance Enabled (r:0 w:1) fn disable() -> Weight { - Weight::from_ref_time(7_273_000) - .saturating_add(RocksDbWeight::get().writes(1)) + Weight::from_ref_time(10_871_000 as u64) + .saturating_add(RocksDbWeight::get().writes(1 as u64)) + } + // Storage: Preimage StatusFor (r:1 w:0) + // Storage: Preimage PreimageFor (r:1 w:0) + fn execute_preimage() -> Weight { + Weight::from_ref_time(10_068_000 as u64) + .saturating_add(RocksDbWeight::get().reads(2 as u64)) } } --- a/pallets/scheduler-v2/Cargo.toml +++ b/pallets/scheduler-v2/Cargo.toml @@ -24,7 +24,7 @@ sp-std = { workspace = true } [dev-dependencies] -pallet-preimage = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.37" } +pallet-preimage = { workspace = true } substrate-test-utils = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.37" } [features] --- a/runtime/common/config/pallets/mod.rs +++ b/runtime/common/config/pallets/mod.rs @@ -23,7 +23,7 @@ weights::CommonWeights, RelayChainBlockNumberProvider, }, - Runtime, RuntimeEvent, RuntimeCall, Balances, + Runtime, RuntimeEvent, RuntimeCall, RuntimeOrigin, Balances, }; use frame_support::traits::{ConstU32, ConstU64}; use up_common::{ @@ -47,6 +47,9 @@ #[cfg(feature = "collator-selection")] pub mod collator_selection; +#[cfg(feature = "preimage")] +pub mod preimage; + parameter_types! { pub TreasuryAccountId: AccountId = TreasuryModuleId::get().into_account_truncating(); pub const CollectionCreationPrice: Balance = 2 * UNIQUE; @@ -123,5 +126,11 @@ impl pallet_maintenance::Config for Runtime { type RuntimeEvent = RuntimeEvent; + type RuntimeOrigin = RuntimeOrigin; + type RuntimeCall = RuntimeCall; + #[cfg(feature = "preimage")] + type Preimages = crate::Preimage; + #[cfg(not(feature = "preimage"))] + type Preimages = (); type WeightInfo = pallet_maintenance::weights::SubstrateWeight; } --- /dev/null +++ b/runtime/common/config/pallets/preimage.rs @@ -0,0 +1,33 @@ +// Copyright 2019-2022 Unique Network (Gibraltar) Ltd. +// This file is part of Unique Network. + +// Unique Network is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Unique Network is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Unique Network. If not, see . + +use frame_support::parameter_types; +use frame_system::EnsureRoot; +use crate::{AccountId, Balance, Balances, Runtime, RuntimeEvent}; +use up_common::constants::*; + +parameter_types! { + pub PreimageBaseDeposit: Balance = 1000 * UNIQUE; +} + +impl pallet_preimage::Config for Runtime { + type WeightInfo = pallet_preimage::weights::SubstrateWeight; + type RuntimeEvent = RuntimeEvent; + type Currency = Balances; + type ManagerOrigin = EnsureRoot; + type BaseDeposit = PreimageBaseDeposit; + type ByteDeposit = TransactionByteFee; +} --- a/runtime/common/construct_runtime.rs +++ b/runtime/common/construct_runtime.rs @@ -56,6 +56,9 @@ #[cfg(feature = "collator-selection")] Identity: pallet_identity::{Pallet, Call, Storage, Event} = 40, + #[cfg(feature = "preimage")] + Preimage: pallet_preimage::{Pallet, Call, Storage, Event} = 41, + // XCM helpers. XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event} = 50, PolkadotXcm: pallet_xcm::{Pallet, Call, Event, Origin} = 51, --- a/runtime/common/runtime_apis.rs +++ b/runtime/common/runtime_apis.rs @@ -568,6 +568,7 @@ #[cfg(feature = "foreign-assets")] list_benchmark!(list, extra, pallet_foreign_assets, ForeignAssets); + list_benchmark!(list, extra, pallet_maintenance, Maintenance); // list_benchmark!(list, extra, pallet_evm_coder_substrate, EvmCoderSubstrate); @@ -632,6 +633,8 @@ #[cfg(feature = "foreign-assets")] add_benchmark!(params, batches, pallet_foreign_assets, ForeignAssets); + add_benchmark!(params, batches, pallet_maintenance, Maintenance); + // add_benchmark!(params, batches, pallet_evm_coder_substrate, EvmCoderSubstrate); if batches.is_empty() { return Err("Benchmark not found for this pallet.".into()) } --- a/runtime/opal/Cargo.toml +++ b/runtime/opal/Cargo.toml @@ -18,7 +18,7 @@ [features] default = ['opal-runtime', 'std'] limit-testing = ['pallet-unique/limit-testing', 'up-data-structs/limit-testing'] -opal-runtime = ['app-promotion', 'collator-selection', 'foreign-assets', 'pallet-test-utils', 'refungible'] +opal-runtime = ['app-promotion', 'collator-selection', 'foreign-assets', 'preimage', 'pallet-test-utils', 'refungible'] pov-estimate = [] runtime-benchmarks = [ 'cumulus-pallet-parachain-system/runtime-benchmarks', @@ -41,6 +41,7 @@ 'pallet-inflation/runtime-benchmarks', 'pallet-maintenance/runtime-benchmarks', 'pallet-nonfungible/runtime-benchmarks', + "pallet-preimage/runtime-benchmarks", 'pallet-refungible/runtime-benchmarks', 'pallet-structure/runtime-benchmarks', 'pallet-timestamp/runtime-benchmarks', @@ -69,6 +70,7 @@ # 'pallet-contracts-primitives/std', # 'pallet-contracts-rpc-runtime-api/std', # 'pallet-contract-helpers/std', + "pallet-preimage/std", "pallet-authorship/std", "pallet-session/std", "sp-consensus-aura/std", @@ -139,6 +141,7 @@ "pallet-collator-selection/try-runtime", "pallet-identity/try-runtime", "pallet-session/try-runtime", + "pallet-preimage/try-runtime", 'cumulus-pallet-aura-ext/try-runtime', 'cumulus-pallet-dmp-queue/try-runtime', 'cumulus-pallet-parachain-system/try-runtime', @@ -188,6 +191,7 @@ app-promotion = [] collator-selection = [] foreign-assets = [] +preimage = [] pallet-test-utils = [] refungible = [] scheduler = [] @@ -218,6 +222,7 @@ pallet-aura = { workspace = true } pallet-authorship = { workspace = true } pallet-balances = { workspace = true } +pallet-preimage = { workspace = true } pallet-randomness-collective-flip = { workspace = true } pallet-session = { workspace = true } pallet-sudo = { workspace = true } --- a/runtime/quartz/Cargo.toml +++ b/runtime/quartz/Cargo.toml @@ -20,7 +20,7 @@ default = ['quartz-runtime', 'std'] limit-testing = ['pallet-unique/limit-testing', 'up-data-structs/limit-testing'] pov-estimate = [] -quartz-runtime = ['app-promotion', 'collator-selection', 'foreign-assets', 'refungible'] +quartz-runtime = ['app-promotion', 'collator-selection', 'foreign-assets', 'preimage', 'refungible'] runtime-benchmarks = [ 'cumulus-pallet-parachain-system/runtime-benchmarks', 'frame-benchmarking', @@ -42,6 +42,7 @@ 'pallet-inflation/runtime-benchmarks', 'pallet-maintenance/runtime-benchmarks', 'pallet-nonfungible/runtime-benchmarks', + "pallet-preimage/runtime-benchmarks", 'pallet-refungible/runtime-benchmarks', 'pallet-structure/runtime-benchmarks', 'pallet-timestamp/runtime-benchmarks', @@ -69,6 +70,7 @@ # 'pallet-contracts-primitives/std', # 'pallet-contracts-rpc-runtime-api/std', # 'pallet-contract-helpers/std', + "pallet-preimage/std", "pallet-authorship/std", "pallet-identity/std", "pallet-session/std", @@ -136,6 +138,7 @@ "pallet-collator-selection/try-runtime", "pallet-identity/try-runtime", "pallet-session/try-runtime", + "pallet-preimage/try-runtime", 'cumulus-pallet-aura-ext/try-runtime', 'cumulus-pallet-dmp-queue/try-runtime', 'cumulus-pallet-parachain-system/try-runtime', @@ -181,6 +184,7 @@ app-promotion = [] collator-selection = [] foreign-assets = [] +preimage = [] refungible = [] scheduler = [] @@ -210,6 +214,7 @@ pallet-aura = { workspace = true } pallet-authorship = { workspace = true } pallet-balances = { workspace = true } +pallet-preimage = { workspace = true } pallet-randomness-collective-flip = { workspace = true } pallet-session = { workspace = true } pallet-sudo = { workspace = true } --- a/runtime/unique/Cargo.toml +++ b/runtime/unique/Cargo.toml @@ -39,6 +39,7 @@ 'pallet-inflation/runtime-benchmarks', 'pallet-maintenance/runtime-benchmarks', 'pallet-nonfungible/runtime-benchmarks', + "pallet-preimage/runtime-benchmarks", 'pallet-refungible/runtime-benchmarks', 'pallet-structure/runtime-benchmarks', 'pallet-timestamp/runtime-benchmarks', @@ -67,6 +68,7 @@ # 'pallet-contracts-primitives/std', # 'pallet-contracts-rpc-runtime-api/std', # 'pallet-contract-helpers/std', + "pallet-preimage/std", "pallet-authorship/std", "pallet-identity/std", "pallet-session/std", @@ -134,6 +136,7 @@ "pallet-collator-selection/try-runtime", "pallet-identity/try-runtime", "pallet-session/try-runtime", + "pallet-preimage/try-runtime", 'cumulus-pallet-aura-ext/try-runtime', 'cumulus-pallet-dmp-queue/try-runtime', 'cumulus-pallet-parachain-system/try-runtime', @@ -180,6 +183,7 @@ app-promotion = [] collator-selection = [] foreign-assets = [] +preimage = [] refungible = [] scheduler = [] @@ -209,6 +213,7 @@ pallet-aura = { workspace = true } pallet-authorship = { workspace = true } pallet-balances = { workspace = true } +pallet-preimage = { workspace = true } pallet-randomness-collective-flip = { workspace = true } pallet-session = { workspace = true } pallet-sudo = { workspace = true } --- a/tests/package.json +++ b/tests/package.json @@ -82,7 +82,7 @@ "testSetOffchainSchema": "mocha --timeout 9999999 -r ts-node/register ./**/setOffchainSchema.test.ts", "testNextSponsoring": "mocha --timeout 9999999 -r ts-node/register ./**/nextSponsoring.test.ts", "testOverflow": "mocha --timeout 9999999 -r ts-node/register ./**/overflow.test.ts", - "testMaintenance": "mocha --timeout 9999999 -r ts-node/register ./**/maintenanceMode.seqtest.ts", + "testMaintenance": "mocha --timeout 9999999 -r ts-node/register ./**/maintenance.seqtest.ts", "testInflation": "mocha --timeout 9999999 -r ts-node/register ./**/inflation.seqtest.ts", "testScheduler": "mocha --timeout 9999999 -r ts-node/register ./**/scheduler.seqtest.ts", "testSchedulingEVM": "mocha --timeout 9999999 -r ts-node/register ./**/eth/scheduling.test.ts", --- a/tests/src/interfaces/augment-api-consts.ts +++ b/tests/src/interfaces/augment-api-consts.ts @@ -41,6 +41,18 @@ **/ [key: string]: Codec; }; + authorship: { + /** + * The number of blocks back we should accept uncles. + * This means that we will deal with uncle-parents that are + * `UncleGenerations + 1` before `now`. + **/ + uncleGenerations: u32 & AugmentedConst; + /** + * Generic const + **/ + [key: string]: Codec; + }; balances: { /** * The minimum amount required to keep an account open. @@ -102,6 +114,40 @@ **/ [key: string]: Codec; }; + identity: { + /** + * The amount held on deposit for a registered identity + **/ + basicDeposit: u128 & AugmentedConst; + /** + * The amount held on deposit per additional field for a registered identity. + **/ + fieldDeposit: u128 & AugmentedConst; + /** + * 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. + **/ + maxAdditionalFields: u32 & AugmentedConst; + /** + * Maxmimum number of registrars allowed in the system. Needed to bound the complexity + * of, e.g., updating judgements. + **/ + maxRegistrars: u32 & AugmentedConst; + /** + * The maximum number of sub-accounts allowed per identified account. + **/ + maxSubAccounts: u32 & AugmentedConst; + /** + * 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. + **/ + subAccountDeposit: u128 & AugmentedConst; + /** + * Generic const + **/ + [key: string]: Codec; + }; inflation: { /** * Number of blocks that pass between treasury balance updates due to inflation --- a/tests/src/interfaces/augment-api-errors.ts +++ b/tests/src/interfaces/augment-api-errors.ts @@ -21,6 +21,10 @@ **/ IncorrectLockedBalanceOperation: AugmentedError; /** + * Errors caused by insufficient staked balance. + **/ + InsufficientStakedBalance: AugmentedError; + /** * No permission to perform an action. **/ NoPermission: AugmentedError; @@ -41,6 +45,40 @@ **/ [key: string]: AugmentedError; }; + authorship: { + /** + * The uncle is genesis. + **/ + GenesisUncle: AugmentedError; + /** + * The uncle parent not in the chain. + **/ + InvalidUncleParent: AugmentedError; + /** + * The uncle isn't recent enough to be included. + **/ + OldUncle: AugmentedError; + /** + * The uncle is too high in chain. + **/ + TooHighUncle: AugmentedError; + /** + * Too many uncles. + **/ + TooManyUncles: AugmentedError; + /** + * The uncle is already included. + **/ + UncleAlreadyIncluded: AugmentedError; + /** + * Uncles already set in the block. + **/ + UnclesAlreadySet: AugmentedError; + /** + * Generic error + **/ + [key: string]: AugmentedError; + }; balances: { /** * Beneficiary account must pre-exist @@ -79,6 +117,64 @@ **/ [key: string]: AugmentedError; }; + collatorSelection: { + /** + * User is already a candidate + **/ + AlreadyCandidate: AugmentedError; + /** + * User already holds license to collate + **/ + AlreadyHoldingLicense: AugmentedError; + /** + * User is already an Invulnerable + **/ + AlreadyInvulnerable: AugmentedError; + /** + * Account has no associated validator ID + **/ + NoAssociatedValidatorId: AugmentedError; + /** + * User does not hold a license to collate + **/ + NoLicense: AugmentedError; + /** + * User is not a candidate + **/ + NotCandidate: AugmentedError; + /** + * User is not an Invulnerable + **/ + NotInvulnerable: AugmentedError; + /** + * Permission issue + **/ + Permission: AugmentedError; + /** + * Too few invulnerables + **/ + TooFewInvulnerables: AugmentedError; + /** + * Too many candidates + **/ + TooManyCandidates: AugmentedError; + /** + * Too many invulnerables + **/ + TooManyInvulnerables: AugmentedError; + /** + * Unknown error + **/ + Unknown: AugmentedError; + /** + * Validator ID is not yet registered + **/ + ValidatorNotRegistered: AugmentedError; + /** + * Generic error + **/ + [key: string]: AugmentedError; + }; common: { /** * Account token limit exceeded per collection @@ -425,6 +521,84 @@ **/ [key: string]: AugmentedError; }; + identity: { + /** + * Account ID is already named. + **/ + AlreadyClaimed: AugmentedError; + /** + * Empty index. + **/ + EmptyIndex: AugmentedError; + /** + * Fee is changed. + **/ + FeeChanged: AugmentedError; + /** + * The index is invalid. + **/ + InvalidIndex: AugmentedError; + /** + * Invalid judgement. + **/ + InvalidJudgement: AugmentedError; + /** + * The target is invalid. + **/ + InvalidTarget: AugmentedError; + /** + * The provided judgement was for a different identity. + **/ + JudgementForDifferentIdentity: AugmentedError; + /** + * Judgement given. + **/ + JudgementGiven: AugmentedError; + /** + * Error that occurs when there is an issue paying for judgement. + **/ + JudgementPaymentFailed: AugmentedError; + /** + * No identity found. + **/ + NoIdentity: AugmentedError; + /** + * Account isn't found. + **/ + NotFound: AugmentedError; + /** + * Account isn't named. + **/ + NotNamed: AugmentedError; + /** + * Sub-account isn't owned by sender. + **/ + NotOwned: AugmentedError; + /** + * Sender is not a sub-account. + **/ + NotSub: AugmentedError; + /** + * Sticky judgement. + **/ + StickyJudgement: AugmentedError; + /** + * Too many additional fields. + **/ + TooManyFields: AugmentedError; + /** + * Maximum amount of registrars reached. Cannot add any more. + **/ + TooManyRegistrars: AugmentedError; + /** + * Too many subs-accounts. + **/ + TooManySubAccounts: AugmentedError; + /** + * Generic error + **/ + [key: string]: AugmentedError; + }; maintenance: { /** * Generic error @@ -549,145 +723,83 @@ **/ [key: string]: AugmentedError; }; - refungible: { + preimage: { /** - * Not Refungible item data used to mint in Refungible collection. + * Preimage has already been noted on-chain. **/ - NotRefungibleDataUsedToMintFungibleCollectionToken: AugmentedError; + AlreadyNoted: AugmentedError; /** - * Refungible token can't nest other tokens. + * The user is not authorized to perform this action. **/ - RefungibleDisallowsNesting: AugmentedError; + NotAuthorized: AugmentedError; /** - * Refungible token can't be repartitioned by user who isn't owns all pieces. + * The preimage cannot be removed since it has not yet been noted. **/ - RepartitionWhileNotOwningAllPieces: AugmentedError; + NotNoted: AugmentedError; /** - * Setting item properties is not allowed. + * The preimage request cannot be removed since no outstanding requests exist. **/ - SettingPropertiesNotAllowed: AugmentedError; + NotRequested: AugmentedError; /** - * Maximum refungibility exceeded. + * A preimage may not be removed when there are outstanding requests. **/ - WrongRefungiblePieces: AugmentedError; + Requested: AugmentedError; /** + * Preimage is too large to store on-chain. + **/ + TooBig: AugmentedError; + /** * Generic error **/ [key: string]: AugmentedError; }; - rmrkCore: { - /** - * Not the target owner of the sent NFT. - **/ - CannotAcceptNonOwnedNft: AugmentedError; - /** - * Not the target owner of the sent NFT. - **/ - CannotRejectNonOwnedNft: AugmentedError; - /** - * NFT was not sent and is not pending. - **/ - CannotRejectNonPendingNft: AugmentedError; - /** - * If an NFT is sent to a descendant, that would form a nesting loop, an ouroboros. - * Sending to self is redundant. - **/ - CannotSendToDescendentOrSelf: AugmentedError; - /** - * Too many tokens created in the collection, no new ones are allowed. - **/ - CollectionFullOrLocked: AugmentedError; - /** - * Only destroying collections without tokens is allowed. - **/ - CollectionNotEmpty: AugmentedError; - /** - * Collection does not exist, has a wrong type, or does not map to a Unique ID. - **/ - CollectionUnknown: AugmentedError; - /** - * Property of the type of RMRK collection could not be read successfully. - **/ - CorruptedCollectionType: AugmentedError; - /** - * Could not find an ID for a collection. It is likely there were too many collections created on the chain, causing an overflow. - **/ - NoAvailableCollectionId: AugmentedError; - /** - * Token does not exist, or there is no suitable ID for it, likely too many tokens were created in a collection, causing an overflow. - **/ - NoAvailableNftId: AugmentedError; - /** - * Could not find an ID for the resource. It is likely there were too many resources created on an NFT, causing an overflow. - **/ - NoAvailableResourceId: AugmentedError; - /** - * Token is marked as non-transferable, and thus cannot be transferred. - **/ - NonTransferable: AugmentedError; + refungible: { /** - * No permission to perform action. - **/ - NoPermission: AugmentedError; - /** - * No such resource found. + * Not Refungible item data used to mint in Refungible collection. **/ - ResourceDoesntExist: AugmentedError; + NotRefungibleDataUsedToMintFungibleCollectionToken: AugmentedError; /** - * Resource is not pending for the operation. + * Refungible token can't nest other tokens. **/ - ResourceNotPending: AugmentedError; + RefungibleDisallowsNesting: AugmentedError; /** - * Could not find a property by the supplied key. + * Refungible token can't be repartitioned by user who isn't owns all pieces. **/ - RmrkPropertyIsNotFound: AugmentedError; + RepartitionWhileNotOwningAllPieces: AugmentedError; /** - * Too many symbols supplied as the property key. The maximum is [256](up_data_structs::MAX_PROPERTY_KEY_LENGTH). + * Setting item properties is not allowed. **/ - RmrkPropertyKeyIsTooLong: AugmentedError; + SettingPropertiesNotAllowed: AugmentedError; /** - * Too many bytes supplied as the property value. The maximum is [32768](up_data_structs::MAX_PROPERTY_VALUE_LENGTH). + * Maximum refungibility exceeded. **/ - RmrkPropertyValueIsTooLong: AugmentedError; + WrongRefungiblePieces: AugmentedError; /** - * Something went wrong when decoding encoded data from the storage. - * Perhaps, there was a wrong key supplied for the type, or the data was improperly stored. - **/ - UnableToDecodeRmrkData: AugmentedError; - /** * Generic error **/ [key: string]: AugmentedError; }; - rmrkEquip: { + session: { /** - * Base collection linked to this ID does not exist. + * Registered duplicate key. **/ - BaseDoesntExist: AugmentedError; - /** - * No Theme named "default" is associated with the Base. - **/ - NeedsDefaultThemeFirst: AugmentedError; + DuplicatedKey: AugmentedError; /** - * Could not find an ID for a Base collection. It is likely there were too many collections created on the chain, causing an overflow. - **/ - NoAvailableBaseId: AugmentedError; - /** - * Could not find a suitable ID for a Part, likely too many Part tokens were created in the Base, causing an overflow + * Invalid ownership proof. **/ - NoAvailablePartId: AugmentedError; + InvalidProof: AugmentedError; /** - * Cannot assign equippables to a fixed Part. + * Key setting account is not live, so it's impossible to associate keys. **/ - NoEquippableOnFixedPart: AugmentedError; + NoAccount: AugmentedError; /** - * Part linked to this ID does not exist. + * No associated validator ID for account. **/ - PartDoesntExist: AugmentedError; + NoAssociatedValidatorId: AugmentedError; /** - * No permission to perform action. + * No keys are associated with this account. **/ - PermissionError: AugmentedError; + NoKeys: AugmentedError; /** * Generic error **/ @@ -699,6 +811,10 @@ **/ BreadthLimit: AugmentedError; /** + * Tried to nest token under collection contract address, instead of token address + **/ + CantNestTokenUnderCollection: AugmentedError; + /** * While nesting, reached the depth limit of nesting, exceeding the provided budget. **/ DepthLimit: AugmentedError; --- a/tests/src/interfaces/augment-api-events.ts +++ b/tests/src/interfaces/augment-api-events.ts @@ -8,7 +8,7 @@ import type { ApiTypes, AugmentedEvent } from '@polkadot/api-base/types'; import type { Bytes, Null, Option, Result, U8aFixed, bool, u128, u32, u64, u8 } from '@polkadot/types-codec'; import type { AccountId32, H160, H256 } from '@polkadot/types/interfaces/runtime'; -import type { EthereumLog, EvmCoreErrorExitReason, FrameSupportDispatchDispatchInfo, FrameSupportTokensMiscBalanceStatus, OrmlVestingVestingSchedule, PalletEvmAccountBasicCrossAccountIdRepr, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, RmrkTraitsNftAccountIdOrCollectionNftTuple, SpRuntimeDispatchError, SpWeightsWeightV2Weight, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetMultiAssets, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation } from '@polkadot/types/lookup'; +import type { EthereumLog, EvmCoreErrorExitReason, FrameSupportDispatchDispatchInfo, FrameSupportTokensMiscBalanceStatus, OrmlVestingVestingSchedule, PalletEvmAccountBasicCrossAccountIdRepr, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, SpRuntimeDispatchError, SpWeightsWeightV2Weight, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetMultiAssets, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation } from '@polkadot/types/lookup'; export type __AugmentedEvent = AugmentedEvent; @@ -100,6 +100,18 @@ **/ [key: string]: AugmentedEvent; }; + collatorSelection: { + CandidateAdded: AugmentedEvent; + CandidateRemoved: AugmentedEvent; + InvulnerableAdded: AugmentedEvent; + InvulnerableRemoved: AugmentedEvent; + LicenseObtained: AugmentedEvent; + LicenseReleased: AugmentedEvent; + /** + * Generic event + **/ + [key: string]: AugmentedEvent; + }; common: { /** * Address was added to the allow list. @@ -340,6 +352,65 @@ **/ [key: string]: AugmentedEvent; }; + identity: { + /** + * A number of identities and associated info were forcibly inserted. + **/ + IdentitiesInserted: AugmentedEvent; + /** + * A number of identities and all associated info were forcibly removed. + **/ + IdentitiesRemoved: AugmentedEvent; + /** + * A name was cleared, and the given balance returned. + **/ + IdentityCleared: AugmentedEvent; + /** + * A name was removed and the given balance slashed. + **/ + IdentityKilled: AugmentedEvent; + /** + * A name was set or reset (which will remove all judgements). + **/ + IdentitySet: AugmentedEvent; + /** + * A judgement was given by a registrar. + **/ + JudgementGiven: AugmentedEvent; + /** + * A judgement was asked from a registrar. + **/ + JudgementRequested: AugmentedEvent; + /** + * A judgement request was retracted. + **/ + JudgementUnrequested: AugmentedEvent; + /** + * A registrar was added. + **/ + RegistrarAdded: AugmentedEvent; + /** + * A number of identities were forcibly updated with new sub-identities. + **/ + SubIdentitiesInserted: AugmentedEvent; + /** + * A sub-identity was added to an identity and the deposit paid. + **/ + SubIdentityAdded: AugmentedEvent; + /** + * A sub-identity was removed from an identity and the deposit freed. + **/ + SubIdentityRemoved: AugmentedEvent; + /** + * A sub-identity was cleared, and the given deposit repatriated from the + * main identity account to the sub-identity account. + **/ + SubIdentityRevoked: AugmentedEvent; + /** + * Generic event + **/ + [key: string]: AugmentedEvent; + }; maintenance: { MaintenanceDisabled: AugmentedEvent; MaintenanceEnabled: AugmentedEvent; @@ -506,30 +577,30 @@ **/ [key: string]: AugmentedEvent; }; - rmrkCore: { - CollectionCreated: AugmentedEvent; - CollectionDestroyed: AugmentedEvent; - CollectionLocked: AugmentedEvent; - IssuerChanged: AugmentedEvent; - NFTAccepted: AugmentedEvent; - NFTBurned: AugmentedEvent; - NftMinted: AugmentedEvent; - NFTRejected: AugmentedEvent; - NFTSent: AugmentedEvent; - PrioritySet: AugmentedEvent; - PropertySet: AugmentedEvent, key: Bytes, value: Bytes], { collectionId: u32, maybeNftId: Option, key: Bytes, value: Bytes }>; - ResourceAccepted: AugmentedEvent; - ResourceAdded: AugmentedEvent; - ResourceRemoval: AugmentedEvent; - ResourceRemovalAccepted: AugmentedEvent; + preimage: { + /** + * A preimage has ben cleared. + **/ + Cleared: AugmentedEvent; + /** + * A preimage has been noted. + **/ + Noted: AugmentedEvent; + /** + * A preimage has been requested. + **/ + Requested: AugmentedEvent; /** * Generic event **/ [key: string]: AugmentedEvent; }; - rmrkEquip: { - BaseCreated: AugmentedEvent; - EquippablesUpdated: AugmentedEvent; + session: { + /** + * New session has happened. Note that the argument is the session index, not the + * block number as the type might suggest. + **/ + NewSession: AugmentedEvent; /** * Generic event **/ @@ -707,6 +778,10 @@ **/ Spending: AugmentedEvent; /** + * The inactive funds of the pallet have been updated. + **/ + UpdatedInactive: AugmentedEvent; + /** * Generic event **/ [key: string]: AugmentedEvent; --- a/tests/src/interfaces/augment-api-query.ts +++ b/tests/src/interfaces/augment-api-query.ts @@ -6,10 +6,11 @@ import '@polkadot/api-base/types/storage'; import type { ApiTypes, AugmentedQuery, QueryableStorageEntry } from '@polkadot/api-base/types'; +import type { Data } from '@polkadot/types'; import type { BTreeMap, Bytes, Option, U256, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec'; import type { AnyNumber, ITuple } from '@polkadot/types-codec/types'; import type { AccountId32, H160, H256 } from '@polkadot/types/interfaces/runtime'; -import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumLog, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportDispatchPerDispatchClassWeight, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensReserveData, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReserveData, PalletConfigurationAppPromotionConfiguration, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletNonfungibleItemData, PalletTransactionPaymentReleases, PalletTreasuryProposal, PhantomTypeUpDataStructs, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, SpRuntimeDigest, SpTrieStorageProof, SpWeightsWeightV2Weight, UpDataStructsCollection, UpDataStructsCollectionStats, UpDataStructsProperties, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, XcmV1MultiLocation } from '@polkadot/types/lookup'; +import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumLog, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportDispatchPerDispatchClassWeight, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OpalRuntimeRuntimeCommonSessionKeys, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensReserveData, OrmlVestingVestingSchedule, PalletAuthorshipUncleEntryItem, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReserveData, PalletConfigurationAppPromotionConfiguration, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletNonfungibleItemData, PalletPreimageRequestStatus, PalletTransactionPaymentReleases, PalletTreasuryProposal, PhantomTypeUpDataStructs, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, SpCoreCryptoKeyTypeId, SpRuntimeDigest, SpTrieStorageProof, SpWeightsWeightV2Weight, UpDataStructsCollection, UpDataStructsCollectionStats, UpDataStructsProperties, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, XcmV1MultiLocation } from '@polkadot/types/lookup'; import type { Observable } from '@polkadot/types/types'; export type __AugmentedQuery = AugmentedQuery unknown>; @@ -23,7 +24,7 @@ **/ admin: AugmentedQuery Observable>, []> & QueryableStorageEntry; /** - * Stores amount of stakes for an `Account`. + * Pending unstake records for an `Account`. * * * **Key** - Staker account. * * **Value** - Amount of stakes. @@ -44,7 +45,7 @@ **/ staked: AugmentedQuery Observable>, [AccountId32, u32]> & QueryableStorageEntry; /** - * Stores amount of stakes for an `Account`. + * Stores number of stake records for an `Account`. * * * **Key** - Staker account. * * **Value** - Amount of stakes. @@ -54,11 +55,30 @@ * Stores the total staked amount. **/ totalStaked: AugmentedQuery Observable, []> & QueryableStorageEntry; + upgradedToReserves: AugmentedQuery Observable, []> & QueryableStorageEntry; /** * Generic query **/ [key: string]: QueryableStorageEntry; }; + authorship: { + /** + * Author of current block. + **/ + author: AugmentedQuery Observable>, []> & QueryableStorageEntry; + /** + * Whether uncles were already set in this block. + **/ + didSetUncles: AugmentedQuery Observable, []> & QueryableStorageEntry; + /** + * Uncles + **/ + uncles: AugmentedQuery Observable>, []> & QueryableStorageEntry; + /** + * Generic query + **/ + [key: string]: QueryableStorageEntry; + }; balances: { /** * The Balances pallet example of storing the balance of an account. @@ -115,6 +135,28 @@ **/ [key: string]: QueryableStorageEntry; }; + collatorSelection: { + /** + * The (community, limited) collation candidates. + **/ + candidates: AugmentedQuery Observable>, []> & QueryableStorageEntry; + /** + * The invulnerable, fixed collators. + **/ + invulnerables: AugmentedQuery Observable>, []> & QueryableStorageEntry; + /** + * Last block authored by collator. + **/ + lastAuthoredBlock: AugmentedQuery Observable, [AccountId32]> & QueryableStorageEntry; + /** + * The (community) collation license holders. + **/ + licenseDepositOf: AugmentedQuery Observable, [AccountId32]> & QueryableStorageEntry; + /** + * Generic query + **/ + [key: string]: QueryableStorageEntry; + }; common: { /** * Storage of the amount of collection admins. @@ -267,6 +309,9 @@ * * **Value** - owner for contract. **/ owner: AugmentedQuery Observable, [H160]> & QueryableStorageEntry; + /** + * Deprecated: this storage is deprecated + **/ selfSponsoring: AugmentedQuery Observable, [H160]> & QueryableStorageEntry; sponsorBasket: AugmentedQuery Observable>, [H160, H160]> & QueryableStorageEntry; /** @@ -366,6 +411,38 @@ **/ [key: string]: QueryableStorageEntry; }; + identity: { + /** + * Information that is pertinent to identify the entity behind an account. + * + * TWOX-NOTE: OK ― `AccountId` is a secure hash. + **/ + identityOf: AugmentedQuery Observable>, [AccountId32]> & QueryableStorageEntry; + /** + * 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. + **/ + registrars: AugmentedQuery Observable>>, []> & QueryableStorageEntry; + /** + * 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. + **/ + subsOf: AugmentedQuery Observable]>>, [AccountId32]> & QueryableStorageEntry; + /** + * 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`. + **/ + superOf: AugmentedQuery Observable>>, [AccountId32]> & QueryableStorageEntry; + /** + * Generic query + **/ + [key: string]: QueryableStorageEntry; + }; inflation: { /** * Current inflation for `InflationBlockInterval` number of blocks @@ -425,7 +502,7 @@ * usual [`TokenProperties`] due to an unlimited number * and separately stored and written-to key-value pairs. * - * Currently used to store RMRK data. + * Currently unused. **/ tokenAuxProperties: AugmentedQuery Observable>, [u32, u32, UpDataStructsPropertyScope, Bytes]> & QueryableStorageEntry; /** @@ -602,6 +679,17 @@ **/ [key: string]: QueryableStorageEntry; }; + preimage: { + preimageFor: AugmentedQuery | [H256 | string | Uint8Array, u32 | AnyNumber | Uint8Array]) => Observable>, [ITuple<[H256, u32]>]> & QueryableStorageEntry]>; + /** + * The request status of a given hash. + **/ + statusFor: AugmentedQuery Observable>, [H256]> & QueryableStorageEntry; + /** + * Generic query + **/ + [key: string]: QueryableStorageEntry; + }; randomnessCollectiveFlip: { /** * Series of block headers from the last 81 blocks that acts as random seed material. This @@ -628,7 +716,7 @@ **/ balance: AugmentedQuery Observable, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry; /** - * Operator set by a wallet owner that could perform certain transactions on all tokens in the wallet. + * Spender set by a wallet owner that could perform certain transactions on all tokens in the wallet. **/ collectionAllowance: AugmentedQuery Observable, [u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry; /** @@ -656,29 +744,41 @@ **/ [key: string]: QueryableStorageEntry; }; - rmrkCore: { + session: { /** - * Latest yet-unused collection ID. + * Current index of the session. **/ - collectionIndex: AugmentedQuery Observable, []> & QueryableStorageEntry; + currentIndex: AugmentedQuery Observable, []> & QueryableStorageEntry; /** - * Mapping from RMRK collection ID to Unique's. + * 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. **/ - uniqueCollectionId: AugmentedQuery Observable, [u32]> & QueryableStorageEntry; + disabledValidators: AugmentedQuery Observable>, []> & QueryableStorageEntry; /** - * Generic query + * The owner of a key. The key is the `KeyTypeId` + the encoded key. + **/ + keyOwner: AugmentedQuery | [SpCoreCryptoKeyTypeId | string | Uint8Array, Bytes | string | Uint8Array]) => Observable>, [ITuple<[SpCoreCryptoKeyTypeId, Bytes]>]> & QueryableStorageEntry]>; + /** + * The next session keys for a validator. + **/ + nextKeys: AugmentedQuery Observable>, [AccountId32]> & QueryableStorageEntry; + /** + * True if the underlying economic identities or weighting behind the validators + * has changed in the queued validator set. **/ - [key: string]: QueryableStorageEntry; - }; - rmrkEquip: { + queuedChanged: AugmentedQuery Observable, []> & QueryableStorageEntry; /** - * Checkmark that a Base has a Theme NFT named "default". + * The queued keys for the next session. When the next session begins, these keys + * will be used to determine the validator's session keys. **/ - baseHasDefaultTheme: AugmentedQuery Observable, [u32]> & QueryableStorageEntry; + queuedKeys: AugmentedQuery Observable>>, []> & QueryableStorageEntry; /** - * Map of a Base ID and a Part ID to an NFT in the Base collection serving as the Part. + * The current set of validators. **/ - inernalPartId: AugmentedQuery Observable>, [u32, u32]> & QueryableStorageEntry; + validators: AugmentedQuery Observable>, []> & QueryableStorageEntry; /** * Generic query **/ @@ -852,7 +952,7 @@ /** * The amount which has been reported as inactive to Currency. **/ - inactive: AugmentedQuery Observable, []> & QueryableStorageEntry; + deactivated: AugmentedQuery Observable, []> & QueryableStorageEntry; /** * Number of proposals that have been made. **/ --- a/tests/src/interfaces/augment-api-rpc.ts +++ b/tests/src/interfaces/augment-api-rpc.ts @@ -5,7 +5,7 @@ // this is required to allow for ambient/previous definitions import '@polkadot/rpc-core/types/jsonrpc'; -import type { PalletEvmAccountBasicCrossAccountIdRepr, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsPartPartType, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceResourceInfo, RmrkTraitsTheme, UpDataStructsCollectionLimits, UpDataStructsCollectionStats, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsRpcCollection, UpDataStructsTokenChild, UpDataStructsTokenData, UpPovEstimateRpcPovInfo } from './default'; +import type { PalletEvmAccountBasicCrossAccountIdRepr, UpDataStructsCollectionLimits, UpDataStructsCollectionStats, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsRpcCollection, UpDataStructsTokenChild, UpDataStructsTokenData, UpPovEstimateRpcPovInfo } from './default'; import type { AugmentedRpc } from '@polkadot/rpc-core/types'; import type { Metadata, StorageKey } from '@polkadot/types'; import type { Bytes, HashMap, Json, Null, Option, Text, U256, U64, Vec, bool, f64, u128, u32, u64 } from '@polkadot/types-codec'; @@ -26,7 +26,7 @@ import type { StorageKind } from '@polkadot/types/interfaces/offchain'; import type { FeeDetails, RuntimeDispatchInfoV1 } from '@polkadot/types/interfaces/payment'; import type { RpcMethods } from '@polkadot/types/interfaces/rpc'; -import type { AccountId, AccountId32, BlockNumber, H160, H256, H64, Hash, Header, Index, Justification, KeyValue, SignedBlock, StorageData } from '@polkadot/types/interfaces/runtime'; +import type { AccountId, BlockNumber, H160, H256, H64, Hash, Header, Index, Justification, KeyValue, SignedBlock, StorageData } from '@polkadot/types/interfaces/runtime'; import type { MigrationStatusResult, ReadProof, RuntimeVersion, TraceBlockResponse } from '@polkadot/types/interfaces/state'; import type { ApplyExtrinsicResult, ChainProperties, ChainType, Health, NetworkState, NodeRole, PeerInfo, SyncState } from '@polkadot/types/interfaces/system'; import type { IExtrinsic, Observable } from '@polkadot/types/types'; @@ -441,60 +441,6 @@ * Estimate PoV size of encoded signed extrinsics **/ estimateExtrinsicPoV: AugmentedRpc<(encodedXt: Vec | (Bytes | string | Uint8Array)[], at?: Hash | string | Uint8Array) => Observable>; - }; - rmrk: { - /** - * Get tokens owned by an account in a collection - **/ - accountTokens: AugmentedRpc<(accountId: AccountId32 | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable>>; - /** - * Get base info - **/ - base: AugmentedRpc<(baseId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable>>; - /** - * Get all Base's parts - **/ - baseParts: AugmentedRpc<(baseId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable>>; - /** - * Get collection by id - **/ - collectionById: AugmentedRpc<(id: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable>>; - /** - * Get collection properties - **/ - collectionProperties: AugmentedRpc<(collectionId: u32 | AnyNumber | Uint8Array, filterKeys?: Vec | (Text | string)[], at?: Hash | string | Uint8Array) => Observable>>; - /** - * Get the latest created collection id - **/ - lastCollectionIdx: AugmentedRpc<(at?: Hash | string | Uint8Array) => Observable>; - /** - * Get NFT by collection id and NFT id - **/ - nftById: AugmentedRpc<(collectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable>>; - /** - * Get NFT children - **/ - nftChildren: AugmentedRpc<(collectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable>>; - /** - * Get NFT properties - **/ - nftProperties: AugmentedRpc<(collectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, filterKeys?: Vec | (Text | string)[], at?: Hash | string | Uint8Array) => Observable>>; - /** - * Get NFT resource priorities - **/ - nftResourcePriority: AugmentedRpc<(collectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable>>; - /** - * Get NFT resources - **/ - nftResources: AugmentedRpc<(collectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable>>; - /** - * Get Base's theme names - **/ - themeNames: AugmentedRpc<(baseId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable>>; - /** - * Get Theme's keys values - **/ - themes: AugmentedRpc<(baseId: u32 | AnyNumber | Uint8Array, themeName: Text | string, keys: Option> | null | Uint8Array | Vec | (Text | string)[], at?: Hash | string | Uint8Array) => Observable>>; }; rpc: { /** --- a/tests/src/interfaces/augment-api-tx.ts +++ b/tests/src/interfaces/augment-api-tx.ts @@ -6,10 +6,11 @@ import '@polkadot/api-base/types/submittable'; import type { ApiTypes, AugmentedSubmittable, SubmittableExtrinsic, SubmittableExtrinsicFunction } from '@polkadot/api-base/types'; +import type { Data } from '@polkadot/types'; import type { Bytes, Compact, Option, U256, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec'; import type { AnyNumber, IMethod, ITuple } from '@polkadot/types-codec/types'; -import type { AccountId32, Call, H160, H256, MultiAddress, Permill } from '@polkadot/types/interfaces/runtime'; -import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumLog, EthereumTransactionTransactionV2, OrmlVestingVestingSchedule, PalletConfigurationAppPromotionConfiguration, PalletEvmAccountBasicCrossAccountIdRepr, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsPartEquippableList, RmrkTraitsPartPartType, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, SpWeightsWeightV2Weight, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCreateCollectionData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, XcmV1MultiLocation, XcmV2WeightLimit, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup'; +import type { AccountId32, Call, H160, H256, MultiAddress } from '@polkadot/types/interfaces/runtime'; +import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumLog, EthereumTransactionTransactionV2, OpalRuntimeRuntimeCommonSessionKeys, OrmlVestingVestingSchedule, PalletConfigurationAppPromotionConfiguration, PalletEvmAccountBasicCrossAccountIdRepr, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletIdentityBitFlags, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletIdentityRegistration, SpRuntimeHeader, SpWeightsWeightV2Weight, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCreateCollectionData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, XcmV1MultiLocation, XcmV2WeightLimit, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup'; export type __AugmentedSubmittable = AugmentedSubmittable<() => unknown>; export type __SubmittableExtrinsic = SubmittableExtrinsic; @@ -109,11 +110,31 @@ stopSponsoringContract: AugmentedSubmittable<(contractId: H160 | string | Uint8Array) => SubmittableExtrinsic, [H160]>; /** * Unstakes all stakes. - * Moves the sum of all stakes to the `reserved` state. * After the end of `PendingInterval` this sum becomes completely * free for further use. **/ - unstake: AugmentedSubmittable<() => SubmittableExtrinsic, []>; + unstakeAll: AugmentedSubmittable<() => SubmittableExtrinsic, []>; + /** + * Unstakes the amount of balance for the staker. + * After the end of `PendingInterval` this sum becomes completely + * free for further use. + * + * # Arguments + * + * * `staker`: staker account. + * * `amount`: amount of unstaked funds. + **/ + unstakePartial: AugmentedSubmittable<(amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u128]>; + /** + * Generic tx + **/ + [key: string]: SubmittableExtrinsicFunction; + }; + authorship: { + /** + * Provide a set of uncles. + **/ + setUncles: AugmentedSubmittable<(newUncles: Vec | (SpRuntimeHeader | { parentHash?: any; number?: any; stateRoot?: any; extrinsicsRoot?: any; digest?: any } | string | Uint8Array)[]) => SubmittableExtrinsic, [Vec]>; /** * Generic tx **/ @@ -214,6 +235,54 @@ **/ [key: string]: SubmittableExtrinsicFunction; }; + collatorSelection: { + /** + * Add a collator to the list of invulnerable (fixed) collators. + **/ + addInvulnerable: AugmentedSubmittable<(updated: AccountId32 | string | Uint8Array) => SubmittableExtrinsic, [AccountId32]>; + /** + * Force deregister `origin` as a collator candidate as a governing authority, and revoke its license. + * Note that the collator can only leave on session change. + * The `LicenseBond` will be unreserved and returned immediately. + * + * This call is, of course, not applicable to `Invulnerable` collators. + **/ + forceReleaseLicense: AugmentedSubmittable<(who: AccountId32 | string | Uint8Array) => SubmittableExtrinsic, [AccountId32]>; + /** + * Purchase a license on block collation for this account. + * It does not make it a collator candidate, use `onboard` afterward. The account must + * (a) already have registered session keys and (b) be able to reserve the `LicenseBond`. + * + * This call is not available to `Invulnerable` collators. + **/ + getLicense: AugmentedSubmittable<() => SubmittableExtrinsic, []>; + /** + * Deregister `origin` as a collator candidate. Note that the collator can only leave on + * session change. The license to `onboard` later at any other time will remain. + **/ + offboard: AugmentedSubmittable<() => SubmittableExtrinsic, []>; + /** + * Register this account as a candidate for collators for next sessions. + * The account must already hold a license, and cannot offboard immediately during a session. + * + * This call is not available to `Invulnerable` collators. + **/ + onboard: AugmentedSubmittable<() => SubmittableExtrinsic, []>; + /** + * Forfeit `origin`'s own license. The `LicenseBond` will be unreserved immediately. + * + * This call is not available to `Invulnerable` collators. + **/ + releaseLicense: AugmentedSubmittable<() => SubmittableExtrinsic, []>; + /** + * Remove a collator from the list of invulnerable (fixed) collators. + **/ + removeInvulnerable: AugmentedSubmittable<(who: AccountId32 | string | Uint8Array) => SubmittableExtrinsic, [AccountId32]>; + /** + * Generic tx + **/ + [key: string]: SubmittableExtrinsicFunction; + }; configuration: { setAppPromotionConfigurationOverride: AugmentedSubmittable<(configuration: PalletConfigurationAppPromotionConfiguration | { recalculationInterval?: any; pendingInterval?: any; intervalIncome?: any; maxStakersPerCalculation?: any } | string | Uint8Array) => SubmittableExtrinsic, [PalletConfigurationAppPromotionConfiguration]>; setCollatorSelectionDesiredCollators: AugmentedSubmittable<(max: Option | null | Uint8Array | u32 | AnyNumber) => SubmittableExtrinsic, [Option]>; @@ -308,6 +377,10 @@ **/ insertEvents: AugmentedSubmittable<(events: Vec | (Bytes | string | Uint8Array)[]) => SubmittableExtrinsic, [Vec]>; /** + * Remove remark compatibility data leftovers + **/ + removeRmrkData: AugmentedSubmittable<() => SubmittableExtrinsic, []>; + /** * Insert items into contract storage, this method can be called * multiple times **/ @@ -325,6 +398,298 @@ **/ [key: string]: SubmittableExtrinsicFunction; }; + identity: { + /** + * 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. + * + * # + * - `O(R)` where `R` registrar-count (governance-bounded and code-bounded). + * - One storage mutation (codec `O(R)`). + * - One event. + * # + **/ + addRegistrar: AugmentedSubmittable<(account: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic, [MultiAddress]>; + /** + * 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`. + **/ + addSub: AugmentedSubmittable<(sub: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, data: Data | { None: any } | { Raw: any } | { BlakeTwo256: any } | { Sha256: any } | { Keccak256: any } | { ShaThree256: any } | string | Uint8Array) => SubmittableExtrinsic, [MultiAddress, Data]>; + /** + * 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. + * + * # + * - `O(R + X)`. + * - One balance-reserve operation. + * - One storage mutation `O(R + X)`. + * - One event + * # + **/ + cancelRequest: AugmentedSubmittable<(regIndex: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32]>; + /** + * 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. + * + * # + * - `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). + * - One balance-unreserve operation. + * - `2` storage reads and `S + 2` storage deletions. + * - One event. + * # + **/ + clearIdentity: AugmentedSubmittable<() => SubmittableExtrinsic, []>; + /** + * Set identities to be associated with the provided accounts as force origin. + * + * This is not meant to operate in tandem with the identity pallet as is, + * and be instead used to keep identities made and verified externally, + * forbidden from interacting with an ordinary user, since it ignores any safety mechanism. + **/ + forceInsertIdentities: AugmentedSubmittable<(identities: Vec> | ([AccountId32 | string | Uint8Array, PalletIdentityRegistration | { judgements?: any; deposit?: any; info?: any } | string | Uint8Array])[]) => SubmittableExtrinsic, [Vec>]>; + /** + * Remove identities associated with the provided accounts as force origin. + * + * This is not meant to operate in tandem with the identity pallet as is, + * and be instead used to keep identities made and verified externally, + * forbidden from interacting with an ordinary user, since it ignores any safety mechanism. + **/ + forceRemoveIdentities: AugmentedSubmittable<(identities: Vec | (AccountId32 | string | Uint8Array)[]) => SubmittableExtrinsic, [Vec]>; + /** + * Set sub-identities to be associated with the provided accounts as force origin. + * + * This is not meant to operate in tandem with the identity pallet as is, + * and be instead used to keep identities made and verified externally, + * forbidden from interacting with an ordinary user, since it ignores any safety mechanism. + **/ + forceSetSubs: AugmentedSubmittable<(subs: Vec>]>]>> | ([AccountId32 | string | Uint8Array, ITuple<[u128, Vec>]> | [u128 | AnyNumber | Uint8Array, Vec> | ([AccountId32 | string | Uint8Array, Data | { None: any } | { Raw: any } | { BlakeTwo256: any } | { Sha256: any } | { Keccak256: any } | { ShaThree256: any } | string | Uint8Array])[]]])[]) => SubmittableExtrinsic, [Vec>]>]>>]>; + /** + * 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. + * + * # + * - `O(R + S + X)`. + * - One balance-reserve operation. + * - `S + 2` storage mutations. + * - One event. + * # + **/ + killIdentity: AugmentedSubmittable<(target: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic, [MultiAddress]>; + /** + * 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. + * + * # + * - `O(R + X)`. + * - One balance-transfer operation. + * - Up to one account-lookup operation. + * - Storage: 1 read `O(R)`, 1 mutate `O(R + X)`. + * - One event. + * # + **/ + provideJudgement: AugmentedSubmittable<(regIndex: Compact | AnyNumber | Uint8Array, target: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, judgement: PalletIdentityJudgement | { Unknown: any } | { FeePaid: any } | { Reasonable: any } | { KnownGood: any } | { OutOfDate: any } | { LowQuality: any } | { Erroneous: any } | string | Uint8Array, identity: H256 | string | Uint8Array) => SubmittableExtrinsic, [Compact, MultiAddress, PalletIdentityJudgement, H256]>; + /** + * 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. + **/ + quitSub: AugmentedSubmittable<() => SubmittableExtrinsic, []>; + /** + * 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`. + **/ + removeSub: AugmentedSubmittable<(sub: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic, [MultiAddress]>; + /** + * 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`. + **/ + renameSub: AugmentedSubmittable<(sub: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, data: Data | { None: any } | { Raw: any } | { BlakeTwo256: any } | { Sha256: any } | { Keccak256: any } | { ShaThree256: any } | string | Uint8Array) => SubmittableExtrinsic, [MultiAddress, Data]>; + /** + * 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. + * + * # + * - `O(R + X)`. + * - One balance-reserve operation. + * - Storage: 1 read `O(R)`, 1 mutate `O(X + R)`. + * - One event. + * # + **/ + requestJudgement: AugmentedSubmittable<(regIndex: Compact | AnyNumber | Uint8Array, maxFee: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Compact, Compact]>; + /** + * 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. + * + * # + * - `O(R)`. + * - One storage mutation `O(R)`. + * - Benchmark: 8.823 + R * 0.32 µs (min squares analysis) + * # + **/ + setAccountId: AugmentedSubmittable<(index: Compact | AnyNumber | Uint8Array, updated: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic, [Compact, MultiAddress]>; + /** + * 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. + * + * # + * - `O(R)`. + * - One storage mutation `O(R)`. + * - Benchmark: 7.315 + R * 0.329 µs (min squares analysis) + * # + **/ + setFee: AugmentedSubmittable<(index: Compact | AnyNumber | Uint8Array, fee: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Compact, Compact]>; + /** + * 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. + * + * # + * - `O(R)`. + * - One storage mutation `O(R)`. + * - Benchmark: 7.464 + R * 0.325 µs (min squares analysis) + * # + **/ + setFields: AugmentedSubmittable<(index: Compact | AnyNumber | Uint8Array, fields: PalletIdentityBitFlags) => SubmittableExtrinsic, [Compact, PalletIdentityBitFlags]>; + /** + * 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. + * + * # + * - `O(X + X' + R)` + * - where `X` additional-field-count (deposit-bounded and code-bounded) + * - where `R` judgements-count (registrar-count-bounded) + * - One balance reserve operation. + * - One storage mutation (codec-read `O(X' + R)`, codec-write `O(X + R)`). + * - One event. + * # + **/ + setIdentity: AugmentedSubmittable<(info: PalletIdentityIdentityInfo | { additional?: any; display?: any; legal?: any; web?: any; riot?: any; email?: any; pgpFingerprint?: any; image?: any; twitter?: any } | string | Uint8Array) => SubmittableExtrinsic, [PalletIdentityIdentityInfo]>; + /** + * 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. + * + * # + * - `O(P + S)` + * - where `P` old-subs-count (hard- and deposit-bounded). + * - where `S` subs-count (hard- and deposit-bounded). + * - At most one balance operations. + * - DB: + * - `P + S` storage mutations (codec complexity `O(1)`) + * - One storage read (codec complexity `O(P)`). + * - One storage write (codec complexity `O(S)`). + * - One storage-exists (`IdentityOf::contains_key`). + * # + **/ + setSubs: AugmentedSubmittable<(subs: Vec> | ([AccountId32 | string | Uint8Array, Data | { None: any } | { Raw: any } | { BlakeTwo256: any } | { Sha256: any } | { Keccak256: any } | { ShaThree256: any } | string | Uint8Array])[]) => SubmittableExtrinsic, [Vec>]>; + /** + * Generic tx + **/ + [key: string]: SubmittableExtrinsicFunction; + }; inflation: { /** * This method sets the inflation start date. Can be only called once. @@ -349,6 +714,13 @@ disable: AugmentedSubmittable<() => SubmittableExtrinsic, []>; enable: AugmentedSubmittable<() => SubmittableExtrinsic, []>; /** + * Execute a runtime call stored as a preimage. + * + * `weight_bound` is the maximum weight that the caller is willing + * to allow the extrinsic to be executed with. + **/ + executePreimage: AugmentedSubmittable<(hash: H256 | string | Uint8Array, weightBound: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic, [H256, SpWeightsWeightV2Weight]>; + /** * Generic tx **/ [key: string]: SubmittableExtrinsicFunction; @@ -506,337 +878,78 @@ **/ [key: string]: SubmittableExtrinsicFunction; }; - rmrkCore: { - /** - * Accept an NFT sent from another account to self or an owned NFT. - * - * The NFT in question must be pending, and, thus, be [sent](`Pallet::send`) first. - * - * # Permissions: - * - Token-owner-to-be - * - * # Arguments: - * - `origin`: sender of the transaction - * - `rmrk_collection_id`: RMRK collection ID of the NFT to be accepted. - * - `rmrk_nft_id`: ID of the NFT to be accepted. - * - `new_owner`: Either the sender's account ID or a sender-owned NFT, - * whichever the accepted NFT was sent to. - **/ - acceptNft: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple | { AccountId: any } | { CollectionAndNftTuple: any } | string | Uint8Array) => SubmittableExtrinsic, [u32, u32, RmrkTraitsNftAccountIdOrCollectionNftTuple]>; - /** - * Accept the addition of a newly created pending resource to an existing NFT. - * - * This transaction is needed when a resource is created and assigned to an NFT - * by a non-owner, i.e. the collection issuer, with one of the - * [`add_...` transactions](Pallet::add_basic_resource). - * - * # Permissions: - * - Token owner - * - * # Arguments: - * - `origin`: sender of the transaction - * - `rmrk_collection_id`: RMRK collection ID of the NFT. - * - `rmrk_nft_id`: ID of the NFT with a pending resource to be accepted. - * - `resource_id`: ID of the newly created pending resource. - * accept the addition of a new resource to an existing NFT - **/ - acceptResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32, u32, u32]>; - /** - * Accept the removal of a removal-pending resource from an NFT. - * - * This transaction is needed when a non-owner, i.e. the collection issuer, - * requests a [removal](`Pallet::remove_resource`) of a resource from an NFT. - * - * # Permissions: - * - Token owner - * - * # Arguments: - * - `origin`: sender of the transaction - * - `rmrk_collection_id`: RMRK collection ID of the NFT. - * - `rmrk_nft_id`: ID of the NFT with a resource to be removed. - * - `resource_id`: ID of the removal-pending resource. - **/ - acceptResourceRemoval: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32, u32, u32]>; - /** - * Create and set/propose a basic resource for an NFT. - * - * A basic resource is the simplest, lacking a Base and anything that comes with it. - * See RMRK docs for more information and examples. - * - * # Permissions: - * - Collection issuer - if not the token owner, adding the resource will warrant - * the owner's [acceptance](Pallet::accept_resource). - * - * # Arguments: - * - `origin`: sender of the transaction - * - `rmrk_collection_id`: RMRK collection ID of the NFT. - * - `nft_id`: ID of the NFT to assign a resource to. - * - `resource`: Data of the resource to be created. - **/ - addBasicResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceBasicResource | { src?: any; metadata?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic, [u32, u32, RmrkTraitsResourceBasicResource]>; - /** - * Create and set/propose a composable resource for an NFT. - * - * A composable resource links to a Base and has a subset of its Parts it is composed of. - * See RMRK docs for more information and examples. - * - * # Permissions: - * - Collection issuer - if not the token owner, adding the resource will warrant - * the owner's [acceptance](Pallet::accept_resource). - * - * # Arguments: - * - `origin`: sender of the transaction - * - `rmrk_collection_id`: RMRK collection ID of the NFT. - * - `nft_id`: ID of the NFT to assign a resource to. - * - `resource`: Data of the resource to be created. - **/ - addComposableResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceComposableResource | { parts?: any; base?: any; src?: any; metadata?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic, [u32, u32, RmrkTraitsResourceComposableResource]>; + preimage: { /** - * Create and set/propose a slot resource for an NFT. - * - * A slot resource links to a Base and a slot ID in it which it can fit into. - * See RMRK docs for more information and examples. - * - * # Permissions: - * - Collection issuer - if not the token owner, adding the resource will warrant - * the owner's [acceptance](Pallet::accept_resource). + * Register a preimage on-chain. * - * # Arguments: - * - `origin`: sender of the transaction - * - `rmrk_collection_id`: RMRK collection ID of the NFT. - * - `nft_id`: ID of the NFT to assign a resource to. - * - `resource`: Data of the resource to be created. + * 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. **/ - addSlotResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceSlotResource | { base?: any; src?: any; metadata?: any; slot?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic, [u32, u32, RmrkTraitsResourceSlotResource]>; - /** - * Burn an NFT, destroying it and its nested tokens up to the specified limit. - * If the burning budget is exceeded, the transaction is reverted. - * - * This is the way to burn a nested token as well. - * - * For more information, see [`burn_recursively`](pallet_nonfungible::pallet::Pallet::burn_recursively). - * - * # Permissions: - * * Token owner - * - * # Arguments: - * - `origin`: sender of the transaction - * - `collection_id`: RMRK ID of the collection in which the NFT to burn belongs to. - * - `nft_id`: ID of the NFT to be destroyed. - * - `max_burns`: Maximum number of tokens to burn, assuming nesting. The transaction - * is reverted if there are more tokens to burn in the nesting tree than this number. - * This is primarily a mechanism of transaction weight control. - **/ - burnNft: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, maxBurns: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32, u32, u32]>; + notePreimage: AugmentedSubmittable<(bytes: Bytes | string | Uint8Array) => SubmittableExtrinsic, [Bytes]>; /** - * Change the issuer of a collection. Analogous to Unique's collection's [`owner`](up_data_structs::Collection). + * Request a preimage be uploaded to the chain without paying any fees or deposits. * - * # Permissions: - * * Collection issuer - * - * # Arguments: - * - `origin`: sender of the transaction - * - `collection_id`: RMRK collection ID to change the issuer of. - * - `new_issuer`: Collection's new issuer. + * 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. **/ - changeCollectionIssuer: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newIssuer: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic, [u32, MultiAddress]>; + requestPreimage: AugmentedSubmittable<(hash: H256 | string | Uint8Array) => SubmittableExtrinsic, [H256]>; /** - * Create a new collection of NFTs. + * Clear an unrequested preimage from the runtime storage. * - * # Permissions: - * * Anyone - will be assigned as the issuer of the collection. + * If `len` is provided, then it will be a much cheaper operation. * - * # Arguments: - * - `origin`: sender of the transaction - * - `metadata`: Metadata describing the collection, e.g. IPFS hash. Cannot be changed. - * - `max`: Optional maximum number of tokens. - * - `symbol`: UTF-8 string with token prefix, by which to represent the token in wallets and UIs. - * Analogous to Unique's [`token_prefix`](up_data_structs::Collection). Cannot be changed. + * - `hash`: The hash of the preimage to be removed from the store. + * - `len`: The length of the preimage of `hash`. **/ - createCollection: AugmentedSubmittable<(metadata: Bytes | string | Uint8Array, max: Option | null | Uint8Array | u32 | AnyNumber, symbol: Bytes | string | Uint8Array) => SubmittableExtrinsic, [Bytes, Option, Bytes]>; + unnotePreimage: AugmentedSubmittable<(hash: H256 | string | Uint8Array) => SubmittableExtrinsic, [H256]>; /** - * Destroy a collection. - * - * Only empty collections can be destroyed. If it has any tokens, they must be burned first. + * Clear a previously made request for a preimage. * - * # Permissions: - * * Collection issuer - * - * # Arguments: - * - `origin`: sender of the transaction - * - `collection_id`: RMRK ID of the collection to destroy. + * NOTE: THIS MUST NOT BE CALLED ON `hash` MORE TIMES THAN `request_preimage`. **/ - destroyCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32]>; - /** - * "Lock" the collection and prevent new token creation. Cannot be undone. - * - * # Permissions: - * * Collection issuer - * - * # Arguments: - * - `origin`: sender of the transaction - * - `collection_id`: RMRK ID of the collection to lock. - **/ - lockCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32]>; - /** - * Mint an NFT in a specified collection. - * - * # Permissions: - * * Collection issuer - * - * # Arguments: - * - `origin`: sender of the transaction - * - `owner`: Owner account of the NFT. If set to None, defaults to the sender (collection issuer). - * - `collection_id`: RMRK collection ID for the NFT to be minted within. Cannot be changed. - * - `recipient`: Receiver account of the royalty. Has no effect if the `royalty_amount` is not set. Cannot be changed. - * - `royalty_amount`: Optional permillage reward from each trade for the `recipient`. Cannot be changed. - * - `metadata`: Arbitrary data about an NFT, e.g. IPFS hash. Cannot be changed. - * - `transferable`: Can this NFT be transferred? Cannot be changed. - * - `resources`: Resource data to be added to the NFT immediately after minting. - **/ - mintNft: AugmentedSubmittable<(owner: Option | null | Uint8Array | AccountId32 | string, collectionId: u32 | AnyNumber | Uint8Array, recipient: Option | null | Uint8Array | AccountId32 | string, royaltyAmount: Option | null | Uint8Array | Permill | AnyNumber, metadata: Bytes | string | Uint8Array, transferable: bool | boolean | Uint8Array, resources: Option> | null | Uint8Array | Vec | (RmrkTraitsResourceResourceTypes | { Basic: any } | { Composable: any } | { Slot: any } | string | Uint8Array)[]) => SubmittableExtrinsic, [Option, u32, Option, Option, Bytes, bool, Option>]>; - /** - * Reject an NFT sent from another account to self or owned NFT. - * The NFT in question will not be sent back and burnt instead. - * - * The NFT in question must be pending, and, thus, be [sent](`Pallet::send`) first. - * - * # Permissions: - * - Token-owner-to-be-not - * - * # Arguments: - * - `origin`: sender of the transaction - * - `rmrk_collection_id`: RMRK ID of the NFT to be rejected. - * - `rmrk_nft_id`: ID of the NFT to be rejected. - **/ - rejectNft: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32, u32]>; - /** - * Remove and erase a resource from an NFT. - * - * If the sender does not own the NFT, then it will be pending confirmation, - * and will have to be [accepted](Pallet::accept_resource_removal) by the token owner. - * - * # Permissions - * - Collection issuer - * - * # Arguments - * - `origin`: sender of the transaction - * - `rmrk_collection_id`: RMRK ID of a collection to which the NFT making use of the resource belongs to. - * - `nft_id`: ID of the NFT with a resource to be removed. - * - `resource_id`: ID of the resource to be removed. - **/ - removeResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32, u32, u32]>; - /** - * Transfer an NFT from an account/NFT A to another account/NFT B. - * The token must be transferable. Nesting cannot occur deeper than the [`NESTING_BUDGET`]. - * - * If the target owner is an NFT owned by another account, then the NFT will enter - * the pending state and will have to be accepted by the other account. - * - * # Permissions: - * - Token owner - * - * # Arguments: - * - `origin`: sender of the transaction - * - `rmrk_collection_id`: RMRK ID of the collection of the NFT to be transferred. - * - `rmrk_nft_id`: ID of the NFT to be transferred. - * - `new_owner`: New owner of the nft which can be either an account or a NFT. - **/ - send: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple | { AccountId: any } | { CollectionAndNftTuple: any } | string | Uint8Array) => SubmittableExtrinsic, [u32, u32, RmrkTraitsNftAccountIdOrCollectionNftTuple]>; + unrequestPreimage: AugmentedSubmittable<(hash: H256 | string | Uint8Array) => SubmittableExtrinsic, [H256]>; /** - * Set a different order of resource priorities for an NFT. Priorities can be used, - * for example, for order of rendering. - * - * Note that the priorities are not updated automatically, and are an empty vector - * by default. There is no pre-set definition for the order to be particular, - * it can be interpreted arbitrarily use-case by use-case. - * - * # Permissions: - * - Token owner - * - * # Arguments: - * - `origin`: sender of the transaction - * - `rmrk_collection_id`: RMRK collection ID of the NFT. - * - `rmrk_nft_id`: ID of the NFT to rearrange resource priorities for. - * - `priorities`: Ordered vector of resource IDs. - **/ - setPriority: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, priorities: Vec | (u32 | AnyNumber | Uint8Array)[]) => SubmittableExtrinsic, [u32, u32, Vec]>; - /** - * Add or edit a custom user property, a key-value pair, describing the metadata - * of a token or a collection, on either one of these. - * - * Note that in this proxy implementation many details regarding RMRK are stored - * as scoped properties prefixed with "rmrk:", normally inaccessible - * to external transactions and RPCs. - * - * # Permissions: - * - Collection issuer - in case of collection property - * - Token owner - in case of NFT property - * - * # Arguments: - * - `origin`: sender of the transaction - * - `rmrk_collection_id`: RMRK collection ID. - * - `maybe_nft_id`: Optional ID of the NFT. If left empty, then the property is set for the collection. - * - `key`: Key of the custom property to be referenced by. - * - `value`: Value of the custom property to be stored. - **/ - setProperty: AugmentedSubmittable<(rmrkCollectionId: Compact | AnyNumber | Uint8Array, maybeNftId: Option | null | Uint8Array | u32 | AnyNumber, key: Bytes | string | Uint8Array, value: Bytes | string | Uint8Array) => SubmittableExtrinsic, [Compact, Option, Bytes, Bytes]>; - /** * Generic tx **/ [key: string]: SubmittableExtrinsicFunction; }; - rmrkEquip: { + session: { /** - * Create a new Base. + * Removes any session key(s) of the function caller. * - * Modeled after the [Base interaction](https://github.com/rmrk-team/rmrk-spec/blob/master/standards/rmrk2.0.0/interactions/base.md) + * This doesn't take effect until the next session. * - * # Permissions - * - Anyone - will be assigned as the issuer of the Base. - * - * # Arguments: - * - `origin`: Caller, will be assigned as the issuer of the Base - * - `base_type`: Arbitrary media type, e.g. "svg". - * - `symbol`: Arbitrary client-chosen symbol. - * - `parts`: Array of Fixed and Slot Parts composing the Base, - * confined in length by [`RmrkPartsLimit`](up_data_structs::RmrkPartsLimit). - **/ - createBase: AugmentedSubmittable<(baseType: Bytes | string | Uint8Array, symbol: Bytes | string | Uint8Array, parts: Vec | (RmrkTraitsPartPartType | { FixedPart: any } | { SlotPart: any } | string | Uint8Array)[]) => SubmittableExtrinsic, [Bytes, Bytes, Vec]>; - /** - * Update the array of Collections allowed to be equipped to a Base's specified Slot Part. - * - * Modeled after [equippable interaction](https://github.com/rmrk-team/rmrk-spec/blob/master/standards/rmrk2.0.0/interactions/equippable.md). - * - * # Permissions: - * - Base issuer + * 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). * - * # Arguments: - * - `origin`: sender of the transaction - * - `base_id`: Base containing the Slot Part to be updated. - * - `slot_id`: Slot Part whose Equippable List is being updated . - * - `equippables`: List of equippables that will override the current Equippables list. + * # + * - Complexity: `O(1)` in number of key types. Actual cost depends on the number of length + * of `T::Keys::key_ids()` which is fixed. + * - DbReads: `T::ValidatorIdOf`, `NextKeys`, `origin account` + * - DbWrites: `NextKeys`, `origin account` + * - DbWrites per key id: `KeyOwner` + * # **/ - equippable: AugmentedSubmittable<(baseId: u32 | AnyNumber | Uint8Array, slotId: u32 | AnyNumber | Uint8Array, equippables: RmrkTraitsPartEquippableList | { All: any } | { Empty: any } | { Custom: any } | string | Uint8Array) => SubmittableExtrinsic, [u32, u32, RmrkTraitsPartEquippableList]>; + purgeKeys: AugmentedSubmittable<() => SubmittableExtrinsic, []>; /** - * Add a Theme to a Base. - * A Theme named "default" is required prior to adding other Themes. - * - * Modeled after [Themeadd interaction](https://github.com/rmrk-team/rmrk-spec/blob/master/standards/rmrk2.0.0/interactions/themeadd.md). + * 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. * - * # Permissions: - * - Base issuer + * The dispatch origin of this function must be signed. * - * # Arguments: - * - `origin`: sender of the transaction - * - `base_id`: Base ID containing the Theme to be updated. - * - `theme`: Theme to add to the Base. A Theme has a name and properties, which are an - * array of [key, value, inherit]. - * - `key`: Arbitrary BoundedString, defined by client. - * - `value`: Arbitrary BoundedString, defined by client. - * - `inherit`: Optional bool. + * # + * - Complexity: `O(1)`. Actual cost depends on the number of length of + * `T::Keys::key_ids()` which is fixed. + * - DbReads: `origin account`, `T::ValidatorIdOf`, `NextKeys` + * - DbWrites: `origin account`, `NextKeys` + * - DbReads per key id: `KeyOwner` + * - DbWrites per key id: `KeyOwner` + * # **/ - themeAdd: AugmentedSubmittable<(baseId: u32 | AnyNumber | Uint8Array, theme: RmrkTraitsTheme | { name?: any; properties?: any; inherit?: any } | string | Uint8Array) => SubmittableExtrinsic, [u32, RmrkTraitsTheme]>; + setKeys: AugmentedSubmittable<(keys: OpalRuntimeRuntimeCommonSessionKeys | { aura?: any } | string | Uint8Array, proof: Bytes | string | Uint8Array) => SubmittableExtrinsic, [OpalRuntimeRuntimeCommonSessionKeys, Bytes]>; /** * Generic tx **/ @@ -1328,6 +1441,10 @@ * * `token_prefix`: Byte string containing the token prefix to mark a collection * to which a token belongs (limit [`MAX_TOKEN_PREFIX_LENGTH`]). * * `mode`: Type of items stored in the collection and type dependent data. + * + * returns collection ID + * + * Deprecated: `create_collection_ex` is more up-to-date and advanced, prefer it instead. **/ createCollection: AugmentedSubmittable<(collectionName: Vec | (u16 | AnyNumber | Uint8Array)[], collectionDescription: Vec | (u16 | AnyNumber | Uint8Array)[], tokenPrefix: Bytes | string | Uint8Array, mode: UpDataStructsCollectionMode | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array) => SubmittableExtrinsic, [Vec, Vec, Bytes, UpDataStructsCollectionMode]>; /** --- a/tests/src/interfaces/augment-types.ts +++ b/tests/src/interfaces/augment-types.ts @@ -5,7 +5,7 @@ // this is required to allow for ambient/previous definitions import '@polkadot/types/types/registry'; -import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchDispatchClass, FrameSupportDispatchDispatchInfo, FrameSupportDispatchPays, FrameSupportDispatchPerDispatchClassU32, FrameSupportDispatchPerDispatchClassWeight, FrameSupportDispatchPerDispatchClassWeightsPerClass, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletConfigurationEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletXcmCall, PalletXcmError, PalletXcmEvent, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionValidityInvalidTransaction, SpRuntimeTransactionValidityTransactionValidityError, SpRuntimeTransactionValidityUnknownTransaction, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsRpcCollectionFlags, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, UpPovEstimateRpcPovInfo, UpPovEstimateRpcTrieKeyValue, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './default'; +import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchDispatchClass, FrameSupportDispatchDispatchInfo, FrameSupportDispatchPays, FrameSupportDispatchPerDispatchClassU32, FrameSupportDispatchPerDispatchClassWeight, FrameSupportDispatchPerDispatchClassWeightsPerClass, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OpalRuntimeRuntimeCommonSessionKeys, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletAuthorshipCall, PalletAuthorshipError, PalletAuthorshipUncleEntryItem, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReserveData, PalletCollatorSelectionCall, PalletCollatorSelectionError, PalletCollatorSelectionEvent, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletConfigurationEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletIdentityBitFlags, PalletIdentityCall, PalletIdentityError, PalletIdentityEvent, PalletIdentityIdentityField, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletPreimageCall, PalletPreimageError, PalletPreimageEvent, PalletPreimageRequestStatus, PalletRefungibleError, PalletSessionCall, PalletSessionError, PalletSessionEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletXcmCall, PalletXcmError, PalletXcmEvent, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, SpArithmeticArithmeticError, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Public, SpCoreSr25519Signature, SpRuntimeBlakeTwo256, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeHeader, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionValidityInvalidTransaction, SpRuntimeTransactionValidityTransactionValidityError, SpRuntimeTransactionValidityUnknownTransaction, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsRpcCollectionFlags, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, UpPovEstimateRpcPovInfo, UpPovEstimateRpcTrieKeyValue, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './default'; import type { Data, StorageKey } from '@polkadot/types'; import type { BitVec, Bool, Bytes, F32, F64, I128, I16, I256, I32, I64, I8, Json, Null, OptionBool, Raw, Text, Type, U128, U16, U256, U32, U64, U8, USize, bool, f32, f64, i128, i16, i256, i32, i64, i8, u128, u16, u256, u32, u64, u8, usize } from '@polkadot/types-codec'; import type { AssetApproval, AssetApprovalKey, AssetBalance, AssetDestroyWitness, AssetDetails, AssetMetadata, TAssetBalance, TAssetDepositBalance } from '@polkadot/types/interfaces/assets'; @@ -774,6 +774,7 @@ OpalRuntimeRuntime: OpalRuntimeRuntime; OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls: OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls; OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance; + OpalRuntimeRuntimeCommonSessionKeys: OpalRuntimeRuntimeCommonSessionKeys; OpaqueCall: OpaqueCall; OpaqueKeyOwnershipProof: OpaqueKeyOwnershipProof; OpaqueMetadata: OpaqueMetadata; @@ -818,6 +819,9 @@ PalletAppPromotionCall: PalletAppPromotionCall; PalletAppPromotionError: PalletAppPromotionError; PalletAppPromotionEvent: PalletAppPromotionEvent; + PalletAuthorshipCall: PalletAuthorshipCall; + PalletAuthorshipError: PalletAuthorshipError; + PalletAuthorshipUncleEntryItem: PalletAuthorshipUncleEntryItem; PalletBalancesAccountData: PalletBalancesAccountData; PalletBalancesBalanceLock: PalletBalancesBalanceLock; PalletBalancesCall: PalletBalancesCall; @@ -827,6 +831,9 @@ PalletBalancesReserveData: PalletBalancesReserveData; PalletCallMetadataLatest: PalletCallMetadataLatest; PalletCallMetadataV14: PalletCallMetadataV14; + PalletCollatorSelectionCall: PalletCollatorSelectionCall; + PalletCollatorSelectionError: PalletCollatorSelectionError; + PalletCollatorSelectionEvent: PalletCollatorSelectionEvent; PalletCommonError: PalletCommonError; PalletCommonEvent: PalletCommonEvent; PalletConfigurationAppPromotionConfiguration: PalletConfigurationAppPromotionConfiguration; @@ -862,6 +869,15 @@ PalletForeignAssetsNativeCurrency: PalletForeignAssetsNativeCurrency; PalletFungibleError: PalletFungibleError; PalletId: PalletId; + PalletIdentityBitFlags: PalletIdentityBitFlags; + PalletIdentityCall: PalletIdentityCall; + PalletIdentityError: PalletIdentityError; + PalletIdentityEvent: PalletIdentityEvent; + PalletIdentityIdentityField: PalletIdentityIdentityField; + PalletIdentityIdentityInfo: PalletIdentityIdentityInfo; + PalletIdentityJudgement: PalletIdentityJudgement; + PalletIdentityRegistrarInfo: PalletIdentityRegistrarInfo; + PalletIdentityRegistration: PalletIdentityRegistration; PalletInflationCall: PalletInflationCall; PalletMaintenanceCall: PalletMaintenanceCall; PalletMaintenanceError: PalletMaintenanceError; @@ -870,13 +886,14 @@ PalletMetadataV14: PalletMetadataV14; PalletNonfungibleError: PalletNonfungibleError; PalletNonfungibleItemData: PalletNonfungibleItemData; + PalletPreimageCall: PalletPreimageCall; + PalletPreimageError: PalletPreimageError; + PalletPreimageEvent: PalletPreimageEvent; + PalletPreimageRequestStatus: PalletPreimageRequestStatus; PalletRefungibleError: PalletRefungibleError; - PalletRmrkCoreCall: PalletRmrkCoreCall; - PalletRmrkCoreError: PalletRmrkCoreError; - PalletRmrkCoreEvent: PalletRmrkCoreEvent; - PalletRmrkEquipCall: PalletRmrkEquipCall; - PalletRmrkEquipError: PalletRmrkEquipError; - PalletRmrkEquipEvent: PalletRmrkEquipEvent; + PalletSessionCall: PalletSessionCall; + PalletSessionError: PalletSessionError; + PalletSessionEvent: PalletSessionEvent; PalletsOrigin: PalletsOrigin; PalletStorageMetadataLatest: PalletStorageMetadataLatest; PalletStorageMetadataV14: PalletStorageMetadataV14; @@ -1036,24 +1053,6 @@ Retriable: Retriable; RewardDestination: RewardDestination; RewardPoint: RewardPoint; - RmrkTraitsBaseBaseInfo: RmrkTraitsBaseBaseInfo; - RmrkTraitsCollectionCollectionInfo: RmrkTraitsCollectionCollectionInfo; - RmrkTraitsNftAccountIdOrCollectionNftTuple: RmrkTraitsNftAccountIdOrCollectionNftTuple; - RmrkTraitsNftNftChild: RmrkTraitsNftNftChild; - RmrkTraitsNftNftInfo: RmrkTraitsNftNftInfo; - RmrkTraitsNftRoyaltyInfo: RmrkTraitsNftRoyaltyInfo; - RmrkTraitsPartEquippableList: RmrkTraitsPartEquippableList; - RmrkTraitsPartFixedPart: RmrkTraitsPartFixedPart; - RmrkTraitsPartPartType: RmrkTraitsPartPartType; - RmrkTraitsPartSlotPart: RmrkTraitsPartSlotPart; - RmrkTraitsPropertyPropertyInfo: RmrkTraitsPropertyPropertyInfo; - RmrkTraitsResourceBasicResource: RmrkTraitsResourceBasicResource; - RmrkTraitsResourceComposableResource: RmrkTraitsResourceComposableResource; - RmrkTraitsResourceResourceInfo: RmrkTraitsResourceResourceInfo; - RmrkTraitsResourceResourceTypes: RmrkTraitsResourceResourceTypes; - RmrkTraitsResourceSlotResource: RmrkTraitsResourceSlotResource; - RmrkTraitsTheme: RmrkTraitsTheme; - RmrkTraitsThemeThemeProperty: RmrkTraitsThemeThemeProperty; RoundSnapshot: RoundSnapshot; RoundState: RoundState; RpcMethods: RpcMethods; @@ -1176,14 +1175,19 @@ SolutionSupports: SolutionSupports; SpanIndex: SpanIndex; SpanRecord: SpanRecord; + SpArithmeticArithmeticError: SpArithmeticArithmeticError; + SpConsensusAuraSr25519AppSr25519Public: SpConsensusAuraSr25519AppSr25519Public; + SpCoreCryptoKeyTypeId: SpCoreCryptoKeyTypeId; SpCoreEcdsaSignature: SpCoreEcdsaSignature; SpCoreEd25519Signature: SpCoreEd25519Signature; + SpCoreSr25519Public: SpCoreSr25519Public; SpCoreSr25519Signature: SpCoreSr25519Signature; SpecVersion: SpecVersion; - SpRuntimeArithmeticError: SpRuntimeArithmeticError; + SpRuntimeBlakeTwo256: SpRuntimeBlakeTwo256; SpRuntimeDigest: SpRuntimeDigest; SpRuntimeDigestDigestItem: SpRuntimeDigestDigestItem; SpRuntimeDispatchError: SpRuntimeDispatchError; + SpRuntimeHeader: SpRuntimeHeader; SpRuntimeModuleError: SpRuntimeModuleError; SpRuntimeMultiSignature: SpRuntimeMultiSignature; SpRuntimeTokenError: SpRuntimeTokenError; --- a/tests/src/interfaces/default/types.ts +++ b/tests/src/interfaces/default/types.ts @@ -1,9 +1,10 @@ // Auto-generated via `yarn polkadot-types-from-defs`, do not edit /* eslint-disable */ +import type { Data } from '@polkadot/types'; import type { BTreeMap, BTreeSet, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec'; import type { ITuple } from '@polkadot/types-codec/types'; -import type { AccountId32, Call, H160, H256, MultiAddress, Perbill, Permill } from '@polkadot/types/interfaces/runtime'; +import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime'; import type { Event } from '@polkadot/types/interfaces/system'; /** @name CumulusPalletDmpQueueCall */ @@ -441,6 +442,7 @@ readonly isOther: boolean; readonly asOther: Text; readonly isInvalidCode: boolean; + readonly asInvalidCode: u8; readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other' | 'InvalidCode'; } @@ -698,6 +700,11 @@ /** @name OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance */ export interface OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance extends Null {} +/** @name OpalRuntimeRuntimeCommonSessionKeys */ +export interface OpalRuntimeRuntimeCommonSessionKeys extends Struct { + readonly aura: SpConsensusAuraSr25519AppSr25519Public; +} + /** @name OrmlTokensAccountData */ export interface OrmlTokensAccountData extends Struct { readonly free: u128; @@ -1007,7 +1014,7 @@ readonly asStake: { readonly amount: u128; } & Struct; - readonly isUnstake: boolean; + readonly isUnstakeAll: boolean; readonly isSponsorCollection: boolean; readonly asSponsorCollection: { readonly collectionId: u32; @@ -1028,7 +1035,11 @@ readonly asPayoutStakers: { readonly stakersNumber: Option; } & Struct; - readonly type: 'SetAdminAddress' | 'Stake' | 'Unstake' | 'SponsorCollection' | 'StopSponsoringCollection' | 'SponsorContract' | 'StopSponsoringContract' | 'PayoutStakers'; + readonly isUnstakePartial: boolean; + readonly asUnstakePartial: { + readonly amount: u128; + } & Struct; + readonly type: 'SetAdminAddress' | 'Stake' | 'UnstakeAll' | 'SponsorCollection' | 'StopSponsoringCollection' | 'SponsorContract' | 'StopSponsoringContract' | 'PayoutStakers' | 'UnstakePartial'; } /** @name PalletAppPromotionError */ @@ -1039,7 +1050,8 @@ readonly isPendingForBlockOverflow: boolean; readonly isSponsorNotSet: boolean; readonly isIncorrectLockedBalanceOperation: boolean; - readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'SponsorNotSet' | 'IncorrectLockedBalanceOperation'; + readonly isInsufficientStakedBalance: boolean; + readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'SponsorNotSet' | 'IncorrectLockedBalanceOperation' | 'InsufficientStakedBalance'; } /** @name PalletAppPromotionEvent */ @@ -1055,6 +1067,36 @@ readonly type: 'StakingRecalculation' | 'Stake' | 'Unstake' | 'SetAdmin'; } +/** @name PalletAuthorshipCall */ +export interface PalletAuthorshipCall extends Enum { + readonly isSetUncles: boolean; + readonly asSetUncles: { + readonly newUncles: Vec; + } & Struct; + readonly type: 'SetUncles'; +} + +/** @name PalletAuthorshipError */ +export interface PalletAuthorshipError extends Enum { + readonly isInvalidUncleParent: boolean; + readonly isUnclesAlreadySet: boolean; + readonly isTooManyUncles: boolean; + readonly isGenesisUncle: boolean; + readonly isTooHighUncle: boolean; + readonly isUncleAlreadyIncluded: boolean; + readonly isOldUncle: boolean; + readonly type: 'InvalidUncleParent' | 'UnclesAlreadySet' | 'TooManyUncles' | 'GenesisUncle' | 'TooHighUncle' | 'UncleAlreadyIncluded' | 'OldUncle'; +} + +/** @name PalletAuthorshipUncleEntryItem */ +export interface PalletAuthorshipUncleEntryItem extends Enum { + readonly isInclusionHeight: boolean; + readonly asInclusionHeight: u32; + readonly isUncle: boolean; + readonly asUncle: ITuple<[H256, Option]>; + readonly type: 'InclusionHeight' | 'Uncle'; +} + /** @name PalletBalancesAccountData */ export interface PalletBalancesAccountData extends Struct { readonly free: u128; @@ -1193,6 +1235,76 @@ readonly amount: u128; } +/** @name PalletCollatorSelectionCall */ +export interface PalletCollatorSelectionCall extends Enum { + readonly isAddInvulnerable: boolean; + readonly asAddInvulnerable: { + readonly new_: AccountId32; + } & Struct; + readonly isRemoveInvulnerable: boolean; + readonly asRemoveInvulnerable: { + readonly who: AccountId32; + } & Struct; + readonly isGetLicense: boolean; + readonly isOnboard: boolean; + readonly isOffboard: boolean; + readonly isReleaseLicense: boolean; + readonly isForceReleaseLicense: boolean; + readonly asForceReleaseLicense: { + readonly who: AccountId32; + } & Struct; + readonly type: 'AddInvulnerable' | 'RemoveInvulnerable' | 'GetLicense' | 'Onboard' | 'Offboard' | 'ReleaseLicense' | 'ForceReleaseLicense'; +} + +/** @name PalletCollatorSelectionError */ +export interface PalletCollatorSelectionError extends Enum { + readonly isTooManyCandidates: boolean; + readonly isUnknown: boolean; + readonly isPermission: boolean; + readonly isAlreadyHoldingLicense: boolean; + readonly isNoLicense: boolean; + readonly isAlreadyCandidate: boolean; + readonly isNotCandidate: boolean; + readonly isTooManyInvulnerables: boolean; + readonly isTooFewInvulnerables: boolean; + readonly isAlreadyInvulnerable: boolean; + readonly isNotInvulnerable: boolean; + readonly isNoAssociatedValidatorId: boolean; + readonly isValidatorNotRegistered: boolean; + readonly type: 'TooManyCandidates' | 'Unknown' | 'Permission' | 'AlreadyHoldingLicense' | 'NoLicense' | 'AlreadyCandidate' | 'NotCandidate' | 'TooManyInvulnerables' | 'TooFewInvulnerables' | 'AlreadyInvulnerable' | 'NotInvulnerable' | 'NoAssociatedValidatorId' | 'ValidatorNotRegistered'; +} + +/** @name PalletCollatorSelectionEvent */ +export interface PalletCollatorSelectionEvent extends Enum { + readonly isInvulnerableAdded: boolean; + readonly asInvulnerableAdded: { + readonly invulnerable: AccountId32; + } & Struct; + readonly isInvulnerableRemoved: boolean; + readonly asInvulnerableRemoved: { + readonly invulnerable: AccountId32; + } & Struct; + readonly isLicenseObtained: boolean; + readonly asLicenseObtained: { + readonly accountId: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isLicenseReleased: boolean; + readonly asLicenseReleased: { + readonly accountId: AccountId32; + readonly depositReturned: u128; + } & Struct; + readonly isCandidateAdded: boolean; + readonly asCandidateAdded: { + readonly accountId: AccountId32; + } & Struct; + readonly isCandidateRemoved: boolean; + readonly asCandidateRemoved: { + readonly accountId: AccountId32; + } & Struct; + readonly type: 'InvulnerableAdded' | 'InvulnerableRemoved' | 'LicenseObtained' | 'LicenseReleased' | 'CandidateAdded' | 'CandidateRemoved'; +} + /** @name PalletCommonError */ export interface PalletCommonError extends Enum { readonly isCollectionNotFound: boolean; @@ -1532,7 +1644,8 @@ readonly asInsertEvents: { readonly events: Vec; } & Struct; - readonly type: 'Begin' | 'SetData' | 'Finish' | 'InsertEthLogs' | 'InsertEvents'; + readonly isRemoveRmrkData: boolean; + readonly type: 'Begin' | 'SetData' | 'Finish' | 'InsertEthLogs' | 'InsertEvents' | 'RemoveRmrkData'; } /** @name PalletEvmMigrationError */ @@ -1638,6 +1751,243 @@ readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed' | 'SettingAllowanceForAllNotAllowed' | 'FungibleTokensAreAlwaysValid'; } +/** @name PalletIdentityBitFlags */ +export interface PalletIdentityBitFlags extends Struct { + readonly _bitLength: 64; + readonly Display: 1; + readonly Legal: 2; + readonly Web: 4; + readonly Riot: 8; + readonly Email: 16; + readonly PgpFingerprint: 32; + readonly Image: 64; + readonly Twitter: 128; +} + +/** @name PalletIdentityCall */ +export interface PalletIdentityCall extends Enum { + readonly isAddRegistrar: boolean; + readonly asAddRegistrar: { + readonly account: MultiAddress; + } & Struct; + readonly isSetIdentity: boolean; + readonly asSetIdentity: { + readonly info: PalletIdentityIdentityInfo; + } & Struct; + readonly isSetSubs: boolean; + readonly asSetSubs: { + readonly subs: Vec>; + } & Struct; + readonly isClearIdentity: boolean; + readonly isRequestJudgement: boolean; + readonly asRequestJudgement: { + readonly regIndex: Compact; + readonly maxFee: Compact; + } & Struct; + readonly isCancelRequest: boolean; + readonly asCancelRequest: { + readonly regIndex: u32; + } & Struct; + readonly isSetFee: boolean; + readonly asSetFee: { + readonly index: Compact; + readonly fee: Compact; + } & Struct; + readonly isSetAccountId: boolean; + readonly asSetAccountId: { + readonly index: Compact; + readonly new_: MultiAddress; + } & Struct; + readonly isSetFields: boolean; + readonly asSetFields: { + readonly index: Compact; + readonly fields: PalletIdentityBitFlags; + } & Struct; + readonly isProvideJudgement: boolean; + readonly asProvideJudgement: { + readonly regIndex: Compact; + readonly target: MultiAddress; + readonly judgement: PalletIdentityJudgement; + readonly identity: H256; + } & Struct; + readonly isKillIdentity: boolean; + readonly asKillIdentity: { + readonly target: MultiAddress; + } & Struct; + readonly isAddSub: boolean; + readonly asAddSub: { + readonly sub: MultiAddress; + readonly data: Data; + } & Struct; + readonly isRenameSub: boolean; + readonly asRenameSub: { + readonly sub: MultiAddress; + readonly data: Data; + } & Struct; + readonly isRemoveSub: boolean; + readonly asRemoveSub: { + readonly sub: MultiAddress; + } & Struct; + readonly isQuitSub: boolean; + readonly isForceInsertIdentities: boolean; + readonly asForceInsertIdentities: { + readonly identities: Vec>; + } & Struct; + readonly isForceRemoveIdentities: boolean; + readonly asForceRemoveIdentities: { + readonly identities: Vec; + } & Struct; + readonly isForceSetSubs: boolean; + readonly asForceSetSubs: { + readonly subs: Vec>]>]>>; + } & Struct; + readonly type: 'AddRegistrar' | 'SetIdentity' | 'SetSubs' | 'ClearIdentity' | 'RequestJudgement' | 'CancelRequest' | 'SetFee' | 'SetAccountId' | 'SetFields' | 'ProvideJudgement' | 'KillIdentity' | 'AddSub' | 'RenameSub' | 'RemoveSub' | 'QuitSub' | 'ForceInsertIdentities' | 'ForceRemoveIdentities' | 'ForceSetSubs'; +} + +/** @name PalletIdentityError */ +export interface PalletIdentityError extends Enum { + readonly isTooManySubAccounts: boolean; + readonly isNotFound: boolean; + readonly isNotNamed: boolean; + readonly isEmptyIndex: boolean; + readonly isFeeChanged: boolean; + readonly isNoIdentity: boolean; + readonly isStickyJudgement: boolean; + readonly isJudgementGiven: boolean; + readonly isInvalidJudgement: boolean; + readonly isInvalidIndex: boolean; + readonly isInvalidTarget: boolean; + readonly isTooManyFields: boolean; + readonly isTooManyRegistrars: boolean; + readonly isAlreadyClaimed: boolean; + readonly isNotSub: boolean; + readonly isNotOwned: boolean; + readonly isJudgementForDifferentIdentity: boolean; + readonly isJudgementPaymentFailed: boolean; + readonly type: 'TooManySubAccounts' | 'NotFound' | 'NotNamed' | 'EmptyIndex' | 'FeeChanged' | 'NoIdentity' | 'StickyJudgement' | 'JudgementGiven' | 'InvalidJudgement' | 'InvalidIndex' | 'InvalidTarget' | 'TooManyFields' | 'TooManyRegistrars' | 'AlreadyClaimed' | 'NotSub' | 'NotOwned' | 'JudgementForDifferentIdentity' | 'JudgementPaymentFailed'; +} + +/** @name PalletIdentityEvent */ +export interface PalletIdentityEvent extends Enum { + readonly isIdentitySet: boolean; + readonly asIdentitySet: { + readonly who: AccountId32; + } & Struct; + readonly isIdentityCleared: boolean; + readonly asIdentityCleared: { + readonly who: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isIdentityKilled: boolean; + readonly asIdentityKilled: { + readonly who: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isIdentitiesInserted: boolean; + readonly asIdentitiesInserted: { + readonly amount: u32; + } & Struct; + readonly isIdentitiesRemoved: boolean; + readonly asIdentitiesRemoved: { + readonly amount: u32; + } & Struct; + readonly isJudgementRequested: boolean; + readonly asJudgementRequested: { + readonly who: AccountId32; + readonly registrarIndex: u32; + } & Struct; + readonly isJudgementUnrequested: boolean; + readonly asJudgementUnrequested: { + readonly who: AccountId32; + readonly registrarIndex: u32; + } & Struct; + readonly isJudgementGiven: boolean; + readonly asJudgementGiven: { + readonly target: AccountId32; + readonly registrarIndex: u32; + } & Struct; + readonly isRegistrarAdded: boolean; + readonly asRegistrarAdded: { + readonly registrarIndex: u32; + } & Struct; + readonly isSubIdentityAdded: boolean; + readonly asSubIdentityAdded: { + readonly sub: AccountId32; + readonly main: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isSubIdentityRemoved: boolean; + readonly asSubIdentityRemoved: { + readonly sub: AccountId32; + readonly main: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isSubIdentityRevoked: boolean; + readonly asSubIdentityRevoked: { + readonly sub: AccountId32; + readonly main: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isSubIdentitiesInserted: boolean; + readonly asSubIdentitiesInserted: { + readonly amount: u32; + } & Struct; + readonly type: 'IdentitySet' | 'IdentityCleared' | 'IdentityKilled' | 'IdentitiesInserted' | 'IdentitiesRemoved' | 'JudgementRequested' | 'JudgementUnrequested' | 'JudgementGiven' | 'RegistrarAdded' | 'SubIdentityAdded' | 'SubIdentityRemoved' | 'SubIdentityRevoked' | 'SubIdentitiesInserted'; +} + +/** @name PalletIdentityIdentityField */ +export interface PalletIdentityIdentityField extends Enum { + readonly isDisplay: boolean; + readonly isLegal: boolean; + readonly isWeb: boolean; + readonly isRiot: boolean; + readonly isEmail: boolean; + readonly isPgpFingerprint: boolean; + readonly isImage: boolean; + readonly isTwitter: boolean; + readonly type: 'Display' | 'Legal' | 'Web' | 'Riot' | 'Email' | 'PgpFingerprint' | 'Image' | 'Twitter'; +} + +/** @name PalletIdentityIdentityInfo */ +export interface PalletIdentityIdentityInfo extends Struct { + readonly additional: Vec>; + readonly display: Data; + readonly legal: Data; + readonly web: Data; + readonly riot: Data; + readonly email: Data; + readonly pgpFingerprint: Option; + readonly image: Data; + readonly twitter: Data; +} + +/** @name PalletIdentityJudgement */ +export interface PalletIdentityJudgement extends Enum { + readonly isUnknown: boolean; + readonly isFeePaid: boolean; + readonly asFeePaid: u128; + readonly isReasonable: boolean; + readonly isKnownGood: boolean; + readonly isOutOfDate: boolean; + readonly isLowQuality: boolean; + readonly isErroneous: boolean; + readonly type: 'Unknown' | 'FeePaid' | 'Reasonable' | 'KnownGood' | 'OutOfDate' | 'LowQuality' | 'Erroneous'; +} + +/** @name PalletIdentityRegistrarInfo */ +export interface PalletIdentityRegistrarInfo extends Struct { + readonly account: AccountId32; + readonly fee: u128; + readonly fields: PalletIdentityBitFlags; +} + +/** @name PalletIdentityRegistration */ +export interface PalletIdentityRegistration extends Struct { + readonly judgements: Vec>; + readonly deposit: u128; + readonly info: PalletIdentityIdentityInfo; +} + /** @name PalletInflationCall */ export interface PalletInflationCall extends Enum { readonly isStartInflation: boolean; @@ -1651,7 +2001,12 @@ export interface PalletMaintenanceCall extends Enum { readonly isEnable: boolean; readonly isDisable: boolean; - readonly type: 'Enable' | 'Disable'; + readonly isExecutePreimage: boolean; + readonly asExecutePreimage: { + readonly hash_: H256; + readonly weightBound: SpWeightsWeightV2Weight; + } & Struct; + readonly type: 'Enable' | 'Disable' | 'ExecutePreimage'; } /** @name PalletMaintenanceError */ @@ -1677,283 +2032,109 @@ readonly owner: PalletEvmAccountBasicCrossAccountIdRepr; } -/** @name PalletRefungibleError */ -export interface PalletRefungibleError extends Enum { - readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean; - readonly isWrongRefungiblePieces: boolean; - readonly isRepartitionWhileNotOwningAllPieces: boolean; - readonly isRefungibleDisallowsNesting: boolean; - readonly isSettingPropertiesNotAllowed: boolean; - readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RepartitionWhileNotOwningAllPieces' | 'RefungibleDisallowsNesting' | 'SettingPropertiesNotAllowed'; -} - -/** @name PalletRmrkCoreCall */ -export interface PalletRmrkCoreCall extends Enum { - readonly isCreateCollection: boolean; - readonly asCreateCollection: { - readonly metadata: Bytes; - readonly max: Option; - readonly symbol: Bytes; +/** @name PalletPreimageCall */ +export interface PalletPreimageCall extends Enum { + readonly isNotePreimage: boolean; + readonly asNotePreimage: { + readonly bytes: Bytes; } & Struct; - readonly isDestroyCollection: boolean; - readonly asDestroyCollection: { - readonly collectionId: u32; + readonly isUnnotePreimage: boolean; + readonly asUnnotePreimage: { + readonly hash_: H256; } & Struct; - readonly isChangeCollectionIssuer: boolean; - readonly asChangeCollectionIssuer: { - readonly collectionId: u32; - readonly newIssuer: MultiAddress; + readonly isRequestPreimage: boolean; + readonly asRequestPreimage: { + readonly hash_: H256; } & Struct; - readonly isLockCollection: boolean; - readonly asLockCollection: { - readonly collectionId: u32; + readonly isUnrequestPreimage: boolean; + readonly asUnrequestPreimage: { + readonly hash_: H256; } & Struct; - readonly isMintNft: boolean; - readonly asMintNft: { - readonly owner: Option; - readonly collectionId: u32; - readonly recipient: Option; - readonly royaltyAmount: Option; - readonly metadata: Bytes; - readonly transferable: bool; - readonly resources: Option>; - } & Struct; - readonly isBurnNft: boolean; - readonly asBurnNft: { - readonly collectionId: u32; - readonly nftId: u32; - readonly maxBurns: u32; - } & Struct; - readonly isSend: boolean; - readonly asSend: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - readonly newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple; - } & Struct; - readonly isAcceptNft: boolean; - readonly asAcceptNft: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - readonly newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple; - } & Struct; - readonly isRejectNft: boolean; - readonly asRejectNft: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - } & Struct; - readonly isAcceptResource: boolean; - readonly asAcceptResource: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isAcceptResourceRemoval: boolean; - readonly asAcceptResourceRemoval: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isSetProperty: boolean; - readonly asSetProperty: { - readonly rmrkCollectionId: Compact; - readonly maybeNftId: Option; - readonly key: Bytes; - readonly value: Bytes; - } & Struct; - readonly isSetPriority: boolean; - readonly asSetPriority: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - readonly priorities: Vec; - } & Struct; - readonly isAddBasicResource: boolean; - readonly asAddBasicResource: { - readonly rmrkCollectionId: u32; - readonly nftId: u32; - readonly resource: RmrkTraitsResourceBasicResource; - } & Struct; - readonly isAddComposableResource: boolean; - readonly asAddComposableResource: { - readonly rmrkCollectionId: u32; - readonly nftId: u32; - readonly resource: RmrkTraitsResourceComposableResource; - } & Struct; - readonly isAddSlotResource: boolean; - readonly asAddSlotResource: { - readonly rmrkCollectionId: u32; - readonly nftId: u32; - readonly resource: RmrkTraitsResourceSlotResource; - } & Struct; - readonly isRemoveResource: boolean; - readonly asRemoveResource: { - readonly rmrkCollectionId: u32; - readonly nftId: u32; - readonly resourceId: u32; - } & Struct; - readonly type: 'CreateCollection' | 'DestroyCollection' | 'ChangeCollectionIssuer' | 'LockCollection' | 'MintNft' | 'BurnNft' | 'Send' | 'AcceptNft' | 'RejectNft' | 'AcceptResource' | 'AcceptResourceRemoval' | 'SetProperty' | 'SetPriority' | 'AddBasicResource' | 'AddComposableResource' | 'AddSlotResource' | 'RemoveResource'; + readonly type: 'NotePreimage' | 'UnnotePreimage' | 'RequestPreimage' | 'UnrequestPreimage'; } -/** @name PalletRmrkCoreError */ -export interface PalletRmrkCoreError extends Enum { - readonly isCorruptedCollectionType: boolean; - readonly isRmrkPropertyKeyIsTooLong: boolean; - readonly isRmrkPropertyValueIsTooLong: boolean; - readonly isRmrkPropertyIsNotFound: boolean; - readonly isUnableToDecodeRmrkData: boolean; - readonly isCollectionNotEmpty: boolean; - readonly isNoAvailableCollectionId: boolean; - readonly isNoAvailableNftId: boolean; - readonly isCollectionUnknown: boolean; - readonly isNoPermission: boolean; - readonly isNonTransferable: boolean; - readonly isCollectionFullOrLocked: boolean; - readonly isResourceDoesntExist: boolean; - readonly isCannotSendToDescendentOrSelf: boolean; - readonly isCannotAcceptNonOwnedNft: boolean; - readonly isCannotRejectNonOwnedNft: boolean; - readonly isCannotRejectNonPendingNft: boolean; - readonly isResourceNotPending: boolean; - readonly isNoAvailableResourceId: boolean; - readonly type: 'CorruptedCollectionType' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'RmrkPropertyIsNotFound' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'CannotRejectNonPendingNft' | 'ResourceNotPending' | 'NoAvailableResourceId'; +/** @name PalletPreimageError */ +export interface PalletPreimageError extends Enum { + readonly isTooBig: boolean; + readonly isAlreadyNoted: boolean; + readonly isNotAuthorized: boolean; + readonly isNotNoted: boolean; + readonly isRequested: boolean; + readonly isNotRequested: boolean; + readonly type: 'TooBig' | 'AlreadyNoted' | 'NotAuthorized' | 'NotNoted' | 'Requested' | 'NotRequested'; } -/** @name PalletRmrkCoreEvent */ -export interface PalletRmrkCoreEvent extends Enum { - readonly isCollectionCreated: boolean; - readonly asCollectionCreated: { - readonly issuer: AccountId32; - readonly collectionId: u32; +/** @name PalletPreimageEvent */ +export interface PalletPreimageEvent extends Enum { + readonly isNoted: boolean; + readonly asNoted: { + readonly hash_: H256; } & Struct; - readonly isCollectionDestroyed: boolean; - readonly asCollectionDestroyed: { - readonly issuer: AccountId32; - readonly collectionId: u32; + readonly isRequested: boolean; + readonly asRequested: { + readonly hash_: H256; } & Struct; - readonly isIssuerChanged: boolean; - readonly asIssuerChanged: { - readonly oldIssuer: AccountId32; - readonly newIssuer: AccountId32; - readonly collectionId: u32; + readonly isCleared: boolean; + readonly asCleared: { + readonly hash_: H256; } & Struct; - readonly isCollectionLocked: boolean; - readonly asCollectionLocked: { - readonly issuer: AccountId32; - readonly collectionId: u32; + readonly type: 'Noted' | 'Requested' | 'Cleared'; +} + +/** @name PalletPreimageRequestStatus */ +export interface PalletPreimageRequestStatus extends Enum { + readonly isUnrequested: boolean; + readonly asUnrequested: { + readonly deposit: ITuple<[AccountId32, u128]>; + readonly len: u32; } & Struct; - readonly isNftMinted: boolean; - readonly asNftMinted: { - readonly owner: AccountId32; - readonly collectionId: u32; - readonly nftId: u32; + readonly isRequested: boolean; + readonly asRequested: { + readonly deposit: Option>; + readonly count: u32; + readonly len: Option; } & Struct; - readonly isNftBurned: boolean; - readonly asNftBurned: { - readonly owner: AccountId32; - readonly nftId: u32; - } & Struct; - readonly isNftSent: boolean; - readonly asNftSent: { - readonly sender: AccountId32; - readonly recipient: RmrkTraitsNftAccountIdOrCollectionNftTuple; - readonly collectionId: u32; - readonly nftId: u32; - readonly approvalRequired: bool; - } & Struct; - readonly isNftAccepted: boolean; - readonly asNftAccepted: { - readonly sender: AccountId32; - readonly recipient: RmrkTraitsNftAccountIdOrCollectionNftTuple; - readonly collectionId: u32; - readonly nftId: u32; - } & Struct; - readonly isNftRejected: boolean; - readonly asNftRejected: { - readonly sender: AccountId32; - readonly collectionId: u32; - readonly nftId: u32; - } & Struct; - readonly isPropertySet: boolean; - readonly asPropertySet: { - readonly collectionId: u32; - readonly maybeNftId: Option; - readonly key: Bytes; - readonly value: Bytes; - } & Struct; - readonly isResourceAdded: boolean; - readonly asResourceAdded: { - readonly nftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isResourceRemoval: boolean; - readonly asResourceRemoval: { - readonly nftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isResourceAccepted: boolean; - readonly asResourceAccepted: { - readonly nftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isResourceRemovalAccepted: boolean; - readonly asResourceRemovalAccepted: { - readonly nftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isPrioritySet: boolean; - readonly asPrioritySet: { - readonly collectionId: u32; - readonly nftId: u32; - } & Struct; - readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'IssuerChanged' | 'CollectionLocked' | 'NftMinted' | 'NftBurned' | 'NftSent' | 'NftAccepted' | 'NftRejected' | 'PropertySet' | 'ResourceAdded' | 'ResourceRemoval' | 'ResourceAccepted' | 'ResourceRemovalAccepted' | 'PrioritySet'; + readonly type: 'Unrequested' | 'Requested'; +} + +/** @name PalletRefungibleError */ +export interface PalletRefungibleError extends Enum { + readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean; + readonly isWrongRefungiblePieces: boolean; + readonly isRepartitionWhileNotOwningAllPieces: boolean; + readonly isRefungibleDisallowsNesting: boolean; + readonly isSettingPropertiesNotAllowed: boolean; + readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RepartitionWhileNotOwningAllPieces' | 'RefungibleDisallowsNesting' | 'SettingPropertiesNotAllowed'; } -/** @name PalletRmrkEquipCall */ -export interface PalletRmrkEquipCall extends Enum { - readonly isCreateBase: boolean; - readonly asCreateBase: { - readonly baseType: Bytes; - readonly symbol: Bytes; - readonly parts: Vec; +/** @name PalletSessionCall */ +export interface PalletSessionCall extends Enum { + readonly isSetKeys: boolean; + readonly asSetKeys: { + readonly keys_: OpalRuntimeRuntimeCommonSessionKeys; + readonly proof: Bytes; } & Struct; - readonly isThemeAdd: boolean; - readonly asThemeAdd: { - readonly baseId: u32; - readonly theme: RmrkTraitsTheme; - } & Struct; - readonly isEquippable: boolean; - readonly asEquippable: { - readonly baseId: u32; - readonly slotId: u32; - readonly equippables: RmrkTraitsPartEquippableList; - } & Struct; - readonly type: 'CreateBase' | 'ThemeAdd' | 'Equippable'; + readonly isPurgeKeys: boolean; + readonly type: 'SetKeys' | 'PurgeKeys'; } -/** @name PalletRmrkEquipError */ -export interface PalletRmrkEquipError extends Enum { - readonly isPermissionError: boolean; - readonly isNoAvailableBaseId: boolean; - readonly isNoAvailablePartId: boolean; - readonly isBaseDoesntExist: boolean; - readonly isNeedsDefaultThemeFirst: boolean; - readonly isPartDoesntExist: boolean; - readonly isNoEquippableOnFixedPart: boolean; - readonly type: 'PermissionError' | 'NoAvailableBaseId' | 'NoAvailablePartId' | 'BaseDoesntExist' | 'NeedsDefaultThemeFirst' | 'PartDoesntExist' | 'NoEquippableOnFixedPart'; +/** @name PalletSessionError */ +export interface PalletSessionError extends Enum { + readonly isInvalidProof: boolean; + readonly isNoAssociatedValidatorId: boolean; + readonly isDuplicatedKey: boolean; + readonly isNoKeys: boolean; + readonly isNoAccount: boolean; + readonly type: 'InvalidProof' | 'NoAssociatedValidatorId' | 'DuplicatedKey' | 'NoKeys' | 'NoAccount'; } -/** @name PalletRmrkEquipEvent */ -export interface PalletRmrkEquipEvent extends Enum { - readonly isBaseCreated: boolean; - readonly asBaseCreated: { - readonly issuer: AccountId32; - readonly baseId: u32; +/** @name PalletSessionEvent */ +export interface PalletSessionEvent extends Enum { + readonly isNewSession: boolean; + readonly asNewSession: { + readonly sessionIndex: u32; } & Struct; - readonly isEquippablesUpdated: boolean; - readonly asEquippablesUpdated: { - readonly baseId: u32; - readonly slotId: u32; - } & Struct; - readonly type: 'BaseCreated' | 'EquippablesUpdated'; + readonly type: 'NewSession'; } /** @name PalletStructureCall */ @@ -1965,7 +2146,8 @@ readonly isDepthLimit: boolean; readonly isBreadthLimit: boolean; readonly isTokenNotFound: boolean; - readonly type: 'OuroborosDetected' | 'DepthLimit' | 'BreadthLimit' | 'TokenNotFound'; + readonly isCantNestTokenUnderCollection: boolean; + readonly type: 'OuroborosDetected' | 'DepthLimit' | 'BreadthLimit' | 'TokenNotFound' | 'CantNestTokenUnderCollection'; } /** @name PalletStructureEvent */ @@ -2165,7 +2347,12 @@ readonly amount: u128; readonly beneficiary: AccountId32; } & Struct; - readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit' | 'SpendApproved'; + readonly isUpdatedInactive: boolean; + readonly asUpdatedInactive: { + readonly reactivated: u128; + readonly deactivated: u128; + } & Struct; + readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit' | 'SpendApproved' | 'UpdatedInactive'; } /** @name PalletTreasuryProposal */ @@ -2485,7 +2672,7 @@ } /** @name PhantomTypeUpDataStructs */ -export interface PhantomTypeUpDataStructs extends Vec> {} +export interface PhantomTypeUpDataStructs extends Vec> {} /** @name PolkadotCorePrimitivesInboundDownwardMessage */ export interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct { @@ -2550,150 +2737,19 @@ readonly type: 'Present'; } -/** @name RmrkTraitsBaseBaseInfo */ -export interface RmrkTraitsBaseBaseInfo extends Struct { - readonly issuer: AccountId32; - readonly baseType: Bytes; - readonly symbol: Bytes; +/** @name SpArithmeticArithmeticError */ +export interface SpArithmeticArithmeticError extends Enum { + readonly isUnderflow: boolean; + readonly isOverflow: boolean; + readonly isDivisionByZero: boolean; + readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero'; } -/** @name RmrkTraitsCollectionCollectionInfo */ -export interface RmrkTraitsCollectionCollectionInfo extends Struct { - readonly issuer: AccountId32; - readonly metadata: Bytes; - readonly max: Option; - readonly symbol: Bytes; - readonly nftsCount: u32; -} +/** @name SpConsensusAuraSr25519AppSr25519Public */ +export interface SpConsensusAuraSr25519AppSr25519Public extends SpCoreSr25519Public {} -/** @name RmrkTraitsNftAccountIdOrCollectionNftTuple */ -export interface RmrkTraitsNftAccountIdOrCollectionNftTuple extends Enum { - readonly isAccountId: boolean; - readonly asAccountId: AccountId32; - readonly isCollectionAndNftTuple: boolean; - readonly asCollectionAndNftTuple: ITuple<[u32, u32]>; - readonly type: 'AccountId' | 'CollectionAndNftTuple'; -} - -/** @name RmrkTraitsNftNftChild */ -export interface RmrkTraitsNftNftChild extends Struct { - readonly collectionId: u32; - readonly nftId: u32; -} - -/** @name RmrkTraitsNftNftInfo */ -export interface RmrkTraitsNftNftInfo extends Struct { - readonly owner: RmrkTraitsNftAccountIdOrCollectionNftTuple; - readonly royalty: Option; - readonly metadata: Bytes; - readonly equipped: bool; - readonly pending: bool; -} - -/** @name RmrkTraitsNftRoyaltyInfo */ -export interface RmrkTraitsNftRoyaltyInfo extends Struct { - readonly recipient: AccountId32; - readonly amount: Permill; -} - -/** @name RmrkTraitsPartEquippableList */ -export interface RmrkTraitsPartEquippableList extends Enum { - readonly isAll: boolean; - readonly isEmpty: boolean; - readonly isCustom: boolean; - readonly asCustom: Vec; - readonly type: 'All' | 'Empty' | 'Custom'; -} - -/** @name RmrkTraitsPartFixedPart */ -export interface RmrkTraitsPartFixedPart extends Struct { - readonly id: u32; - readonly z: u32; - readonly src: Bytes; -} - -/** @name RmrkTraitsPartPartType */ -export interface RmrkTraitsPartPartType extends Enum { - readonly isFixedPart: boolean; - readonly asFixedPart: RmrkTraitsPartFixedPart; - readonly isSlotPart: boolean; - readonly asSlotPart: RmrkTraitsPartSlotPart; - readonly type: 'FixedPart' | 'SlotPart'; -} - -/** @name RmrkTraitsPartSlotPart */ -export interface RmrkTraitsPartSlotPart extends Struct { - readonly id: u32; - readonly equippable: RmrkTraitsPartEquippableList; - readonly src: Bytes; - readonly z: u32; -} - -/** @name RmrkTraitsPropertyPropertyInfo */ -export interface RmrkTraitsPropertyPropertyInfo extends Struct { - readonly key: Bytes; - readonly value: Bytes; -} - -/** @name RmrkTraitsResourceBasicResource */ -export interface RmrkTraitsResourceBasicResource extends Struct { - readonly src: Option; - readonly metadata: Option; - readonly license: Option; - readonly thumb: Option; -} - -/** @name RmrkTraitsResourceComposableResource */ -export interface RmrkTraitsResourceComposableResource extends Struct { - readonly parts: Vec; - readonly base: u32; - readonly src: Option; - readonly metadata: Option; - readonly license: Option; - readonly thumb: Option; -} - -/** @name RmrkTraitsResourceResourceInfo */ -export interface RmrkTraitsResourceResourceInfo extends Struct { - readonly id: u32; - readonly resource: RmrkTraitsResourceResourceTypes; - readonly pending: bool; - readonly pendingRemoval: bool; -} - -/** @name RmrkTraitsResourceResourceTypes */ -export interface RmrkTraitsResourceResourceTypes extends Enum { - readonly isBasic: boolean; - readonly asBasic: RmrkTraitsResourceBasicResource; - readonly isComposable: boolean; - readonly asComposable: RmrkTraitsResourceComposableResource; - readonly isSlot: boolean; - readonly asSlot: RmrkTraitsResourceSlotResource; - readonly type: 'Basic' | 'Composable' | 'Slot'; -} - -/** @name RmrkTraitsResourceSlotResource */ -export interface RmrkTraitsResourceSlotResource extends Struct { - readonly base: u32; - readonly src: Option; - readonly metadata: Option; - readonly slot: u32; - readonly license: Option; - readonly thumb: Option; -} - -/** @name RmrkTraitsTheme */ -export interface RmrkTraitsTheme extends Struct { - readonly name: Bytes; - readonly properties: Vec; - readonly inherit: bool; -} - -/** @name RmrkTraitsThemeThemeProperty */ -export interface RmrkTraitsThemeThemeProperty extends Struct { - readonly key: Bytes; - readonly value: Bytes; -} +/** @name SpCoreCryptoKeyTypeId */ +export interface SpCoreCryptoKeyTypeId extends U8aFixed {} /** @name SpCoreEcdsaSignature */ export interface SpCoreEcdsaSignature extends U8aFixed {} @@ -2701,16 +2757,14 @@ /** @name SpCoreEd25519Signature */ export interface SpCoreEd25519Signature extends U8aFixed {} +/** @name SpCoreSr25519Public */ +export interface SpCoreSr25519Public extends U8aFixed {} + /** @name SpCoreSr25519Signature */ export interface SpCoreSr25519Signature extends U8aFixed {} -/** @name SpRuntimeArithmeticError */ -export interface SpRuntimeArithmeticError extends Enum { - readonly isUnderflow: boolean; - readonly isOverflow: boolean; - readonly isDivisionByZero: boolean; - readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero'; -} +/** @name SpRuntimeBlakeTwo256 */ +export interface SpRuntimeBlakeTwo256 extends Null {} /** @name SpRuntimeDigest */ export interface SpRuntimeDigest extends Struct { @@ -2744,7 +2798,7 @@ readonly isToken: boolean; readonly asToken: SpRuntimeTokenError; readonly isArithmetic: boolean; - readonly asArithmetic: SpRuntimeArithmeticError; + readonly asArithmetic: SpArithmeticArithmeticError; readonly isTransactional: boolean; readonly asTransactional: SpRuntimeTransactionalError; readonly isExhausted: boolean; @@ -2753,6 +2807,15 @@ readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic' | 'Transactional' | 'Exhausted' | 'Corruption' | 'Unavailable'; } +/** @name SpRuntimeHeader */ +export interface SpRuntimeHeader extends Struct { + readonly parentHash: H256; + readonly number: Compact; + readonly stateRoot: H256; + readonly extrinsicsRoot: H256; + readonly digest: SpRuntimeDigest; +} + /** @name SpRuntimeModuleError */ export interface SpRuntimeModuleError extends Struct { readonly index: u8; @@ -3160,7 +3223,10 @@ readonly isTechnical: boolean; readonly isLegislative: boolean; readonly isJudicial: boolean; - readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial'; + readonly isDefense: boolean; + readonly isAdministration: boolean; + readonly isTreasury: boolean; + readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial' | 'Defense' | 'Administration' | 'Treasury'; } /** @name XcmV0JunctionBodyPart */ --- a/tests/src/interfaces/lookup.ts +++ b/tests/src/interfaces/lookup.ts @@ -129,7 +129,7 @@ NoProviders: 'Null', TooManyConsumers: 'Null', Token: 'SpRuntimeTokenError', - Arithmetic: 'SpRuntimeArithmeticError', + Arithmetic: 'SpArithmeticArithmeticError', Transactional: 'SpRuntimeTransactionalError', Exhausted: 'Null', Corruption: 'Null', @@ -150,9 +150,9 @@ _enum: ['NoFunds', 'WouldDie', 'BelowMinimum', 'CannotCreate', 'UnknownAsset', 'Frozen', 'Unsupported'] }, /** - * Lookup27: sp_runtime::ArithmeticError + * Lookup27: sp_arithmetic::ArithmeticError **/ - SpRuntimeArithmeticError: { + SpArithmeticArithmeticError: { _enum: ['Underflow', 'Overflow', 'DivisionByZero'] }, /** @@ -184,7 +184,44 @@ } }, /** - * Lookup30: pallet_balances::pallet::Event + * Lookup30: pallet_collator_selection::pallet::Event + **/ + PalletCollatorSelectionEvent: { + _enum: { + InvulnerableAdded: { + invulnerable: 'AccountId32', + }, + InvulnerableRemoved: { + invulnerable: 'AccountId32', + }, + LicenseObtained: { + accountId: 'AccountId32', + deposit: 'u128', + }, + LicenseReleased: { + accountId: 'AccountId32', + depositReturned: 'u128', + }, + CandidateAdded: { + accountId: 'AccountId32', + }, + CandidateRemoved: { + accountId: 'AccountId32' + } + } + }, + /** + * Lookup31: pallet_session::pallet::Event + **/ + PalletSessionEvent: { + _enum: { + NewSession: { + sessionIndex: 'u32' + } + } + }, + /** + * Lookup32: pallet_balances::pallet::Event **/ PalletBalancesEvent: { _enum: { @@ -235,13 +272,13 @@ } }, /** - * Lookup31: frame_support::traits::tokens::misc::BalanceStatus + * Lookup33: frame_support::traits::tokens::misc::BalanceStatus **/ FrameSupportTokensMiscBalanceStatus: { _enum: ['Free', 'Reserved'] }, /** - * Lookup32: pallet_transaction_payment::pallet::Event + * Lookup34: pallet_transaction_payment::pallet::Event **/ PalletTransactionPaymentEvent: { _enum: { @@ -253,7 +290,7 @@ } }, /** - * Lookup33: pallet_treasury::pallet::Event + * Lookup35: pallet_treasury::pallet::Event **/ PalletTreasuryEvent: { _enum: { @@ -284,12 +321,16 @@ SpendApproved: { proposalIndex: 'u32', amount: 'u128', - beneficiary: 'AccountId32' + beneficiary: 'AccountId32', + }, + UpdatedInactive: { + reactivated: 'u128', + deactivated: 'u128' } } }, /** - * Lookup34: pallet_sudo::pallet::Event + * Lookup36: pallet_sudo::pallet::Event **/ PalletSudoEvent: { _enum: { @@ -305,7 +346,7 @@ } }, /** - * Lookup38: orml_vesting::module::Event + * Lookup40: orml_vesting::module::Event **/ OrmlVestingModuleEvent: { _enum: { @@ -324,7 +365,7 @@ } }, /** - * Lookup39: orml_vesting::VestingSchedule + * Lookup41: orml_vesting::VestingSchedule **/ OrmlVestingVestingSchedule: { start: 'u32', @@ -333,7 +374,7 @@ perPeriod: 'Compact' }, /** - * Lookup41: orml_xtokens::module::Event + * Lookup43: orml_xtokens::module::Event **/ OrmlXtokensModuleEvent: { _enum: { @@ -346,18 +387,18 @@ } }, /** - * Lookup42: xcm::v1::multiasset::MultiAssets + * Lookup44: xcm::v1::multiasset::MultiAssets **/ XcmV1MultiassetMultiAssets: 'Vec', /** - * Lookup44: xcm::v1::multiasset::MultiAsset + * Lookup46: xcm::v1::multiasset::MultiAsset **/ XcmV1MultiAsset: { id: 'XcmV1MultiassetAssetId', fun: 'XcmV1MultiassetFungibility' }, /** - * Lookup45: xcm::v1::multiasset::AssetId + * Lookup47: xcm::v1::multiasset::AssetId **/ XcmV1MultiassetAssetId: { _enum: { @@ -366,14 +407,14 @@ } }, /** - * Lookup46: xcm::v1::multilocation::MultiLocation + * Lookup48: xcm::v1::multilocation::MultiLocation **/ XcmV1MultiLocation: { parents: 'u8', interior: 'XcmV1MultilocationJunctions' }, /** - * Lookup47: xcm::v1::multilocation::Junctions + * Lookup49: xcm::v1::multilocation::Junctions **/ XcmV1MultilocationJunctions: { _enum: { @@ -389,7 +430,7 @@ } }, /** - * Lookup48: xcm::v1::junction::Junction + * Lookup50: xcm::v1::junction::Junction **/ XcmV1Junction: { _enum: { @@ -417,7 +458,7 @@ } }, /** - * Lookup50: xcm::v0::junction::NetworkId + * Lookup52: xcm::v0::junction::NetworkId **/ XcmV0JunctionNetworkId: { _enum: { @@ -428,7 +469,7 @@ } }, /** - * Lookup53: xcm::v0::junction::BodyId + * Lookup55: xcm::v0::junction::BodyId **/ XcmV0JunctionBodyId: { _enum: { @@ -438,11 +479,14 @@ Executive: 'Null', Technical: 'Null', Legislative: 'Null', - Judicial: 'Null' + Judicial: 'Null', + Defense: 'Null', + Administration: 'Null', + Treasury: 'Null' } }, /** - * Lookup54: xcm::v0::junction::BodyPart + * Lookup56: xcm::v0::junction::BodyPart **/ XcmV0JunctionBodyPart: { _enum: { @@ -465,7 +509,7 @@ } }, /** - * Lookup55: xcm::v1::multiasset::Fungibility + * Lookup57: xcm::v1::multiasset::Fungibility **/ XcmV1MultiassetFungibility: { _enum: { @@ -474,7 +518,7 @@ } }, /** - * Lookup56: xcm::v1::multiasset::AssetInstance + * Lookup58: xcm::v1::multiasset::AssetInstance **/ XcmV1MultiassetAssetInstance: { _enum: { @@ -488,7 +532,7 @@ } }, /** - * Lookup59: orml_tokens::module::Event + * Lookup61: orml_tokens::module::Event **/ OrmlTokensModuleEvent: { _enum: { @@ -565,7 +609,7 @@ } }, /** - * Lookup60: pallet_foreign_assets::AssetIds + * Lookup62: pallet_foreign_assets::AssetIds **/ PalletForeignAssetsAssetIds: { _enum: { @@ -574,14 +618,96 @@ } }, /** - * Lookup61: pallet_foreign_assets::NativeCurrency + * Lookup63: pallet_foreign_assets::NativeCurrency **/ PalletForeignAssetsNativeCurrency: { _enum: ['Here', 'Parent'] }, /** - * Lookup62: cumulus_pallet_xcmp_queue::pallet::Event + * Lookup64: pallet_identity::pallet::Event **/ + PalletIdentityEvent: { + _enum: { + IdentitySet: { + who: 'AccountId32', + }, + IdentityCleared: { + who: 'AccountId32', + deposit: 'u128', + }, + IdentityKilled: { + who: 'AccountId32', + deposit: 'u128', + }, + IdentitiesInserted: { + amount: 'u32', + }, + IdentitiesRemoved: { + amount: 'u32', + }, + JudgementRequested: { + who: 'AccountId32', + registrarIndex: 'u32', + }, + JudgementUnrequested: { + who: 'AccountId32', + registrarIndex: 'u32', + }, + JudgementGiven: { + target: 'AccountId32', + registrarIndex: 'u32', + }, + RegistrarAdded: { + registrarIndex: 'u32', + }, + SubIdentityAdded: { + sub: 'AccountId32', + main: 'AccountId32', + deposit: 'u128', + }, + SubIdentityRemoved: { + sub: 'AccountId32', + main: 'AccountId32', + deposit: 'u128', + }, + SubIdentityRevoked: { + sub: 'AccountId32', + main: 'AccountId32', + deposit: 'u128', + }, + SubIdentitiesInserted: { + amount: 'u32' + } + } + }, + /** + * Lookup65: pallet_preimage::pallet::Event + **/ + PalletPreimageEvent: { + _enum: { + Noted: { + _alias: { + hash_: 'hash', + }, + hash_: 'H256', + }, + Requested: { + _alias: { + hash_: 'hash', + }, + hash_: 'H256', + }, + Cleared: { + _alias: { + hash_: 'hash', + }, + hash_: 'H256' + } + } + }, + /** + * Lookup66: cumulus_pallet_xcmp_queue::pallet::Event + **/ CumulusPalletXcmpQueueEvent: { _enum: { Success: { @@ -618,7 +744,7 @@ } }, /** - * Lookup64: xcm::v2::traits::Error + * Lookup68: xcm::v2::traits::Error **/ XcmV2TraitsError: { _enum: { @@ -651,7 +777,7 @@ } }, /** - * Lookup66: pallet_xcm::pallet::Event + * Lookup70: pallet_xcm::pallet::Event **/ PalletXcmEvent: { _enum: { @@ -675,7 +801,7 @@ } }, /** - * Lookup67: xcm::v2::traits::Outcome + * Lookup71: xcm::v2::traits::Outcome **/ XcmV2TraitsOutcome: { _enum: { @@ -685,11 +811,11 @@ } }, /** - * Lookup68: xcm::v2::Xcm + * Lookup72: xcm::v2::Xcm **/ XcmV2Xcm: 'Vec', /** - * Lookup70: xcm::v2::Instruction + * Lookup74: xcm::v2::Instruction **/ XcmV2Instruction: { _enum: { @@ -787,7 +913,7 @@ } }, /** - * Lookup71: xcm::v2::Response + * Lookup75: xcm::v2::Response **/ XcmV2Response: { _enum: { @@ -798,19 +924,19 @@ } }, /** - * Lookup74: xcm::v0::OriginKind + * Lookup78: xcm::v0::OriginKind **/ XcmV0OriginKind: { _enum: ['Native', 'SovereignAccount', 'Superuser', 'Xcm'] }, /** - * Lookup75: xcm::double_encoded::DoubleEncoded + * Lookup79: xcm::double_encoded::DoubleEncoded **/ XcmDoubleEncoded: { encoded: 'Bytes' }, /** - * Lookup76: xcm::v1::multiasset::MultiAssetFilter + * Lookup80: xcm::v1::multiasset::MultiAssetFilter **/ XcmV1MultiassetMultiAssetFilter: { _enum: { @@ -819,7 +945,7 @@ } }, /** - * Lookup77: xcm::v1::multiasset::WildMultiAsset + * Lookup81: xcm::v1::multiasset::WildMultiAsset **/ XcmV1MultiassetWildMultiAsset: { _enum: { @@ -831,13 +957,13 @@ } }, /** - * Lookup78: xcm::v1::multiasset::WildFungibility + * Lookup82: xcm::v1::multiasset::WildFungibility **/ XcmV1MultiassetWildFungibility: { _enum: ['Fungible', 'NonFungible'] }, /** - * Lookup79: xcm::v2::WeightLimit + * Lookup83: xcm::v2::WeightLimit **/ XcmV2WeightLimit: { _enum: { @@ -846,7 +972,7 @@ } }, /** - * Lookup81: xcm::VersionedMultiAssets + * Lookup85: xcm::VersionedMultiAssets **/ XcmVersionedMultiAssets: { _enum: { @@ -855,7 +981,7 @@ } }, /** - * Lookup83: xcm::v0::multi_asset::MultiAsset + * Lookup87: xcm::v0::multi_asset::MultiAsset **/ XcmV0MultiAsset: { _enum: { @@ -894,7 +1020,7 @@ } }, /** - * Lookup84: xcm::v0::multi_location::MultiLocation + * Lookup88: xcm::v0::multi_location::MultiLocation **/ XcmV0MultiLocation: { _enum: { @@ -910,7 +1036,7 @@ } }, /** - * Lookup85: xcm::v0::junction::Junction + * Lookup89: xcm::v0::junction::Junction **/ XcmV0Junction: { _enum: { @@ -939,7 +1065,7 @@ } }, /** - * Lookup86: xcm::VersionedMultiLocation + * Lookup90: xcm::VersionedMultiLocation **/ XcmVersionedMultiLocation: { _enum: { @@ -948,7 +1074,7 @@ } }, /** - * Lookup87: cumulus_pallet_xcm::pallet::Event + * Lookup91: cumulus_pallet_xcm::pallet::Event **/ CumulusPalletXcmEvent: { _enum: { @@ -958,7 +1084,7 @@ } }, /** - * Lookup88: cumulus_pallet_dmp_queue::pallet::Event + * Lookup92: cumulus_pallet_dmp_queue::pallet::Event **/ CumulusPalletDmpQueueEvent: { _enum: { @@ -989,7 +1115,7 @@ } }, /** - * Lookup89: pallet_configuration::pallet::Event + * Lookup93: pallet_configuration::pallet::Event **/ PalletConfigurationEvent: { _enum: { @@ -1005,7 +1131,7 @@ } }, /** - * Lookup92: pallet_common::pallet::Event + * Lookup96: pallet_common::pallet::Event **/ PalletCommonEvent: { _enum: { @@ -1034,7 +1160,7 @@ } }, /** - * Lookup95: pallet_evm::account::BasicCrossAccountIdRepr + * Lookup99: pallet_evm::account::BasicCrossAccountIdRepr **/ PalletEvmAccountBasicCrossAccountIdRepr: { _enum: { @@ -1043,116 +1169,15 @@ } }, /** - * Lookup99: pallet_structure::pallet::Event + * Lookup103: pallet_structure::pallet::Event **/ PalletStructureEvent: { _enum: { Executed: 'Result' - } - }, - /** - * Lookup100: pallet_rmrk_core::pallet::Event - **/ - PalletRmrkCoreEvent: { - _enum: { - CollectionCreated: { - issuer: 'AccountId32', - collectionId: 'u32', - }, - CollectionDestroyed: { - issuer: 'AccountId32', - collectionId: 'u32', - }, - IssuerChanged: { - oldIssuer: 'AccountId32', - newIssuer: 'AccountId32', - collectionId: 'u32', - }, - CollectionLocked: { - issuer: 'AccountId32', - collectionId: 'u32', - }, - NftMinted: { - owner: 'AccountId32', - collectionId: 'u32', - nftId: 'u32', - }, - NFTBurned: { - owner: 'AccountId32', - nftId: 'u32', - }, - NFTSent: { - sender: 'AccountId32', - recipient: 'RmrkTraitsNftAccountIdOrCollectionNftTuple', - collectionId: 'u32', - nftId: 'u32', - approvalRequired: 'bool', - }, - NFTAccepted: { - sender: 'AccountId32', - recipient: 'RmrkTraitsNftAccountIdOrCollectionNftTuple', - collectionId: 'u32', - nftId: 'u32', - }, - NFTRejected: { - sender: 'AccountId32', - collectionId: 'u32', - nftId: 'u32', - }, - PropertySet: { - collectionId: 'u32', - maybeNftId: 'Option', - key: 'Bytes', - value: 'Bytes', - }, - ResourceAdded: { - nftId: 'u32', - resourceId: 'u32', - }, - ResourceRemoval: { - nftId: 'u32', - resourceId: 'u32', - }, - ResourceAccepted: { - nftId: 'u32', - resourceId: 'u32', - }, - ResourceRemovalAccepted: { - nftId: 'u32', - resourceId: 'u32', - }, - PrioritySet: { - collectionId: 'u32', - nftId: 'u32' - } } }, /** - * Lookup101: rmrk_traits::nft::AccountIdOrCollectionNftTuple - **/ - RmrkTraitsNftAccountIdOrCollectionNftTuple: { - _enum: { - AccountId: 'AccountId32', - CollectionAndNftTuple: '(u32,u32)' - } - }, - /** - * Lookup104: pallet_rmrk_equip::pallet::Event - **/ - PalletRmrkEquipEvent: { - _enum: { - BaseCreated: { - issuer: 'AccountId32', - baseId: 'u32', - }, - EquippablesUpdated: { - baseId: 'u32', - slotId: 'u32' - } - } - }, - /** - * Lookup105: pallet_app_promotion::pallet::Event + * Lookup104: pallet_app_promotion::pallet::Event **/ PalletAppPromotionEvent: { _enum: { @@ -1163,7 +1188,7 @@ } }, /** - * Lookup106: pallet_foreign_assets::module::Event + * Lookup105: pallet_foreign_assets::module::Event **/ PalletForeignAssetsModuleEvent: { _enum: { @@ -1188,7 +1213,7 @@ } }, /** - * Lookup107: pallet_foreign_assets::module::AssetMetadata + * Lookup106: pallet_foreign_assets::module::AssetMetadata **/ PalletForeignAssetsModuleAssetMetadata: { name: 'Bytes', @@ -1197,7 +1222,7 @@ minimalBalance: 'u128' }, /** - * Lookup108: pallet_evm::pallet::Event + * Lookup107: pallet_evm::pallet::Event **/ PalletEvmEvent: { _enum: { @@ -1219,7 +1244,7 @@ } }, /** - * Lookup109: ethereum::log::Log + * Lookup108: ethereum::log::Log **/ EthereumLog: { address: 'H160', @@ -1227,7 +1252,7 @@ data: 'Bytes' }, /** - * Lookup111: pallet_ethereum::pallet::Event + * Lookup110: pallet_ethereum::pallet::Event **/ PalletEthereumEvent: { _enum: { @@ -1240,7 +1265,7 @@ } }, /** - * Lookup112: evm_core::error::ExitReason + * Lookup111: evm_core::error::ExitReason **/ EvmCoreErrorExitReason: { _enum: { @@ -1251,13 +1276,13 @@ } }, /** - * Lookup113: evm_core::error::ExitSucceed + * Lookup112: evm_core::error::ExitSucceed **/ EvmCoreErrorExitSucceed: { _enum: ['Stopped', 'Returned', 'Suicided'] }, /** - * Lookup114: evm_core::error::ExitError + * Lookup113: evm_core::error::ExitError **/ EvmCoreErrorExitError: { _enum: { @@ -1275,7 +1300,8 @@ PCUnderflow: 'Null', CreateEmpty: 'Null', Other: 'Text', - InvalidCode: 'Null' + __Unused14: 'Null', + InvalidCode: 'u8' } }, /** @@ -1551,28 +1577,135 @@ _enum: ['OverlappingUpgrades', 'ProhibitedByPolkadot', 'TooBig', 'ValidationDataNotAvailable', 'HostConfigurationNotAvailable', 'NotScheduled', 'NothingAuthorized', 'Unauthorized'] }, /** - * Lookup172: pallet_balances::BalanceLock + * Lookup172: pallet_authorship::UncleEntryItem + **/ + PalletAuthorshipUncleEntryItem: { + _enum: { + InclusionHeight: 'u32', + Uncle: '(H256,Option)' + } + }, + /** + * Lookup174: pallet_authorship::pallet::Call + **/ + PalletAuthorshipCall: { + _enum: { + set_uncles: { + newUncles: 'Vec' + } + } + }, + /** + * Lookup176: sp_runtime::generic::header::Header + **/ + SpRuntimeHeader: { + parentHash: 'H256', + number: 'Compact', + stateRoot: 'H256', + extrinsicsRoot: 'H256', + digest: 'SpRuntimeDigest' + }, + /** + * Lookup177: sp_runtime::traits::BlakeTwo256 + **/ + SpRuntimeBlakeTwo256: 'Null', + /** + * Lookup178: pallet_authorship::pallet::Error + **/ + PalletAuthorshipError: { + _enum: ['InvalidUncleParent', 'UnclesAlreadySet', 'TooManyUncles', 'GenesisUncle', 'TooHighUncle', 'UncleAlreadyIncluded', 'OldUncle'] + }, + /** + * Lookup181: pallet_collator_selection::pallet::Call **/ + PalletCollatorSelectionCall: { + _enum: { + add_invulnerable: { + _alias: { + new_: 'new', + }, + new_: 'AccountId32', + }, + remove_invulnerable: { + who: 'AccountId32', + }, + get_license: 'Null', + onboard: 'Null', + offboard: 'Null', + release_license: 'Null', + force_release_license: { + who: 'AccountId32' + } + } + }, + /** + * Lookup182: pallet_collator_selection::pallet::Error + **/ + PalletCollatorSelectionError: { + _enum: ['TooManyCandidates', 'Unknown', 'Permission', 'AlreadyHoldingLicense', 'NoLicense', 'AlreadyCandidate', 'NotCandidate', 'TooManyInvulnerables', 'TooFewInvulnerables', 'AlreadyInvulnerable', 'NotInvulnerable', 'NoAssociatedValidatorId', 'ValidatorNotRegistered'] + }, + /** + * Lookup185: opal_runtime::runtime_common::SessionKeys + **/ + OpalRuntimeRuntimeCommonSessionKeys: { + aura: 'SpConsensusAuraSr25519AppSr25519Public' + }, + /** + * Lookup186: sp_consensus_aura::sr25519::app_sr25519::Public + **/ + SpConsensusAuraSr25519AppSr25519Public: 'SpCoreSr25519Public', + /** + * Lookup187: sp_core::sr25519::Public + **/ + SpCoreSr25519Public: '[u8;32]', + /** + * Lookup190: sp_core::crypto::KeyTypeId + **/ + SpCoreCryptoKeyTypeId: '[u8;4]', + /** + * Lookup191: pallet_session::pallet::Call + **/ + PalletSessionCall: { + _enum: { + set_keys: { + _alias: { + keys_: 'keys', + }, + keys_: 'OpalRuntimeRuntimeCommonSessionKeys', + proof: 'Bytes', + }, + purge_keys: 'Null' + } + }, + /** + * Lookup192: pallet_session::pallet::Error + **/ + PalletSessionError: { + _enum: ['InvalidProof', 'NoAssociatedValidatorId', 'DuplicatedKey', 'NoKeys', 'NoAccount'] + }, + /** + * Lookup194: pallet_balances::BalanceLock + **/ PalletBalancesBalanceLock: { id: '[u8;8]', amount: 'u128', reasons: 'PalletBalancesReasons' }, /** - * Lookup173: pallet_balances::Reasons + * Lookup195: pallet_balances::Reasons **/ PalletBalancesReasons: { _enum: ['Fee', 'Misc', 'All'] }, /** - * Lookup176: pallet_balances::ReserveData + * Lookup198: pallet_balances::ReserveData **/ PalletBalancesReserveData: { id: '[u8;16]', amount: 'u128' }, /** - * Lookup178: pallet_balances::pallet::Call + * Lookup200: pallet_balances::pallet::Call **/ PalletBalancesCall: { _enum: { @@ -1605,13 +1738,13 @@ } }, /** - * Lookup181: pallet_balances::pallet::Error + * Lookup203: pallet_balances::pallet::Error **/ PalletBalancesError: { _enum: ['VestingBalance', 'LiquidityRestrictions', 'InsufficientBalance', 'ExistentialDeposit', 'KeepAlive', 'ExistingVestingSchedule', 'DeadAccount', 'TooManyReserves'] }, /** - * Lookup183: pallet_timestamp::pallet::Call + * Lookup205: pallet_timestamp::pallet::Call **/ PalletTimestampCall: { _enum: { @@ -1621,13 +1754,13 @@ } }, /** - * Lookup185: pallet_transaction_payment::Releases + * Lookup207: pallet_transaction_payment::Releases **/ PalletTransactionPaymentReleases: { _enum: ['V1Ancient', 'V2'] }, /** - * Lookup186: pallet_treasury::Proposal + * Lookup208: pallet_treasury::Proposal **/ PalletTreasuryProposal: { proposer: 'AccountId32', @@ -1636,7 +1769,7 @@ bond: 'u128' }, /** - * Lookup189: pallet_treasury::pallet::Call + * Lookup210: pallet_treasury::pallet::Call **/ PalletTreasuryCall: { _enum: { @@ -1660,17 +1793,17 @@ } }, /** - * Lookup191: frame_support::PalletId + * Lookup212: frame_support::PalletId **/ FrameSupportPalletId: '[u8;8]', /** - * Lookup192: pallet_treasury::pallet::Error + * Lookup213: pallet_treasury::pallet::Error **/ PalletTreasuryError: { _enum: ['InsufficientProposersBalance', 'InvalidIndex', 'TooManyApprovals', 'InsufficientPermission', 'ProposalNotApproved'] }, /** - * Lookup193: pallet_sudo::pallet::Call + * Lookup214: pallet_sudo::pallet::Call **/ PalletSudoCall: { _enum: { @@ -1694,7 +1827,7 @@ } }, /** - * Lookup195: orml_vesting::module::Call + * Lookup216: orml_vesting::module::Call **/ OrmlVestingModuleCall: { _enum: { @@ -1713,7 +1846,7 @@ } }, /** - * Lookup197: orml_xtokens::module::Call + * Lookup218: orml_xtokens::module::Call **/ OrmlXtokensModuleCall: { _enum: { @@ -1756,7 +1889,7 @@ } }, /** - * Lookup198: xcm::VersionedMultiAsset + * Lookup219: xcm::VersionedMultiAsset **/ XcmVersionedMultiAsset: { _enum: { @@ -1765,7 +1898,7 @@ } }, /** - * Lookup201: orml_tokens::module::Call + * Lookup222: orml_tokens::module::Call **/ OrmlTokensModuleCall: { _enum: { @@ -1799,7 +1932,160 @@ } }, /** - * Lookup202: cumulus_pallet_xcmp_queue::pallet::Call + * Lookup223: pallet_identity::pallet::Call + **/ + PalletIdentityCall: { + _enum: { + add_registrar: { + account: 'MultiAddress', + }, + set_identity: { + info: 'PalletIdentityIdentityInfo', + }, + set_subs: { + subs: 'Vec<(AccountId32,Data)>', + }, + clear_identity: 'Null', + request_judgement: { + regIndex: 'Compact', + maxFee: 'Compact', + }, + cancel_request: { + regIndex: 'u32', + }, + set_fee: { + index: 'Compact', + fee: 'Compact', + }, + set_account_id: { + _alias: { + new_: 'new', + }, + index: 'Compact', + new_: 'MultiAddress', + }, + set_fields: { + index: 'Compact', + fields: 'PalletIdentityBitFlags', + }, + provide_judgement: { + regIndex: 'Compact', + target: 'MultiAddress', + judgement: 'PalletIdentityJudgement', + identity: 'H256', + }, + kill_identity: { + target: 'MultiAddress', + }, + add_sub: { + sub: 'MultiAddress', + data: 'Data', + }, + rename_sub: { + sub: 'MultiAddress', + data: 'Data', + }, + remove_sub: { + sub: 'MultiAddress', + }, + quit_sub: 'Null', + force_insert_identities: { + identities: 'Vec<(AccountId32,PalletIdentityRegistration)>', + }, + force_remove_identities: { + identities: 'Vec', + }, + force_set_subs: { + subs: 'Vec<(AccountId32,(u128,Vec<(AccountId32,Data)>))>' + } + } + }, + /** + * Lookup224: pallet_identity::types::IdentityInfo + **/ + PalletIdentityIdentityInfo: { + additional: 'Vec<(Data,Data)>', + display: 'Data', + legal: 'Data', + web: 'Data', + riot: 'Data', + email: 'Data', + pgpFingerprint: 'Option<[u8;20]>', + image: 'Data', + twitter: 'Data' + }, + /** + * Lookup260: pallet_identity::types::BitFlags + **/ + PalletIdentityBitFlags: { + _bitLength: 64, + Display: 1, + Legal: 2, + Web: 4, + Riot: 8, + Email: 16, + PgpFingerprint: 32, + Image: 64, + Twitter: 128 + }, + /** + * Lookup261: pallet_identity::types::IdentityField + **/ + PalletIdentityIdentityField: { + _enum: ['__Unused0', 'Display', 'Legal', '__Unused3', 'Web', '__Unused5', '__Unused6', '__Unused7', 'Riot', '__Unused9', '__Unused10', '__Unused11', '__Unused12', '__Unused13', '__Unused14', '__Unused15', 'Email', '__Unused17', '__Unused18', '__Unused19', '__Unused20', '__Unused21', '__Unused22', '__Unused23', '__Unused24', '__Unused25', '__Unused26', '__Unused27', '__Unused28', '__Unused29', '__Unused30', '__Unused31', 'PgpFingerprint', '__Unused33', '__Unused34', '__Unused35', '__Unused36', '__Unused37', '__Unused38', '__Unused39', '__Unused40', '__Unused41', '__Unused42', '__Unused43', '__Unused44', '__Unused45', '__Unused46', '__Unused47', '__Unused48', '__Unused49', '__Unused50', '__Unused51', '__Unused52', '__Unused53', '__Unused54', '__Unused55', '__Unused56', '__Unused57', '__Unused58', '__Unused59', '__Unused60', '__Unused61', '__Unused62', '__Unused63', 'Image', '__Unused65', '__Unused66', '__Unused67', '__Unused68', '__Unused69', '__Unused70', '__Unused71', '__Unused72', '__Unused73', '__Unused74', '__Unused75', '__Unused76', '__Unused77', '__Unused78', '__Unused79', '__Unused80', '__Unused81', '__Unused82', '__Unused83', '__Unused84', '__Unused85', '__Unused86', '__Unused87', '__Unused88', '__Unused89', '__Unused90', '__Unused91', '__Unused92', '__Unused93', '__Unused94', '__Unused95', '__Unused96', '__Unused97', '__Unused98', '__Unused99', '__Unused100', '__Unused101', '__Unused102', '__Unused103', '__Unused104', '__Unused105', '__Unused106', '__Unused107', '__Unused108', '__Unused109', '__Unused110', '__Unused111', '__Unused112', '__Unused113', '__Unused114', '__Unused115', '__Unused116', '__Unused117', '__Unused118', '__Unused119', '__Unused120', '__Unused121', '__Unused122', '__Unused123', '__Unused124', '__Unused125', '__Unused126', '__Unused127', 'Twitter'] + }, + /** + * Lookup262: pallet_identity::types::Judgement + **/ + PalletIdentityJudgement: { + _enum: { + Unknown: 'Null', + FeePaid: 'u128', + Reasonable: 'Null', + KnownGood: 'Null', + OutOfDate: 'Null', + LowQuality: 'Null', + Erroneous: 'Null' + } + }, + /** + * Lookup265: pallet_identity::types::Registration + **/ + PalletIdentityRegistration: { + judgements: 'Vec<(u32,PalletIdentityJudgement)>', + deposit: 'u128', + info: 'PalletIdentityIdentityInfo' + }, + /** + * Lookup273: pallet_preimage::pallet::Call + **/ + PalletPreimageCall: { + _enum: { + note_preimage: { + bytes: 'Bytes', + }, + unnote_preimage: { + _alias: { + hash_: 'hash', + }, + hash_: 'H256', + }, + request_preimage: { + _alias: { + hash_: 'hash', + }, + hash_: 'H256', + }, + unrequest_preimage: { + _alias: { + hash_: 'hash', + }, + hash_: 'H256' + } + } + }, + /** + * Lookup274: cumulus_pallet_xcmp_queue::pallet::Call **/ CumulusPalletXcmpQueueCall: { _enum: { @@ -1848,7 +2134,7 @@ } }, /** - * Lookup203: pallet_xcm::pallet::Call + * Lookup275: pallet_xcm::pallet::Call **/ PalletXcmCall: { _enum: { @@ -1902,7 +2188,7 @@ } }, /** - * Lookup204: xcm::VersionedXcm + * Lookup276: xcm::VersionedXcm **/ XcmVersionedXcm: { _enum: { @@ -1912,7 +2198,7 @@ } }, /** - * Lookup205: xcm::v0::Xcm + * Lookup277: xcm::v0::Xcm **/ XcmV0Xcm: { _enum: { @@ -1966,7 +2252,7 @@ } }, /** - * Lookup207: xcm::v0::order::Order + * Lookup279: xcm::v0::order::Order **/ XcmV0Order: { _enum: { @@ -2009,7 +2295,7 @@ } }, /** - * Lookup209: xcm::v0::Response + * Lookup281: xcm::v0::Response **/ XcmV0Response: { _enum: { @@ -2017,7 +2303,7 @@ } }, /** - * Lookup210: xcm::v1::Xcm + * Lookup282: xcm::v1::Xcm **/ XcmV1Xcm: { _enum: { @@ -2076,7 +2362,7 @@ } }, /** - * Lookup212: xcm::v1::order::Order + * Lookup284: xcm::v1::order::Order **/ XcmV1Order: { _enum: { @@ -2121,7 +2407,7 @@ } }, /** - * Lookup214: xcm::v1::Response + * Lookup286: xcm::v1::Response **/ XcmV1Response: { _enum: { @@ -2130,11 +2416,11 @@ } }, /** - * Lookup228: cumulus_pallet_xcm::pallet::Call + * Lookup300: cumulus_pallet_xcm::pallet::Call **/ CumulusPalletXcmCall: 'Null', /** - * Lookup229: cumulus_pallet_dmp_queue::pallet::Call + * Lookup301: cumulus_pallet_dmp_queue::pallet::Call **/ CumulusPalletDmpQueueCall: { _enum: { @@ -2145,7 +2431,7 @@ } }, /** - * Lookup230: pallet_inflation::pallet::Call + * Lookup302: pallet_inflation::pallet::Call **/ PalletInflationCall: { _enum: { @@ -2155,7 +2441,7 @@ } }, /** - * Lookup231: pallet_unique::Call + * Lookup303: pallet_unique::Call **/ PalletUniqueCall: { _enum: { @@ -2306,7 +2592,7 @@ } }, /** - * Lookup236: up_data_structs::CollectionMode + * Lookup308: up_data_structs::CollectionMode **/ UpDataStructsCollectionMode: { _enum: { @@ -2316,7 +2602,7 @@ } }, /** - * Lookup237: up_data_structs::CreateCollectionData + * Lookup309: up_data_structs::CreateCollectionData **/ UpDataStructsCreateCollectionData: { mode: 'UpDataStructsCollectionMode', @@ -2331,13 +2617,13 @@ properties: 'Vec' }, /** - * Lookup239: up_data_structs::AccessMode + * Lookup311: up_data_structs::AccessMode **/ UpDataStructsAccessMode: { _enum: ['Normal', 'AllowList'] }, /** - * Lookup241: up_data_structs::CollectionLimits + * Lookup313: up_data_structs::CollectionLimits **/ UpDataStructsCollectionLimits: { accountTokenOwnershipLimit: 'Option', @@ -2351,7 +2637,7 @@ transfersEnabled: 'Option' }, /** - * Lookup243: up_data_structs::SponsoringRateLimit + * Lookup315: up_data_structs::SponsoringRateLimit **/ UpDataStructsSponsoringRateLimit: { _enum: { @@ -2360,7 +2646,7 @@ } }, /** - * Lookup246: up_data_structs::CollectionPermissions + * Lookup318: up_data_structs::CollectionPermissions **/ UpDataStructsCollectionPermissions: { access: 'Option', @@ -2368,7 +2654,7 @@ nesting: 'Option' }, /** - * Lookup248: up_data_structs::NestingPermissions + * Lookup320: up_data_structs::NestingPermissions **/ UpDataStructsNestingPermissions: { tokenOwner: 'bool', @@ -2376,18 +2662,18 @@ restricted: 'Option' }, /** - * Lookup250: up_data_structs::OwnerRestrictedSet + * Lookup322: up_data_structs::OwnerRestrictedSet **/ UpDataStructsOwnerRestrictedSet: 'BTreeSet', /** - * Lookup255: up_data_structs::PropertyKeyPermission + * Lookup327: up_data_structs::PropertyKeyPermission **/ UpDataStructsPropertyKeyPermission: { key: 'Bytes', permission: 'UpDataStructsPropertyPermission' }, /** - * Lookup256: up_data_structs::PropertyPermission + * Lookup328: up_data_structs::PropertyPermission **/ UpDataStructsPropertyPermission: { mutable: 'bool', @@ -2395,14 +2681,14 @@ tokenOwner: 'bool' }, /** - * Lookup259: up_data_structs::Property + * Lookup331: up_data_structs::Property **/ UpDataStructsProperty: { key: 'Bytes', value: 'Bytes' }, /** - * Lookup262: up_data_structs::CreateItemData + * Lookup334: up_data_structs::CreateItemData **/ UpDataStructsCreateItemData: { _enum: { @@ -2412,26 +2698,26 @@ } }, /** - * Lookup263: up_data_structs::CreateNftData + * Lookup335: up_data_structs::CreateNftData **/ UpDataStructsCreateNftData: { properties: 'Vec' }, /** - * Lookup264: up_data_structs::CreateFungibleData + * Lookup336: up_data_structs::CreateFungibleData **/ UpDataStructsCreateFungibleData: { value: 'u128' }, /** - * Lookup265: up_data_structs::CreateReFungibleData + * Lookup337: up_data_structs::CreateReFungibleData **/ UpDataStructsCreateReFungibleData: { pieces: 'u128', properties: 'Vec' }, /** - * Lookup268: up_data_structs::CreateItemExData> + * Lookup340: up_data_structs::CreateItemExData> **/ UpDataStructsCreateItemExData: { _enum: { @@ -2442,14 +2728,14 @@ } }, /** - * Lookup270: up_data_structs::CreateNftExData> + * Lookup342: up_data_structs::CreateNftExData> **/ UpDataStructsCreateNftExData: { properties: 'Vec', owner: 'PalletEvmAccountBasicCrossAccountIdRepr' }, /** - * Lookup277: up_data_structs::CreateRefungibleExSingleOwner> + * Lookup349: up_data_structs::CreateRefungibleExSingleOwner> **/ UpDataStructsCreateRefungibleExSingleOwner: { user: 'PalletEvmAccountBasicCrossAccountIdRepr', @@ -2457,14 +2743,14 @@ properties: 'Vec' }, /** - * Lookup279: up_data_structs::CreateRefungibleExMultipleOwners> + * Lookup351: up_data_structs::CreateRefungibleExMultipleOwners> **/ UpDataStructsCreateRefungibleExMultipleOwners: { users: 'BTreeMap', properties: 'Vec' }, /** - * Lookup280: pallet_configuration::pallet::Call + * Lookup352: pallet_configuration::pallet::Call **/ PalletConfigurationCall: { _enum: { @@ -2492,7 +2778,7 @@ } }, /** - * Lookup285: pallet_configuration::AppPromotionConfiguration + * Lookup357: pallet_configuration::AppPromotionConfiguration **/ PalletConfigurationAppPromotionConfiguration: { recalculationInterval: 'Option', @@ -2501,220 +2787,16 @@ maxStakersPerCalculation: 'Option' }, /** - * Lookup289: pallet_template_transaction_payment::Call + * Lookup361: pallet_template_transaction_payment::Call **/ PalletTemplateTransactionPaymentCall: 'Null', /** - * Lookup290: pallet_structure::pallet::Call + * Lookup362: pallet_structure::pallet::Call **/ PalletStructureCall: 'Null', /** - * Lookup291: pallet_rmrk_core::pallet::Call - **/ - PalletRmrkCoreCall: { - _enum: { - create_collection: { - metadata: 'Bytes', - max: 'Option', - symbol: 'Bytes', - }, - destroy_collection: { - collectionId: 'u32', - }, - change_collection_issuer: { - collectionId: 'u32', - newIssuer: 'MultiAddress', - }, - lock_collection: { - collectionId: 'u32', - }, - mint_nft: { - owner: 'Option', - collectionId: 'u32', - recipient: 'Option', - royaltyAmount: 'Option', - metadata: 'Bytes', - transferable: 'bool', - resources: 'Option>', - }, - burn_nft: { - collectionId: 'u32', - nftId: 'u32', - maxBurns: 'u32', - }, - send: { - rmrkCollectionId: 'u32', - rmrkNftId: 'u32', - newOwner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple', - }, - accept_nft: { - rmrkCollectionId: 'u32', - rmrkNftId: 'u32', - newOwner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple', - }, - reject_nft: { - rmrkCollectionId: 'u32', - rmrkNftId: 'u32', - }, - accept_resource: { - rmrkCollectionId: 'u32', - rmrkNftId: 'u32', - resourceId: 'u32', - }, - accept_resource_removal: { - rmrkCollectionId: 'u32', - rmrkNftId: 'u32', - resourceId: 'u32', - }, - set_property: { - rmrkCollectionId: 'Compact', - maybeNftId: 'Option', - key: 'Bytes', - value: 'Bytes', - }, - set_priority: { - rmrkCollectionId: 'u32', - rmrkNftId: 'u32', - priorities: 'Vec', - }, - add_basic_resource: { - rmrkCollectionId: 'u32', - nftId: 'u32', - resource: 'RmrkTraitsResourceBasicResource', - }, - add_composable_resource: { - rmrkCollectionId: 'u32', - nftId: 'u32', - resource: 'RmrkTraitsResourceComposableResource', - }, - add_slot_resource: { - rmrkCollectionId: 'u32', - nftId: 'u32', - resource: 'RmrkTraitsResourceSlotResource', - }, - remove_resource: { - rmrkCollectionId: 'u32', - nftId: 'u32', - resourceId: 'u32' - } - } - }, - /** - * Lookup297: rmrk_traits::resource::ResourceTypes, sp_core::bounded::bounded_vec::BoundedVec> - **/ - RmrkTraitsResourceResourceTypes: { - _enum: { - Basic: 'RmrkTraitsResourceBasicResource', - Composable: 'RmrkTraitsResourceComposableResource', - Slot: 'RmrkTraitsResourceSlotResource' - } - }, - /** - * Lookup299: rmrk_traits::resource::BasicResource> - **/ - RmrkTraitsResourceBasicResource: { - src: 'Option', - metadata: 'Option', - license: 'Option', - thumb: 'Option' - }, - /** - * Lookup301: rmrk_traits::resource::ComposableResource, sp_core::bounded::bounded_vec::BoundedVec> - **/ - RmrkTraitsResourceComposableResource: { - parts: 'Vec', - base: 'u32', - src: 'Option', - metadata: 'Option', - license: 'Option', - thumb: 'Option' - }, - /** - * Lookup302: rmrk_traits::resource::SlotResource> - **/ - RmrkTraitsResourceSlotResource: { - base: 'u32', - src: 'Option', - metadata: 'Option', - slot: 'u32', - license: 'Option', - thumb: 'Option' - }, - /** - * Lookup305: pallet_rmrk_equip::pallet::Call - **/ - PalletRmrkEquipCall: { - _enum: { - create_base: { - baseType: 'Bytes', - symbol: 'Bytes', - parts: 'Vec', - }, - theme_add: { - baseId: 'u32', - theme: 'RmrkTraitsTheme', - }, - equippable: { - baseId: 'u32', - slotId: 'u32', - equippables: 'RmrkTraitsPartEquippableList' - } - } - }, - /** - * Lookup308: rmrk_traits::part::PartType, sp_core::bounded::bounded_vec::BoundedVec> + * Lookup363: pallet_app_promotion::pallet::Call **/ - RmrkTraitsPartPartType: { - _enum: { - FixedPart: 'RmrkTraitsPartFixedPart', - SlotPart: 'RmrkTraitsPartSlotPart' - } - }, - /** - * Lookup310: rmrk_traits::part::FixedPart> - **/ - RmrkTraitsPartFixedPart: { - id: 'u32', - z: 'u32', - src: 'Bytes' - }, - /** - * Lookup311: rmrk_traits::part::SlotPart, sp_core::bounded::bounded_vec::BoundedVec> - **/ - RmrkTraitsPartSlotPart: { - id: 'u32', - equippable: 'RmrkTraitsPartEquippableList', - src: 'Bytes', - z: 'u32' - }, - /** - * Lookup312: rmrk_traits::part::EquippableList> - **/ - RmrkTraitsPartEquippableList: { - _enum: { - All: 'Null', - Empty: 'Null', - Custom: 'Vec' - } - }, - /** - * Lookup314: rmrk_traits::theme::Theme, sp_core::bounded::bounded_vec::BoundedVec>, S>> - **/ - RmrkTraitsTheme: { - name: 'Bytes', - properties: 'Vec', - inherit: 'bool' - }, - /** - * Lookup316: rmrk_traits::theme::ThemeProperty> - **/ - RmrkTraitsThemeThemeProperty: { - key: 'Bytes', - value: 'Bytes' - }, - /** - * Lookup318: pallet_app_promotion::pallet::Call - **/ PalletAppPromotionCall: { _enum: { set_admin_address: { @@ -2723,7 +2805,7 @@ stake: { amount: 'u128', }, - unstake: 'Null', + unstake_all: 'Null', sponsor_collection: { collectionId: 'u32', }, @@ -2737,12 +2819,15 @@ contractId: 'H160', }, payout_stakers: { - stakersNumber: 'Option' + stakersNumber: 'Option', + }, + unstake_partial: { + amount: 'u128' } } }, /** - * Lookup319: pallet_foreign_assets::module::Call + * Lookup364: pallet_foreign_assets::module::Call **/ PalletForeignAssetsModuleCall: { _enum: { @@ -2759,7 +2844,7 @@ } }, /** - * Lookup320: pallet_evm::pallet::Call + * Lookup365: pallet_evm::pallet::Call **/ PalletEvmCall: { _enum: { @@ -2802,7 +2887,7 @@ } }, /** - * Lookup326: pallet_ethereum::pallet::Call + * Lookup371: pallet_ethereum::pallet::Call **/ PalletEthereumCall: { _enum: { @@ -2812,7 +2897,7 @@ } }, /** - * Lookup327: ethereum::transaction::TransactionV2 + * Lookup372: ethereum::transaction::TransactionV2 **/ EthereumTransactionTransactionV2: { _enum: { @@ -2822,7 +2907,7 @@ } }, /** - * Lookup328: ethereum::transaction::LegacyTransaction + * Lookup373: ethereum::transaction::LegacyTransaction **/ EthereumTransactionLegacyTransaction: { nonce: 'U256', @@ -2834,7 +2919,7 @@ signature: 'EthereumTransactionTransactionSignature' }, /** - * Lookup329: ethereum::transaction::TransactionAction + * Lookup374: ethereum::transaction::TransactionAction **/ EthereumTransactionTransactionAction: { _enum: { @@ -2843,7 +2928,7 @@ } }, /** - * Lookup330: ethereum::transaction::TransactionSignature + * Lookup375: ethereum::transaction::TransactionSignature **/ EthereumTransactionTransactionSignature: { v: 'u64', @@ -2851,7 +2936,7 @@ s: 'H256' }, /** - * Lookup332: ethereum::transaction::EIP2930Transaction + * Lookup377: ethereum::transaction::EIP2930Transaction **/ EthereumTransactionEip2930Transaction: { chainId: 'u64', @@ -2867,14 +2952,14 @@ s: 'H256' }, /** - * Lookup334: ethereum::transaction::AccessListItem + * Lookup379: ethereum::transaction::AccessListItem **/ EthereumTransactionAccessListItem: { address: 'H160', storageKeys: 'Vec' }, /** - * Lookup335: ethereum::transaction::EIP1559Transaction + * Lookup380: ethereum::transaction::EIP1559Transaction **/ EthereumTransactionEip1559Transaction: { chainId: 'u64', @@ -2891,7 +2976,7 @@ s: 'H256' }, /** - * Lookup336: pallet_evm_migration::pallet::Call + * Lookup381: pallet_evm_migration::pallet::Call **/ PalletEvmMigrationCall: { _enum: { @@ -2910,18 +2995,29 @@ logs: 'Vec', }, insert_events: { - events: 'Vec' - } + events: 'Vec', + }, + remove_rmrk_data: 'Null' } }, /** - * Lookup340: pallet_maintenance::pallet::Call + * Lookup385: pallet_maintenance::pallet::Call **/ PalletMaintenanceCall: { - _enum: ['enable', 'disable'] + _enum: { + enable: 'Null', + disable: 'Null', + execute_preimage: { + _alias: { + hash_: 'hash', + }, + hash_: 'H256', + weightBound: 'SpWeightsWeightV2Weight' + } + } }, /** - * Lookup341: pallet_test_utils::pallet::Call + * Lookup386: pallet_test_utils::pallet::Call **/ PalletTestUtilsCall: { _enum: { @@ -2940,32 +3036,32 @@ } }, /** - * Lookup343: pallet_sudo::pallet::Error + * Lookup388: pallet_sudo::pallet::Error **/ PalletSudoError: { _enum: ['RequireSudo'] }, /** - * Lookup345: orml_vesting::module::Error + * Lookup390: orml_vesting::module::Error **/ OrmlVestingModuleError: { _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded'] }, /** - * Lookup346: orml_xtokens::module::Error + * Lookup391: orml_xtokens::module::Error **/ OrmlXtokensModuleError: { _enum: ['AssetHasNoReserve', 'NotCrossChainTransfer', 'InvalidDest', 'NotCrossChainTransferableCurrency', 'UnweighableMessage', 'XcmExecutionFailed', 'CannotReanchor', 'InvalidAncestry', 'InvalidAsset', 'DestinationNotInvertible', 'BadVersion', 'DistinctReserveForAssetAndFee', 'ZeroFee', 'ZeroAmount', 'TooManyAssetsBeingSent', 'AssetIndexNonExistent', 'FeeNotEnough', 'NotSupportedMultiLocation', 'MinXcmFeeNotDefined'] }, /** - * Lookup349: orml_tokens::BalanceLock + * Lookup394: orml_tokens::BalanceLock **/ OrmlTokensBalanceLock: { id: '[u8;8]', amount: 'u128' }, /** - * Lookup351: orml_tokens::AccountData + * Lookup396: orml_tokens::AccountData **/ OrmlTokensAccountData: { free: 'u128', @@ -2973,20 +3069,56 @@ frozen: 'u128' }, /** - * Lookup353: orml_tokens::ReserveData + * Lookup398: orml_tokens::ReserveData **/ OrmlTokensReserveData: { id: 'Null', amount: 'u128' }, /** - * Lookup355: orml_tokens::module::Error + * Lookup400: orml_tokens::module::Error **/ OrmlTokensModuleError: { _enum: ['BalanceTooLow', 'AmountIntoBalanceFailed', 'LiquidityRestrictions', 'MaxLocksExceeded', 'KeepAlive', 'ExistentialDeposit', 'DeadAccount', 'TooManyReserves'] }, /** - * Lookup357: cumulus_pallet_xcmp_queue::InboundChannelDetails + * Lookup405: pallet_identity::types::RegistrarInfo + **/ + PalletIdentityRegistrarInfo: { + account: 'AccountId32', + fee: 'u128', + fields: 'PalletIdentityBitFlags' + }, + /** + * Lookup407: pallet_identity::pallet::Error + **/ + PalletIdentityError: { + _enum: ['TooManySubAccounts', 'NotFound', 'NotNamed', 'EmptyIndex', 'FeeChanged', 'NoIdentity', 'StickyJudgement', 'JudgementGiven', 'InvalidJudgement', 'InvalidIndex', 'InvalidTarget', 'TooManyFields', 'TooManyRegistrars', 'AlreadyClaimed', 'NotSub', 'NotOwned', 'JudgementForDifferentIdentity', 'JudgementPaymentFailed'] + }, + /** + * Lookup408: pallet_preimage::RequestStatus + **/ + PalletPreimageRequestStatus: { + _enum: { + Unrequested: { + deposit: '(AccountId32,u128)', + len: 'u32', + }, + Requested: { + deposit: 'Option<(AccountId32,u128)>', + count: 'u32', + len: 'Option' + } + } + }, + /** + * Lookup413: pallet_preimage::pallet::Error + **/ + PalletPreimageError: { + _enum: ['TooBig', 'AlreadyNoted', 'NotAuthorized', 'NotNoted', 'Requested', 'NotRequested'] + }, + /** + * Lookup415: cumulus_pallet_xcmp_queue::InboundChannelDetails **/ CumulusPalletXcmpQueueInboundChannelDetails: { sender: 'u32', @@ -2994,19 +3126,19 @@ messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>' }, /** - * Lookup358: cumulus_pallet_xcmp_queue::InboundState + * Lookup416: cumulus_pallet_xcmp_queue::InboundState **/ CumulusPalletXcmpQueueInboundState: { _enum: ['Ok', 'Suspended'] }, /** - * Lookup361: polkadot_parachain::primitives::XcmpMessageFormat + * Lookup419: polkadot_parachain::primitives::XcmpMessageFormat **/ PolkadotParachainPrimitivesXcmpMessageFormat: { _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals'] }, /** - * Lookup364: cumulus_pallet_xcmp_queue::OutboundChannelDetails + * Lookup422: cumulus_pallet_xcmp_queue::OutboundChannelDetails **/ CumulusPalletXcmpQueueOutboundChannelDetails: { recipient: 'u32', @@ -3016,13 +3148,13 @@ lastIndex: 'u16' }, /** - * Lookup365: cumulus_pallet_xcmp_queue::OutboundState + * Lookup423: cumulus_pallet_xcmp_queue::OutboundState **/ CumulusPalletXcmpQueueOutboundState: { _enum: ['Ok', 'Suspended'] }, /** - * Lookup367: cumulus_pallet_xcmp_queue::QueueConfigData + * Lookup425: cumulus_pallet_xcmp_queue::QueueConfigData **/ CumulusPalletXcmpQueueQueueConfigData: { suspendThreshold: 'u32', @@ -3033,29 +3165,29 @@ xcmpMaxIndividualWeight: 'SpWeightsWeightV2Weight' }, /** - * Lookup369: cumulus_pallet_xcmp_queue::pallet::Error + * Lookup427: cumulus_pallet_xcmp_queue::pallet::Error **/ CumulusPalletXcmpQueueError: { _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit'] }, /** - * Lookup370: pallet_xcm::pallet::Error + * Lookup428: pallet_xcm::pallet::Error **/ PalletXcmError: { _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed'] }, /** - * Lookup371: cumulus_pallet_xcm::pallet::Error + * Lookup429: cumulus_pallet_xcm::pallet::Error **/ CumulusPalletXcmError: 'Null', /** - * Lookup372: cumulus_pallet_dmp_queue::ConfigData + * Lookup430: cumulus_pallet_dmp_queue::ConfigData **/ CumulusPalletDmpQueueConfigData: { maxIndividual: 'SpWeightsWeightV2Weight' }, /** - * Lookup373: cumulus_pallet_dmp_queue::PageIndexData + * Lookup431: cumulus_pallet_dmp_queue::PageIndexData **/ CumulusPalletDmpQueuePageIndexData: { beginUsed: 'u32', @@ -3063,25 +3195,25 @@ overweightCount: 'u64' }, /** - * Lookup376: cumulus_pallet_dmp_queue::pallet::Error + * Lookup434: cumulus_pallet_dmp_queue::pallet::Error **/ CumulusPalletDmpQueueError: { _enum: ['Unknown', 'OverLimit'] }, /** - * Lookup380: pallet_unique::Error + * Lookup438: pallet_unique::Error **/ PalletUniqueError: { _enum: ['CollectionDecimalPointLimitExceeded', 'EmptyArgument', 'RepartitionCalledOnNonRefungibleCollection'] }, /** - * Lookup381: pallet_configuration::pallet::Error + * Lookup439: pallet_configuration::pallet::Error **/ PalletConfigurationError: { _enum: ['InconsistentConfiguration'] }, /** - * Lookup382: up_data_structs::Collection + * Lookup440: up_data_structs::Collection **/ UpDataStructsCollection: { owner: 'AccountId32', @@ -3095,7 +3227,7 @@ flags: '[u8;1]' }, /** - * Lookup383: up_data_structs::SponsorshipState + * Lookup441: up_data_structs::SponsorshipState **/ UpDataStructsSponsorshipStateAccountId32: { _enum: { @@ -3105,7 +3237,7 @@ } }, /** - * Lookup385: up_data_structs::Properties + * Lookup442: up_data_structs::Properties **/ UpDataStructsProperties: { map: 'UpDataStructsPropertiesMapBoundedVec', @@ -3113,15 +3245,15 @@ spaceLimit: 'u32' }, /** - * Lookup386: up_data_structs::PropertiesMap> + * Lookup443: up_data_structs::PropertiesMap> **/ UpDataStructsPropertiesMapBoundedVec: 'BTreeMap', /** - * Lookup391: up_data_structs::PropertiesMap + * Lookup448: up_data_structs::PropertiesMap **/ UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap', /** - * Lookup398: up_data_structs::CollectionStats + * Lookup455: up_data_structs::CollectionStats **/ UpDataStructsCollectionStats: { created: 'u32', @@ -3129,18 +3261,18 @@ alive: 'u32' }, /** - * Lookup399: up_data_structs::TokenChild + * Lookup456: up_data_structs::TokenChild **/ UpDataStructsTokenChild: { token: 'u32', collection: 'u32' }, /** - * Lookup400: PhantomType::up_data_structs + * Lookup457: PhantomType::up_data_structs **/ - PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,RmrkTraitsCollectionCollectionInfo,RmrkTraitsNftNftInfo,RmrkTraitsResourceResourceInfo,RmrkTraitsPropertyPropertyInfo,RmrkTraitsBaseBaseInfo,RmrkTraitsPartPartType,RmrkTraitsTheme,RmrkTraitsNftNftChild,UpPovEstimateRpcPovInfo);0]', + PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,UpPovEstimateRpcPovInfo);0]', /** - * Lookup402: up_data_structs::TokenData> + * Lookup459: up_data_structs::TokenData> **/ UpDataStructsTokenData: { properties: 'Vec', @@ -3148,7 +3280,7 @@ pieces: 'u128' }, /** - * Lookup404: up_data_structs::RpcCollection + * Lookup461: up_data_structs::RpcCollection **/ UpDataStructsRpcCollection: { owner: 'AccountId32', @@ -3165,73 +3297,15 @@ flags: 'UpDataStructsRpcCollectionFlags' }, /** - * Lookup405: up_data_structs::RpcCollectionFlags + * Lookup462: up_data_structs::RpcCollectionFlags **/ UpDataStructsRpcCollectionFlags: { foreign: 'bool', erc721metadata: 'bool' }, /** - * Lookup406: rmrk_traits::collection::CollectionInfo, sp_core::bounded::bounded_vec::BoundedVec, sp_core::crypto::AccountId32> - **/ - RmrkTraitsCollectionCollectionInfo: { - issuer: 'AccountId32', - metadata: 'Bytes', - max: 'Option', - symbol: 'Bytes', - nftsCount: 'u32' - }, - /** - * Lookup407: rmrk_traits::nft::NftInfo> - **/ - RmrkTraitsNftNftInfo: { - owner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple', - royalty: 'Option', - metadata: 'Bytes', - equipped: 'bool', - pending: 'bool' - }, - /** - * Lookup409: rmrk_traits::nft::RoyaltyInfo + * Lookup463: up_pov_estimate_rpc::PovInfo **/ - RmrkTraitsNftRoyaltyInfo: { - recipient: 'AccountId32', - amount: 'Permill' - }, - /** - * Lookup410: rmrk_traits::resource::ResourceInfo, sp_core::bounded::bounded_vec::BoundedVec> - **/ - RmrkTraitsResourceResourceInfo: { - id: 'u32', - resource: 'RmrkTraitsResourceResourceTypes', - pending: 'bool', - pendingRemoval: 'bool' - }, - /** - * Lookup411: rmrk_traits::property::PropertyInfo, sp_core::bounded::bounded_vec::BoundedVec> - **/ - RmrkTraitsPropertyPropertyInfo: { - key: 'Bytes', - value: 'Bytes' - }, - /** - * Lookup412: rmrk_traits::base::BaseInfo> - **/ - RmrkTraitsBaseBaseInfo: { - issuer: 'AccountId32', - baseType: 'Bytes', - symbol: 'Bytes' - }, - /** - * Lookup413: rmrk_traits::nft::NftChild - **/ - RmrkTraitsNftNftChild: { - collectionId: 'u32', - nftId: 'u32' - }, - /** - * Lookup414: up_pov_estimate_rpc::PovInfo - **/ UpPovEstimateRpcPovInfo: { proofSize: 'u64', compactProofSize: 'u64', @@ -3240,7 +3314,7 @@ keyValues: 'Vec' }, /** - * Lookup417: sp_runtime::transaction_validity::TransactionValidityError + * Lookup466: sp_runtime::transaction_validity::TransactionValidityError **/ SpRuntimeTransactionValidityTransactionValidityError: { _enum: { @@ -3249,7 +3323,7 @@ } }, /** - * Lookup418: sp_runtime::transaction_validity::InvalidTransaction + * Lookup467: sp_runtime::transaction_validity::InvalidTransaction **/ SpRuntimeTransactionValidityInvalidTransaction: { _enum: { @@ -3267,7 +3341,7 @@ } }, /** - * Lookup419: sp_runtime::transaction_validity::UnknownTransaction + * Lookup468: sp_runtime::transaction_validity::UnknownTransaction **/ SpRuntimeTransactionValidityUnknownTransaction: { _enum: { @@ -3277,86 +3351,74 @@ } }, /** - * Lookup421: up_pov_estimate_rpc::TrieKeyValue + * Lookup470: up_pov_estimate_rpc::TrieKeyValue **/ UpPovEstimateRpcTrieKeyValue: { key: 'Bytes', value: 'Bytes' }, /** - * Lookup423: pallet_common::pallet::Error + * Lookup472: pallet_common::pallet::Error **/ PalletCommonError: { _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'CantDestroyNotEmptyCollection', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsNotEthMirror', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds', 'UserIsNotAllowedToNest', 'SourceCollectionIsNotAllowedToNest', 'CollectionFieldSizeExceeded', 'NoSpaceForProperty', 'PropertyLimitReached', 'PropertyKeyIsTooLong', 'InvalidCharacterInPropertyKey', 'EmptyPropertyKey', 'CollectionIsExternal', 'CollectionIsInternal', 'ConfirmSponsorshipFail', 'UserIsNotCollectionAdmin'] }, /** - * Lookup425: pallet_fungible::pallet::Error + * Lookup474: pallet_fungible::pallet::Error **/ PalletFungibleError: { _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed', 'SettingAllowanceForAllNotAllowed', 'FungibleTokensAreAlwaysValid'] }, /** - * Lookup429: pallet_refungible::pallet::Error + * Lookup478: pallet_refungible::pallet::Error **/ PalletRefungibleError: { _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RepartitionWhileNotOwningAllPieces', 'RefungibleDisallowsNesting', 'SettingPropertiesNotAllowed'] }, /** - * Lookup430: pallet_nonfungible::ItemData> + * Lookup479: pallet_nonfungible::ItemData> **/ PalletNonfungibleItemData: { owner: 'PalletEvmAccountBasicCrossAccountIdRepr' }, /** - * Lookup432: up_data_structs::PropertyScope + * Lookup481: up_data_structs::PropertyScope **/ UpDataStructsPropertyScope: { _enum: ['None', 'Rmrk'] }, /** - * Lookup435: pallet_nonfungible::pallet::Error + * Lookup484: pallet_nonfungible::pallet::Error **/ PalletNonfungibleError: { _enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount', 'CantBurnNftWithChildren'] }, /** - * Lookup436: pallet_structure::pallet::Error + * Lookup485: pallet_structure::pallet::Error **/ PalletStructureError: { - _enum: ['OuroborosDetected', 'DepthLimit', 'BreadthLimit', 'TokenNotFound'] + _enum: ['OuroborosDetected', 'DepthLimit', 'BreadthLimit', 'TokenNotFound', 'CantNestTokenUnderCollection'] }, /** - * Lookup437: pallet_rmrk_core::pallet::Error - **/ - PalletRmrkCoreError: { - _enum: ['CorruptedCollectionType', 'RmrkPropertyKeyIsTooLong', 'RmrkPropertyValueIsTooLong', 'RmrkPropertyIsNotFound', 'UnableToDecodeRmrkData', 'CollectionNotEmpty', 'NoAvailableCollectionId', 'NoAvailableNftId', 'CollectionUnknown', 'NoPermission', 'NonTransferable', 'CollectionFullOrLocked', 'ResourceDoesntExist', 'CannotSendToDescendentOrSelf', 'CannotAcceptNonOwnedNft', 'CannotRejectNonOwnedNft', 'CannotRejectNonPendingNft', 'ResourceNotPending', 'NoAvailableResourceId'] - }, - /** - * Lookup439: pallet_rmrk_equip::pallet::Error - **/ - PalletRmrkEquipError: { - _enum: ['PermissionError', 'NoAvailableBaseId', 'NoAvailablePartId', 'BaseDoesntExist', 'NeedsDefaultThemeFirst', 'PartDoesntExist', 'NoEquippableOnFixedPart'] - }, - /** - * Lookup445: pallet_app_promotion::pallet::Error + * Lookup490: pallet_app_promotion::pallet::Error **/ PalletAppPromotionError: { - _enum: ['AdminNotSet', 'NoPermission', 'NotSufficientFunds', 'PendingForBlockOverflow', 'SponsorNotSet', 'IncorrectLockedBalanceOperation'] + _enum: ['AdminNotSet', 'NoPermission', 'NotSufficientFunds', 'PendingForBlockOverflow', 'SponsorNotSet', 'IncorrectLockedBalanceOperation', 'InsufficientStakedBalance'] }, /** - * Lookup446: pallet_foreign_assets::module::Error + * Lookup491: pallet_foreign_assets::module::Error **/ PalletForeignAssetsModuleError: { _enum: ['BadLocation', 'MultiLocationExisted', 'AssetIdNotExists', 'AssetIdExisted'] }, /** - * Lookup448: pallet_evm::pallet::Error + * Lookup493: pallet_evm::pallet::Error **/ PalletEvmError: { _enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce', 'GasLimitTooLow', 'GasLimitTooHigh', 'Undefined', 'Reentrancy', 'TransactionMustComeFromEOA'] }, /** - * Lookup451: fp_rpc::TransactionStatus + * Lookup496: fp_rpc::TransactionStatus **/ FpRpcTransactionStatus: { transactionHash: 'H256', @@ -3368,11 +3430,11 @@ logsBloom: 'EthbloomBloom' }, /** - * Lookup453: ethbloom::Bloom + * Lookup498: ethbloom::Bloom **/ EthbloomBloom: '[u8;256]', /** - * Lookup455: ethereum::receipt::ReceiptV3 + * Lookup500: ethereum::receipt::ReceiptV3 **/ EthereumReceiptReceiptV3: { _enum: { @@ -3382,7 +3444,7 @@ } }, /** - * Lookup456: ethereum::receipt::EIP658ReceiptData + * Lookup501: ethereum::receipt::EIP658ReceiptData **/ EthereumReceiptEip658ReceiptData: { statusCode: 'u8', @@ -3391,7 +3453,7 @@ logs: 'Vec' }, /** - * Lookup457: ethereum::block::Block + * Lookup502: ethereum::block::Block **/ EthereumBlock: { header: 'EthereumHeader', @@ -3399,7 +3461,7 @@ ommers: 'Vec' }, /** - * Lookup458: ethereum::header::Header + * Lookup503: ethereum::header::Header **/ EthereumHeader: { parentHash: 'H256', @@ -3419,23 +3481,23 @@ nonce: 'EthereumTypesHashH64' }, /** - * Lookup459: ethereum_types::hash::H64 + * Lookup504: ethereum_types::hash::H64 **/ EthereumTypesHashH64: '[u8;8]', /** - * Lookup464: pallet_ethereum::pallet::Error + * Lookup509: pallet_ethereum::pallet::Error **/ PalletEthereumError: { _enum: ['InvalidSignature', 'PreLogExists'] }, /** - * Lookup465: pallet_evm_coder_substrate::pallet::Error + * Lookup510: pallet_evm_coder_substrate::pallet::Error **/ PalletEvmCoderSubstrateError: { _enum: ['OutOfGas', 'OutOfFund'] }, /** - * Lookup466: up_data_structs::SponsorshipState> + * Lookup511: up_data_structs::SponsorshipState> **/ UpDataStructsSponsorshipStateBasicCrossAccountIdRepr: { _enum: { @@ -3445,35 +3507,35 @@ } }, /** - * Lookup467: pallet_evm_contract_helpers::SponsoringModeT + * Lookup512: pallet_evm_contract_helpers::SponsoringModeT **/ PalletEvmContractHelpersSponsoringModeT: { _enum: ['Disabled', 'Allowlisted', 'Generous'] }, /** - * Lookup473: pallet_evm_contract_helpers::pallet::Error + * Lookup518: pallet_evm_contract_helpers::pallet::Error **/ PalletEvmContractHelpersError: { _enum: ['NoPermission', 'NoPendingSponsor', 'TooManyMethodsHaveSponsoredLimit'] }, /** - * Lookup474: pallet_evm_migration::pallet::Error + * Lookup519: pallet_evm_migration::pallet::Error **/ PalletEvmMigrationError: { _enum: ['AccountNotEmpty', 'AccountIsNotMigrating', 'BadEvent'] }, /** - * Lookup475: pallet_maintenance::pallet::Error + * Lookup520: pallet_maintenance::pallet::Error **/ PalletMaintenanceError: 'Null', /** - * Lookup476: pallet_test_utils::pallet::Error + * Lookup521: pallet_test_utils::pallet::Error **/ PalletTestUtilsError: { _enum: ['TestPalletDisabled', 'TriggerRollback'] }, /** - * Lookup478: sp_runtime::MultiSignature + * Lookup523: sp_runtime::MultiSignature **/ SpRuntimeMultiSignature: { _enum: { @@ -3483,55 +3545,55 @@ } }, /** - * Lookup479: sp_core::ed25519::Signature + * Lookup524: sp_core::ed25519::Signature **/ SpCoreEd25519Signature: '[u8;64]', /** - * Lookup481: sp_core::sr25519::Signature + * Lookup526: sp_core::sr25519::Signature **/ SpCoreSr25519Signature: '[u8;64]', /** - * Lookup482: sp_core::ecdsa::Signature + * Lookup527: sp_core::ecdsa::Signature **/ SpCoreEcdsaSignature: '[u8;65]', /** - * Lookup485: frame_system::extensions::check_spec_version::CheckSpecVersion + * Lookup530: frame_system::extensions::check_spec_version::CheckSpecVersion **/ FrameSystemExtensionsCheckSpecVersion: 'Null', /** - * Lookup486: frame_system::extensions::check_tx_version::CheckTxVersion + * Lookup531: frame_system::extensions::check_tx_version::CheckTxVersion **/ FrameSystemExtensionsCheckTxVersion: 'Null', /** - * Lookup487: frame_system::extensions::check_genesis::CheckGenesis + * Lookup532: frame_system::extensions::check_genesis::CheckGenesis **/ FrameSystemExtensionsCheckGenesis: 'Null', /** - * Lookup490: frame_system::extensions::check_nonce::CheckNonce + * Lookup535: frame_system::extensions::check_nonce::CheckNonce **/ FrameSystemExtensionsCheckNonce: 'Compact', /** - * Lookup491: frame_system::extensions::check_weight::CheckWeight + * Lookup536: frame_system::extensions::check_weight::CheckWeight **/ FrameSystemExtensionsCheckWeight: 'Null', /** - * Lookup492: opal_runtime::runtime_common::maintenance::CheckMaintenance + * Lookup537: opal_runtime::runtime_common::maintenance::CheckMaintenance **/ OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: 'Null', /** - * Lookup493: opal_runtime::runtime_common::identity::DisableIdentityCalls + * Lookup538: opal_runtime::runtime_common::identity::DisableIdentityCalls **/ OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls: 'Null', /** - * Lookup494: pallet_template_transaction_payment::ChargeTransactionPayment + * Lookup539: pallet_template_transaction_payment::ChargeTransactionPayment **/ PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact', /** - * Lookup495: opal_runtime::Runtime + * Lookup540: opal_runtime::Runtime **/ OpalRuntimeRuntime: 'Null', /** - * Lookup496: pallet_ethereum::FakeTransactionFinalizer + * Lookup541: pallet_ethereum::FakeTransactionFinalizer **/ PalletEthereumFakeTransactionFinalizer: 'Null' }; --- a/tests/src/interfaces/registry.ts +++ b/tests/src/interfaces/registry.ts @@ -5,7 +5,7 @@ // this is required to allow for ambient/previous definitions import '@polkadot/types/types/registry'; -import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchDispatchClass, FrameSupportDispatchDispatchInfo, FrameSupportDispatchPays, FrameSupportDispatchPerDispatchClassU32, FrameSupportDispatchPerDispatchClassWeight, FrameSupportDispatchPerDispatchClassWeightsPerClass, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletConfigurationEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletXcmCall, PalletXcmError, PalletXcmEvent, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionValidityInvalidTransaction, SpRuntimeTransactionValidityTransactionValidityError, SpRuntimeTransactionValidityUnknownTransaction, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsRpcCollectionFlags, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, UpPovEstimateRpcPovInfo, UpPovEstimateRpcTrieKeyValue, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup'; +import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportDispatchDispatchClass, FrameSupportDispatchDispatchInfo, FrameSupportDispatchPays, FrameSupportDispatchPerDispatchClassU32, FrameSupportDispatchPerDispatchClassWeight, FrameSupportDispatchPerDispatchClassWeightsPerClass, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OpalRuntimeRuntimeCommonSessionKeys, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletAuthorshipCall, PalletAuthorshipError, PalletAuthorshipUncleEntryItem, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReserveData, PalletCollatorSelectionCall, PalletCollatorSelectionError, PalletCollatorSelectionEvent, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, PalletConfigurationEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEthereumFakeTransactionFinalizer, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersEvent, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletEvmMigrationEvent, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletForeignAssetsModuleCall, PalletForeignAssetsModuleError, PalletForeignAssetsModuleEvent, PalletForeignAssetsNativeCurrency, PalletFungibleError, PalletIdentityBitFlags, PalletIdentityCall, PalletIdentityError, PalletIdentityEvent, PalletIdentityIdentityField, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletInflationCall, PalletMaintenanceCall, PalletMaintenanceError, PalletMaintenanceEvent, PalletNonfungibleError, PalletNonfungibleItemData, PalletPreimageCall, PalletPreimageError, PalletPreimageEvent, PalletPreimageRequestStatus, PalletRefungibleError, PalletSessionCall, PalletSessionError, PalletSessionEvent, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTestUtilsCall, PalletTestUtilsError, PalletTestUtilsEvent, PalletTimestampCall, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletXcmCall, PalletXcmError, PalletXcmEvent, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, SpArithmeticArithmeticError, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Public, SpCoreSr25519Signature, SpRuntimeBlakeTwo256, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeHeader, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionValidityInvalidTransaction, SpRuntimeTransactionValidityTransactionValidityError, SpRuntimeTransactionValidityUnknownTransaction, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExMultipleOwners, UpDataStructsCreateRefungibleExSingleOwner, UpDataStructsNestingPermissions, UpDataStructsOwnerRestrictedSet, UpDataStructsProperties, UpDataStructsPropertiesMapBoundedVec, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsRpcCollection, UpDataStructsRpcCollectionFlags, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipStateAccountId32, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild, UpDataStructsTokenData, UpPovEstimateRpcPovInfo, UpPovEstimateRpcTrieKeyValue, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAsset, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup'; declare module '@polkadot/types/types/registry' { interface InterfaceTypes { @@ -76,6 +76,7 @@ OpalRuntimeRuntime: OpalRuntimeRuntime; OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls: OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls; OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance; + OpalRuntimeRuntimeCommonSessionKeys: OpalRuntimeRuntimeCommonSessionKeys; OrmlTokensAccountData: OrmlTokensAccountData; OrmlTokensBalanceLock: OrmlTokensBalanceLock; OrmlTokensModuleCall: OrmlTokensModuleCall; @@ -92,6 +93,9 @@ PalletAppPromotionCall: PalletAppPromotionCall; PalletAppPromotionError: PalletAppPromotionError; PalletAppPromotionEvent: PalletAppPromotionEvent; + PalletAuthorshipCall: PalletAuthorshipCall; + PalletAuthorshipError: PalletAuthorshipError; + PalletAuthorshipUncleEntryItem: PalletAuthorshipUncleEntryItem; PalletBalancesAccountData: PalletBalancesAccountData; PalletBalancesBalanceLock: PalletBalancesBalanceLock; PalletBalancesCall: PalletBalancesCall; @@ -99,6 +103,9 @@ PalletBalancesEvent: PalletBalancesEvent; PalletBalancesReasons: PalletBalancesReasons; PalletBalancesReserveData: PalletBalancesReserveData; + PalletCollatorSelectionCall: PalletCollatorSelectionCall; + PalletCollatorSelectionError: PalletCollatorSelectionError; + PalletCollatorSelectionEvent: PalletCollatorSelectionEvent; PalletCommonError: PalletCommonError; PalletCommonEvent: PalletCommonEvent; PalletConfigurationAppPromotionConfiguration: PalletConfigurationAppPromotionConfiguration; @@ -127,19 +134,29 @@ PalletForeignAssetsModuleEvent: PalletForeignAssetsModuleEvent; PalletForeignAssetsNativeCurrency: PalletForeignAssetsNativeCurrency; PalletFungibleError: PalletFungibleError; + PalletIdentityBitFlags: PalletIdentityBitFlags; + PalletIdentityCall: PalletIdentityCall; + PalletIdentityError: PalletIdentityError; + PalletIdentityEvent: PalletIdentityEvent; + PalletIdentityIdentityField: PalletIdentityIdentityField; + PalletIdentityIdentityInfo: PalletIdentityIdentityInfo; + PalletIdentityJudgement: PalletIdentityJudgement; + PalletIdentityRegistrarInfo: PalletIdentityRegistrarInfo; + PalletIdentityRegistration: PalletIdentityRegistration; PalletInflationCall: PalletInflationCall; PalletMaintenanceCall: PalletMaintenanceCall; PalletMaintenanceError: PalletMaintenanceError; PalletMaintenanceEvent: PalletMaintenanceEvent; PalletNonfungibleError: PalletNonfungibleError; PalletNonfungibleItemData: PalletNonfungibleItemData; + PalletPreimageCall: PalletPreimageCall; + PalletPreimageError: PalletPreimageError; + PalletPreimageEvent: PalletPreimageEvent; + PalletPreimageRequestStatus: PalletPreimageRequestStatus; PalletRefungibleError: PalletRefungibleError; - PalletRmrkCoreCall: PalletRmrkCoreCall; - PalletRmrkCoreError: PalletRmrkCoreError; - PalletRmrkCoreEvent: PalletRmrkCoreEvent; - PalletRmrkEquipCall: PalletRmrkEquipCall; - PalletRmrkEquipError: PalletRmrkEquipError; - PalletRmrkEquipEvent: PalletRmrkEquipEvent; + PalletSessionCall: PalletSessionCall; + PalletSessionError: PalletSessionError; + PalletSessionEvent: PalletSessionEvent; PalletStructureCall: PalletStructureCall; PalletStructureError: PalletStructureError; PalletStructureEvent: PalletStructureEvent; @@ -172,31 +189,18 @@ PolkadotPrimitivesV2AbridgedHrmpChannel: PolkadotPrimitivesV2AbridgedHrmpChannel; PolkadotPrimitivesV2PersistedValidationData: PolkadotPrimitivesV2PersistedValidationData; PolkadotPrimitivesV2UpgradeRestriction: PolkadotPrimitivesV2UpgradeRestriction; - RmrkTraitsBaseBaseInfo: RmrkTraitsBaseBaseInfo; - RmrkTraitsCollectionCollectionInfo: RmrkTraitsCollectionCollectionInfo; - RmrkTraitsNftAccountIdOrCollectionNftTuple: RmrkTraitsNftAccountIdOrCollectionNftTuple; - RmrkTraitsNftNftChild: RmrkTraitsNftNftChild; - RmrkTraitsNftNftInfo: RmrkTraitsNftNftInfo; - RmrkTraitsNftRoyaltyInfo: RmrkTraitsNftRoyaltyInfo; - RmrkTraitsPartEquippableList: RmrkTraitsPartEquippableList; - RmrkTraitsPartFixedPart: RmrkTraitsPartFixedPart; - RmrkTraitsPartPartType: RmrkTraitsPartPartType; - RmrkTraitsPartSlotPart: RmrkTraitsPartSlotPart; - RmrkTraitsPropertyPropertyInfo: RmrkTraitsPropertyPropertyInfo; - RmrkTraitsResourceBasicResource: RmrkTraitsResourceBasicResource; - RmrkTraitsResourceComposableResource: RmrkTraitsResourceComposableResource; - RmrkTraitsResourceResourceInfo: RmrkTraitsResourceResourceInfo; - RmrkTraitsResourceResourceTypes: RmrkTraitsResourceResourceTypes; - RmrkTraitsResourceSlotResource: RmrkTraitsResourceSlotResource; - RmrkTraitsTheme: RmrkTraitsTheme; - RmrkTraitsThemeThemeProperty: RmrkTraitsThemeThemeProperty; + SpArithmeticArithmeticError: SpArithmeticArithmeticError; + SpConsensusAuraSr25519AppSr25519Public: SpConsensusAuraSr25519AppSr25519Public; + SpCoreCryptoKeyTypeId: SpCoreCryptoKeyTypeId; SpCoreEcdsaSignature: SpCoreEcdsaSignature; SpCoreEd25519Signature: SpCoreEd25519Signature; + SpCoreSr25519Public: SpCoreSr25519Public; SpCoreSr25519Signature: SpCoreSr25519Signature; - SpRuntimeArithmeticError: SpRuntimeArithmeticError; + SpRuntimeBlakeTwo256: SpRuntimeBlakeTwo256; SpRuntimeDigest: SpRuntimeDigest; SpRuntimeDigestDigestItem: SpRuntimeDigestDigestItem; SpRuntimeDispatchError: SpRuntimeDispatchError; + SpRuntimeHeader: SpRuntimeHeader; SpRuntimeModuleError: SpRuntimeModuleError; SpRuntimeMultiSignature: SpRuntimeMultiSignature; SpRuntimeTokenError: SpRuntimeTokenError; --- a/tests/src/interfaces/types-lookup.ts +++ b/tests/src/interfaces/types-lookup.ts @@ -5,9 +5,10 @@ // this is required to allow for ambient/previous definitions import '@polkadot/types/lookup'; -import type { BTreeMap, BTreeSet, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec'; +import type { Data } from '@polkadot/types'; +import type { BTreeMap, BTreeSet, Bytes, Compact, Enum, Null, Option, Result, Set, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec'; import type { ITuple } from '@polkadot/types-codec/types'; -import type { AccountId32, Call, H160, H256, MultiAddress, Perbill, Permill } from '@polkadot/types/interfaces/runtime'; +import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime'; import type { Event } from '@polkadot/types/interfaces/system'; declare module '@polkadot/types/lookup' { @@ -130,7 +131,7 @@ readonly isToken: boolean; readonly asToken: SpRuntimeTokenError; readonly isArithmetic: boolean; - readonly asArithmetic: SpRuntimeArithmeticError; + readonly asArithmetic: SpArithmeticArithmeticError; readonly isTransactional: boolean; readonly asTransactional: SpRuntimeTransactionalError; readonly isExhausted: boolean; @@ -157,8 +158,8 @@ readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported'; } - /** @name SpRuntimeArithmeticError (27) */ - interface SpRuntimeArithmeticError extends Enum { + /** @name SpArithmeticArithmeticError (27) */ + interface SpArithmeticArithmeticError extends Enum { readonly isUnderflow: boolean; readonly isOverflow: boolean; readonly isDivisionByZero: boolean; @@ -196,7 +197,47 @@ readonly type: 'ValidationFunctionStored' | 'ValidationFunctionApplied' | 'ValidationFunctionDiscarded' | 'UpgradeAuthorized' | 'DownwardMessagesReceived' | 'DownwardMessagesProcessed'; } - /** @name PalletBalancesEvent (30) */ + /** @name PalletCollatorSelectionEvent (30) */ + interface PalletCollatorSelectionEvent extends Enum { + readonly isInvulnerableAdded: boolean; + readonly asInvulnerableAdded: { + readonly invulnerable: AccountId32; + } & Struct; + readonly isInvulnerableRemoved: boolean; + readonly asInvulnerableRemoved: { + readonly invulnerable: AccountId32; + } & Struct; + readonly isLicenseObtained: boolean; + readonly asLicenseObtained: { + readonly accountId: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isLicenseReleased: boolean; + readonly asLicenseReleased: { + readonly accountId: AccountId32; + readonly depositReturned: u128; + } & Struct; + readonly isCandidateAdded: boolean; + readonly asCandidateAdded: { + readonly accountId: AccountId32; + } & Struct; + readonly isCandidateRemoved: boolean; + readonly asCandidateRemoved: { + readonly accountId: AccountId32; + } & Struct; + readonly type: 'InvulnerableAdded' | 'InvulnerableRemoved' | 'LicenseObtained' | 'LicenseReleased' | 'CandidateAdded' | 'CandidateRemoved'; + } + + /** @name PalletSessionEvent (31) */ + interface PalletSessionEvent extends Enum { + readonly isNewSession: boolean; + readonly asNewSession: { + readonly sessionIndex: u32; + } & Struct; + readonly type: 'NewSession'; + } + + /** @name PalletBalancesEvent (32) */ interface PalletBalancesEvent extends Enum { readonly isEndowed: boolean; readonly asEndowed: { @@ -255,14 +296,14 @@ readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'BalanceSet' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'Deposit' | 'Withdraw' | 'Slashed'; } - /** @name FrameSupportTokensMiscBalanceStatus (31) */ + /** @name FrameSupportTokensMiscBalanceStatus (33) */ interface FrameSupportTokensMiscBalanceStatus extends Enum { readonly isFree: boolean; readonly isReserved: boolean; readonly type: 'Free' | 'Reserved'; } - /** @name PalletTransactionPaymentEvent (32) */ + /** @name PalletTransactionPaymentEvent (34) */ interface PalletTransactionPaymentEvent extends Enum { readonly isTransactionFeePaid: boolean; readonly asTransactionFeePaid: { @@ -273,7 +314,7 @@ readonly type: 'TransactionFeePaid'; } - /** @name PalletTreasuryEvent (33) */ + /** @name PalletTreasuryEvent (35) */ interface PalletTreasuryEvent extends Enum { readonly isProposed: boolean; readonly asProposed: { @@ -312,10 +353,15 @@ readonly amount: u128; readonly beneficiary: AccountId32; } & Struct; - readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit' | 'SpendApproved'; + readonly isUpdatedInactive: boolean; + readonly asUpdatedInactive: { + readonly reactivated: u128; + readonly deactivated: u128; + } & Struct; + readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit' | 'SpendApproved' | 'UpdatedInactive'; } - /** @name PalletSudoEvent (34) */ + /** @name PalletSudoEvent (36) */ interface PalletSudoEvent extends Enum { readonly isSudid: boolean; readonly asSudid: { @@ -332,7 +378,7 @@ readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone'; } - /** @name OrmlVestingModuleEvent (38) */ + /** @name OrmlVestingModuleEvent (40) */ interface OrmlVestingModuleEvent extends Enum { readonly isVestingScheduleAdded: boolean; readonly asVestingScheduleAdded: { @@ -352,7 +398,7 @@ readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated'; } - /** @name OrmlVestingVestingSchedule (39) */ + /** @name OrmlVestingVestingSchedule (41) */ interface OrmlVestingVestingSchedule extends Struct { readonly start: u32; readonly period: u32; @@ -360,7 +406,7 @@ readonly perPeriod: Compact; } - /** @name OrmlXtokensModuleEvent (41) */ + /** @name OrmlXtokensModuleEvent (43) */ interface OrmlXtokensModuleEvent extends Enum { readonly isTransferredMultiAssets: boolean; readonly asTransferredMultiAssets: { @@ -372,16 +418,16 @@ readonly type: 'TransferredMultiAssets'; } - /** @name XcmV1MultiassetMultiAssets (42) */ + /** @name XcmV1MultiassetMultiAssets (44) */ interface XcmV1MultiassetMultiAssets extends Vec {} - /** @name XcmV1MultiAsset (44) */ + /** @name XcmV1MultiAsset (46) */ interface XcmV1MultiAsset extends Struct { readonly id: XcmV1MultiassetAssetId; readonly fun: XcmV1MultiassetFungibility; } - /** @name XcmV1MultiassetAssetId (45) */ + /** @name XcmV1MultiassetAssetId (47) */ interface XcmV1MultiassetAssetId extends Enum { readonly isConcrete: boolean; readonly asConcrete: XcmV1MultiLocation; @@ -390,13 +436,13 @@ readonly type: 'Concrete' | 'Abstract'; } - /** @name XcmV1MultiLocation (46) */ + /** @name XcmV1MultiLocation (48) */ interface XcmV1MultiLocation extends Struct { readonly parents: u8; readonly interior: XcmV1MultilocationJunctions; } - /** @name XcmV1MultilocationJunctions (47) */ + /** @name XcmV1MultilocationJunctions (49) */ interface XcmV1MultilocationJunctions extends Enum { readonly isHere: boolean; readonly isX1: boolean; @@ -418,7 +464,7 @@ readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8'; } - /** @name XcmV1Junction (48) */ + /** @name XcmV1Junction (50) */ interface XcmV1Junction extends Enum { readonly isParachain: boolean; readonly asParachain: Compact; @@ -452,7 +498,7 @@ readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality'; } - /** @name XcmV0JunctionNetworkId (50) */ + /** @name XcmV0JunctionNetworkId (52) */ interface XcmV0JunctionNetworkId extends Enum { readonly isAny: boolean; readonly isNamed: boolean; @@ -462,7 +508,7 @@ readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama'; } - /** @name XcmV0JunctionBodyId (53) */ + /** @name XcmV0JunctionBodyId (55) */ interface XcmV0JunctionBodyId extends Enum { readonly isUnit: boolean; readonly isNamed: boolean; @@ -473,10 +519,13 @@ readonly isTechnical: boolean; readonly isLegislative: boolean; readonly isJudicial: boolean; - readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial'; + readonly isDefense: boolean; + readonly isAdministration: boolean; + readonly isTreasury: boolean; + readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial' | 'Defense' | 'Administration' | 'Treasury'; } - /** @name XcmV0JunctionBodyPart (54) */ + /** @name XcmV0JunctionBodyPart (56) */ interface XcmV0JunctionBodyPart extends Enum { readonly isVoice: boolean; readonly isMembers: boolean; @@ -501,7 +550,7 @@ readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion'; } - /** @name XcmV1MultiassetFungibility (55) */ + /** @name XcmV1MultiassetFungibility (57) */ interface XcmV1MultiassetFungibility extends Enum { readonly isFungible: boolean; readonly asFungible: Compact; @@ -510,7 +559,7 @@ readonly type: 'Fungible' | 'NonFungible'; } - /** @name XcmV1MultiassetAssetInstance (56) */ + /** @name XcmV1MultiassetAssetInstance (58) */ interface XcmV1MultiassetAssetInstance extends Enum { readonly isUndefined: boolean; readonly isIndex: boolean; @@ -528,7 +577,7 @@ readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob'; } - /** @name OrmlTokensModuleEvent (59) */ + /** @name OrmlTokensModuleEvent (61) */ interface OrmlTokensModuleEvent extends Enum { readonly isEndowed: boolean; readonly asEndowed: { @@ -616,7 +665,7 @@ readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'BalanceSet' | 'TotalIssuanceSet' | 'Withdrawn' | 'Slashed' | 'Deposited' | 'LockSet' | 'LockRemoved'; } - /** @name PalletForeignAssetsAssetIds (60) */ + /** @name PalletForeignAssetsAssetIds (62) */ interface PalletForeignAssetsAssetIds extends Enum { readonly isForeignAssetId: boolean; readonly asForeignAssetId: u32; @@ -625,14 +674,99 @@ readonly type: 'ForeignAssetId' | 'NativeAssetId'; } - /** @name PalletForeignAssetsNativeCurrency (61) */ + /** @name PalletForeignAssetsNativeCurrency (63) */ interface PalletForeignAssetsNativeCurrency extends Enum { readonly isHere: boolean; readonly isParent: boolean; readonly type: 'Here' | 'Parent'; } - /** @name CumulusPalletXcmpQueueEvent (62) */ + /** @name PalletIdentityEvent (64) */ + interface PalletIdentityEvent extends Enum { + readonly isIdentitySet: boolean; + readonly asIdentitySet: { + readonly who: AccountId32; + } & Struct; + readonly isIdentityCleared: boolean; + readonly asIdentityCleared: { + readonly who: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isIdentityKilled: boolean; + readonly asIdentityKilled: { + readonly who: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isIdentitiesInserted: boolean; + readonly asIdentitiesInserted: { + readonly amount: u32; + } & Struct; + readonly isIdentitiesRemoved: boolean; + readonly asIdentitiesRemoved: { + readonly amount: u32; + } & Struct; + readonly isJudgementRequested: boolean; + readonly asJudgementRequested: { + readonly who: AccountId32; + readonly registrarIndex: u32; + } & Struct; + readonly isJudgementUnrequested: boolean; + readonly asJudgementUnrequested: { + readonly who: AccountId32; + readonly registrarIndex: u32; + } & Struct; + readonly isJudgementGiven: boolean; + readonly asJudgementGiven: { + readonly target: AccountId32; + readonly registrarIndex: u32; + } & Struct; + readonly isRegistrarAdded: boolean; + readonly asRegistrarAdded: { + readonly registrarIndex: u32; + } & Struct; + readonly isSubIdentityAdded: boolean; + readonly asSubIdentityAdded: { + readonly sub: AccountId32; + readonly main: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isSubIdentityRemoved: boolean; + readonly asSubIdentityRemoved: { + readonly sub: AccountId32; + readonly main: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isSubIdentityRevoked: boolean; + readonly asSubIdentityRevoked: { + readonly sub: AccountId32; + readonly main: AccountId32; + readonly deposit: u128; + } & Struct; + readonly isSubIdentitiesInserted: boolean; + readonly asSubIdentitiesInserted: { + readonly amount: u32; + } & Struct; + readonly type: 'IdentitySet' | 'IdentityCleared' | 'IdentityKilled' | 'IdentitiesInserted' | 'IdentitiesRemoved' | 'JudgementRequested' | 'JudgementUnrequested' | 'JudgementGiven' | 'RegistrarAdded' | 'SubIdentityAdded' | 'SubIdentityRemoved' | 'SubIdentityRevoked' | 'SubIdentitiesInserted'; + } + + /** @name PalletPreimageEvent (65) */ + interface PalletPreimageEvent extends Enum { + readonly isNoted: boolean; + readonly asNoted: { + readonly hash_: H256; + } & Struct; + readonly isRequested: boolean; + readonly asRequested: { + readonly hash_: H256; + } & Struct; + readonly isCleared: boolean; + readonly asCleared: { + readonly hash_: H256; + } & Struct; + readonly type: 'Noted' | 'Requested' | 'Cleared'; + } + + /** @name CumulusPalletXcmpQueueEvent (66) */ interface CumulusPalletXcmpQueueEvent extends Enum { readonly isSuccess: boolean; readonly asSuccess: { @@ -676,7 +810,7 @@ readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced'; } - /** @name XcmV2TraitsError (64) */ + /** @name XcmV2TraitsError (68) */ interface XcmV2TraitsError extends Enum { readonly isOverflow: boolean; readonly isUnimplemented: boolean; @@ -709,7 +843,7 @@ readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'MultiLocationFull' | 'MultiLocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable'; } - /** @name PalletXcmEvent (66) */ + /** @name PalletXcmEvent (70) */ interface PalletXcmEvent extends Enum { readonly isAttempted: boolean; readonly asAttempted: XcmV2TraitsOutcome; @@ -748,7 +882,7 @@ readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail' | 'AssetsClaimed'; } - /** @name XcmV2TraitsOutcome (67) */ + /** @name XcmV2TraitsOutcome (71) */ interface XcmV2TraitsOutcome extends Enum { readonly isComplete: boolean; readonly asComplete: u64; @@ -759,10 +893,10 @@ readonly type: 'Complete' | 'Incomplete' | 'Error'; } - /** @name XcmV2Xcm (68) */ + /** @name XcmV2Xcm (72) */ interface XcmV2Xcm extends Vec {} - /** @name XcmV2Instruction (70) */ + /** @name XcmV2Instruction (74) */ interface XcmV2Instruction extends Enum { readonly isWithdrawAsset: boolean; readonly asWithdrawAsset: XcmV1MultiassetMultiAssets; @@ -882,7 +1016,7 @@ readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion'; } - /** @name XcmV2Response (71) */ + /** @name XcmV2Response (75) */ interface XcmV2Response extends Enum { readonly isNull: boolean; readonly isAssets: boolean; @@ -894,7 +1028,7 @@ readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version'; } - /** @name XcmV0OriginKind (74) */ + /** @name XcmV0OriginKind (78) */ interface XcmV0OriginKind extends Enum { readonly isNative: boolean; readonly isSovereignAccount: boolean; @@ -903,12 +1037,12 @@ readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm'; } - /** @name XcmDoubleEncoded (75) */ + /** @name XcmDoubleEncoded (79) */ interface XcmDoubleEncoded extends Struct { readonly encoded: Bytes; } - /** @name XcmV1MultiassetMultiAssetFilter (76) */ + /** @name XcmV1MultiassetMultiAssetFilter (80) */ interface XcmV1MultiassetMultiAssetFilter extends Enum { readonly isDefinite: boolean; readonly asDefinite: XcmV1MultiassetMultiAssets; @@ -917,7 +1051,7 @@ readonly type: 'Definite' | 'Wild'; } - /** @name XcmV1MultiassetWildMultiAsset (77) */ + /** @name XcmV1MultiassetWildMultiAsset (81) */ interface XcmV1MultiassetWildMultiAsset extends Enum { readonly isAll: boolean; readonly isAllOf: boolean; @@ -928,14 +1062,14 @@ readonly type: 'All' | 'AllOf'; } - /** @name XcmV1MultiassetWildFungibility (78) */ + /** @name XcmV1MultiassetWildFungibility (82) */ interface XcmV1MultiassetWildFungibility extends Enum { readonly isFungible: boolean; readonly isNonFungible: boolean; readonly type: 'Fungible' | 'NonFungible'; } - /** @name XcmV2WeightLimit (79) */ + /** @name XcmV2WeightLimit (83) */ interface XcmV2WeightLimit extends Enum { readonly isUnlimited: boolean; readonly isLimited: boolean; @@ -943,7 +1077,7 @@ readonly type: 'Unlimited' | 'Limited'; } - /** @name XcmVersionedMultiAssets (81) */ + /** @name XcmVersionedMultiAssets (85) */ interface XcmVersionedMultiAssets extends Enum { readonly isV0: boolean; readonly asV0: Vec; @@ -952,7 +1086,7 @@ readonly type: 'V0' | 'V1'; } - /** @name XcmV0MultiAsset (83) */ + /** @name XcmV0MultiAsset (87) */ interface XcmV0MultiAsset extends Enum { readonly isNone: boolean; readonly isAll: boolean; @@ -997,7 +1131,7 @@ readonly type: 'None' | 'All' | 'AllFungible' | 'AllNonFungible' | 'AllAbstractFungible' | 'AllAbstractNonFungible' | 'AllConcreteFungible' | 'AllConcreteNonFungible' | 'AbstractFungible' | 'AbstractNonFungible' | 'ConcreteFungible' | 'ConcreteNonFungible'; } - /** @name XcmV0MultiLocation (84) */ + /** @name XcmV0MultiLocation (88) */ interface XcmV0MultiLocation extends Enum { readonly isNull: boolean; readonly isX1: boolean; @@ -1019,7 +1153,7 @@ readonly type: 'Null' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8'; } - /** @name XcmV0Junction (85) */ + /** @name XcmV0Junction (89) */ interface XcmV0Junction extends Enum { readonly isParent: boolean; readonly isParachain: boolean; @@ -1054,7 +1188,7 @@ readonly type: 'Parent' | 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality'; } - /** @name XcmVersionedMultiLocation (86) */ + /** @name XcmVersionedMultiLocation (90) */ interface XcmVersionedMultiLocation extends Enum { readonly isV0: boolean; readonly asV0: XcmV0MultiLocation; @@ -1063,7 +1197,7 @@ readonly type: 'V0' | 'V1'; } - /** @name CumulusPalletXcmEvent (87) */ + /** @name CumulusPalletXcmEvent (91) */ interface CumulusPalletXcmEvent extends Enum { readonly isInvalidFormat: boolean; readonly asInvalidFormat: U8aFixed; @@ -1074,7 +1208,7 @@ readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward'; } - /** @name CumulusPalletDmpQueueEvent (88) */ + /** @name CumulusPalletDmpQueueEvent (92) */ interface CumulusPalletDmpQueueEvent extends Enum { readonly isInvalidFormat: boolean; readonly asInvalidFormat: { @@ -1109,7 +1243,7 @@ readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced'; } - /** @name PalletConfigurationEvent (89) */ + /** @name PalletConfigurationEvent (93) */ interface PalletConfigurationEvent extends Enum { readonly isNewDesiredCollators: boolean; readonly asNewDesiredCollators: { @@ -1126,7 +1260,7 @@ readonly type: 'NewDesiredCollators' | 'NewCollatorLicenseBond' | 'NewCollatorKickThreshold'; } - /** @name PalletCommonEvent (92) */ + /** @name PalletCommonEvent (96) */ interface PalletCommonEvent extends Enum { readonly isCollectionCreated: boolean; readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>; @@ -1175,7 +1309,7 @@ readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved' | 'ApprovedForAll' | 'CollectionPropertySet' | 'CollectionPropertyDeleted' | 'TokenPropertySet' | 'TokenPropertyDeleted' | 'PropertyPermissionSet' | 'AllowListAddressAdded' | 'AllowListAddressRemoved' | 'CollectionAdminAdded' | 'CollectionAdminRemoved' | 'CollectionLimitSet' | 'CollectionOwnerChanged' | 'CollectionPermissionSet' | 'CollectionSponsorSet' | 'SponsorshipConfirmed' | 'CollectionSponsorRemoved'; } - /** @name PalletEvmAccountBasicCrossAccountIdRepr (95) */ + /** @name PalletEvmAccountBasicCrossAccountIdRepr (99) */ interface PalletEvmAccountBasicCrossAccountIdRepr extends Enum { readonly isSubstrate: boolean; readonly asSubstrate: AccountId32; @@ -1184,128 +1318,14 @@ readonly type: 'Substrate' | 'Ethereum'; } - /** @name PalletStructureEvent (99) */ + /** @name PalletStructureEvent (103) */ interface PalletStructureEvent extends Enum { readonly isExecuted: boolean; readonly asExecuted: Result; readonly type: 'Executed'; } - /** @name PalletRmrkCoreEvent (100) */ - interface PalletRmrkCoreEvent extends Enum { - readonly isCollectionCreated: boolean; - readonly asCollectionCreated: { - readonly issuer: AccountId32; - readonly collectionId: u32; - } & Struct; - readonly isCollectionDestroyed: boolean; - readonly asCollectionDestroyed: { - readonly issuer: AccountId32; - readonly collectionId: u32; - } & Struct; - readonly isIssuerChanged: boolean; - readonly asIssuerChanged: { - readonly oldIssuer: AccountId32; - readonly newIssuer: AccountId32; - readonly collectionId: u32; - } & Struct; - readonly isCollectionLocked: boolean; - readonly asCollectionLocked: { - readonly issuer: AccountId32; - readonly collectionId: u32; - } & Struct; - readonly isNftMinted: boolean; - readonly asNftMinted: { - readonly owner: AccountId32; - readonly collectionId: u32; - readonly nftId: u32; - } & Struct; - readonly isNftBurned: boolean; - readonly asNftBurned: { - readonly owner: AccountId32; - readonly nftId: u32; - } & Struct; - readonly isNftSent: boolean; - readonly asNftSent: { - readonly sender: AccountId32; - readonly recipient: RmrkTraitsNftAccountIdOrCollectionNftTuple; - readonly collectionId: u32; - readonly nftId: u32; - readonly approvalRequired: bool; - } & Struct; - readonly isNftAccepted: boolean; - readonly asNftAccepted: { - readonly sender: AccountId32; - readonly recipient: RmrkTraitsNftAccountIdOrCollectionNftTuple; - readonly collectionId: u32; - readonly nftId: u32; - } & Struct; - readonly isNftRejected: boolean; - readonly asNftRejected: { - readonly sender: AccountId32; - readonly collectionId: u32; - readonly nftId: u32; - } & Struct; - readonly isPropertySet: boolean; - readonly asPropertySet: { - readonly collectionId: u32; - readonly maybeNftId: Option; - readonly key: Bytes; - readonly value: Bytes; - } & Struct; - readonly isResourceAdded: boolean; - readonly asResourceAdded: { - readonly nftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isResourceRemoval: boolean; - readonly asResourceRemoval: { - readonly nftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isResourceAccepted: boolean; - readonly asResourceAccepted: { - readonly nftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isResourceRemovalAccepted: boolean; - readonly asResourceRemovalAccepted: { - readonly nftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isPrioritySet: boolean; - readonly asPrioritySet: { - readonly collectionId: u32; - readonly nftId: u32; - } & Struct; - readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'IssuerChanged' | 'CollectionLocked' | 'NftMinted' | 'NftBurned' | 'NftSent' | 'NftAccepted' | 'NftRejected' | 'PropertySet' | 'ResourceAdded' | 'ResourceRemoval' | 'ResourceAccepted' | 'ResourceRemovalAccepted' | 'PrioritySet'; - } - - /** @name RmrkTraitsNftAccountIdOrCollectionNftTuple (101) */ - interface RmrkTraitsNftAccountIdOrCollectionNftTuple extends Enum { - readonly isAccountId: boolean; - readonly asAccountId: AccountId32; - readonly isCollectionAndNftTuple: boolean; - readonly asCollectionAndNftTuple: ITuple<[u32, u32]>; - readonly type: 'AccountId' | 'CollectionAndNftTuple'; - } - - /** @name PalletRmrkEquipEvent (104) */ - interface PalletRmrkEquipEvent extends Enum { - readonly isBaseCreated: boolean; - readonly asBaseCreated: { - readonly issuer: AccountId32; - readonly baseId: u32; - } & Struct; - readonly isEquippablesUpdated: boolean; - readonly asEquippablesUpdated: { - readonly baseId: u32; - readonly slotId: u32; - } & Struct; - readonly type: 'BaseCreated' | 'EquippablesUpdated'; - } - - /** @name PalletAppPromotionEvent (105) */ + /** @name PalletAppPromotionEvent (104) */ interface PalletAppPromotionEvent extends Enum { readonly isStakingRecalculation: boolean; readonly asStakingRecalculation: ITuple<[AccountId32, u128, u128]>; @@ -1318,7 +1338,7 @@ readonly type: 'StakingRecalculation' | 'Stake' | 'Unstake' | 'SetAdmin'; } - /** @name PalletForeignAssetsModuleEvent (106) */ + /** @name PalletForeignAssetsModuleEvent (105) */ interface PalletForeignAssetsModuleEvent extends Enum { readonly isForeignAssetRegistered: boolean; readonly asForeignAssetRegistered: { @@ -1345,7 +1365,7 @@ readonly type: 'ForeignAssetRegistered' | 'ForeignAssetUpdated' | 'AssetRegistered' | 'AssetUpdated'; } - /** @name PalletForeignAssetsModuleAssetMetadata (107) */ + /** @name PalletForeignAssetsModuleAssetMetadata (106) */ interface PalletForeignAssetsModuleAssetMetadata extends Struct { readonly name: Bytes; readonly symbol: Bytes; @@ -1353,7 +1373,7 @@ readonly minimalBalance: u128; } - /** @name PalletEvmEvent (108) */ + /** @name PalletEvmEvent (107) */ interface PalletEvmEvent extends Enum { readonly isLog: boolean; readonly asLog: { @@ -1378,14 +1398,14 @@ readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed'; } - /** @name EthereumLog (109) */ + /** @name EthereumLog (108) */ interface EthereumLog extends Struct { readonly address: H160; readonly topics: Vec; readonly data: Bytes; } - /** @name PalletEthereumEvent (111) */ + /** @name PalletEthereumEvent (110) */ interface PalletEthereumEvent extends Enum { readonly isExecuted: boolean; readonly asExecuted: { @@ -1397,7 +1417,7 @@ readonly type: 'Executed'; } - /** @name EvmCoreErrorExitReason (112) */ + /** @name EvmCoreErrorExitReason (111) */ interface EvmCoreErrorExitReason extends Enum { readonly isSucceed: boolean; readonly asSucceed: EvmCoreErrorExitSucceed; @@ -1410,7 +1430,7 @@ readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal'; } - /** @name EvmCoreErrorExitSucceed (113) */ + /** @name EvmCoreErrorExitSucceed (112) */ interface EvmCoreErrorExitSucceed extends Enum { readonly isStopped: boolean; readonly isReturned: boolean; @@ -1418,7 +1438,7 @@ readonly type: 'Stopped' | 'Returned' | 'Suicided'; } - /** @name EvmCoreErrorExitError (114) */ + /** @name EvmCoreErrorExitError (113) */ interface EvmCoreErrorExitError extends Enum { readonly isStackUnderflow: boolean; readonly isStackOverflow: boolean; @@ -1436,6 +1456,7 @@ readonly isOther: boolean; readonly asOther: Text; readonly isInvalidCode: boolean; + readonly asInvalidCode: u8; readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other' | 'InvalidCode'; } @@ -1714,14 +1735,130 @@ readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized'; } - /** @name PalletBalancesBalanceLock (172) */ + /** @name PalletAuthorshipUncleEntryItem (172) */ + interface PalletAuthorshipUncleEntryItem extends Enum { + readonly isInclusionHeight: boolean; + readonly asInclusionHeight: u32; + readonly isUncle: boolean; + readonly asUncle: ITuple<[H256, Option]>; + readonly type: 'InclusionHeight' | 'Uncle'; + } + + /** @name PalletAuthorshipCall (174) */ + interface PalletAuthorshipCall extends Enum { + readonly isSetUncles: boolean; + readonly asSetUncles: { + readonly newUncles: Vec; + } & Struct; + readonly type: 'SetUncles'; + } + + /** @name SpRuntimeHeader (176) */ + interface SpRuntimeHeader extends Struct { + readonly parentHash: H256; + readonly number: Compact; + readonly stateRoot: H256; + readonly extrinsicsRoot: H256; + readonly digest: SpRuntimeDigest; + } + + /** @name SpRuntimeBlakeTwo256 (177) */ + type SpRuntimeBlakeTwo256 = Null; + + /** @name PalletAuthorshipError (178) */ + interface PalletAuthorshipError extends Enum { + readonly isInvalidUncleParent: boolean; + readonly isUnclesAlreadySet: boolean; + readonly isTooManyUncles: boolean; + readonly isGenesisUncle: boolean; + readonly isTooHighUncle: boolean; + readonly isUncleAlreadyIncluded: boolean; + readonly isOldUncle: boolean; + readonly type: 'InvalidUncleParent' | 'UnclesAlreadySet' | 'TooManyUncles' | 'GenesisUncle' | 'TooHighUncle' | 'UncleAlreadyIncluded' | 'OldUncle'; + } + + /** @name PalletCollatorSelectionCall (181) */ + interface PalletCollatorSelectionCall extends Enum { + readonly isAddInvulnerable: boolean; + readonly asAddInvulnerable: { + readonly new_: AccountId32; + } & Struct; + readonly isRemoveInvulnerable: boolean; + readonly asRemoveInvulnerable: { + readonly who: AccountId32; + } & Struct; + readonly isGetLicense: boolean; + readonly isOnboard: boolean; + readonly isOffboard: boolean; + readonly isReleaseLicense: boolean; + readonly isForceReleaseLicense: boolean; + readonly asForceReleaseLicense: { + readonly who: AccountId32; + } & Struct; + readonly type: 'AddInvulnerable' | 'RemoveInvulnerable' | 'GetLicense' | 'Onboard' | 'Offboard' | 'ReleaseLicense' | 'ForceReleaseLicense'; + } + + /** @name PalletCollatorSelectionError (182) */ + interface PalletCollatorSelectionError extends Enum { + readonly isTooManyCandidates: boolean; + readonly isUnknown: boolean; + readonly isPermission: boolean; + readonly isAlreadyHoldingLicense: boolean; + readonly isNoLicense: boolean; + readonly isAlreadyCandidate: boolean; + readonly isNotCandidate: boolean; + readonly isTooManyInvulnerables: boolean; + readonly isTooFewInvulnerables: boolean; + readonly isAlreadyInvulnerable: boolean; + readonly isNotInvulnerable: boolean; + readonly isNoAssociatedValidatorId: boolean; + readonly isValidatorNotRegistered: boolean; + readonly type: 'TooManyCandidates' | 'Unknown' | 'Permission' | 'AlreadyHoldingLicense' | 'NoLicense' | 'AlreadyCandidate' | 'NotCandidate' | 'TooManyInvulnerables' | 'TooFewInvulnerables' | 'AlreadyInvulnerable' | 'NotInvulnerable' | 'NoAssociatedValidatorId' | 'ValidatorNotRegistered'; + } + + /** @name OpalRuntimeRuntimeCommonSessionKeys (185) */ + interface OpalRuntimeRuntimeCommonSessionKeys extends Struct { + readonly aura: SpConsensusAuraSr25519AppSr25519Public; + } + + /** @name SpConsensusAuraSr25519AppSr25519Public (186) */ + interface SpConsensusAuraSr25519AppSr25519Public extends SpCoreSr25519Public {} + + /** @name SpCoreSr25519Public (187) */ + interface SpCoreSr25519Public extends U8aFixed {} + + /** @name SpCoreCryptoKeyTypeId (190) */ + interface SpCoreCryptoKeyTypeId extends U8aFixed {} + + /** @name PalletSessionCall (191) */ + interface PalletSessionCall extends Enum { + readonly isSetKeys: boolean; + readonly asSetKeys: { + readonly keys_: OpalRuntimeRuntimeCommonSessionKeys; + readonly proof: Bytes; + } & Struct; + readonly isPurgeKeys: boolean; + readonly type: 'SetKeys' | 'PurgeKeys'; + } + + /** @name PalletSessionError (192) */ + interface PalletSessionError extends Enum { + readonly isInvalidProof: boolean; + readonly isNoAssociatedValidatorId: boolean; + readonly isDuplicatedKey: boolean; + readonly isNoKeys: boolean; + readonly isNoAccount: boolean; + readonly type: 'InvalidProof' | 'NoAssociatedValidatorId' | 'DuplicatedKey' | 'NoKeys' | 'NoAccount'; + } + + /** @name PalletBalancesBalanceLock (194) */ interface PalletBalancesBalanceLock extends Struct { readonly id: U8aFixed; readonly amount: u128; readonly reasons: PalletBalancesReasons; } - /** @name PalletBalancesReasons (173) */ + /** @name PalletBalancesReasons (195) */ interface PalletBalancesReasons extends Enum { readonly isFee: boolean; readonly isMisc: boolean; @@ -1729,13 +1866,13 @@ readonly type: 'Fee' | 'Misc' | 'All'; } - /** @name PalletBalancesReserveData (176) */ + /** @name PalletBalancesReserveData (198) */ interface PalletBalancesReserveData extends Struct { readonly id: U8aFixed; readonly amount: u128; } - /** @name PalletBalancesCall (178) */ + /** @name PalletBalancesCall (200) */ interface PalletBalancesCall extends Enum { readonly isTransfer: boolean; readonly asTransfer: { @@ -1772,7 +1909,7 @@ readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve'; } - /** @name PalletBalancesError (181) */ + /** @name PalletBalancesError (203) */ interface PalletBalancesError extends Enum { readonly isVestingBalance: boolean; readonly isLiquidityRestrictions: boolean; @@ -1785,7 +1922,7 @@ readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves'; } - /** @name PalletTimestampCall (183) */ + /** @name PalletTimestampCall (205) */ interface PalletTimestampCall extends Enum { readonly isSet: boolean; readonly asSet: { @@ -1794,14 +1931,14 @@ readonly type: 'Set'; } - /** @name PalletTransactionPaymentReleases (185) */ + /** @name PalletTransactionPaymentReleases (207) */ interface PalletTransactionPaymentReleases extends Enum { readonly isV1Ancient: boolean; readonly isV2: boolean; readonly type: 'V1Ancient' | 'V2'; } - /** @name PalletTreasuryProposal (186) */ + /** @name PalletTreasuryProposal (208) */ interface PalletTreasuryProposal extends Struct { readonly proposer: AccountId32; readonly value: u128; @@ -1809,7 +1946,7 @@ readonly bond: u128; } - /** @name PalletTreasuryCall (189) */ + /** @name PalletTreasuryCall (210) */ interface PalletTreasuryCall extends Enum { readonly isProposeSpend: boolean; readonly asProposeSpend: { @@ -1836,10 +1973,10 @@ readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal' | 'Spend' | 'RemoveApproval'; } - /** @name FrameSupportPalletId (191) */ + /** @name FrameSupportPalletId (212) */ interface FrameSupportPalletId extends U8aFixed {} - /** @name PalletTreasuryError (192) */ + /** @name PalletTreasuryError (213) */ interface PalletTreasuryError extends Enum { readonly isInsufficientProposersBalance: boolean; readonly isInvalidIndex: boolean; @@ -1849,7 +1986,7 @@ readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals' | 'InsufficientPermission' | 'ProposalNotApproved'; } - /** @name PalletSudoCall (193) */ + /** @name PalletSudoCall (214) */ interface PalletSudoCall extends Enum { readonly isSudo: boolean; readonly asSudo: { @@ -1872,7 +2009,7 @@ readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs'; } - /** @name OrmlVestingModuleCall (195) */ + /** @name OrmlVestingModuleCall (216) */ interface OrmlVestingModuleCall extends Enum { readonly isClaim: boolean; readonly isVestedTransfer: boolean; @@ -1892,7 +2029,7 @@ readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor'; } - /** @name OrmlXtokensModuleCall (197) */ + /** @name OrmlXtokensModuleCall (218) */ interface OrmlXtokensModuleCall extends Enum { readonly isTransfer: boolean; readonly asTransfer: { @@ -1939,7 +2076,7 @@ readonly type: 'Transfer' | 'TransferMultiasset' | 'TransferWithFee' | 'TransferMultiassetWithFee' | 'TransferMulticurrencies' | 'TransferMultiassets'; } - /** @name XcmVersionedMultiAsset (198) */ + /** @name XcmVersionedMultiAsset (219) */ interface XcmVersionedMultiAsset extends Enum { readonly isV0: boolean; readonly asV0: XcmV0MultiAsset; @@ -1948,7 +2085,7 @@ readonly type: 'V0' | 'V1'; } - /** @name OrmlTokensModuleCall (201) */ + /** @name OrmlTokensModuleCall (222) */ interface OrmlTokensModuleCall extends Enum { readonly isTransfer: boolean; readonly asTransfer: { @@ -1985,7 +2122,166 @@ readonly type: 'Transfer' | 'TransferAll' | 'TransferKeepAlive' | 'ForceTransfer' | 'SetBalance'; } - /** @name CumulusPalletXcmpQueueCall (202) */ + /** @name PalletIdentityCall (223) */ + interface PalletIdentityCall extends Enum { + readonly isAddRegistrar: boolean; + readonly asAddRegistrar: { + readonly account: MultiAddress; + } & Struct; + readonly isSetIdentity: boolean; + readonly asSetIdentity: { + readonly info: PalletIdentityIdentityInfo; + } & Struct; + readonly isSetSubs: boolean; + readonly asSetSubs: { + readonly subs: Vec>; + } & Struct; + readonly isClearIdentity: boolean; + readonly isRequestJudgement: boolean; + readonly asRequestJudgement: { + readonly regIndex: Compact; + readonly maxFee: Compact; + } & Struct; + readonly isCancelRequest: boolean; + readonly asCancelRequest: { + readonly regIndex: u32; + } & Struct; + readonly isSetFee: boolean; + readonly asSetFee: { + readonly index: Compact; + readonly fee: Compact; + } & Struct; + readonly isSetAccountId: boolean; + readonly asSetAccountId: { + readonly index: Compact; + readonly new_: MultiAddress; + } & Struct; + readonly isSetFields: boolean; + readonly asSetFields: { + readonly index: Compact; + readonly fields: PalletIdentityBitFlags; + } & Struct; + readonly isProvideJudgement: boolean; + readonly asProvideJudgement: { + readonly regIndex: Compact; + readonly target: MultiAddress; + readonly judgement: PalletIdentityJudgement; + readonly identity: H256; + } & Struct; + readonly isKillIdentity: boolean; + readonly asKillIdentity: { + readonly target: MultiAddress; + } & Struct; + readonly isAddSub: boolean; + readonly asAddSub: { + readonly sub: MultiAddress; + readonly data: Data; + } & Struct; + readonly isRenameSub: boolean; + readonly asRenameSub: { + readonly sub: MultiAddress; + readonly data: Data; + } & Struct; + readonly isRemoveSub: boolean; + readonly asRemoveSub: { + readonly sub: MultiAddress; + } & Struct; + readonly isQuitSub: boolean; + readonly isForceInsertIdentities: boolean; + readonly asForceInsertIdentities: { + readonly identities: Vec>; + } & Struct; + readonly isForceRemoveIdentities: boolean; + readonly asForceRemoveIdentities: { + readonly identities: Vec; + } & Struct; + readonly isForceSetSubs: boolean; + readonly asForceSetSubs: { + readonly subs: Vec>]>]>>; + } & Struct; + readonly type: 'AddRegistrar' | 'SetIdentity' | 'SetSubs' | 'ClearIdentity' | 'RequestJudgement' | 'CancelRequest' | 'SetFee' | 'SetAccountId' | 'SetFields' | 'ProvideJudgement' | 'KillIdentity' | 'AddSub' | 'RenameSub' | 'RemoveSub' | 'QuitSub' | 'ForceInsertIdentities' | 'ForceRemoveIdentities' | 'ForceSetSubs'; + } + + /** @name PalletIdentityIdentityInfo (224) */ + interface PalletIdentityIdentityInfo extends Struct { + readonly additional: Vec>; + readonly display: Data; + readonly legal: Data; + readonly web: Data; + readonly riot: Data; + readonly email: Data; + readonly pgpFingerprint: Option; + readonly image: Data; + readonly twitter: Data; + } + + /** @name PalletIdentityBitFlags (260) */ + interface PalletIdentityBitFlags extends Set { + readonly isDisplay: boolean; + readonly isLegal: boolean; + readonly isWeb: boolean; + readonly isRiot: boolean; + readonly isEmail: boolean; + readonly isPgpFingerprint: boolean; + readonly isImage: boolean; + readonly isTwitter: boolean; + } + + /** @name PalletIdentityIdentityField (261) */ + interface PalletIdentityIdentityField extends Enum { + readonly isDisplay: boolean; + readonly isLegal: boolean; + readonly isWeb: boolean; + readonly isRiot: boolean; + readonly isEmail: boolean; + readonly isPgpFingerprint: boolean; + readonly isImage: boolean; + readonly isTwitter: boolean; + readonly type: 'Display' | 'Legal' | 'Web' | 'Riot' | 'Email' | 'PgpFingerprint' | 'Image' | 'Twitter'; + } + + /** @name PalletIdentityJudgement (262) */ + interface PalletIdentityJudgement extends Enum { + readonly isUnknown: boolean; + readonly isFeePaid: boolean; + readonly asFeePaid: u128; + readonly isReasonable: boolean; + readonly isKnownGood: boolean; + readonly isOutOfDate: boolean; + readonly isLowQuality: boolean; + readonly isErroneous: boolean; + readonly type: 'Unknown' | 'FeePaid' | 'Reasonable' | 'KnownGood' | 'OutOfDate' | 'LowQuality' | 'Erroneous'; + } + + /** @name PalletIdentityRegistration (265) */ + interface PalletIdentityRegistration extends Struct { + readonly judgements: Vec>; + readonly deposit: u128; + readonly info: PalletIdentityIdentityInfo; + } + + /** @name PalletPreimageCall (273) */ + interface PalletPreimageCall extends Enum { + readonly isNotePreimage: boolean; + readonly asNotePreimage: { + readonly bytes: Bytes; + } & Struct; + readonly isUnnotePreimage: boolean; + readonly asUnnotePreimage: { + readonly hash_: H256; + } & Struct; + readonly isRequestPreimage: boolean; + readonly asRequestPreimage: { + readonly hash_: H256; + } & Struct; + readonly isUnrequestPreimage: boolean; + readonly asUnrequestPreimage: { + readonly hash_: H256; + } & Struct; + readonly type: 'NotePreimage' | 'UnnotePreimage' | 'RequestPreimage' | 'UnrequestPreimage'; + } + + /** @name CumulusPalletXcmpQueueCall (274) */ interface CumulusPalletXcmpQueueCall extends Enum { readonly isServiceOverweight: boolean; readonly asServiceOverweight: { @@ -2021,7 +2317,7 @@ readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight'; } - /** @name PalletXcmCall (203) */ + /** @name PalletXcmCall (275) */ interface PalletXcmCall extends Enum { readonly isSend: boolean; readonly asSend: { @@ -2083,7 +2379,7 @@ readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets'; } - /** @name XcmVersionedXcm (204) */ + /** @name XcmVersionedXcm (276) */ interface XcmVersionedXcm extends Enum { readonly isV0: boolean; readonly asV0: XcmV0Xcm; @@ -2094,7 +2390,7 @@ readonly type: 'V0' | 'V1' | 'V2'; } - /** @name XcmV0Xcm (205) */ + /** @name XcmV0Xcm (277) */ interface XcmV0Xcm extends Enum { readonly isWithdrawAsset: boolean; readonly asWithdrawAsset: { @@ -2157,7 +2453,7 @@ readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom'; } - /** @name XcmV0Order (207) */ + /** @name XcmV0Order (279) */ interface XcmV0Order extends Enum { readonly isNull: boolean; readonly isDepositAsset: boolean; @@ -2205,14 +2501,14 @@ readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution'; } - /** @name XcmV0Response (209) */ + /** @name XcmV0Response (281) */ interface XcmV0Response extends Enum { readonly isAssets: boolean; readonly asAssets: Vec; readonly type: 'Assets'; } - /** @name XcmV1Xcm (210) */ + /** @name XcmV1Xcm (282) */ interface XcmV1Xcm extends Enum { readonly isWithdrawAsset: boolean; readonly asWithdrawAsset: { @@ -2281,7 +2577,7 @@ readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion'; } - /** @name XcmV1Order (212) */ + /** @name XcmV1Order (284) */ interface XcmV1Order extends Enum { readonly isNoop: boolean; readonly isDepositAsset: boolean; @@ -2331,7 +2627,7 @@ readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution'; } - /** @name XcmV1Response (214) */ + /** @name XcmV1Response (286) */ interface XcmV1Response extends Enum { readonly isAssets: boolean; readonly asAssets: XcmV1MultiassetMultiAssets; @@ -2340,10 +2636,10 @@ readonly type: 'Assets' | 'Version'; } - /** @name CumulusPalletXcmCall (228) */ + /** @name CumulusPalletXcmCall (300) */ type CumulusPalletXcmCall = Null; - /** @name CumulusPalletDmpQueueCall (229) */ + /** @name CumulusPalletDmpQueueCall (301) */ interface CumulusPalletDmpQueueCall extends Enum { readonly isServiceOverweight: boolean; readonly asServiceOverweight: { @@ -2353,7 +2649,7 @@ readonly type: 'ServiceOverweight'; } - /** @name PalletInflationCall (230) */ + /** @name PalletInflationCall (302) */ interface PalletInflationCall extends Enum { readonly isStartInflation: boolean; readonly asStartInflation: { @@ -2362,7 +2658,7 @@ readonly type: 'StartInflation'; } - /** @name PalletUniqueCall (231) */ + /** @name PalletUniqueCall (303) */ interface PalletUniqueCall extends Enum { readonly isCreateCollection: boolean; readonly asCreateCollection: { @@ -2543,7 +2839,7 @@ readonly type: 'CreateCollection' | 'CreateCollectionEx' | 'DestroyCollection' | 'AddToAllowList' | 'RemoveFromAllowList' | 'ChangeCollectionOwner' | 'AddCollectionAdmin' | 'RemoveCollectionAdmin' | 'SetCollectionSponsor' | 'ConfirmSponsorship' | 'RemoveCollectionSponsor' | 'CreateItem' | 'CreateMultipleItems' | 'SetCollectionProperties' | 'DeleteCollectionProperties' | 'SetTokenProperties' | 'DeleteTokenProperties' | 'SetTokenPropertyPermissions' | 'CreateMultipleItemsEx' | 'SetTransfersEnabledFlag' | 'BurnItem' | 'BurnFrom' | 'Transfer' | 'Approve' | 'ApproveFrom' | 'TransferFrom' | 'SetCollectionLimits' | 'SetCollectionPermissions' | 'Repartition' | 'SetAllowanceForAll' | 'ForceRepairCollection' | 'ForceRepairItem'; } - /** @name UpDataStructsCollectionMode (236) */ + /** @name UpDataStructsCollectionMode (308) */ interface UpDataStructsCollectionMode extends Enum { readonly isNft: boolean; readonly isFungible: boolean; @@ -2552,7 +2848,7 @@ readonly type: 'Nft' | 'Fungible' | 'ReFungible'; } - /** @name UpDataStructsCreateCollectionData (237) */ + /** @name UpDataStructsCreateCollectionData (309) */ interface UpDataStructsCreateCollectionData extends Struct { readonly mode: UpDataStructsCollectionMode; readonly access: Option; @@ -2566,14 +2862,14 @@ readonly properties: Vec; } - /** @name UpDataStructsAccessMode (239) */ + /** @name UpDataStructsAccessMode (311) */ interface UpDataStructsAccessMode extends Enum { readonly isNormal: boolean; readonly isAllowList: boolean; readonly type: 'Normal' | 'AllowList'; } - /** @name UpDataStructsCollectionLimits (241) */ + /** @name UpDataStructsCollectionLimits (313) */ interface UpDataStructsCollectionLimits extends Struct { readonly accountTokenOwnershipLimit: Option; readonly sponsoredDataSize: Option; @@ -2586,7 +2882,7 @@ readonly transfersEnabled: Option; } - /** @name UpDataStructsSponsoringRateLimit (243) */ + /** @name UpDataStructsSponsoringRateLimit (315) */ interface UpDataStructsSponsoringRateLimit extends Enum { readonly isSponsoringDisabled: boolean; readonly isBlocks: boolean; @@ -2594,43 +2890,43 @@ readonly type: 'SponsoringDisabled' | 'Blocks'; } - /** @name UpDataStructsCollectionPermissions (246) */ + /** @name UpDataStructsCollectionPermissions (318) */ interface UpDataStructsCollectionPermissions extends Struct { readonly access: Option; readonly mintMode: Option; readonly nesting: Option; } - /** @name UpDataStructsNestingPermissions (248) */ + /** @name UpDataStructsNestingPermissions (320) */ interface UpDataStructsNestingPermissions extends Struct { readonly tokenOwner: bool; readonly collectionAdmin: bool; readonly restricted: Option; } - /** @name UpDataStructsOwnerRestrictedSet (250) */ + /** @name UpDataStructsOwnerRestrictedSet (322) */ interface UpDataStructsOwnerRestrictedSet extends BTreeSet {} - /** @name UpDataStructsPropertyKeyPermission (255) */ + /** @name UpDataStructsPropertyKeyPermission (327) */ interface UpDataStructsPropertyKeyPermission extends Struct { readonly key: Bytes; readonly permission: UpDataStructsPropertyPermission; } - /** @name UpDataStructsPropertyPermission (256) */ + /** @name UpDataStructsPropertyPermission (328) */ interface UpDataStructsPropertyPermission extends Struct { readonly mutable: bool; readonly collectionAdmin: bool; readonly tokenOwner: bool; } - /** @name UpDataStructsProperty (259) */ + /** @name UpDataStructsProperty (331) */ interface UpDataStructsProperty extends Struct { readonly key: Bytes; readonly value: Bytes; } - /** @name UpDataStructsCreateItemData (262) */ + /** @name UpDataStructsCreateItemData (334) */ interface UpDataStructsCreateItemData extends Enum { readonly isNft: boolean; readonly asNft: UpDataStructsCreateNftData; @@ -2641,23 +2937,23 @@ readonly type: 'Nft' | 'Fungible' | 'ReFungible'; } - /** @name UpDataStructsCreateNftData (263) */ + /** @name UpDataStructsCreateNftData (335) */ interface UpDataStructsCreateNftData extends Struct { readonly properties: Vec; } - /** @name UpDataStructsCreateFungibleData (264) */ + /** @name UpDataStructsCreateFungibleData (336) */ interface UpDataStructsCreateFungibleData extends Struct { readonly value: u128; } - /** @name UpDataStructsCreateReFungibleData (265) */ + /** @name UpDataStructsCreateReFungibleData (337) */ interface UpDataStructsCreateReFungibleData extends Struct { readonly pieces: u128; readonly properties: Vec; } - /** @name UpDataStructsCreateItemExData (268) */ + /** @name UpDataStructsCreateItemExData (340) */ interface UpDataStructsCreateItemExData extends Enum { readonly isNft: boolean; readonly asNft: Vec; @@ -2670,26 +2966,26 @@ readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners'; } - /** @name UpDataStructsCreateNftExData (270) */ + /** @name UpDataStructsCreateNftExData (342) */ interface UpDataStructsCreateNftExData extends Struct { readonly properties: Vec; readonly owner: PalletEvmAccountBasicCrossAccountIdRepr; } - /** @name UpDataStructsCreateRefungibleExSingleOwner (277) */ + /** @name UpDataStructsCreateRefungibleExSingleOwner (349) */ interface UpDataStructsCreateRefungibleExSingleOwner extends Struct { readonly user: PalletEvmAccountBasicCrossAccountIdRepr; readonly pieces: u128; readonly properties: Vec; } - /** @name UpDataStructsCreateRefungibleExMultipleOwners (279) */ + /** @name UpDataStructsCreateRefungibleExMultipleOwners (351) */ interface UpDataStructsCreateRefungibleExMultipleOwners extends Struct { readonly users: BTreeMap; readonly properties: Vec; } - /** @name PalletConfigurationCall (280) */ + /** @name PalletConfigurationCall (352) */ interface PalletConfigurationCall extends Enum { readonly isSetWeightToFeeCoefficientOverride: boolean; readonly asSetWeightToFeeCoefficientOverride: { @@ -2722,7 +3018,7 @@ readonly type: 'SetWeightToFeeCoefficientOverride' | 'SetMinGasPriceOverride' | 'SetXcmAllowedLocations' | 'SetAppPromotionConfigurationOverride' | 'SetCollatorSelectionDesiredCollators' | 'SetCollatorSelectionLicenseBond' | 'SetCollatorSelectionKickThreshold'; } - /** @name PalletConfigurationAppPromotionConfiguration (285) */ + /** @name PalletConfigurationAppPromotionConfiguration (357) */ interface PalletConfigurationAppPromotionConfiguration extends Struct { readonly recalculationInterval: Option; readonly pendingInterval: Option; @@ -2730,226 +3026,13 @@ readonly maxStakersPerCalculation: Option; } - /** @name PalletTemplateTransactionPaymentCall (289) */ + /** @name PalletTemplateTransactionPaymentCall (361) */ type PalletTemplateTransactionPaymentCall = Null; - /** @name PalletStructureCall (290) */ + /** @name PalletStructureCall (362) */ type PalletStructureCall = Null; - /** @name PalletRmrkCoreCall (291) */ - interface PalletRmrkCoreCall extends Enum { - readonly isCreateCollection: boolean; - readonly asCreateCollection: { - readonly metadata: Bytes; - readonly max: Option; - readonly symbol: Bytes; - } & Struct; - readonly isDestroyCollection: boolean; - readonly asDestroyCollection: { - readonly collectionId: u32; - } & Struct; - readonly isChangeCollectionIssuer: boolean; - readonly asChangeCollectionIssuer: { - readonly collectionId: u32; - readonly newIssuer: MultiAddress; - } & Struct; - readonly isLockCollection: boolean; - readonly asLockCollection: { - readonly collectionId: u32; - } & Struct; - readonly isMintNft: boolean; - readonly asMintNft: { - readonly owner: Option; - readonly collectionId: u32; - readonly recipient: Option; - readonly royaltyAmount: Option; - readonly metadata: Bytes; - readonly transferable: bool; - readonly resources: Option>; - } & Struct; - readonly isBurnNft: boolean; - readonly asBurnNft: { - readonly collectionId: u32; - readonly nftId: u32; - readonly maxBurns: u32; - } & Struct; - readonly isSend: boolean; - readonly asSend: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - readonly newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple; - } & Struct; - readonly isAcceptNft: boolean; - readonly asAcceptNft: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - readonly newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple; - } & Struct; - readonly isRejectNft: boolean; - readonly asRejectNft: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - } & Struct; - readonly isAcceptResource: boolean; - readonly asAcceptResource: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isAcceptResourceRemoval: boolean; - readonly asAcceptResourceRemoval: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - readonly resourceId: u32; - } & Struct; - readonly isSetProperty: boolean; - readonly asSetProperty: { - readonly rmrkCollectionId: Compact; - readonly maybeNftId: Option; - readonly key: Bytes; - readonly value: Bytes; - } & Struct; - readonly isSetPriority: boolean; - readonly asSetPriority: { - readonly rmrkCollectionId: u32; - readonly rmrkNftId: u32; - readonly priorities: Vec; - } & Struct; - readonly isAddBasicResource: boolean; - readonly asAddBasicResource: { - readonly rmrkCollectionId: u32; - readonly nftId: u32; - readonly resource: RmrkTraitsResourceBasicResource; - } & Struct; - readonly isAddComposableResource: boolean; - readonly asAddComposableResource: { - readonly rmrkCollectionId: u32; - readonly nftId: u32; - readonly resource: RmrkTraitsResourceComposableResource; - } & Struct; - readonly isAddSlotResource: boolean; - readonly asAddSlotResource: { - readonly rmrkCollectionId: u32; - readonly nftId: u32; - readonly resource: RmrkTraitsResourceSlotResource; - } & Struct; - readonly isRemoveResource: boolean; - readonly asRemoveResource: { - readonly rmrkCollectionId: u32; - readonly nftId: u32; - readonly resourceId: u32; - } & Struct; - readonly type: 'CreateCollection' | 'DestroyCollection' | 'ChangeCollectionIssuer' | 'LockCollection' | 'MintNft' | 'BurnNft' | 'Send' | 'AcceptNft' | 'RejectNft' | 'AcceptResource' | 'AcceptResourceRemoval' | 'SetProperty' | 'SetPriority' | 'AddBasicResource' | 'AddComposableResource' | 'AddSlotResource' | 'RemoveResource'; - } - - /** @name RmrkTraitsResourceResourceTypes (297) */ - interface RmrkTraitsResourceResourceTypes extends Enum { - readonly isBasic: boolean; - readonly asBasic: RmrkTraitsResourceBasicResource; - readonly isComposable: boolean; - readonly asComposable: RmrkTraitsResourceComposableResource; - readonly isSlot: boolean; - readonly asSlot: RmrkTraitsResourceSlotResource; - readonly type: 'Basic' | 'Composable' | 'Slot'; - } - - /** @name RmrkTraitsResourceBasicResource (299) */ - interface RmrkTraitsResourceBasicResource extends Struct { - readonly src: Option; - readonly metadata: Option; - readonly license: Option; - readonly thumb: Option; - } - - /** @name RmrkTraitsResourceComposableResource (301) */ - interface RmrkTraitsResourceComposableResource extends Struct { - readonly parts: Vec; - readonly base: u32; - readonly src: Option; - readonly metadata: Option; - readonly license: Option; - readonly thumb: Option; - } - - /** @name RmrkTraitsResourceSlotResource (302) */ - interface RmrkTraitsResourceSlotResource extends Struct { - readonly base: u32; - readonly src: Option; - readonly metadata: Option; - readonly slot: u32; - readonly license: Option; - readonly thumb: Option; - } - - /** @name PalletRmrkEquipCall (305) */ - interface PalletRmrkEquipCall extends Enum { - readonly isCreateBase: boolean; - readonly asCreateBase: { - readonly baseType: Bytes; - readonly symbol: Bytes; - readonly parts: Vec; - } & Struct; - readonly isThemeAdd: boolean; - readonly asThemeAdd: { - readonly baseId: u32; - readonly theme: RmrkTraitsTheme; - } & Struct; - readonly isEquippable: boolean; - readonly asEquippable: { - readonly baseId: u32; - readonly slotId: u32; - readonly equippables: RmrkTraitsPartEquippableList; - } & Struct; - readonly type: 'CreateBase' | 'ThemeAdd' | 'Equippable'; - } - - /** @name RmrkTraitsPartPartType (308) */ - interface RmrkTraitsPartPartType extends Enum { - readonly isFixedPart: boolean; - readonly asFixedPart: RmrkTraitsPartFixedPart; - readonly isSlotPart: boolean; - readonly asSlotPart: RmrkTraitsPartSlotPart; - readonly type: 'FixedPart' | 'SlotPart'; - } - - /** @name RmrkTraitsPartFixedPart (310) */ - interface RmrkTraitsPartFixedPart extends Struct { - readonly id: u32; - readonly z: u32; - readonly src: Bytes; - } - - /** @name RmrkTraitsPartSlotPart (311) */ - interface RmrkTraitsPartSlotPart extends Struct { - readonly id: u32; - readonly equippable: RmrkTraitsPartEquippableList; - readonly src: Bytes; - readonly z: u32; - } - - /** @name RmrkTraitsPartEquippableList (312) */ - interface RmrkTraitsPartEquippableList extends Enum { - readonly isAll: boolean; - readonly isEmpty: boolean; - readonly isCustom: boolean; - readonly asCustom: Vec; - readonly type: 'All' | 'Empty' | 'Custom'; - } - - /** @name RmrkTraitsTheme (314) */ - interface RmrkTraitsTheme extends Struct { - readonly name: Bytes; - readonly properties: Vec; - readonly inherit: bool; - } - - /** @name RmrkTraitsThemeThemeProperty (316) */ - interface RmrkTraitsThemeThemeProperty extends Struct { - readonly key: Bytes; - readonly value: Bytes; - } - - /** @name PalletAppPromotionCall (318) */ + /** @name PalletAppPromotionCall (363) */ interface PalletAppPromotionCall extends Enum { readonly isSetAdminAddress: boolean; readonly asSetAdminAddress: { @@ -2959,7 +3042,7 @@ readonly asStake: { readonly amount: u128; } & Struct; - readonly isUnstake: boolean; + readonly isUnstakeAll: boolean; readonly isSponsorCollection: boolean; readonly asSponsorCollection: { readonly collectionId: u32; @@ -2980,10 +3063,14 @@ readonly asPayoutStakers: { readonly stakersNumber: Option; } & Struct; - readonly type: 'SetAdminAddress' | 'Stake' | 'Unstake' | 'SponsorCollection' | 'StopSponsoringCollection' | 'SponsorContract' | 'StopSponsoringContract' | 'PayoutStakers'; + readonly isUnstakePartial: boolean; + readonly asUnstakePartial: { + readonly amount: u128; + } & Struct; + readonly type: 'SetAdminAddress' | 'Stake' | 'UnstakeAll' | 'SponsorCollection' | 'StopSponsoringCollection' | 'SponsorContract' | 'StopSponsoringContract' | 'PayoutStakers' | 'UnstakePartial'; } - /** @name PalletForeignAssetsModuleCall (319) */ + /** @name PalletForeignAssetsModuleCall (364) */ interface PalletForeignAssetsModuleCall extends Enum { readonly isRegisterForeignAsset: boolean; readonly asRegisterForeignAsset: { @@ -3000,7 +3087,7 @@ readonly type: 'RegisterForeignAsset' | 'UpdateForeignAsset'; } - /** @name PalletEvmCall (320) */ + /** @name PalletEvmCall (365) */ interface PalletEvmCall extends Enum { readonly isWithdraw: boolean; readonly asWithdraw: { @@ -3045,7 +3132,7 @@ readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2'; } - /** @name PalletEthereumCall (326) */ + /** @name PalletEthereumCall (371) */ interface PalletEthereumCall extends Enum { readonly isTransact: boolean; readonly asTransact: { @@ -3054,7 +3141,7 @@ readonly type: 'Transact'; } - /** @name EthereumTransactionTransactionV2 (327) */ + /** @name EthereumTransactionTransactionV2 (372) */ interface EthereumTransactionTransactionV2 extends Enum { readonly isLegacy: boolean; readonly asLegacy: EthereumTransactionLegacyTransaction; @@ -3065,7 +3152,7 @@ readonly type: 'Legacy' | 'Eip2930' | 'Eip1559'; } - /** @name EthereumTransactionLegacyTransaction (328) */ + /** @name EthereumTransactionLegacyTransaction (373) */ interface EthereumTransactionLegacyTransaction extends Struct { readonly nonce: U256; readonly gasPrice: U256; @@ -3076,7 +3163,7 @@ readonly signature: EthereumTransactionTransactionSignature; } - /** @name EthereumTransactionTransactionAction (329) */ + /** @name EthereumTransactionTransactionAction (374) */ interface EthereumTransactionTransactionAction extends Enum { readonly isCall: boolean; readonly asCall: H160; @@ -3084,14 +3171,14 @@ readonly type: 'Call' | 'Create'; } - /** @name EthereumTransactionTransactionSignature (330) */ + /** @name EthereumTransactionTransactionSignature (375) */ interface EthereumTransactionTransactionSignature extends Struct { readonly v: u64; readonly r: H256; readonly s: H256; } - /** @name EthereumTransactionEip2930Transaction (332) */ + /** @name EthereumTransactionEip2930Transaction (377) */ interface EthereumTransactionEip2930Transaction extends Struct { readonly chainId: u64; readonly nonce: U256; @@ -3106,13 +3193,13 @@ readonly s: H256; } - /** @name EthereumTransactionAccessListItem (334) */ + /** @name EthereumTransactionAccessListItem (379) */ interface EthereumTransactionAccessListItem extends Struct { readonly address: H160; readonly storageKeys: Vec; } - /** @name EthereumTransactionEip1559Transaction (335) */ + /** @name EthereumTransactionEip1559Transaction (380) */ interface EthereumTransactionEip1559Transaction extends Struct { readonly chainId: u64; readonly nonce: U256; @@ -3128,7 +3215,7 @@ readonly s: H256; } - /** @name PalletEvmMigrationCall (336) */ + /** @name PalletEvmMigrationCall (381) */ interface PalletEvmMigrationCall extends Enum { readonly isBegin: boolean; readonly asBegin: { @@ -3152,17 +3239,23 @@ readonly asInsertEvents: { readonly events: Vec; } & Struct; - readonly type: 'Begin' | 'SetData' | 'Finish' | 'InsertEthLogs' | 'InsertEvents'; + readonly isRemoveRmrkData: boolean; + readonly type: 'Begin' | 'SetData' | 'Finish' | 'InsertEthLogs' | 'InsertEvents' | 'RemoveRmrkData'; } - /** @name PalletMaintenanceCall (340) */ + /** @name PalletMaintenanceCall (385) */ interface PalletMaintenanceCall extends Enum { readonly isEnable: boolean; readonly isDisable: boolean; - readonly type: 'Enable' | 'Disable'; + readonly isExecutePreimage: boolean; + readonly asExecutePreimage: { + readonly hash_: H256; + readonly weightBound: SpWeightsWeightV2Weight; + } & Struct; + readonly type: 'Enable' | 'Disable' | 'ExecutePreimage'; } - /** @name PalletTestUtilsCall (341) */ + /** @name PalletTestUtilsCall (386) */ interface PalletTestUtilsCall extends Enum { readonly isEnable: boolean; readonly isSetTestValue: boolean; @@ -3182,13 +3275,13 @@ readonly type: 'Enable' | 'SetTestValue' | 'SetTestValueAndRollback' | 'IncTestValue' | 'JustTakeFee' | 'BatchAll'; } - /** @name PalletSudoError (343) */ + /** @name PalletSudoError (388) */ interface PalletSudoError extends Enum { readonly isRequireSudo: boolean; readonly type: 'RequireSudo'; } - /** @name OrmlVestingModuleError (345) */ + /** @name OrmlVestingModuleError (390) */ interface OrmlVestingModuleError extends Enum { readonly isZeroVestingPeriod: boolean; readonly isZeroVestingPeriodCount: boolean; @@ -3199,7 +3292,7 @@ readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded'; } - /** @name OrmlXtokensModuleError (346) */ + /** @name OrmlXtokensModuleError (391) */ interface OrmlXtokensModuleError extends Enum { readonly isAssetHasNoReserve: boolean; readonly isNotCrossChainTransfer: boolean; @@ -3223,26 +3316,26 @@ readonly type: 'AssetHasNoReserve' | 'NotCrossChainTransfer' | 'InvalidDest' | 'NotCrossChainTransferableCurrency' | 'UnweighableMessage' | 'XcmExecutionFailed' | 'CannotReanchor' | 'InvalidAncestry' | 'InvalidAsset' | 'DestinationNotInvertible' | 'BadVersion' | 'DistinctReserveForAssetAndFee' | 'ZeroFee' | 'ZeroAmount' | 'TooManyAssetsBeingSent' | 'AssetIndexNonExistent' | 'FeeNotEnough' | 'NotSupportedMultiLocation' | 'MinXcmFeeNotDefined'; } - /** @name OrmlTokensBalanceLock (349) */ + /** @name OrmlTokensBalanceLock (394) */ interface OrmlTokensBalanceLock extends Struct { readonly id: U8aFixed; readonly amount: u128; } - /** @name OrmlTokensAccountData (351) */ + /** @name OrmlTokensAccountData (396) */ interface OrmlTokensAccountData extends Struct { readonly free: u128; readonly reserved: u128; readonly frozen: u128; } - /** @name OrmlTokensReserveData (353) */ + /** @name OrmlTokensReserveData (398) */ interface OrmlTokensReserveData extends Struct { readonly id: Null; readonly amount: u128; } - /** @name OrmlTokensModuleError (355) */ + /** @name OrmlTokensModuleError (400) */ interface OrmlTokensModuleError extends Enum { readonly isBalanceTooLow: boolean; readonly isAmountIntoBalanceFailed: boolean; @@ -3255,21 +3348,78 @@ readonly type: 'BalanceTooLow' | 'AmountIntoBalanceFailed' | 'LiquidityRestrictions' | 'MaxLocksExceeded' | 'KeepAlive' | 'ExistentialDeposit' | 'DeadAccount' | 'TooManyReserves'; } - /** @name CumulusPalletXcmpQueueInboundChannelDetails (357) */ + /** @name PalletIdentityRegistrarInfo (405) */ + interface PalletIdentityRegistrarInfo extends Struct { + readonly account: AccountId32; + readonly fee: u128; + readonly fields: PalletIdentityBitFlags; + } + + /** @name PalletIdentityError (407) */ + interface PalletIdentityError extends Enum { + readonly isTooManySubAccounts: boolean; + readonly isNotFound: boolean; + readonly isNotNamed: boolean; + readonly isEmptyIndex: boolean; + readonly isFeeChanged: boolean; + readonly isNoIdentity: boolean; + readonly isStickyJudgement: boolean; + readonly isJudgementGiven: boolean; + readonly isInvalidJudgement: boolean; + readonly isInvalidIndex: boolean; + readonly isInvalidTarget: boolean; + readonly isTooManyFields: boolean; + readonly isTooManyRegistrars: boolean; + readonly isAlreadyClaimed: boolean; + readonly isNotSub: boolean; + readonly isNotOwned: boolean; + readonly isJudgementForDifferentIdentity: boolean; + readonly isJudgementPaymentFailed: boolean; + readonly type: 'TooManySubAccounts' | 'NotFound' | 'NotNamed' | 'EmptyIndex' | 'FeeChanged' | 'NoIdentity' | 'StickyJudgement' | 'JudgementGiven' | 'InvalidJudgement' | 'InvalidIndex' | 'InvalidTarget' | 'TooManyFields' | 'TooManyRegistrars' | 'AlreadyClaimed' | 'NotSub' | 'NotOwned' | 'JudgementForDifferentIdentity' | 'JudgementPaymentFailed'; + } + + /** @name PalletPreimageRequestStatus (408) */ + interface PalletPreimageRequestStatus extends Enum { + readonly isUnrequested: boolean; + readonly asUnrequested: { + readonly deposit: ITuple<[AccountId32, u128]>; + readonly len: u32; + } & Struct; + readonly isRequested: boolean; + readonly asRequested: { + readonly deposit: Option>; + readonly count: u32; + readonly len: Option; + } & Struct; + readonly type: 'Unrequested' | 'Requested'; + } + + /** @name PalletPreimageError (413) */ + interface PalletPreimageError extends Enum { + readonly isTooBig: boolean; + readonly isAlreadyNoted: boolean; + readonly isNotAuthorized: boolean; + readonly isNotNoted: boolean; + readonly isRequested: boolean; + readonly isNotRequested: boolean; + readonly type: 'TooBig' | 'AlreadyNoted' | 'NotAuthorized' | 'NotNoted' | 'Requested' | 'NotRequested'; + } + + /** @name CumulusPalletXcmpQueueInboundChannelDetails (415) */ interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct { readonly sender: u32; readonly state: CumulusPalletXcmpQueueInboundState; readonly messageMetadata: Vec>; } - /** @name CumulusPalletXcmpQueueInboundState (358) */ + /** @name CumulusPalletXcmpQueueInboundState (416) */ interface CumulusPalletXcmpQueueInboundState extends Enum { readonly isOk: boolean; readonly isSuspended: boolean; readonly type: 'Ok' | 'Suspended'; } - /** @name PolkadotParachainPrimitivesXcmpMessageFormat (361) */ + /** @name PolkadotParachainPrimitivesXcmpMessageFormat (419) */ interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum { readonly isConcatenatedVersionedXcm: boolean; readonly isConcatenatedEncodedBlob: boolean; @@ -3277,7 +3427,7 @@ readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals'; } - /** @name CumulusPalletXcmpQueueOutboundChannelDetails (364) */ + /** @name CumulusPalletXcmpQueueOutboundChannelDetails (422) */ interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct { readonly recipient: u32; readonly state: CumulusPalletXcmpQueueOutboundState; @@ -3286,14 +3436,14 @@ readonly lastIndex: u16; } - /** @name CumulusPalletXcmpQueueOutboundState (365) */ + /** @name CumulusPalletXcmpQueueOutboundState (423) */ interface CumulusPalletXcmpQueueOutboundState extends Enum { readonly isOk: boolean; readonly isSuspended: boolean; readonly type: 'Ok' | 'Suspended'; } - /** @name CumulusPalletXcmpQueueQueueConfigData (367) */ + /** @name CumulusPalletXcmpQueueQueueConfigData (425) */ interface CumulusPalletXcmpQueueQueueConfigData extends Struct { readonly suspendThreshold: u32; readonly dropThreshold: u32; @@ -3303,7 +3453,7 @@ readonly xcmpMaxIndividualWeight: SpWeightsWeightV2Weight; } - /** @name CumulusPalletXcmpQueueError (369) */ + /** @name CumulusPalletXcmpQueueError (427) */ interface CumulusPalletXcmpQueueError extends Enum { readonly isFailedToSend: boolean; readonly isBadXcmOrigin: boolean; @@ -3313,7 +3463,7 @@ readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit'; } - /** @name PalletXcmError (370) */ + /** @name PalletXcmError (428) */ interface PalletXcmError extends Enum { readonly isUnreachable: boolean; readonly isSendFailure: boolean; @@ -3331,29 +3481,29 @@ readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed'; } - /** @name CumulusPalletXcmError (371) */ + /** @name CumulusPalletXcmError (429) */ type CumulusPalletXcmError = Null; - /** @name CumulusPalletDmpQueueConfigData (372) */ + /** @name CumulusPalletDmpQueueConfigData (430) */ interface CumulusPalletDmpQueueConfigData extends Struct { readonly maxIndividual: SpWeightsWeightV2Weight; } - /** @name CumulusPalletDmpQueuePageIndexData (373) */ + /** @name CumulusPalletDmpQueuePageIndexData (431) */ interface CumulusPalletDmpQueuePageIndexData extends Struct { readonly beginUsed: u32; readonly endUsed: u32; readonly overweightCount: u64; } - /** @name CumulusPalletDmpQueueError (376) */ + /** @name CumulusPalletDmpQueueError (434) */ interface CumulusPalletDmpQueueError extends Enum { readonly isUnknown: boolean; readonly isOverLimit: boolean; readonly type: 'Unknown' | 'OverLimit'; } - /** @name PalletUniqueError (380) */ + /** @name PalletUniqueError (438) */ interface PalletUniqueError extends Enum { readonly isCollectionDecimalPointLimitExceeded: boolean; readonly isEmptyArgument: boolean; @@ -3361,13 +3511,13 @@ readonly type: 'CollectionDecimalPointLimitExceeded' | 'EmptyArgument' | 'RepartitionCalledOnNonRefungibleCollection'; } - /** @name PalletConfigurationError (381) */ + /** @name PalletConfigurationError (439) */ interface PalletConfigurationError extends Enum { readonly isInconsistentConfiguration: boolean; readonly type: 'InconsistentConfiguration'; } - /** @name UpDataStructsCollection (382) */ + /** @name UpDataStructsCollection (440) */ interface UpDataStructsCollection extends Struct { readonly owner: AccountId32; readonly mode: UpDataStructsCollectionMode; @@ -3380,7 +3530,7 @@ readonly flags: U8aFixed; } - /** @name UpDataStructsSponsorshipStateAccountId32 (383) */ + /** @name UpDataStructsSponsorshipStateAccountId32 (441) */ interface UpDataStructsSponsorshipStateAccountId32 extends Enum { readonly isDisabled: boolean; readonly isUnconfirmed: boolean; @@ -3390,43 +3540,43 @@ readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed'; } - /** @name UpDataStructsProperties (385) */ + /** @name UpDataStructsProperties (442) */ interface UpDataStructsProperties extends Struct { readonly map: UpDataStructsPropertiesMapBoundedVec; readonly consumedSpace: u32; readonly spaceLimit: u32; } - /** @name UpDataStructsPropertiesMapBoundedVec (386) */ + /** @name UpDataStructsPropertiesMapBoundedVec (443) */ interface UpDataStructsPropertiesMapBoundedVec extends BTreeMap {} - /** @name UpDataStructsPropertiesMapPropertyPermission (391) */ + /** @name UpDataStructsPropertiesMapPropertyPermission (448) */ interface UpDataStructsPropertiesMapPropertyPermission extends BTreeMap {} - /** @name UpDataStructsCollectionStats (398) */ + /** @name UpDataStructsCollectionStats (455) */ interface UpDataStructsCollectionStats extends Struct { readonly created: u32; readonly destroyed: u32; readonly alive: u32; } - /** @name UpDataStructsTokenChild (399) */ + /** @name UpDataStructsTokenChild (456) */ interface UpDataStructsTokenChild extends Struct { readonly token: u32; readonly collection: u32; } - /** @name PhantomTypeUpDataStructs (400) */ - interface PhantomTypeUpDataStructs extends Vec> {} + /** @name PhantomTypeUpDataStructs (457) */ + interface PhantomTypeUpDataStructs extends Vec> {} - /** @name UpDataStructsTokenData (402) */ + /** @name UpDataStructsTokenData (459) */ interface UpDataStructsTokenData extends Struct { readonly properties: Vec; readonly owner: Option; readonly pieces: u128; } - /** @name UpDataStructsRpcCollection (404) */ + /** @name UpDataStructsRpcCollection (461) */ interface UpDataStructsRpcCollection extends Struct { readonly owner: AccountId32; readonly mode: UpDataStructsCollectionMode; @@ -3442,64 +3592,13 @@ readonly flags: UpDataStructsRpcCollectionFlags; } - /** @name UpDataStructsRpcCollectionFlags (405) */ + /** @name UpDataStructsRpcCollectionFlags (462) */ interface UpDataStructsRpcCollectionFlags extends Struct { readonly foreign: bool; readonly erc721metadata: bool; } - /** @name RmrkTraitsCollectionCollectionInfo (406) */ - interface RmrkTraitsCollectionCollectionInfo extends Struct { - readonly issuer: AccountId32; - readonly metadata: Bytes; - readonly max: Option; - readonly symbol: Bytes; - readonly nftsCount: u32; - } - - /** @name RmrkTraitsNftNftInfo (407) */ - interface RmrkTraitsNftNftInfo extends Struct { - readonly owner: RmrkTraitsNftAccountIdOrCollectionNftTuple; - readonly royalty: Option; - readonly metadata: Bytes; - readonly equipped: bool; - readonly pending: bool; - } - - /** @name RmrkTraitsNftRoyaltyInfo (409) */ - interface RmrkTraitsNftRoyaltyInfo extends Struct { - readonly recipient: AccountId32; - readonly amount: Permill; - } - - /** @name RmrkTraitsResourceResourceInfo (410) */ - interface RmrkTraitsResourceResourceInfo extends Struct { - readonly id: u32; - readonly resource: RmrkTraitsResourceResourceTypes; - readonly pending: bool; - readonly pendingRemoval: bool; - } - - /** @name RmrkTraitsPropertyPropertyInfo (411) */ - interface RmrkTraitsPropertyPropertyInfo extends Struct { - readonly key: Bytes; - readonly value: Bytes; - } - - /** @name RmrkTraitsBaseBaseInfo (412) */ - interface RmrkTraitsBaseBaseInfo extends Struct { - readonly issuer: AccountId32; - readonly baseType: Bytes; - readonly symbol: Bytes; - } - - /** @name RmrkTraitsNftNftChild (413) */ - interface RmrkTraitsNftNftChild extends Struct { - readonly collectionId: u32; - readonly nftId: u32; - } - - /** @name UpPovEstimateRpcPovInfo (414) */ + /** @name UpPovEstimateRpcPovInfo (463) */ interface UpPovEstimateRpcPovInfo extends Struct { readonly proofSize: u64; readonly compactProofSize: u64; @@ -3508,7 +3607,7 @@ readonly keyValues: Vec; } - /** @name SpRuntimeTransactionValidityTransactionValidityError (417) */ + /** @name SpRuntimeTransactionValidityTransactionValidityError (466) */ interface SpRuntimeTransactionValidityTransactionValidityError extends Enum { readonly isInvalid: boolean; readonly asInvalid: SpRuntimeTransactionValidityInvalidTransaction; @@ -3517,7 +3616,7 @@ readonly type: 'Invalid' | 'Unknown'; } - /** @name SpRuntimeTransactionValidityInvalidTransaction (418) */ + /** @name SpRuntimeTransactionValidityInvalidTransaction (467) */ interface SpRuntimeTransactionValidityInvalidTransaction extends Enum { readonly isCall: boolean; readonly isPayment: boolean; @@ -3534,7 +3633,7 @@ readonly type: 'Call' | 'Payment' | 'Future' | 'Stale' | 'BadProof' | 'AncientBirthBlock' | 'ExhaustsResources' | 'Custom' | 'BadMandatory' | 'MandatoryValidation' | 'BadSigner'; } - /** @name SpRuntimeTransactionValidityUnknownTransaction (419) */ + /** @name SpRuntimeTransactionValidityUnknownTransaction (468) */ interface SpRuntimeTransactionValidityUnknownTransaction extends Enum { readonly isCannotLookup: boolean; readonly isNoUnsignedValidator: boolean; @@ -3543,13 +3642,13 @@ readonly type: 'CannotLookup' | 'NoUnsignedValidator' | 'Custom'; } - /** @name UpPovEstimateRpcTrieKeyValue (421) */ + /** @name UpPovEstimateRpcTrieKeyValue (470) */ interface UpPovEstimateRpcTrieKeyValue extends Struct { readonly key: Bytes; readonly value: Bytes; } - /** @name PalletCommonError (423) */ + /** @name PalletCommonError (472) */ interface PalletCommonError extends Enum { readonly isCollectionNotFound: boolean; readonly isMustBeTokenOwner: boolean; @@ -3591,7 +3690,7 @@ readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'CantDestroyNotEmptyCollection' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsNotEthMirror' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'UserIsNotAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached' | 'PropertyKeyIsTooLong' | 'InvalidCharacterInPropertyKey' | 'EmptyPropertyKey' | 'CollectionIsExternal' | 'CollectionIsInternal' | 'ConfirmSponsorshipFail' | 'UserIsNotCollectionAdmin'; } - /** @name PalletFungibleError (425) */ + /** @name PalletFungibleError (474) */ interface PalletFungibleError extends Enum { readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean; readonly isFungibleItemsHaveNoId: boolean; @@ -3603,7 +3702,7 @@ readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed' | 'SettingAllowanceForAllNotAllowed' | 'FungibleTokensAreAlwaysValid'; } - /** @name PalletRefungibleError (429) */ + /** @name PalletRefungibleError (478) */ interface PalletRefungibleError extends Enum { readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean; readonly isWrongRefungiblePieces: boolean; @@ -3613,19 +3712,19 @@ readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RepartitionWhileNotOwningAllPieces' | 'RefungibleDisallowsNesting' | 'SettingPropertiesNotAllowed'; } - /** @name PalletNonfungibleItemData (430) */ + /** @name PalletNonfungibleItemData (479) */ interface PalletNonfungibleItemData extends Struct { readonly owner: PalletEvmAccountBasicCrossAccountIdRepr; } - /** @name UpDataStructsPropertyScope (432) */ + /** @name UpDataStructsPropertyScope (481) */ interface UpDataStructsPropertyScope extends Enum { readonly isNone: boolean; readonly isRmrk: boolean; readonly type: 'None' | 'Rmrk'; } - /** @name PalletNonfungibleError (435) */ + /** @name PalletNonfungibleError (484) */ interface PalletNonfungibleError extends Enum { readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean; readonly isNonfungibleItemsHaveNoAmount: boolean; @@ -3633,52 +3732,17 @@ readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount' | 'CantBurnNftWithChildren'; } - /** @name PalletStructureError (436) */ + /** @name PalletStructureError (485) */ interface PalletStructureError extends Enum { readonly isOuroborosDetected: boolean; readonly isDepthLimit: boolean; readonly isBreadthLimit: boolean; readonly isTokenNotFound: boolean; - readonly type: 'OuroborosDetected' | 'DepthLimit' | 'BreadthLimit' | 'TokenNotFound'; + readonly isCantNestTokenUnderCollection: boolean; + readonly type: 'OuroborosDetected' | 'DepthLimit' | 'BreadthLimit' | 'TokenNotFound' | 'CantNestTokenUnderCollection'; } - /** @name PalletRmrkCoreError (437) */ - interface PalletRmrkCoreError extends Enum { - readonly isCorruptedCollectionType: boolean; - readonly isRmrkPropertyKeyIsTooLong: boolean; - readonly isRmrkPropertyValueIsTooLong: boolean; - readonly isRmrkPropertyIsNotFound: boolean; - readonly isUnableToDecodeRmrkData: boolean; - readonly isCollectionNotEmpty: boolean; - readonly isNoAvailableCollectionId: boolean; - readonly isNoAvailableNftId: boolean; - readonly isCollectionUnknown: boolean; - readonly isNoPermission: boolean; - readonly isNonTransferable: boolean; - readonly isCollectionFullOrLocked: boolean; - readonly isResourceDoesntExist: boolean; - readonly isCannotSendToDescendentOrSelf: boolean; - readonly isCannotAcceptNonOwnedNft: boolean; - readonly isCannotRejectNonOwnedNft: boolean; - readonly isCannotRejectNonPendingNft: boolean; - readonly isResourceNotPending: boolean; - readonly isNoAvailableResourceId: boolean; - readonly type: 'CorruptedCollectionType' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'RmrkPropertyIsNotFound' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'CannotRejectNonPendingNft' | 'ResourceNotPending' | 'NoAvailableResourceId'; - } - - /** @name PalletRmrkEquipError (439) */ - interface PalletRmrkEquipError extends Enum { - readonly isPermissionError: boolean; - readonly isNoAvailableBaseId: boolean; - readonly isNoAvailablePartId: boolean; - readonly isBaseDoesntExist: boolean; - readonly isNeedsDefaultThemeFirst: boolean; - readonly isPartDoesntExist: boolean; - readonly isNoEquippableOnFixedPart: boolean; - readonly type: 'PermissionError' | 'NoAvailableBaseId' | 'NoAvailablePartId' | 'BaseDoesntExist' | 'NeedsDefaultThemeFirst' | 'PartDoesntExist' | 'NoEquippableOnFixedPart'; - } - - /** @name PalletAppPromotionError (445) */ + /** @name PalletAppPromotionError (490) */ interface PalletAppPromotionError extends Enum { readonly isAdminNotSet: boolean; readonly isNoPermission: boolean; @@ -3686,10 +3750,11 @@ readonly isPendingForBlockOverflow: boolean; readonly isSponsorNotSet: boolean; readonly isIncorrectLockedBalanceOperation: boolean; - readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'SponsorNotSet' | 'IncorrectLockedBalanceOperation'; + readonly isInsufficientStakedBalance: boolean; + readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'SponsorNotSet' | 'IncorrectLockedBalanceOperation' | 'InsufficientStakedBalance'; } - /** @name PalletForeignAssetsModuleError (446) */ + /** @name PalletForeignAssetsModuleError (491) */ interface PalletForeignAssetsModuleError extends Enum { readonly isBadLocation: boolean; readonly isMultiLocationExisted: boolean; @@ -3698,7 +3763,7 @@ readonly type: 'BadLocation' | 'MultiLocationExisted' | 'AssetIdNotExists' | 'AssetIdExisted'; } - /** @name PalletEvmError (448) */ + /** @name PalletEvmError (493) */ interface PalletEvmError extends Enum { readonly isBalanceLow: boolean; readonly isFeeOverflow: boolean; @@ -3714,7 +3779,7 @@ readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce' | 'GasLimitTooLow' | 'GasLimitTooHigh' | 'Undefined' | 'Reentrancy' | 'TransactionMustComeFromEOA'; } - /** @name FpRpcTransactionStatus (451) */ + /** @name FpRpcTransactionStatus (496) */ interface FpRpcTransactionStatus extends Struct { readonly transactionHash: H256; readonly transactionIndex: u32; @@ -3725,10 +3790,10 @@ readonly logsBloom: EthbloomBloom; } - /** @name EthbloomBloom (453) */ + /** @name EthbloomBloom (498) */ interface EthbloomBloom extends U8aFixed {} - /** @name EthereumReceiptReceiptV3 (455) */ + /** @name EthereumReceiptReceiptV3 (500) */ interface EthereumReceiptReceiptV3 extends Enum { readonly isLegacy: boolean; readonly asLegacy: EthereumReceiptEip658ReceiptData; @@ -3739,7 +3804,7 @@ readonly type: 'Legacy' | 'Eip2930' | 'Eip1559'; } - /** @name EthereumReceiptEip658ReceiptData (456) */ + /** @name EthereumReceiptEip658ReceiptData (501) */ interface EthereumReceiptEip658ReceiptData extends Struct { readonly statusCode: u8; readonly usedGas: U256; @@ -3747,14 +3812,14 @@ readonly logs: Vec; } - /** @name EthereumBlock (457) */ + /** @name EthereumBlock (502) */ interface EthereumBlock extends Struct { readonly header: EthereumHeader; readonly transactions: Vec; readonly ommers: Vec; } - /** @name EthereumHeader (458) */ + /** @name EthereumHeader (503) */ interface EthereumHeader extends Struct { readonly parentHash: H256; readonly ommersHash: H256; @@ -3773,24 +3838,24 @@ readonly nonce: EthereumTypesHashH64; } - /** @name EthereumTypesHashH64 (459) */ + /** @name EthereumTypesHashH64 (504) */ interface EthereumTypesHashH64 extends U8aFixed {} - /** @name PalletEthereumError (464) */ + /** @name PalletEthereumError (509) */ interface PalletEthereumError extends Enum { readonly isInvalidSignature: boolean; readonly isPreLogExists: boolean; readonly type: 'InvalidSignature' | 'PreLogExists'; } - /** @name PalletEvmCoderSubstrateError (465) */ + /** @name PalletEvmCoderSubstrateError (510) */ interface PalletEvmCoderSubstrateError extends Enum { readonly isOutOfGas: boolean; readonly isOutOfFund: boolean; readonly type: 'OutOfGas' | 'OutOfFund'; } - /** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr (466) */ + /** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr (511) */ interface UpDataStructsSponsorshipStateBasicCrossAccountIdRepr extends Enum { readonly isDisabled: boolean; readonly isUnconfirmed: boolean; @@ -3800,7 +3865,7 @@ readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed'; } - /** @name PalletEvmContractHelpersSponsoringModeT (467) */ + /** @name PalletEvmContractHelpersSponsoringModeT (512) */ interface PalletEvmContractHelpersSponsoringModeT extends Enum { readonly isDisabled: boolean; readonly isAllowlisted: boolean; @@ -3808,7 +3873,7 @@ readonly type: 'Disabled' | 'Allowlisted' | 'Generous'; } - /** @name PalletEvmContractHelpersError (473) */ + /** @name PalletEvmContractHelpersError (518) */ interface PalletEvmContractHelpersError extends Enum { readonly isNoPermission: boolean; readonly isNoPendingSponsor: boolean; @@ -3816,7 +3881,7 @@ readonly type: 'NoPermission' | 'NoPendingSponsor' | 'TooManyMethodsHaveSponsoredLimit'; } - /** @name PalletEvmMigrationError (474) */ + /** @name PalletEvmMigrationError (519) */ interface PalletEvmMigrationError extends Enum { readonly isAccountNotEmpty: boolean; readonly isAccountIsNotMigrating: boolean; @@ -3824,17 +3889,17 @@ readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating' | 'BadEvent'; } - /** @name PalletMaintenanceError (475) */ + /** @name PalletMaintenanceError (520) */ type PalletMaintenanceError = Null; - /** @name PalletTestUtilsError (476) */ + /** @name PalletTestUtilsError (521) */ interface PalletTestUtilsError extends Enum { readonly isTestPalletDisabled: boolean; readonly isTriggerRollback: boolean; readonly type: 'TestPalletDisabled' | 'TriggerRollback'; } - /** @name SpRuntimeMultiSignature (478) */ + /** @name SpRuntimeMultiSignature (523) */ interface SpRuntimeMultiSignature extends Enum { readonly isEd25519: boolean; readonly asEd25519: SpCoreEd25519Signature; @@ -3845,43 +3910,43 @@ readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa'; } - /** @name SpCoreEd25519Signature (479) */ + /** @name SpCoreEd25519Signature (524) */ interface SpCoreEd25519Signature extends U8aFixed {} - /** @name SpCoreSr25519Signature (481) */ + /** @name SpCoreSr25519Signature (526) */ interface SpCoreSr25519Signature extends U8aFixed {} - /** @name SpCoreEcdsaSignature (482) */ + /** @name SpCoreEcdsaSignature (527) */ interface SpCoreEcdsaSignature extends U8aFixed {} - /** @name FrameSystemExtensionsCheckSpecVersion (485) */ + /** @name FrameSystemExtensionsCheckSpecVersion (530) */ type FrameSystemExtensionsCheckSpecVersion = Null; - /** @name FrameSystemExtensionsCheckTxVersion (486) */ + /** @name FrameSystemExtensionsCheckTxVersion (531) */ type FrameSystemExtensionsCheckTxVersion = Null; - /** @name FrameSystemExtensionsCheckGenesis (487) */ + /** @name FrameSystemExtensionsCheckGenesis (532) */ type FrameSystemExtensionsCheckGenesis = Null; - /** @name FrameSystemExtensionsCheckNonce (490) */ + /** @name FrameSystemExtensionsCheckNonce (535) */ interface FrameSystemExtensionsCheckNonce extends Compact {} - /** @name FrameSystemExtensionsCheckWeight (491) */ + /** @name FrameSystemExtensionsCheckWeight (536) */ type FrameSystemExtensionsCheckWeight = Null; - /** @name OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance (492) */ + /** @name OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance (537) */ type OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance = Null; - /** @name OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls (493) */ + /** @name OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls (538) */ type OpalRuntimeRuntimeCommonIdentityDisableIdentityCalls = Null; - /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (494) */ + /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (539) */ interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact {} - /** @name OpalRuntimeRuntime (495) */ + /** @name OpalRuntimeRuntime (540) */ type OpalRuntimeRuntime = Null; - /** @name PalletEthereumFakeTransactionFinalizer (496) */ + /** @name PalletEthereumFakeTransactionFinalizer (541) */ type PalletEthereumFakeTransactionFinalizer = Null; } // declare module --- a/tests/src/interfaces/types.ts +++ b/tests/src/interfaces/types.ts @@ -3,6 +3,5 @@ export * from './unique/types'; export * from './appPromotion/types'; -export * from './rmrk/types'; export * from './povinfo/types'; export * from './default/types'; --- /dev/null +++ b/tests/src/maintenance.seqtest.ts @@ -0,0 +1,368 @@ +// Copyright 2019-2022 Unique Network (Gibraltar) Ltd. +// This file is part of Unique Network. + +// Unique Network is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Unique Network is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Unique Network. If not, see . + +import {IKeyringPair} from '@polkadot/types/types'; +import {ApiPromise} from '@polkadot/api'; +import {expect, itSched, itSub, Pallets, requirePalletsOrSkip, usingPlaygrounds} from './util'; +import {itEth} from './eth/util'; +import {UniqueHelper} from './util/playgrounds/unique'; + +async function maintenanceEnabled(api: ApiPromise): Promise { + return (await api.query.maintenance.enabled()).toJSON() as boolean; +} + +describe('Integration Test: Maintenance Functionality', () => { + let superuser: IKeyringPair; + let donor: IKeyringPair; + let bob: IKeyringPair; + + before(async function() { + await usingPlaygrounds(async (helper, privateKey) => { + requirePalletsOrSkip(this, helper, [Pallets.Maintenance]); + superuser = await privateKey('//Alice'); + donor = await privateKey({filename: __filename}); + [bob] = await helper.arrange.createAccounts([10000n], donor); + + }); + }); + + describe('Maintenance Mode', () => { + before(async function() { + await usingPlaygrounds(async (helper) => { + if (await maintenanceEnabled(helper.getApi())) { + console.warn('\tMaintenance mode was left enabled BEFORE the test suite! Disabling it now.'); + await expect(helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', [])).to.be.fulfilled; + } + }); + }); + + itSub('Allows superuser to enable and disable maintenance mode - and disallows anyone else', async ({helper}) => { + // Make sure non-sudo can't enable maintenance mode + await expect(helper.executeExtrinsic(superuser, 'api.tx.maintenance.enable', []), 'on commoner enabling MM') + .to.be.rejectedWith(/BadOrigin/); + + // Set maintenance mode + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; + + // Make sure non-sudo can't disable maintenance mode + await expect(helper.executeExtrinsic(bob, 'api.tx.maintenance.disable', []), 'on commoner disabling MM') + .to.be.rejectedWith(/BadOrigin/); + + // Disable maintenance mode + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; + }); + + itSub('MM blocks unique pallet calls', async ({helper}) => { + // Can create an NFT collection before enabling the MM + const nftCollection = await helper.nft.mintCollection(bob, { + tokenPropertyPermissions: [{key: 'test', permission: { + collectionAdmin: true, + tokenOwner: true, + mutable: true, + }}], + }); + + // Can mint an NFT before enabling the MM + const nft = await nftCollection.mintToken(bob); + + // Can create an FT collection before enabling the MM + const ftCollection = await helper.ft.mintCollection(superuser); + + // Can mint an FT before enabling the MM + await expect(ftCollection.mint(superuser)).to.be.fulfilled; + + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; + + // Unable to create a collection when the MM is enabled + await expect(helper.nft.mintCollection(superuser), 'cudo forbidden stuff') + .to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); + + // Unable to set token properties when the MM is enabled + await expect(nft.setProperties( + bob, + [{key: 'test', value: 'test-val'}], + )).to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); + + // Unable to mint an NFT when the MM is enabled + await expect(nftCollection.mintToken(superuser)) + .to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); + + // Unable to mint an FT when the MM is enabled + await expect(ftCollection.mint(superuser)) + .to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); + + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; + + // Can create a collection after disabling the MM + await expect(helper.nft.mintCollection(bob), 'MM is disabled, the collection should be created').to.be.fulfilled; + + // Can set token properties after disabling the MM + await nft.setProperties(bob, [{key: 'test', value: 'test-val'}]); + + // Can mint an NFT after disabling the MM + await nftCollection.mintToken(bob); + + // Can mint an FT after disabling the MM + await ftCollection.mint(superuser); + }); + + itSub.ifWithPallets('MM blocks unique pallet calls (Re-Fungible)', [Pallets.ReFungible], async ({helper}) => { + // Can create an RFT collection before enabling the MM + const rftCollection = await helper.rft.mintCollection(superuser); + + // Can mint an RFT before enabling the MM + await expect(rftCollection.mintToken(superuser)).to.be.fulfilled; + + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; + + // Unable to mint an RFT when the MM is enabled + await expect(rftCollection.mintToken(superuser)) + .to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); + + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; + + // Can mint an RFT after disabling the MM + await rftCollection.mintToken(superuser); + }); + + itSub('MM allows native token transfers and RPC calls', async ({helper}) => { + // We can use RPC before the MM is enabled + const totalCount = await helper.collection.getTotalCount(); + + // We can transfer funds before the MM is enabled + await expect(helper.balance.transferToSubstrate(superuser, bob.address, 2n)).to.be.fulfilled; + + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; + + // RPCs work while in maintenance + expect(await helper.collection.getTotalCount()).to.be.deep.equal(totalCount); + + // We still able to transfer funds + await expect(helper.balance.transferToSubstrate(bob, superuser.address, 1n)).to.be.fulfilled; + + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; + + // RPCs work after maintenance + expect(await helper.collection.getTotalCount()).to.be.deep.equal(totalCount); + + // Transfers work after maintenance + await expect(helper.balance.transferToSubstrate(bob, superuser.address, 1n)).to.be.fulfilled; + }); + + itSched.ifWithPallets('MM blocks scheduled calls and the scheduler itself', [Pallets.Scheduler], async (scheduleKind, {helper}) => { + const collection = await helper.nft.mintCollection(bob); + + const nftBeforeMM = await collection.mintToken(bob); + const nftDuringMM = await collection.mintToken(bob); + const nftAfterMM = await collection.mintToken(bob); + + const [ + scheduledIdBeforeMM, + scheduledIdDuringMM, + scheduledIdBunkerThroughMM, + scheduledIdAttemptDuringMM, + scheduledIdAfterMM, + ] = scheduleKind == 'named' + ? helper.arrange.makeScheduledIds(5) + : new Array(5); + + const blocksToWait = 6; + + // Scheduling works before the maintenance + await nftBeforeMM.scheduleAfter(blocksToWait, {scheduledId: scheduledIdBeforeMM}) + .transfer(bob, {Substrate: superuser.address}); + + await helper.wait.newBlocks(blocksToWait + 1); + expect(await nftBeforeMM.getOwner()).to.be.deep.equal({Substrate: superuser.address}); + + // Schedule a transaction that should occur *during* the maintenance + await nftDuringMM.scheduleAfter(blocksToWait, {scheduledId: scheduledIdDuringMM}) + .transfer(bob, {Substrate: superuser.address}); + + // Schedule a transaction that should occur *after* the maintenance + await nftDuringMM.scheduleAfter(blocksToWait * 2, {scheduledId: scheduledIdBunkerThroughMM}) + .transfer(bob, {Substrate: superuser.address}); + + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; + + await helper.wait.newBlocks(blocksToWait + 1); + // The owner should NOT change since the scheduled transaction should be rejected + expect(await nftDuringMM.getOwner()).to.be.deep.equal({Substrate: bob.address}); + + // Any attempts to schedule a tx during the MM should be rejected + await expect(nftDuringMM.scheduleAfter(blocksToWait, {scheduledId: scheduledIdAttemptDuringMM}) + .transfer(bob, {Substrate: superuser.address})) + .to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); + + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; + + // Scheduling works after the maintenance + await nftAfterMM.scheduleAfter(blocksToWait, {scheduledId: scheduledIdAfterMM}) + .transfer(bob, {Substrate: superuser.address}); + + await helper.wait.newBlocks(blocksToWait + 1); + + expect(await nftAfterMM.getOwner()).to.be.deep.equal({Substrate: superuser.address}); + // The owner of the token scheduled for transaction *before* maintenance should now change *after* maintenance + expect(await nftDuringMM.getOwner()).to.be.deep.equal({Substrate: superuser.address}); + }); + + itEth('Disallows Ethereum transactions to execute while in maintenance', async ({helper}) => { + const owner = await helper.eth.createAccountWithBalance(donor); + const receiver = helper.eth.createAccount(); + + const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner, 'A', 'B', 'C', ''); + + // Set maintenance mode + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; + + const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner); + const tokenId = await contract.methods.nextTokenId().call(); + expect(tokenId).to.be.equal('1'); + + await expect(contract.methods.mintWithTokenURI(receiver, 'Test URI').send()) + .to.be.rejectedWith(/Returned error: unknown error/); + + await expect(contract.methods.ownerOf(tokenId).call()).rejectedWith(/token not found/); + + // Disable maintenance mode + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; + }); + + itSub('Allows to enable and disable MM repeatedly', async ({helper}) => { + // Set maintenance mode + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; + + // Disable maintenance mode + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); + expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; + }); + + afterEach(async () => { + await usingPlaygrounds(async helper => { + if (helper.fetchMissingPalletNames([Pallets.Maintenance]).length != 0) return; + if (await maintenanceEnabled(helper.getApi())) { + console.warn('\tMaintenance mode was left enabled AFTER a test has finished! Be careful. Disabling it now.'); + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); + } + expect(await maintenanceEnabled(helper.getApi()), 'Disastrous! Exited the test suite with maintenance mode on.').to.be.false; + }); + }); + }); + + describe('Preimage Execution', () => { + const preimageHashes: string[] = []; + + async function notePreimage(helper: UniqueHelper, preimage: any): Promise { + const result = await helper.preimage.notePreimage(bob, preimage); + const events = result.result.events.filter(x => x.event.method === 'Noted' && x.event.section === 'preimage'); + const preimageHash = events[0].event.data[0].toHuman(); + return preimageHash; + } + + before(async function() { + await usingPlaygrounds(async (helper) => { + requirePalletsOrSkip(this, helper, [Pallets.Preimage, Pallets.Maintenance]); + + // create a preimage to be operated with in the tests + const randomAccounts = await helper.arrange.createCrowd(10, 0n, superuser); + const randomIdentities = randomAccounts.map((acc, i) => [ + acc.address, { + deposit: 0n, + judgements: [], + info: { + display: { + raw: `Random Account #${i}`, + }, + }, + }, + ]); + const preimage = helper.constructApiCall('api.tx.identity.forceInsertIdentities', [randomIdentities]).method.toHex(); + preimageHashes.push(await notePreimage(helper, preimage)); + }); + }); + + itSub('Successfully executes call in a preimage', async ({helper}) => { + const result = await expect(helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.executePreimage', [ + preimageHashes[0], {refTime: 10000000000, proofSize: 10000}, + ])).to.be.fulfilled; + + // preimage is executed, and an appropriate event is present + const events = result.result.events.filter((x: any) => x.event.method === 'IdentitiesInserted' && x.event.section === 'identity'); + expect(events.length).to.be.equal(1); + + // the preimage goes back to being unrequested + expect(await helper.preimage.getPreimageInfo(preimageHashes[0])).to.have.property('unrequested'); + }); + + itSub('Does not allow execution of a preimage that would fail', async ({helper}) => { + const [zeroAccount] = await helper.arrange.createAccounts([0n], superuser); + + const preimage = helper.constructApiCall('api.tx.balances.forceTransfer', [ + {Id: zeroAccount.address}, {Id: superuser.address}, 1000n, + ]).method.toHex(); + const preimageHash = await notePreimage(helper, preimage); + preimageHashes.push(preimageHash); + + await expect(helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.executePreimage', [ + preimageHash, {refTime: 10000000000, proofSize: 10000}, + ])).to.be.rejectedWith(/balances\.InsufficientBalance/); + }); + + itSub('Does not allow preimage execution with non-root', async ({helper}) => { + await expect(helper.executeExtrinsic(bob, 'api.tx.maintenance.executePreimage', [ + preimageHashes[0], {refTime: 10000000000, proofSize: 10000}, + ])).to.be.rejectedWith(/BadOrigin/); + }); + + itSub('Does not allow execution of non-existent preimages', async ({helper}) => { + await expect(helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.executePreimage', [ + '0x1010101010101010101010101010101010101010101010101010101010101010', {refTime: 10000000000, proofSize: 10000}, + ])).to.be.rejectedWith(/Unavailable/); + }); + + itSub('Does not allow preimage execution with less than minimum weights', async ({helper}) => { + await expect(helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.executePreimage', [ + preimageHashes[0], {refTime: 1000, proofSize: 100}, + ])).to.be.rejectedWith(/Exhausted/); + }); + + after(async function() { + await usingPlaygrounds(async (helper) => { + if (helper.fetchMissingPalletNames([Pallets.Preimage, Pallets.Maintenance]).length != 0) return; + + for (const hash of preimageHashes) { + await helper.preimage.unnotePreimage(bob, hash); + } + }); + }); + }); +}); --- a/tests/src/maintenanceMode.seqtest.ts +++ /dev/null @@ -1,270 +0,0 @@ -// Copyright 2019-2022 Unique Network (Gibraltar) Ltd. -// This file is part of Unique Network. - -// Unique Network is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Unique Network is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Unique Network. If not, see . - -import {IKeyringPair} from '@polkadot/types/types'; -import {ApiPromise} from '@polkadot/api'; -import {expect, itSched, itSub, Pallets, usingPlaygrounds} from './util'; -import {itEth} from './eth/util'; - -async function maintenanceEnabled(api: ApiPromise): Promise { - return (await api.query.maintenance.enabled()).toJSON() as boolean; -} - -describe('Integration Test: Maintenance Mode', () => { - let superuser: IKeyringPair; - let donor: IKeyringPair; - let bob: IKeyringPair; - - before(async () => { - await usingPlaygrounds(async (helper, privateKey) => { - superuser = await privateKey('//Alice'); - donor = await privateKey({filename: __filename}); - [bob] = await helper.arrange.createAccounts([100n], donor); - - if (await maintenanceEnabled(helper.getApi())) { - console.warn('\tMaintenance mode was left enabled BEFORE the test suite! Disabling it now.'); - await expect(helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', [])).to.be.fulfilled; - } - }); - }); - - itSub('Allows superuser to enable and disable maintenance mode - and disallows anyone else', async ({helper}) => { - // Make sure non-sudo can't enable maintenance mode - await expect(helper.executeExtrinsic(superuser, 'api.tx.maintenance.enable', []), 'on commoner enabling MM') - .to.be.rejectedWith(/BadOrigin/); - - // Set maintenance mode - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; - - // Make sure non-sudo can't disable maintenance mode - await expect(helper.executeExtrinsic(bob, 'api.tx.maintenance.disable', []), 'on commoner disabling MM') - .to.be.rejectedWith(/BadOrigin/); - - // Disable maintenance mode - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; - }); - - itSub('MM blocks unique pallet calls', async ({helper}) => { - // Can create an NFT collection before enabling the MM - const nftCollection = await helper.nft.mintCollection(bob, { - tokenPropertyPermissions: [{key: 'test', permission: { - collectionAdmin: true, - tokenOwner: true, - mutable: true, - }}], - }); - - // Can mint an NFT before enabling the MM - const nft = await nftCollection.mintToken(bob); - - // Can create an FT collection before enabling the MM - const ftCollection = await helper.ft.mintCollection(superuser); - - // Can mint an FT before enabling the MM - await expect(ftCollection.mint(superuser)).to.be.fulfilled; - - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; - - // Unable to create a collection when the MM is enabled - await expect(helper.nft.mintCollection(superuser), 'cudo forbidden stuff') - .to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); - - // Unable to set token properties when the MM is enabled - await expect(nft.setProperties( - bob, - [{key: 'test', value: 'test-val'}], - )).to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); - - // Unable to mint an NFT when the MM is enabled - await expect(nftCollection.mintToken(superuser)) - .to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); - - // Unable to mint an FT when the MM is enabled - await expect(ftCollection.mint(superuser)) - .to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); - - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; - - // Can create a collection after disabling the MM - await expect(helper.nft.mintCollection(bob), 'MM is disabled, the collection should be created').to.be.fulfilled; - - // Can set token properties after disabling the MM - await nft.setProperties(bob, [{key: 'test', value: 'test-val'}]); - - // Can mint an NFT after disabling the MM - await nftCollection.mintToken(bob); - - // Can mint an FT after disabling the MM - await ftCollection.mint(superuser); - }); - - itSub.ifWithPallets('MM blocks unique pallet calls (Re-Fungible)', [Pallets.ReFungible], async ({helper}) => { - // Can create an RFT collection before enabling the MM - const rftCollection = await helper.rft.mintCollection(superuser); - - // Can mint an RFT before enabling the MM - await expect(rftCollection.mintToken(superuser)).to.be.fulfilled; - - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; - - // Unable to mint an RFT when the MM is enabled - await expect(rftCollection.mintToken(superuser)) - .to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); - - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; - - // Can mint an RFT after disabling the MM - await rftCollection.mintToken(superuser); - }); - - itSub('MM allows native token transfers and RPC calls', async ({helper}) => { - // We can use RPC before the MM is enabled - const totalCount = await helper.collection.getTotalCount(); - - // We can transfer funds before the MM is enabled - await expect(helper.balance.transferToSubstrate(superuser, bob.address, 2n)).to.be.fulfilled; - - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; - - // RPCs work while in maintenance - expect(await helper.collection.getTotalCount()).to.be.deep.equal(totalCount); - - // We still able to transfer funds - await expect(helper.balance.transferToSubstrate(bob, superuser.address, 1n)).to.be.fulfilled; - - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; - - // RPCs work after maintenance - expect(await helper.collection.getTotalCount()).to.be.deep.equal(totalCount); - - // Transfers work after maintenance - await expect(helper.balance.transferToSubstrate(bob, superuser.address, 1n)).to.be.fulfilled; - }); - - itSched.ifWithPallets('MM blocks scheduled calls and the scheduler itself', [Pallets.Scheduler], async (scheduleKind, {helper}) => { - const collection = await helper.nft.mintCollection(bob); - - const nftBeforeMM = await collection.mintToken(bob); - const nftDuringMM = await collection.mintToken(bob); - const nftAfterMM = await collection.mintToken(bob); - - const [ - scheduledIdBeforeMM, - scheduledIdDuringMM, - scheduledIdBunkerThroughMM, - scheduledIdAttemptDuringMM, - scheduledIdAfterMM, - ] = scheduleKind == 'named' - ? helper.arrange.makeScheduledIds(5) - : new Array(5); - - const blocksToWait = 6; - - // Scheduling works before the maintenance - await nftBeforeMM.scheduleAfter(blocksToWait, {scheduledId: scheduledIdBeforeMM}) - .transfer(bob, {Substrate: superuser.address}); - - await helper.wait.newBlocks(blocksToWait + 1); - expect(await nftBeforeMM.getOwner()).to.be.deep.equal({Substrate: superuser.address}); - - // Schedule a transaction that should occur *during* the maintenance - await nftDuringMM.scheduleAfter(blocksToWait, {scheduledId: scheduledIdDuringMM}) - .transfer(bob, {Substrate: superuser.address}); - - // Schedule a transaction that should occur *after* the maintenance - await nftDuringMM.scheduleAfter(blocksToWait * 2, {scheduledId: scheduledIdBunkerThroughMM}) - .transfer(bob, {Substrate: superuser.address}); - - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; - - await helper.wait.newBlocks(blocksToWait + 1); - // The owner should NOT change since the scheduled transaction should be rejected - expect(await nftDuringMM.getOwner()).to.be.deep.equal({Substrate: bob.address}); - - // Any attempts to schedule a tx during the MM should be rejected - await expect(nftDuringMM.scheduleAfter(blocksToWait, {scheduledId: scheduledIdAttemptDuringMM}) - .transfer(bob, {Substrate: superuser.address})) - .to.be.rejectedWith(/Invalid Transaction: Transaction call is not expected/); - - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; - - // Scheduling works after the maintenance - await nftAfterMM.scheduleAfter(blocksToWait, {scheduledId: scheduledIdAfterMM}) - .transfer(bob, {Substrate: superuser.address}); - - await helper.wait.newBlocks(blocksToWait + 1); - - expect(await nftAfterMM.getOwner()).to.be.deep.equal({Substrate: superuser.address}); - // The owner of the token scheduled for transaction *before* maintenance should now change *after* maintenance - expect(await nftDuringMM.getOwner()).to.be.deep.equal({Substrate: superuser.address}); - }); - - itEth('Disallows Ethereum transactions to execute while in maintenance', async ({helper}) => { - const owner = await helper.eth.createAccountWithBalance(donor); - const receiver = helper.eth.createAccount(); - - const {collectionAddress} = await helper.eth.createERC721MetadataCompatibleNFTCollection(owner, 'A', 'B', 'C', ''); - - // Set maintenance mode - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; - - const contract = await helper.ethNativeContract.collection(collectionAddress, 'nft', owner); - const tokenId = await contract.methods.nextTokenId().call(); - expect(tokenId).to.be.equal('1'); - - await expect(contract.methods.mintWithTokenURI(receiver, 'Test URI').send()) - .to.be.rejectedWith(/Returned error: unknown error/); - - await expect(contract.methods.ownerOf(tokenId).call()).rejectedWith(/token not found/); - - // Disable maintenance mode - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; - }); - - itSub('Allows to enable and disable MM repeatedly', async ({helper}) => { - // Set maintenance mode - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.enable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is OFF when it should be ON').to.be.true; - - // Disable maintenance mode - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); - expect(await maintenanceEnabled(helper.getApi()), 'MM is ON when it should be OFF').to.be.false; - }); - - afterEach(async () => { - await usingPlaygrounds(async helper => { - if (await maintenanceEnabled(helper.getApi())) { - console.warn('\tMaintenance mode was left enabled AFTER a test has finished! Be careful. Disabling it now.'); - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.maintenance.disable', []); - } - expect(await maintenanceEnabled(helper.getApi()), 'Disastrous! Exited the test suite with maintenance mode on.').to.be.false; - }); - }); -}); --- a/tests/src/pallet-presence.test.ts +++ b/tests/src/pallet-presence.test.ts @@ -66,6 +66,7 @@ const foreignAssets = 'foreignassets'; const appPromotion = 'apppromotion'; const collatorSelection = ['authorship', 'session', 'collatorselection', 'identity']; + const preimage = ['preimage']; const testUtils = 'testutils'; if (chain.eq('OPAL by UNIQUE')) { @@ -75,6 +76,7 @@ appPromotion, testUtils, ...collatorSelection, + ...preimage, ); } else if (chain.eq('QUARTZ by UNIQUE') || chain.eq('SAPPHIRE by UNIQUE')) { requiredPallets.push( @@ -82,6 +84,7 @@ appPromotion, foreignAssets, ...collatorSelection, + ...preimage, ); } else if (chain.eq('UNIQUE')) { // Insert Unique additional pallets here --- a/tests/src/util/identitySetter.ts +++ b/tests/src/util/identitySetter.ts @@ -1,13 +1,14 @@ // Copyright 2019-2022 Unique Network (Gibraltar) Ltd. // SPDX-License-Identifier: Apache-2.0 // -// Pulls identities and sub-identities from a chain and then uses sudo to force upload them into another. +// Pulls identities and sub-identities from a chain and then makes a preimage to later force upload them into another. // Only changed or previously non-existent data are inserted. // -// Usage: `yarn setIdentities [relay WS URL] [parachain WS URL] [sudo key]` +// Usage: `yarn setIdentities [relay WS URL] [parachain WS URL] [user key] // Example: `yarn setIdentities wss://polkadot-rpc.dwellir.com ws://localhost:9944 escape pattern miracle train sudden cart adapt embark wedding alien lamp mesh` import {encodeAddress} from '@polkadot/keyring'; +import {IKeyringPair} from '@polkadot/types/types'; import {usingPlaygrounds, Pallets} from './index'; import {ChainHelperBase} from './playgrounds/unique'; @@ -81,6 +82,18 @@ return (await helper.getApi().query.identity.superOf.entries()).map(([key, value]) => [extractAccountId(key), value as any]); } +async function uploadPreimage(helper: ChainHelperBase, preimageMaker: IKeyringPair, preimage: string) { + try { + await helper.executeExtrinsic(preimageMaker, 'api.tx.preimage.notePreimage', [preimage]); + } catch(e: any) { + if (e.message.includes('AlreadyNoted')) { + console.warn('Warning: The same preimage already exists on the chain. Nothing was uploaded.'); + } else { + console.error(e); + } + } +} + // The utility for pulling identity and sub-identity data const forceInsertIdentities = async (): Promise => { let relaySS58Prefix = 0; @@ -128,8 +141,10 @@ await usingPlaygrounds(async (helper, privateKey) => { if (helper.fetchMissingPalletNames([Pallets.Identity]).length != 0) console.error('pallet-identity is not included in parachain.'); + if (helper.fetchMissingPalletNames([Pallets.Preimage]).length != 0) console.error('pallet-preimage is not included in parachain.'); + try { - const superuser = await privateKey(key); + const preimageMaker = await privateKey(key); const ss58Format = helper.chain.getChainProperties().ss58Format; const paraIdentities = await getIdentities(helper); const identitiesToAdd: any[] = []; @@ -158,13 +173,21 @@ } if (identitiesToRemove.length != 0) - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.identity.forceRemoveIdentities', [identitiesToRemove]); + await uploadPreimage( + helper, + preimageMaker, + helper.constructApiCall('api.tx.identity.forceRemoveIdentities', [identitiesToRemove]).method.toHex(), + ); if (identitiesToAdd.length != 0) - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.identity.forceInsertIdentities', [identitiesToAdd]); + await uploadPreimage( + helper, + preimageMaker, + helper.constructApiCall('api.tx.identity.forceInsertIdentities', [identitiesToAdd]).method.toHex(), + ); - console.log(`Tried to upload ${identitiesToAdd.length} identities` + console.log(`Tried to push ${identitiesToAdd.length} identities` + ` and found ${identitiesToRemove.length} identities for potential removal.` - + ` Now there are ${(await helper.getApi().query.identity.identityOf.keys()).length}.`); + + ` Currently there are ${(await helper.getApi().query.identity.identityOf.keys()).length} identities on the chain.`); // fill sub-identities const paraSubs = await getSubs(helper); @@ -187,10 +210,14 @@ } if (subsToUpdate.length != 0) - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.identity.forceSetSubs', [subsToUpdate]); + await uploadPreimage( + helper, + preimageMaker, + helper.constructApiCall('api.tx.identity.forceSetSubs', [subsToUpdate]).method.toHex(), + ); - console.log(`Also tried to update ${subsToUpdate.length} identities with their sub-identities.` - + ` Now there are ${(await helper.getApi().query.identity.subsOf.keys()).length} identities with subs.`); + console.log(`Also tried to push ${subsToUpdate.length} identities with their sub-identities.` + + ` Currently there are ${(await helper.getApi().query.identity.subsOf.keys()).length} identities with subs.`); } catch (error) { console.error(error); throw Error('Error during setting identities'); --- a/tests/src/util/index.ts +++ b/tests/src/util/index.ts @@ -114,6 +114,8 @@ CollatorSelection = 'collatorselection', Session = 'session', Identity = 'identity', + Preimage = 'preimage', + Maintenance = 'maintenance', TestUtils = 'testutils', } --- a/tests/src/util/playgrounds/unique.ts +++ b/tests/src/util/playgrounds/unique.ts @@ -2869,6 +2869,55 @@ } } +class PreimageGroup extends HelperGroup { + async getPreimageInfo(h256: string) { + return (await this.helper.callRpc('api.query.preimage.statusFor', [h256])).toJSON(); + } + + /** + * Create a preimage with a hex or a byte array. + * @param signer keyring of the signer. + * @param bytes preimage encoded in hex or a byte array, e.g. an extrinsic call. + * @example await notePreimage(preimageMaker, + * helper.constructApiCall('api.tx.identity.forceInsertIdentities', [identitiesToAdd]).method.toHex() + * ); + * @returns promise of extrinsic execution. + */ + notePreimage(signer: TSigner, bytes: string | Uint8Array) { + return this.helper.executeExtrinsic(signer, 'api.tx.preimage.notePreimage', [bytes]); + } + + /** + * Delete an existing preimage and return the deposit. + * @param signer keyring of the signer - either the owner or the preimage manager (sudo). + * @param h256 hash of the preimage. + * @returns promise of extrinsic execution. + */ + unnotePreimage(signer: TSigner, h256: string) { + return this.helper.executeExtrinsic(signer, 'api.tx.preimage.unnotePreimage', [h256]); + } + + /** + * Request a preimage be uploaded to the chain without paying any fees or deposits. + * @param signer keyring of the signer - either the owner or the preimage manager (sudo). + * @param h256 hash of the preimage. + * @returns promise of extrinsic execution. + */ + requestPreimage(signer: TSigner, h256: string) { + return this.helper.executeExtrinsic(signer, 'api.tx.preimage.requestPreimage', [h256]); + } + + /** + * Clear a previously made request for a preimage. + * @param signer keyring of the signer - either the owner or the preimage manager (sudo). + * @param h256 hash of the preimage. + * @returns promise of extrinsic execution. + */ + unrequestPreimage(signer: TSigner, h256: string) { + return this.helper.executeExtrinsic(signer, 'api.tx.preimage.unrequestPreimage', [h256]); + } +} + class ForeignAssetsGroup extends HelperGroup { async register(signer: TSigner, ownerAddress: TSubstrateAccount, location: any, metadata: IForeignAssetMetadata) { await this.helper.executeExtrinsic( @@ -3094,6 +3143,7 @@ staking: StakingGroup; scheduler: SchedulerGroup; collatorSelection: CollatorSelectionGroup; + preimage: PreimageGroup; foreignAssets: ForeignAssetsGroup; xcm: XcmGroup; xTokens: XTokensGroup; @@ -3110,6 +3160,7 @@ this.staking = new StakingGroup(this); this.scheduler = new SchedulerGroup(this); this.collatorSelection = new CollatorSelectionGroup(this); + this.preimage = new PreimageGroup(this); this.foreignAssets = new ForeignAssetsGroup(this); this.xcm = new XcmGroup(this, 'polkadotXcm'); this.xTokens = new XTokensGroup(this); -- gitstuff