From 70abe578b643c7c9dc37a37c0e7d0b1d51302d55 Mon Sep 17 00:00:00 2001 From: Fahrrader Date: Fri, 23 Dec 2022 12:40:26 +0000 Subject: [PATCH] tests(collator-selection): integration tests + types + minor refactor of thee pallet --- --- a/node/cli/src/chain_spec.rs +++ b/node/cli/src/chain_spec.rs @@ -196,9 +196,9 @@ .cloned() .map(|(acc, _)| acc) .collect(), + desired_collators: 10, license_bond: GENESIS_LICENSE_BOND, kick_threshold: SESSION_LENGTH, - ..Default::default() }, session: SessionConfig { keys: $initial_invulnerables --- a/pallets/collator-selection/src/lib.rs +++ b/pallets/collator-selection/src/lib.rs @@ -183,11 +183,8 @@ /// The (community, limited) collation candidates. #[pallet::storage] #[pallet::getter(fn candidates)] - pub type Candidates = StorageValue< - _, - BoundedVec, //LicenseInfo>, T::MaxCollators>, // license ID? - ValueQuery, - >; + pub type Candidates = + StorageValue<_, BoundedVec, ValueQuery>; /// Collator will be kicked if it does not produce a block within the threshold (does not apply to invulnerables). /// @@ -348,7 +345,6 @@ T::ValidatorRegistration::is_registered(&validator_key), Error::::ValidatorNotRegistered ); - // ensure!(!Self::invulnerables().contains(&new), Error::::AlreadyInvulnerable); if Self::invulnerables().contains(&new) { return Ok(().into()); } @@ -371,7 +367,6 @@ ) -> DispatchResultWithPostInfo { T::UpdateOrigin::ensure_origin(origin)?; - // let index = Self::invulnerables().into_iter().position(|r| r == who).ok_or(Error::::NotInvulnerable)?; >::try_mutate(|invulnerables| -> DispatchResult { if invulnerables.len() <= 1 { return Err(Error::::TooFewInvulnerables.into()); @@ -384,10 +379,6 @@ invulnerables.remove(index); Ok(()) })?; - /*let bounded_invulnerables = BoundedVec::<_, T::MaxInvulnerables>::try_from(new) - .map_err(|_| Error::::TooManyInvulnerables)?; - - >::put(&bounded_invulnerables);*/ Self::deposit_event(Event::InvulnerableRemoved { invulnerable: who }); Ok(().into()) } @@ -451,11 +442,6 @@ return Err(Error::::AlreadyHoldingLicense.into()); } - /*ensure!( - !Self::invulnerables().contains(&who), - Error::::AlreadyInvulnerable - );*/ - let validator_key = T::ValidatorIdOf::convert(who.clone()) .ok_or(Error::::NoAssociatedValidatorId)?; ensure!( @@ -464,34 +450,9 @@ ); let deposit = Self::license_bond(); - // First authored block is current block plus kick threshold to handle session delay - /*let incoming = LicenseInfo { - who: who.clone(), - deposit, - };*/ T::Currency::reserve(&who, deposit)?; Licenses::::insert(who.clone(), deposit); - - /*let current_count = - >::try_mutate(|licenses| -> Result { - if T::OriginPrivilegeCmp::cmp_privilege(&origin, &scheduled.origin) { - return Err(BadOrigin.into()); - } - if candidates.iter().any(|candidate| *candidate == who) { - Err(Error::::AlreadyHoldingLicense)? - } else { - T::Currency::reserve(&who, deposit)?; - candidates - .try_push(incoming) - .map_err(|_| Error::::TooManyCandidates)?; - >::insert( - who.clone(), - frame_system::Pallet::::block_number() + Self::kick_threshold(), - ); - Ok(candidates.len()) - } - })?;*/ Self::deposit_event(Event::LicenseObtained { account_id: who, @@ -518,17 +479,11 @@ (length as u32) < Self::desired_collators(), Error::::TooManyCandidates ); - // todo:collator really need it? ensure!( !Self::invulnerables().contains(&who), Error::::AlreadyInvulnerable ); - /*let incoming = LicenseInfo { - who: who.clone(), - deposit, - };*/ - let current_count = >::try_mutate(|candidates| -> Result { if candidates.iter().any(|candidate| *candidate == who) { @@ -552,17 +507,10 @@ /// 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. - /// - /// This call will fail if the total number of candidates would drop below `MinCandidates`. todo:collator maybe not #[pallet::weight(T::WeightInfo::leave_intent(T::MaxCollators::get()))] // todo:collator weight pub fn offboard(origin: OriginFor) -> DispatchResultWithPostInfo { // leave_intent let who = ensure_signed(origin)?; - /* todo:collator invulnerables and candidates should count against min candidates together - ensure!( - Self::candidates().len() as u32 > T::MinCandidates::get(), - Error::::TooFewCandidates - );*/ let current_count = Self::try_remove_candidate(&who)?; Ok(Some(T::WeightInfo::leave_intent(current_count as u32)).into()) // todo:collator weight @@ -585,7 +533,7 @@ /// Note that the collator can only leave on session change. /// The `LicenseBond` will be unreserved and returned immediately. /// - /// This call is not available to `Invulnerable` collators. + /// This call is, of course, not applicable to `Invulnerable` collators. #[pallet::weight(T::WeightInfo::leave_intent(T::MaxCollators::get()))] // todo:collator weight pub fn force_revoke_license( origin: OriginFor, @@ -606,6 +554,8 @@ T::PotId::get().into_account_truncating() } + /// Removes a candidate and their license, optionally slashed and optionally ignoring, + /// whether or not they actually are a candidate. fn try_remove_candidate_and_release_license( who: &T::AccountId, should_slash: bool, @@ -687,7 +637,7 @@ /// Kicks out candidates that did not produce a block in the kick threshold /// and **confiscates** their deposits to the treasury. pub fn kick_stale_candidates( - candidates: BoundedVec, //LicenseInfo> + candidates: BoundedVec, ) -> BoundedVec { let now = frame_system::Pallet::::block_number(); let kick_threshold = Self::kick_threshold(); --- a/pallets/collator-selection/src/mock.rs +++ b/pallets/collator-selection/src/mock.rs @@ -223,13 +223,11 @@ } impl Config for Test { - // todo:collator mocks and stocks type RuntimeEvent = RuntimeEvent; type Currency = Balances; type UpdateOrigin = EnsureSignedBy; type PotId = PotId; type MaxCollators = MaxCollators; - // type KickThreshold = Period; type SlashRatio = SlashRatio; type TreasuryAccountId = (); type ValidatorId = ::AccountId; --- a/pallets/collator-selection/src/tests.rs +++ b/pallets/collator-selection/src/tests.rs @@ -59,9 +59,6 @@ }); } -// todo:collator add more tests later -// invulnerable after onboard + invulnerables can bypass desired_candidates - #[test] fn it_should_add_invulnerables() { new_test_ext().execute_with(|| { --- a/runtime/common/mod.rs +++ b/runtime/common/mod.rs @@ -191,7 +191,7 @@ RuntimeAppPublic, }; use pallet_session::SessionManager; - use up_common::constants::GENESIS_LICENSE_BOND; + use up_common::constants::{GENESIS_LICENSE_BOND, SESSION_LENGTH}; use crate::config::pallets::collator_selection::MaxCollators; let mut weight = ::DbWeight::get().reads(1); @@ -241,6 +241,7 @@ .expect("Existing collators/invulnerables are more than MaxCollators"); >::put(bounded_invulnerables); + >::put(SESSION_LENGTH); >::put(MaxCollators::get()); >::put(GENESIS_LICENSE_BOND); --- a/tests/src/collatorSelection.seqtest.ts +++ b/tests/src/collatorSelection.seqtest.ts @@ -17,6 +17,8 @@ import {IKeyringPair} from '@polkadot/types/types'; import {usingPlaygrounds, expect, itSub, Pallets, requirePalletsOrSkip} from './util'; +const MAX_INVULNERABLES = 10; + async function resetInvulnerables() { await usingPlaygrounds(async (helper, privateKey) => { const superuser = await privateKey('//Alice'); @@ -28,6 +30,15 @@ + 'Current invulnerables\' size: ' + invulnerables.length); let nonce = await helper.chain.getNonce(alice.address); + // In case there are too many invulnerables already, remove some of them, leaving space for Alice and Bob. + if (invulnerables.length + 2 >= MAX_INVULNERABLES) { + await Promise.all([ + helper.getSudo().executeExtrinsic(superuser, 'api.tx.collatorSelection.removeInvulnerable', [invulnerables.pop()], true, {nonce: nonce++}), + helper.getSudo().executeExtrinsic(superuser, 'api.tx.collatorSelection.removeInvulnerable', [invulnerables.pop()], true, {nonce: nonce++}), + ]); + } + + nonce = await helper.chain.getNonce(alice.address); await Promise.all([ helper.getSudo().executeExtrinsic(superuser, 'api.tx.collatorSelection.addInvulnerable', [alice.address], true, {nonce: nonce++}), helper.getSudo().executeExtrinsic(superuser, 'api.tx.collatorSelection.addInvulnerable', [bob.address], true, {nonce: nonce++}), @@ -43,14 +54,19 @@ } // todo:collator Most preferable to launch this test in parallel somehow -- or change the session period (1 hr). -// + 18 tests: 5 (1+4) on session change describe('Integration Test: Collator Selection', () => { let superuser: IKeyringPair; + let previousLicenseBond = 0n; + let licenseBond = 0n; before(async function() { await usingPlaygrounds(async (helper, privateKey) => { requirePalletsOrSkip(this, helper, [Pallets.CollatorSelection]); superuser = await privateKey('//Alice'); + + previousLicenseBond = await helper.collatorSelection.getLicenseBond(); + licenseBond = 10n * helper.balance.getOneTokenNominal(); + await helper.getSudo().collatorSelection.setLicenseBond(superuser, licenseBond); }); }); @@ -73,13 +89,11 @@ charlie = await privateKey('//Charlie'); dave = await privateKey('//Dave'); - expect((await helper.collatorSelection.setOwnKeys(charlie)) + expect((await helper.session.setOwnKeysFromAddress(charlie)) .status.toLowerCase()).to.be.equal('success'); - expect((await helper.collatorSelection.setOwnKeys(dave)) + expect((await helper.session.setOwnKeysFromAddress(dave)) .status.toLowerCase()).to.be.equal('success'); - // todo:collator check necessity + add RPC for invulnerables / just improve in general - // validators = await helper.callRpc('api.query.session.validators'); const invulnerables = await helper.collatorSelection.getInvulnerables(); if (!invulnerables.includes(alice.address) || !invulnerables.includes(bob.address) || invulnerables.length != 2) { console.warn('Alice and Bob are not the invulnerables! Reinstating them back. ' @@ -116,19 +130,7 @@ const newInvulnerables = await helper.collatorSelection.getInvulnerables(); expect(newInvulnerables).to.contain(charlie.address).and.contain(dave.address).and.be.length(2); - const expectedSessionIndex = (await helper.callRpc('api.query.session.currentIndex')).toNumber() + 2; - let currentSessionIndex = -1; - console.log('Waiting for the session after the next.' - + ' This might take a while -- check SessionPeriod in pallet_session::Config for session time.'); - - while (currentSessionIndex < expectedSessionIndex) { - // eslint-disable-next-line no-async-promise-executor - currentSessionIndex = await expect(helper.wait.withTimeout(new Promise(async (resolve) => { - await helper.wait.newBlocks(1); - const res = (await helper.callRpc('api.query.session.currentIndex')).toNumber(); - resolve(res); - }), 24000, 'The chain has stopped producing blocks!')).to.be.fulfilled; - } + await helper.wait.newSessions(2); const newValidators = await helper.callRpc('api.query.session.validators'); expect(newValidators).to.contain(charlie.address).and.contain(dave.address).and.be.length(2); @@ -140,9 +142,6 @@ expect(lastCharlieBlock >= lastBlockNumber || lastDaveBlock >= lastBlockNumber).to.be.true; }); - // todo:collator keyless invulnerables? will hang, so, a breaking test, eh - // register candidate without sudos and the like - after(async () => { await usingPlaygrounds(async (helper) => { if (await helper.arrange.isDevNode()) return; @@ -162,9 +161,185 @@ }); }); - // todo:collator make sure that there is enough session time for a set of tests - // 28 non-functioning collators, teehee. + describe('Getting and releasing licenses to collate', () => { + let charlie: IKeyringPair; + let dave: IKeyringPair; + let crowd: IKeyringPair[]; + + before(async function() { + await usingPlaygrounds(async (helper, privateKey) => { + charlie = await privateKey('//Charlie'); + dave = await privateKey('//Dave'); + crowd = await helper.arrange.createCrowd(20, 100n, superuser); + + // set session keys for everyone + expect((await helper.session.setOwnKeysFromAddress(charlie)) + .status.toLowerCase()).to.be.equal('success'); + expect((await helper.session.setOwnKeysFromAddress(dave)) + .status.toLowerCase()).to.be.equal('success'); + await Promise.all(crowd.map(acc => helper.session.setOwnKeysFromAddress(acc))); + }); + }); + + describe('Positive', () => { + itSub('Can lease and release a license', async ({helper}) => { + const account = crowd.pop()!; + + // make sure it does not have any reserved funds + expect((await helper.balance.getSubstrateFull(account.address)).reserved).to.be.equal(0n); + + // getting a license reserves a license bond cost + await helper.collatorSelection.obtainLicense(account); + expect(await helper.collatorSelection.hasLicense(account.address)).to.be.equal(licenseBond); + expect((await helper.balance.getSubstrateFull(account.address)).reserved).to.be.equal(licenseBond); + + // releasing a license un-reserves the license bond cost + await helper.collatorSelection.releaseLicense(account); + expect(await helper.collatorSelection.hasLicense(account.address)).to.be.equal(0n); + + const balance = await helper.balance.getSubstrateFull(account.address); + expect(balance.reserved).to.be.equal(0n); + expect(balance.free > 100n - licenseBond); + }); + + itSub('Can force revoke a license', async ({helper}) => { + const account = crowd.pop()!; + + // getting a license reserves a license bond cost + const previousBalance = await helper.balance.getSubstrateFull(account.address); + await helper.collatorSelection.obtainLicense(account); + expect(await helper.collatorSelection.hasLicense(account.address)).to.be.equal(licenseBond); + + // force-releasing a license un-reserves the license bond cost as well + await helper.getSudo().collatorSelection.forceRevokeLicense(superuser, account.address); + expect(await helper.collatorSelection.hasLicense(account.address)).to.be.equal(previousBalance.reserved); + + const balance = await helper.balance.getSubstrateFull(account.address); + expect(balance.reserved).to.be.equal(previousBalance.reserved); + expect(balance.free > previousBalance.free - licenseBond); + }); + }); + describe('Negative', () => { + itSub('Cannot get a license without session keys set', async ({helper}) => { + const [account] = await helper.arrange.createAccounts([100n], superuser); + await expect(helper.collatorSelection.obtainLicense(account)) + .to.be.rejectedWith(/collatorSelection.ValidatorNotRegistered/); + }); + + itSub('Cannot register a license twice', async ({helper}) => { + const account = crowd.pop()!; + await helper.collatorSelection.obtainLicense(account); + await expect(helper.collatorSelection.obtainLicense(account)) + .to.be.rejectedWith(/collatorSelection.AlreadyHoldingLicense/); + }); + + itSub('Cannot release a license twice', async ({helper}) => { + const account = crowd.pop()!; + await helper.collatorSelection.obtainLicense(account); + await helper.collatorSelection.releaseLicense(account); + await expect(helper.collatorSelection.releaseLicense(account)) + .to.be.rejectedWith(/collatorSelection.NoLicense/); + }); + + itSub('Cannot force revoke a license as non-sudo', async ({helper}) => { + const account = crowd.pop()!; + await helper.collatorSelection.obtainLicense(account); + await expect(helper.collatorSelection.forceRevokeLicense(superuser, account.address)) + .to.be.rejectedWith(/BadOrigin/); + }); + }); + }); + + describe('Onboarding, collating, and offboarding as collator candidates', () => { + // These two are the default invulnerables, and should return to be invulnerables after this suite. + let charlie: IKeyringPair; + let dave: IKeyringPair; + let crowd: IKeyringPair[]; + + before(async function() { + await usingPlaygrounds(async (helper, privateKey) => { + charlie = await privateKey('//Charlie'); + dave = await privateKey('//Dave'); + crowd = await helper.arrange.createCrowd(20, 100n, superuser); + + // set session keys for everyone + expect((await helper.session.setOwnKeysFromAddress(charlie)) + .status.toLowerCase()).to.be.equal('success'); + expect((await helper.session.setOwnKeysFromAddress(dave)) + .status.toLowerCase()).to.be.equal('success'); + await Promise.all(crowd.map(acc => helper.session.setOwnKeysFromAddress(acc))); + }); + }); + + describe('Positive', () => { + itSub('Can onboard and offboard repeatedly', async ({helper}) => { + const account = crowd.pop()!; + await helper.collatorSelection.obtainLicense(account); + await helper.collatorSelection.onboard(account); + expect(await helper.collatorSelection.getCandidates()).to.be.deep.equal([account.address]); + + await helper.collatorSelection.offboard(account); + expect(await helper.collatorSelection.getCandidates()).to.be.deep.equal([]); + + await helper.collatorSelection.onboard(account); + expect(await helper.collatorSelection.getCandidates()).to.be.deep.equal([account.address]); + + await helper.collatorSelection.offboard(account); + expect(await helper.collatorSelection.getCandidates()).to.be.deep.equal([]); + }); + + itSub('Dithmarschen', async ({helper}) => { + // This one shouldn't even be able to produce blocks. + const account = crowd.pop()!; + await helper.collatorSelection.obtainLicense(account); + await helper.collatorSelection.onboard(account); + expect(await helper.collatorSelection.getCandidates()).to.contain(account.address); + + // Wait for 3 new sessions before checking that the collator will be kicked: + // one to get collator onboarded, and another two for the collator to fail + await helper.wait.newSessions(3); + + expect(await helper.collatorSelection.getCandidates()).to.not.contain(account.address); + expect(await helper.collatorSelection.hasLicense(account.address)).to.be.equal(0n); + + // The account's reserved funds get slashed as a penalty + const balance = await helper.balance.getSubstrateFull(account.address); + expect(balance.reserved).to.be.equal(0n); + expect(balance.free < 100n - licenseBond); + }); + }); + + describe('Negative', () => { + itSub('Cannot onboard without a license', async ({helper}) => { + const account = crowd.pop()!; + await expect(helper.collatorSelection.onboard(account)) + .to.be.rejectedWith(/collatorSelection.NoLicense/); + }); + + itSub('Cannot offboard without a license', async ({helper}) => { + const account = crowd.pop()!; + await expect(helper.collatorSelection.offboard(account)) + .to.be.rejectedWith(/collatorSelection.NotCandidate/); + }); + + itSub('Cannot offboard while not onboarded', async ({helper}) => { + const account = crowd.pop()!; + await helper.collatorSelection.obtainLicense(account); + await expect(helper.collatorSelection.offboard(account)) + .to.be.rejectedWith(/collatorSelection.NotCandidate/); + }); + + itSub('Cannot onboard while already onboarded', async ({helper}) => { + const account = crowd.pop()!; + await helper.collatorSelection.obtainLicense(account); + await helper.collatorSelection.onboard(account); + await expect(helper.collatorSelection.onboard(account)) + .to.be.rejectedWith(/collatorSelection.AlreadyCandidate/); + }); + }); + }); + describe('Addition and removal of invulnerables', () => { before(async function() { await resetInvulnerables(); @@ -175,7 +350,7 @@ const [account] = await helper.arrange.createAccounts([10n], superuser); const invulnerables = await helper.collatorSelection.getInvulnerables(); - await helper.collatorSelection.setOwnKeys(account); + await helper.session.setOwnKeysFromAddress(account); await helper.getSudo().collatorSelection.addInvulnerable(superuser, account.address); const newInvulnerables = await helper.collatorSelection.getInvulnerables(); @@ -184,7 +359,7 @@ itSub('Removes an invulnerable', async ({helper}) => { const invulnerables = await helper.collatorSelection.getInvulnerables(); - const lastInvulnerable = invulnerables.pop(); + const lastInvulnerable = invulnerables.pop()!; await helper.getSudo().collatorSelection.removeInvulnerable(superuser, lastInvulnerable); const newInvulnerables = await helper.collatorSelection.getInvulnerables(); @@ -203,16 +378,22 @@ expect(newInvulnerables).to.have.all.members(invulnerables); }); + itSub('Cannot remove a non-existent invulnerable', async ({helper}) => { + const [account] = await helper.arrange.createAccounts([0n], superuser); + await expect(helper.getSudo().collatorSelection.removeInvulnerable(superuser, account.address)) + .to.be.rejectedWith(/collatorSelection.NotInvulnerable/); + }); + itSub('Cannot allow invulnerables to be empty', async ({helper}) => { const invulnerables = await helper.collatorSelection.getInvulnerables(); - const lastInvulnerable = invulnerables.pop(); + const lastInvulnerable = invulnerables.pop()!; let nonce = await helper.chain.getNonce(superuser.address); await Promise.all(invulnerables.map((i: any) => helper.getSudo().executeExtrinsic(superuser, 'api.tx.collatorSelection.removeInvulnerable', [i], true, {nonce: nonce++}))); await expect(helper.getSudo().collatorSelection.removeInvulnerable(superuser, lastInvulnerable)) - .to.be.rejected;//todo:collator With(/collatorSelection.TooFewInvulnerables/); + .to.be.rejectedWith(/collatorSelection.TooFewInvulnerables/); const newInvulnerables = await helper.collatorSelection.getInvulnerables(); expect(newInvulnerables).to.be.deep.equal([lastInvulnerable]); @@ -224,21 +405,24 @@ }); itSub('Cannot have too many invulnerables', async ({helper}) => { + // todo:collator make sure that there is enough session time for a set of tests + // 28 non-functioning collators, teehee. + const invulnerablesLength = (await helper.collatorSelection.getInvulnerables()).length; - const invulnerablesUntilLimit = 30 - invulnerablesLength; + const invulnerablesUntilLimit = MAX_INVULNERABLES - invulnerablesLength; const newInvulnerables = await helper.arrange.createAccounts(Array(invulnerablesUntilLimit).fill(10n), superuser); const [lastInvulnerable] = await helper.arrange.createAccounts([10n], superuser); await Promise.all(newInvulnerables.map((i: IKeyringPair) => - helper.collatorSelection.setOwnKeys(i))); - await helper.collatorSelection.setOwnKeys(lastInvulnerable); + helper.session.setOwnKeysFromAddress(i))); + await helper.session.setOwnKeysFromAddress(lastInvulnerable); let nonce = await helper.chain.getNonce(superuser.address); await Promise.all(newInvulnerables.map((i: IKeyringPair) => helper.getSudo().executeExtrinsic(superuser, 'api.tx.collatorSelection.addInvulnerable', [i.address], true, {nonce: nonce++}))); await expect(helper.getSudo().collatorSelection.addInvulnerable(superuser, lastInvulnerable.address)) - .to.be.rejected; // todo:collator With(/collatorSelection.TooManyInvulnerables/); + .to.be.rejectedWith(/collatorSelection.TooManyInvulnerables/); // restore the invulnerables to the previous state nonce = await helper.chain.getNonce(superuser.address); @@ -250,7 +434,7 @@ const [account] = await helper.arrange.createAccounts([10n], superuser); const invulnerables = await helper.collatorSelection.getInvulnerables(); - await helper.collatorSelection.setOwnKeys(account); + await helper.session.setOwnKeysFromAddress(account); await expect(helper.collatorSelection.addInvulnerable(superuser, account.address)) .to.be.rejectedWith(/BadOrigin/); @@ -265,14 +449,19 @@ expect(await helper.collatorSelection.getInvulnerables()).to.have.all.members(invulnerables); }); }); + }); - after(async () => { - // eslint-disable-next-line require-await - await usingPlaygrounds(async (helper) => { - if (helper.fetchMissingPalletNames([Pallets.CollatorSelection]).length != 0) return; - - // todo:collator after - }); + after(async () => { + // eslint-disable-next-line require-await + await usingPlaygrounds(async (helper) => { + if (helper.fetchMissingPalletNames([Pallets.CollatorSelection]).length != 0) return; + + await helper.getSudo().collatorSelection.setLicenseBond(superuser, previousLicenseBond); + + const candidates = await helper.collatorSelection.getCandidates(); + let nonce = await helper.chain.getNonce(superuser.address); + await Promise.all(candidates.map(candidate => + helper.getSudo().executeExtrinsic(superuser, 'api.tx.collatorSelection.removeInvulnerable', [candidate], true, {nonce: nonce++}))); }); }); }); \ No newline at end of file --- 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. --- a/tests/src/interfaces/augment-api-errors.ts +++ b/tests/src/interfaces/augment-api-errors.ts @@ -41,6 +41,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 +113,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 @@ -685,6 +777,32 @@ **/ [key: string]: AugmentedError; }; + session: { + /** + * Registered duplicate key. + **/ + DuplicatedKey: AugmentedError; + /** + * Invalid ownership proof. + **/ + InvalidProof: AugmentedError; + /** + * Key setting account is not live, so it's impossible to associate keys. + **/ + NoAccount: AugmentedError; + /** + * No associated validator ID for account. + **/ + NoAssociatedValidatorId: AugmentedError; + /** + * No keys are associated with this account. + **/ + NoKeys: AugmentedError; + /** + * Generic error + **/ + [key: string]: AugmentedError; + }; structure: { /** * While nesting, reached the breadth limit of nesting, exceeding the provided budget. --- a/tests/src/interfaces/augment-api-events.ts +++ b/tests/src/interfaces/augment-api-events.ts @@ -100,6 +100,21 @@ **/ [key: string]: AugmentedEvent; }; + collatorSelection: { + CandidateAdded: AugmentedEvent; + CandidateRemoved: AugmentedEvent; + InvulnerableAdded: AugmentedEvent; + InvulnerableRemoved: AugmentedEvent; + LicenseForfeited: AugmentedEvent; + LicenseObtained: AugmentedEvent; + NewDesiredCollators: AugmentedEvent; + NewKickThreshold: AugmentedEvent; + NewLicenseBond: AugmentedEvent; + /** + * Generic event + **/ + [key: string]: AugmentedEvent; + }; common: { /** * Address was added to the allow list. @@ -526,6 +541,17 @@ **/ [key: string]: 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 + **/ + [key: string]: AugmentedEvent; + }; structure: { /** * Executed call on behalf of the token. --- a/tests/src/interfaces/augment-api-query.ts +++ b/tests/src/interfaces/augment-api-query.ts @@ -9,7 +9,7 @@ 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, PalletBalancesReleases, PalletBalancesReserveData, PalletConfigurationAppPromotionConfiguration, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletNonfungibleItemData, PalletRefungibleItemData, 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, PalletBalancesReleases, PalletBalancesReserveData, PalletConfigurationAppPromotionConfiguration, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, PalletNonfungibleItemData, PalletRefungibleItemData, 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>; @@ -59,6 +59,24 @@ **/ [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. @@ -117,6 +135,46 @@ **/ [key: string]: QueryableStorageEntry; }; + collatorSelection: { + /** + * The (community, limited) collation candidates. + **/ + candidates: AugmentedQuery Observable>, []> & QueryableStorageEntry; + /** + * Desired number of candidates. + * + * This should ideally always be less than [`Config::MaxCollators`] for weights to be correct. + **/ + desiredCollators: AugmentedQuery Observable, []> & QueryableStorageEntry; + /** + * The invulnerable, fixed collators. + **/ + invulnerables: AugmentedQuery Observable>, []> & QueryableStorageEntry; + /** + * Collator will be kicked if it does not produce a block within the threshold (does not apply to invulnerables). + * + * Should be a multiple of session or things will get inconsistent. todo:collator reword? + **/ + kickThreshold: AugmentedQuery Observable, []> & QueryableStorageEntry; + /** + * Last block authored by collator. + **/ + lastAuthoredBlock: AugmentedQuery Observable, [AccountId32]> & QueryableStorageEntry; + /** + * Fixed amount to deposit to become a collator. + * + * When a collator calls `leave_intent` they immediately receive the deposit back. + **/ + licenseBond: AugmentedQuery Observable, []> & QueryableStorageEntry; + /** + * The (community) collation license holders. + **/ + licenses: AugmentedQuery Observable, [AccountId32]> & QueryableStorageEntry; + /** + * Generic query + **/ + [key: string]: QueryableStorageEntry; + }; common: { /** * Storage of the amount of collection admins. @@ -687,6 +745,46 @@ **/ [key: string]: QueryableStorageEntry; }; + session: { + /** + * Current index of the session. + **/ + currentIndex: AugmentedQuery Observable, []> & QueryableStorageEntry; + /** + * 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. + **/ + disabledValidators: AugmentedQuery Observable>, []> & QueryableStorageEntry; + /** + * 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. + **/ + queuedChanged: AugmentedQuery Observable, []> & QueryableStorageEntry; + /** + * The queued keys for the next session. When the next session begins, these keys + * will be used to determine the validator's session keys. + **/ + queuedKeys: AugmentedQuery Observable>>, []> & QueryableStorageEntry; + /** + * The current set of validators. + **/ + validators: AugmentedQuery Observable>, []> & QueryableStorageEntry; + /** + * Generic query + **/ + [key: string]: QueryableStorageEntry; + }; structure: { /** * Generic query --- a/tests/src/interfaces/augment-api-rpc.ts +++ b/tests/src/interfaces/augment-api-rpc.ts @@ -16,7 +16,7 @@ import type { BlockHash } from '@polkadot/types/interfaces/chain'; import type { PrefixedStorageKey } from '@polkadot/types/interfaces/childstate'; import type { AuthorityId } from '@polkadot/types/interfaces/consensus'; -import type { CodeUploadRequest, CodeUploadResult, ContractCallRequest, ContractExecResult, ContractInstantiateResult, InstantiateRequest } from '@polkadot/types/interfaces/contracts'; +import type { CodeUploadRequest, CodeUploadResult, ContractCallRequest, ContractExecResult, ContractInstantiateResult, InstantiateRequestV1 } from '@polkadot/types/interfaces/contracts'; import type { BlockStats } from '@polkadot/types/interfaces/dev'; import type { CreatedBlock } from '@polkadot/types/interfaces/engine'; import type { EthAccount, EthCallRequest, EthFeeHistory, EthFilter, EthFilterChanges, EthLog, EthReceipt, EthRichBlock, EthSubKind, EthSubParams, EthSyncStatus, EthTransaction, EthTransactionRequest, EthWork } from '@polkadot/types/interfaces/eth'; @@ -24,7 +24,7 @@ import type { EncodedFinalityProofs, JustificationNotification, ReportedRoundStates } from '@polkadot/types/interfaces/grandpa'; import type { MmrLeafBatchProof, MmrLeafProof } from '@polkadot/types/interfaces/mmr'; import type { StorageKind } from '@polkadot/types/interfaces/offchain'; -import type { FeeDetails, RuntimeDispatchInfo } from '@polkadot/types/interfaces/payment'; +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 { MigrationStatusResult, ReadProof, RuntimeVersion, TraceBlockResponse } from '@polkadot/types/interfaces/state'; @@ -174,7 +174,7 @@ * @deprecated Use the runtime interface `api.call.contractsApi.instantiate` instead * Instantiate a new contract **/ - instantiate: AugmentedRpc<(request: InstantiateRequest | { origin?: any; value?: any; gasLimit?: any; storageDepositLimit?: any; code?: any; data?: any; salt?: any } | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable>; + instantiate: AugmentedRpc<(request: InstantiateRequestV1 | { origin?: any; value?: any; gasLimit?: any; code?: any; data?: any; salt?: any } | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable>; /** * @deprecated Not available in newer versions of the contracts interfaces * Returns the projected time a given contract will be able to sustain paying its rent @@ -426,13 +426,15 @@ }; payment: { /** + * @deprecated Use `api.call.transactionPaymentApi.queryFeeDetails` instead * Query the detailed fee of a given encoded extrinsic **/ queryFeeDetails: AugmentedRpc<(extrinsic: Bytes | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable>; /** + * @deprecated Use `api.call.transactionPaymentApi.queryInfo` instead * Retrieves the fee information for an encoded extrinsic **/ - queryInfo: AugmentedRpc<(extrinsic: Bytes | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable>; + queryInfo: AugmentedRpc<(extrinsic: Bytes | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable>; }; rmrk: { /** --- a/tests/src/interfaces/augment-api-runtime.ts +++ b/tests/src/interfaces/augment-api-runtime.ts @@ -6,7 +6,7 @@ import '@polkadot/api-base/types/calls'; import type { ApiTypes, AugmentedCall, DecoratedCallBase } from '@polkadot/api-base/types'; -import type { Bytes, Null, Option, Result, U256, Vec, bool, u256, u64 } from '@polkadot/types-codec'; +import type { Bytes, Null, Option, Result, U256, Vec, bool, u256, u32, u64 } from '@polkadot/types-codec'; import type { AnyNumber, ITuple } from '@polkadot/types-codec/types'; import type { CheckInherentsResult, InherentData } from '@polkadot/types/interfaces/blockbuilder'; import type { BlockHash } from '@polkadot/types/interfaces/chain'; @@ -16,6 +16,7 @@ import type { EvmAccount, EvmCallInfo, EvmCreateInfo } from '@polkadot/types/interfaces/evm'; import type { Extrinsic } from '@polkadot/types/interfaces/extrinsics'; import type { OpaqueMetadata } from '@polkadot/types/interfaces/metadata'; +import type { FeeDetails, RuntimeDispatchInfo } from '@polkadot/types/interfaces/payment'; import type { AccountId, Block, H160, H256, Header, Index, KeyTypeId, Permill, SlotDuration } from '@polkadot/types/interfaces/runtime'; import type { RuntimeVersion } from '@polkadot/types/interfaces/state'; import type { ApplyExtrinsicResult, DispatchError } from '@polkadot/types/interfaces/system'; @@ -228,5 +229,20 @@ **/ [key: string]: DecoratedCallBase; }; + /** 0x37c8bb1350a9a2a8/2 */ + transactionPaymentApi: { + /** + * The transaction fee details + **/ + queryFeeDetails: AugmentedCall Observable>; + /** + * The transaction info + **/ + queryInfo: AugmentedCall Observable>; + /** + * Generic call + **/ + [key: string]: DecoratedCallBase; + }; } // AugmentedCalls } // declare module --- a/tests/src/interfaces/augment-api-tx.ts +++ b/tests/src/interfaces/augment-api-tx.ts @@ -9,7 +9,7 @@ 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, Perbill, 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 { CumulusPrimitivesParachainInherentParachainInherentData, EthereumLog, EthereumTransactionTransactionV2, OpalRuntimeRuntimeCommonSessionKeys, OrmlVestingVestingSchedule, PalletConfigurationAppPromotionConfiguration, PalletEvmAccountBasicCrossAccountIdRepr, PalletForeignAssetsAssetIds, PalletForeignAssetsModuleAssetMetadata, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsPartEquippableList, RmrkTraitsPartPartType, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, 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; @@ -119,6 +119,16 @@ **/ [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 + **/ + [key: string]: SubmittableExtrinsicFunction; + }; balances: { /** * Exactly as `transfer`, except the origin must be root and the source account may be @@ -214,6 +224,71 @@ **/ [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 not available to `Invulnerable` collators. + **/ + forceRevokeLicense: 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. + * + * This call will fail if the total number of candidates would drop below `MinCandidates`. todo:collator maybe not + **/ + 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]>; + /** + * Set the ideal number of collators. If lowering this number, + * then the number of running collators could be higher than this figure. + * Aside from that edge case, there should be no other way to have more collators than the desired number. + **/ + setDesiredCollators: AugmentedSubmittable<(max: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32]>; + /** + * Set the length of the kick threshold. + * Note that if the length is not a multiple of the session period, it might get inconsistent. + **/ + setKickThreshold: AugmentedSubmittable<(kickThreshold: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32]>; + /** + * Set the candidacy bond amount. + **/ + setLicenseBond: AugmentedSubmittable<(bond: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u128]>; + /** + * Generic tx + **/ + [key: string]: SubmittableExtrinsicFunction; + }; configuration: { setAppPromotionConfigurationOverride: AugmentedSubmittable<(configuration: PalletConfigurationAppPromotionConfiguration | { recalculationInterval?: any; pendingInterval?: any; intervalIncome?: any; maxStakersPerCalculation?: any } | string | Uint8Array) => SubmittableExtrinsic, [PalletConfigurationAppPromotionConfiguration]>; setMinGasPriceOverride: AugmentedSubmittable<(coeff: Option | null | Uint8Array | u64 | AnyNumber) => SubmittableExtrinsic, [Option]>; @@ -839,6 +914,48 @@ **/ [key: string]: SubmittableExtrinsicFunction; }; + session: { + /** + * Removes any session key(s) of the function caller. + * + * This doesn't take effect until the next session. + * + * The dispatch origin of this function must be Signed and the account must be either be + * convertible to a validator ID using the chain's typical addressing system (this usually + * means being a controller account) or directly convertible into a validator ID (which + * usually means being a stash account). + * + * # + * - Complexity: `O(1)` in number of key types. Actual cost depends on the number of length + * of `T::Keys::key_ids()` which is fixed. + * - DbReads: `T::ValidatorIdOf`, `NextKeys`, `origin account` + * - DbWrites: `NextKeys`, `origin account` + * - DbWrites per key id: `KeyOwner` + * # + **/ + purgeKeys: AugmentedSubmittable<() => SubmittableExtrinsic, []>; + /** + * Sets the session key(s) of the function caller to `keys`. + * Allows an account to set its session key prior to becoming a validator. + * This doesn't take effect until the next session. + * + * The dispatch origin of this function must be signed. + * + * # + * - Complexity: `O(1)`. Actual cost depends on the number of length of + * `T::Keys::key_ids()` which is fixed. + * - DbReads: `origin account`, `T::ValidatorIdOf`, `NextKeys` + * - DbWrites: `origin account`, `NextKeys` + * - DbReads per key id: `KeyOwner` + * - DbWrites per key id: `KeyOwner` + * # + **/ + setKeys: AugmentedSubmittable<(keys: OpalRuntimeRuntimeCommonSessionKeys | { aura?: any } | string | Uint8Array, proof: Bytes | string | Uint8Array) => SubmittableExtrinsic, [OpalRuntimeRuntimeCommonSessionKeys, Bytes]>; + /** + * Generic tx + **/ + [key: string]: SubmittableExtrinsicFunction; + }; structure: { /** * Generic tx @@ -1432,6 +1549,23 @@ **/ destroyCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32]>; /** + * Repairs a collection if the data was somehow corrupted. + * + * # Arguments + * + * * `collection_id`: ID of the collection to repair. + **/ + forceRepairCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32]>; + /** + * Repairs a token if the data was somehow corrupted. + * + * # Arguments + * + * * `collection_id`: ID of the collection the item belongs to. + * * `item_id`: ID of the item. + **/ + forceRepairItem: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32, u32]>; + /** * Remove admin of a collection. * * An admin address can remove itself. List of admins may become empty, @@ -1474,15 +1608,6 @@ * * `address`: ID of the address to be removed from the allowlist. **/ removeFromAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>; - /** - * Repairs a broken item - * - * # Arguments - * - * * `collection_id`: ID of the collection the item belongs to. - * * `item_id`: ID of the item. - **/ - repairItem: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32, u32]>; /** * Re-partition a refungible token, while owning all of its parts/pieces. * --- 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, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, 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, PalletRefungibleItemData, 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, 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, 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, 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, PalletBalancesReleases, PalletBalancesReserveData, PalletCollatorSelectionCall, PalletCollatorSelectionError, PalletCollatorSelectionEvent, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, 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, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, 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, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Public, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeBlakeTwo256, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeHeader, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, 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, 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'; @@ -24,7 +24,7 @@ import type { StatementKind } from '@polkadot/types/interfaces/claims'; import type { CollectiveOrigin, MemberCount, ProposalIndex, Votes, VotesTo230 } from '@polkadot/types/interfaces/collective'; import type { AuthorityId, RawVRFOutput } from '@polkadot/types/interfaces/consensus'; -import type { AliveContractInfo, CodeHash, CodeSource, CodeUploadRequest, CodeUploadResult, CodeUploadResultValue, ContractCallFlags, ContractCallRequest, ContractExecResult, ContractExecResultOk, ContractExecResultResult, ContractExecResultSuccessTo255, ContractExecResultSuccessTo260, ContractExecResultTo255, ContractExecResultTo260, ContractExecResultTo267, ContractInfo, ContractInstantiateResult, ContractInstantiateResultTo267, ContractInstantiateResultTo299, ContractReturnFlags, ContractStorageKey, DeletedContract, ExecReturnValue, Gas, HostFnWeights, HostFnWeightsTo264, InstantiateRequest, InstantiateRequestV1, InstantiateRequestV2, InstantiateReturnValue, InstantiateReturnValueOk, InstantiateReturnValueTo267, InstructionWeights, Limits, LimitsTo264, PrefabWasmModule, RentProjection, Schedule, ScheduleTo212, ScheduleTo258, ScheduleTo264, SeedOf, StorageDeposit, TombstoneContractInfo, TrieId } from '@polkadot/types/interfaces/contracts'; +import type { AliveContractInfo, CodeHash, CodeSource, CodeUploadRequest, CodeUploadResult, CodeUploadResultValue, ContractCallFlags, ContractCallRequest, ContractExecResult, ContractExecResultOk, ContractExecResultResult, ContractExecResultSuccessTo255, ContractExecResultSuccessTo260, ContractExecResultTo255, ContractExecResultTo260, ContractExecResultTo267, ContractExecResultU64, ContractInfo, ContractInstantiateResult, ContractInstantiateResultTo267, ContractInstantiateResultTo299, ContractInstantiateResultU64, ContractReturnFlags, ContractStorageKey, DeletedContract, ExecReturnValue, Gas, HostFnWeights, HostFnWeightsTo264, InstantiateRequest, InstantiateRequestV1, InstantiateRequestV2, InstantiateReturnValue, InstantiateReturnValueOk, InstantiateReturnValueTo267, InstructionWeights, Limits, LimitsTo264, PrefabWasmModule, RentProjection, Schedule, ScheduleTo212, ScheduleTo258, ScheduleTo264, SeedOf, StorageDeposit, TombstoneContractInfo, TrieId } from '@polkadot/types/interfaces/contracts'; import type { ContractConstructorSpecLatest, ContractConstructorSpecV0, ContractConstructorSpecV1, ContractConstructorSpecV2, ContractConstructorSpecV3, ContractContractSpecV0, ContractContractSpecV1, ContractContractSpecV2, ContractContractSpecV3, ContractContractSpecV4, ContractCryptoHasher, ContractDiscriminant, ContractDisplayName, ContractEventParamSpecLatest, ContractEventParamSpecV0, ContractEventParamSpecV2, ContractEventSpecLatest, ContractEventSpecV0, ContractEventSpecV1, ContractEventSpecV2, ContractLayoutArray, ContractLayoutCell, ContractLayoutEnum, ContractLayoutHash, ContractLayoutHashingStrategy, ContractLayoutKey, ContractLayoutStruct, ContractLayoutStructField, ContractMessageParamSpecLatest, ContractMessageParamSpecV0, ContractMessageParamSpecV2, ContractMessageSpecLatest, ContractMessageSpecV0, ContractMessageSpecV1, ContractMessageSpecV2, ContractMetadata, ContractMetadataLatest, ContractMetadataV0, ContractMetadataV1, ContractMetadataV2, ContractMetadataV3, ContractMetadataV4, ContractProject, ContractProjectContract, ContractProjectInfo, ContractProjectSource, ContractProjectV0, ContractSelector, ContractStorageLayout, ContractTypeSpec } from '@polkadot/types/interfaces/contractsAbi'; import type { FundIndex, FundInfo, LastContribution, TrieIndex } from '@polkadot/types/interfaces/crowdloan'; import type { CollationInfo, CollationInfoV1, ConfigData, MessageId, OverweightIndex, PageCounter, PageIndexData } from '@polkadot/types/interfaces/cumulus'; @@ -47,7 +47,7 @@ import type { StorageKind } from '@polkadot/types/interfaces/offchain'; import type { DeferredOffenceOf, Kind, OffenceDetails, Offender, OpaqueTimeSlot, ReportIdOf, Reporter } from '@polkadot/types/interfaces/offences'; import type { AbridgedCandidateReceipt, AbridgedHostConfiguration, AbridgedHrmpChannel, AssignmentId, AssignmentKind, AttestedCandidate, AuctionIndex, AuthorityDiscoveryId, AvailabilityBitfield, AvailabilityBitfieldRecord, BackedCandidate, Bidder, BufferedSessionChange, CandidateCommitments, CandidateDescriptor, CandidateEvent, CandidateHash, CandidateInfo, CandidatePendingAvailability, CandidateReceipt, CollatorId, CollatorSignature, CommittedCandidateReceipt, CoreAssignment, CoreIndex, CoreOccupied, CoreState, DisputeLocation, DisputeResult, DisputeState, DisputeStatement, DisputeStatementSet, DoubleVoteReport, DownwardMessage, ExplicitDisputeStatement, GlobalValidationData, GlobalValidationSchedule, GroupIndex, GroupRotationInfo, HeadData, HostConfiguration, HrmpChannel, HrmpChannelId, HrmpOpenChannelRequest, InboundDownwardMessage, InboundHrmpMessage, InboundHrmpMessages, IncomingParachain, IncomingParachainDeploy, IncomingParachainFixed, InvalidDisputeStatementKind, LeasePeriod, LeasePeriodOf, LocalValidationData, MessageIngestionType, MessageQueueChain, MessagingStateSnapshot, MessagingStateSnapshotEgressEntry, MultiDisputeStatementSet, NewBidder, OccupiedCore, OccupiedCoreAssumption, OldV1SessionInfo, OutboundHrmpMessage, ParaGenesisArgs, ParaId, ParaInfo, ParaLifecycle, ParaPastCodeMeta, ParaScheduling, ParaValidatorIndex, ParachainDispatchOrigin, ParachainInherentData, ParachainProposal, ParachainsInherentData, ParathreadClaim, ParathreadClaimQueue, ParathreadEntry, PersistedValidationData, PvfCheckStatement, QueuedParathread, RegisteredParachainInfo, RelayBlockNumber, RelayChainBlockNumber, RelayChainHash, RelayHash, Remark, ReplacementTimes, Retriable, ScheduledCore, Scheduling, ScrapedOnChainVotes, ServiceQuality, SessionInfo, SessionInfoValidatorGroup, SignedAvailabilityBitfield, SignedAvailabilityBitfields, SigningContext, SlotRange, SlotRange10, Statement, SubId, SystemInherentData, TransientValidationData, UpgradeGoAhead, UpgradeRestriction, UpwardMessage, ValidDisputeStatementKind, ValidationCode, ValidationCodeHash, ValidationData, ValidationDataType, ValidationFunctionParams, ValidatorSignature, ValidityAttestation, VecInboundHrmpMessage, WinnersData, WinnersData10, WinnersDataTuple, WinnersDataTuple10, WinningData, WinningData10, WinningDataEntry } from '@polkadot/types/interfaces/parachains'; -import type { FeeDetails, InclusionFee, RuntimeDispatchInfo } from '@polkadot/types/interfaces/payment'; +import type { FeeDetails, InclusionFee, RuntimeDispatchInfo, RuntimeDispatchInfoV1, RuntimeDispatchInfoV2 } from '@polkadot/types/interfaces/payment'; import type { Approvals } from '@polkadot/types/interfaces/poll'; import type { ProxyAnnouncement, ProxyDefinition, ProxyType } from '@polkadot/types/interfaces/proxy'; import type { AccountStatus, AccountValidity } from '@polkadot/types/interfaces/purchase'; @@ -273,10 +273,12 @@ ContractExecResultTo255: ContractExecResultTo255; ContractExecResultTo260: ContractExecResultTo260; ContractExecResultTo267: ContractExecResultTo267; + ContractExecResultU64: ContractExecResultU64; ContractInfo: ContractInfo; ContractInstantiateResult: ContractInstantiateResult; ContractInstantiateResultTo267: ContractInstantiateResultTo267; ContractInstantiateResultTo299: ContractInstantiateResultTo299; + ContractInstantiateResultU64: ContractInstantiateResultU64; ContractLayoutArray: ContractLayoutArray; ContractLayoutCell: ContractLayoutCell; ContractLayoutEnum: ContractLayoutEnum; @@ -771,6 +773,7 @@ OldV1SessionInfo: OldV1SessionInfo; OpalRuntimeRuntime: OpalRuntimeRuntime; OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance; + OpalRuntimeRuntimeCommonSessionKeys: OpalRuntimeRuntimeCommonSessionKeys; OpaqueCall: OpaqueCall; OpaqueKeyOwnershipProof: OpaqueKeyOwnershipProof; OpaqueMetadata: OpaqueMetadata; @@ -815,6 +818,9 @@ PalletAppPromotionCall: PalletAppPromotionCall; PalletAppPromotionError: PalletAppPromotionError; PalletAppPromotionEvent: PalletAppPromotionEvent; + PalletAuthorshipCall: PalletAuthorshipCall; + PalletAuthorshipError: PalletAuthorshipError; + PalletAuthorshipUncleEntryItem: PalletAuthorshipUncleEntryItem; PalletBalancesAccountData: PalletBalancesAccountData; PalletBalancesBalanceLock: PalletBalancesBalanceLock; PalletBalancesCall: PalletBalancesCall; @@ -825,6 +831,9 @@ PalletBalancesReserveData: PalletBalancesReserveData; PalletCallMetadataLatest: PalletCallMetadataLatest; PalletCallMetadataV14: PalletCallMetadataV14; + PalletCollatorSelectionCall: PalletCollatorSelectionCall; + PalletCollatorSelectionError: PalletCollatorSelectionError; + PalletCollatorSelectionEvent: PalletCollatorSelectionEvent; PalletCommonError: PalletCommonError; PalletCommonEvent: PalletCommonEvent; PalletConfigurationAppPromotionConfiguration: PalletConfigurationAppPromotionConfiguration; @@ -875,6 +884,9 @@ PalletRmrkEquipCall: PalletRmrkEquipCall; PalletRmrkEquipError: PalletRmrkEquipError; PalletRmrkEquipEvent: PalletRmrkEquipEvent; + PalletSessionCall: PalletSessionCall; + PalletSessionError: PalletSessionError; + PalletSessionEvent: PalletSessionEvent; PalletsOrigin: PalletsOrigin; PalletStorageMetadataLatest: PalletStorageMetadataLatest; PalletStorageMetadataV14: PalletStorageMetadataV14; @@ -1057,6 +1069,8 @@ RpcMethods: RpcMethods; RuntimeDbWeight: RuntimeDbWeight; RuntimeDispatchInfo: RuntimeDispatchInfo; + RuntimeDispatchInfoV1: RuntimeDispatchInfoV1; + RuntimeDispatchInfoV2: RuntimeDispatchInfoV2; RuntimeVersion: RuntimeVersion; RuntimeVersionApi: RuntimeVersionApi; RuntimeVersionPartial: RuntimeVersionPartial; @@ -1172,14 +1186,19 @@ SolutionSupports: SolutionSupports; SpanIndex: SpanIndex; SpanRecord: SpanRecord; + 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 @@ -699,6 +699,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; @@ -1056,6 +1061,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; @@ -1201,6 +1236,100 @@ 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 isSetDesiredCollators: boolean; + readonly asSetDesiredCollators: { + readonly max: u32; + } & Struct; + readonly isSetLicenseBond: boolean; + readonly asSetLicenseBond: { + readonly bond: u128; + } & Struct; + readonly isSetKickThreshold: boolean; + readonly asSetKickThreshold: { + readonly kickThreshold: u32; + } & Struct; + readonly isGetLicense: boolean; + readonly isOnboard: boolean; + readonly isOffboard: boolean; + readonly isReleaseLicense: boolean; + readonly isForceRevokeLicense: boolean; + readonly asForceRevokeLicense: { + readonly who: AccountId32; + } & Struct; + readonly type: 'AddInvulnerable' | 'RemoveInvulnerable' | 'SetDesiredCollators' | 'SetLicenseBond' | 'SetKickThreshold' | 'GetLicense' | 'Onboard' | 'Offboard' | 'ReleaseLicense' | 'ForceRevokeLicense'; +} + +/** @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 isNewDesiredCollators: boolean; + readonly asNewDesiredCollators: { + readonly desiredCollators: u32; + } & Struct; + readonly isNewLicenseBond: boolean; + readonly asNewLicenseBond: { + readonly bondAmount: u128; + } & Struct; + readonly isNewKickThreshold: boolean; + readonly asNewKickThreshold: { + readonly lengthInBlocks: u32; + } & Struct; + 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 isLicenseForfeited: boolean; + readonly asLicenseForfeited: { + 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: 'NewDesiredCollators' | 'NewLicenseBond' | 'NewKickThreshold' | 'InvulnerableAdded' | 'InvulnerableRemoved' | 'LicenseObtained' | 'LicenseForfeited' | 'CandidateAdded' | 'CandidateRemoved'; +} + /** @name PalletCommonError */ export interface PalletCommonError extends Enum { readonly isCollectionNotFound: boolean; @@ -1938,6 +2067,36 @@ readonly type: 'BaseCreated' | 'EquippablesUpdated'; } +/** @name PalletSessionCall */ +export 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 */ +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 PalletSessionEvent */ +export interface PalletSessionEvent extends Enum { + readonly isNewSession: boolean; + readonly asNewSession: { + readonly sessionIndex: u32; + } & Struct; + readonly type: 'NewSession'; +} + /** @name PalletStructureCall */ export interface PalletStructureCall extends Null {} @@ -2319,12 +2478,16 @@ readonly operator: PalletEvmAccountBasicCrossAccountIdRepr; readonly approve: bool; } & Struct; - readonly isRepairItem: boolean; - readonly asRepairItem: { + readonly isForceRepairCollection: boolean; + readonly asForceRepairCollection: { + readonly collectionId: u32; + } & Struct; + readonly isForceRepairItem: boolean; + readonly asForceRepairItem: { readonly collectionId: u32; readonly itemId: u32; } & Struct; - 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' | 'TransferFrom' | 'SetCollectionLimits' | 'SetCollectionPermissions' | 'Repartition' | 'SetAllowanceForAll' | 'RepairItem'; + 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' | 'TransferFrom' | 'SetCollectionLimits' | 'SetCollectionPermissions' | 'Repartition' | 'SetAllowanceForAll' | 'ForceRepairCollection' | 'ForceRepairItem'; } /** @name PalletUniqueError */ @@ -2665,12 +2828,21 @@ readonly value: Bytes; } +/** @name SpConsensusAuraSr25519AppSr25519Public */ +export interface SpConsensusAuraSr25519AppSr25519Public extends SpCoreSr25519Public {} + +/** @name SpCoreCryptoKeyTypeId */ +export interface SpCoreCryptoKeyTypeId extends U8aFixed {} + /** @name SpCoreEcdsaSignature */ export interface SpCoreEcdsaSignature extends U8aFixed {} /** @name SpCoreEd25519Signature */ export interface SpCoreEd25519Signature extends U8aFixed {} +/** @name SpCoreSr25519Public */ +export interface SpCoreSr25519Public extends U8aFixed {} + /** @name SpCoreSr25519Signature */ export interface SpCoreSr25519Signature extends U8aFixed {} @@ -2682,6 +2854,9 @@ readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero'; } +/** @name SpRuntimeBlakeTwo256 */ +export interface SpRuntimeBlakeTwo256 extends Null {} + /** @name SpRuntimeDigest */ export interface SpRuntimeDigest extends Struct { readonly logs: Vec; @@ -2723,6 +2898,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; --- a/tests/src/interfaces/lookup.ts +++ b/tests/src/interfaces/lookup.ts @@ -184,8 +184,54 @@ } }, /** - * Lookup30: pallet_balances::pallet::Event + * Lookup30: pallet_collator_selection::pallet::Event + **/ + PalletCollatorSelectionEvent: { + _enum: { + NewDesiredCollators: { + desiredCollators: 'u32', + }, + NewLicenseBond: { + bondAmount: 'u128', + }, + NewKickThreshold: { + lengthInBlocks: 'u32', + }, + InvulnerableAdded: { + invulnerable: 'AccountId32', + }, + InvulnerableRemoved: { + invulnerable: 'AccountId32', + }, + LicenseObtained: { + accountId: 'AccountId32', + deposit: 'u128', + }, + LicenseForfeited: { + 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: { Endowed: { @@ -235,13 +281,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 +299,7 @@ } }, /** - * Lookup33: pallet_treasury::pallet::Event + * Lookup35: pallet_treasury::pallet::Event **/ PalletTreasuryEvent: { _enum: { @@ -289,7 +335,7 @@ } }, /** - * Lookup34: pallet_sudo::pallet::Event + * Lookup36: pallet_sudo::pallet::Event **/ PalletSudoEvent: { _enum: { @@ -305,7 +351,7 @@ } }, /** - * Lookup38: orml_vesting::module::Event + * Lookup40: orml_vesting::module::Event **/ OrmlVestingModuleEvent: { _enum: { @@ -324,7 +370,7 @@ } }, /** - * Lookup39: orml_vesting::VestingSchedule + * Lookup41: orml_vesting::VestingSchedule **/ OrmlVestingVestingSchedule: { start: 'u32', @@ -333,7 +379,7 @@ perPeriod: 'Compact' }, /** - * Lookup41: orml_xtokens::module::Event + * Lookup43: orml_xtokens::module::Event **/ OrmlXtokensModuleEvent: { _enum: { @@ -346,18 +392,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 +412,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 +435,7 @@ } }, /** - * Lookup48: xcm::v1::junction::Junction + * Lookup50: xcm::v1::junction::Junction **/ XcmV1Junction: { _enum: { @@ -417,7 +463,7 @@ } }, /** - * Lookup50: xcm::v0::junction::NetworkId + * Lookup52: xcm::v0::junction::NetworkId **/ XcmV0JunctionNetworkId: { _enum: { @@ -428,7 +474,7 @@ } }, /** - * Lookup53: xcm::v0::junction::BodyId + * Lookup55: xcm::v0::junction::BodyId **/ XcmV0JunctionBodyId: { _enum: { @@ -442,7 +488,7 @@ } }, /** - * Lookup54: xcm::v0::junction::BodyPart + * Lookup56: xcm::v0::junction::BodyPart **/ XcmV0JunctionBodyPart: { _enum: { @@ -465,7 +511,7 @@ } }, /** - * Lookup55: xcm::v1::multiasset::Fungibility + * Lookup57: xcm::v1::multiasset::Fungibility **/ XcmV1MultiassetFungibility: { _enum: { @@ -474,7 +520,7 @@ } }, /** - * Lookup56: xcm::v1::multiasset::AssetInstance + * Lookup58: xcm::v1::multiasset::AssetInstance **/ XcmV1MultiassetAssetInstance: { _enum: { @@ -488,7 +534,7 @@ } }, /** - * Lookup59: orml_tokens::module::Event + * Lookup61: orml_tokens::module::Event **/ OrmlTokensModuleEvent: { _enum: { @@ -565,7 +611,7 @@ } }, /** - * Lookup60: pallet_foreign_assets::AssetIds + * Lookup62: pallet_foreign_assets::AssetIds **/ PalletForeignAssetsAssetIds: { _enum: { @@ -574,13 +620,13 @@ } }, /** - * Lookup61: pallet_foreign_assets::NativeCurrency + * Lookup63: pallet_foreign_assets::NativeCurrency **/ PalletForeignAssetsNativeCurrency: { _enum: ['Here', 'Parent'] }, /** - * Lookup62: cumulus_pallet_xcmp_queue::pallet::Event + * Lookup64: cumulus_pallet_xcmp_queue::pallet::Event **/ CumulusPalletXcmpQueueEvent: { _enum: { @@ -618,7 +664,7 @@ } }, /** - * Lookup64: xcm::v2::traits::Error + * Lookup66: xcm::v2::traits::Error **/ XcmV2TraitsError: { _enum: { @@ -651,7 +697,7 @@ } }, /** - * Lookup66: pallet_xcm::pallet::Event + * Lookup68: pallet_xcm::pallet::Event **/ PalletXcmEvent: { _enum: { @@ -675,7 +721,7 @@ } }, /** - * Lookup67: xcm::v2::traits::Outcome + * Lookup69: xcm::v2::traits::Outcome **/ XcmV2TraitsOutcome: { _enum: { @@ -685,11 +731,11 @@ } }, /** - * Lookup68: xcm::v2::Xcm + * Lookup70: xcm::v2::Xcm **/ XcmV2Xcm: 'Vec', /** - * Lookup70: xcm::v2::Instruction + * Lookup72: xcm::v2::Instruction **/ XcmV2Instruction: { _enum: { @@ -787,7 +833,7 @@ } }, /** - * Lookup71: xcm::v2::Response + * Lookup73: xcm::v2::Response **/ XcmV2Response: { _enum: { @@ -798,19 +844,19 @@ } }, /** - * Lookup74: xcm::v0::OriginKind + * Lookup76: xcm::v0::OriginKind **/ XcmV0OriginKind: { _enum: ['Native', 'SovereignAccount', 'Superuser', 'Xcm'] }, /** - * Lookup75: xcm::double_encoded::DoubleEncoded + * Lookup77: xcm::double_encoded::DoubleEncoded **/ XcmDoubleEncoded: { encoded: 'Bytes' }, /** - * Lookup76: xcm::v1::multiasset::MultiAssetFilter + * Lookup78: xcm::v1::multiasset::MultiAssetFilter **/ XcmV1MultiassetMultiAssetFilter: { _enum: { @@ -819,7 +865,7 @@ } }, /** - * Lookup77: xcm::v1::multiasset::WildMultiAsset + * Lookup79: xcm::v1::multiasset::WildMultiAsset **/ XcmV1MultiassetWildMultiAsset: { _enum: { @@ -831,13 +877,13 @@ } }, /** - * Lookup78: xcm::v1::multiasset::WildFungibility + * Lookup80: xcm::v1::multiasset::WildFungibility **/ XcmV1MultiassetWildFungibility: { _enum: ['Fungible', 'NonFungible'] }, /** - * Lookup79: xcm::v2::WeightLimit + * Lookup81: xcm::v2::WeightLimit **/ XcmV2WeightLimit: { _enum: { @@ -846,7 +892,7 @@ } }, /** - * Lookup81: xcm::VersionedMultiAssets + * Lookup83: xcm::VersionedMultiAssets **/ XcmVersionedMultiAssets: { _enum: { @@ -855,7 +901,7 @@ } }, /** - * Lookup83: xcm::v0::multi_asset::MultiAsset + * Lookup85: xcm::v0::multi_asset::MultiAsset **/ XcmV0MultiAsset: { _enum: { @@ -894,7 +940,7 @@ } }, /** - * Lookup84: xcm::v0::multi_location::MultiLocation + * Lookup86: xcm::v0::multi_location::MultiLocation **/ XcmV0MultiLocation: { _enum: { @@ -910,7 +956,7 @@ } }, /** - * Lookup85: xcm::v0::junction::Junction + * Lookup87: xcm::v0::junction::Junction **/ XcmV0Junction: { _enum: { @@ -939,7 +985,7 @@ } }, /** - * Lookup86: xcm::VersionedMultiLocation + * Lookup88: xcm::VersionedMultiLocation **/ XcmVersionedMultiLocation: { _enum: { @@ -948,7 +994,7 @@ } }, /** - * Lookup87: cumulus_pallet_xcm::pallet::Event + * Lookup89: cumulus_pallet_xcm::pallet::Event **/ CumulusPalletXcmEvent: { _enum: { @@ -958,7 +1004,7 @@ } }, /** - * Lookup88: cumulus_pallet_dmp_queue::pallet::Event + * Lookup90: cumulus_pallet_dmp_queue::pallet::Event **/ CumulusPalletDmpQueueEvent: { _enum: { @@ -989,7 +1035,7 @@ } }, /** - * Lookup89: pallet_common::pallet::Event + * Lookup91: pallet_common::pallet::Event **/ PalletCommonEvent: { _enum: { @@ -1018,7 +1064,7 @@ } }, /** - * Lookup92: pallet_evm::account::BasicCrossAccountIdRepr + * Lookup94: pallet_evm::account::BasicCrossAccountIdRepr **/ PalletEvmAccountBasicCrossAccountIdRepr: { _enum: { @@ -1027,7 +1073,7 @@ } }, /** - * Lookup96: pallet_structure::pallet::Event + * Lookup98: pallet_structure::pallet::Event **/ PalletStructureEvent: { _enum: { @@ -1035,7 +1081,7 @@ } }, /** - * Lookup97: pallet_rmrk_core::pallet::Event + * Lookup99: pallet_rmrk_core::pallet::Event **/ PalletRmrkCoreEvent: { _enum: { @@ -1112,7 +1158,7 @@ } }, /** - * Lookup98: rmrk_traits::nft::AccountIdOrCollectionNftTuple + * Lookup100: rmrk_traits::nft::AccountIdOrCollectionNftTuple **/ RmrkTraitsNftAccountIdOrCollectionNftTuple: { _enum: { @@ -1121,7 +1167,7 @@ } }, /** - * Lookup102: pallet_rmrk_equip::pallet::Event + * Lookup104: pallet_rmrk_equip::pallet::Event **/ PalletRmrkEquipEvent: { _enum: { @@ -1136,7 +1182,7 @@ } }, /** - * Lookup103: pallet_app_promotion::pallet::Event + * Lookup105: pallet_app_promotion::pallet::Event **/ PalletAppPromotionEvent: { _enum: { @@ -1147,7 +1193,7 @@ } }, /** - * Lookup104: pallet_foreign_assets::module::Event + * Lookup106: pallet_foreign_assets::module::Event **/ PalletForeignAssetsModuleEvent: { _enum: { @@ -1172,7 +1218,7 @@ } }, /** - * Lookup105: pallet_foreign_assets::module::AssetMetadata + * Lookup107: pallet_foreign_assets::module::AssetMetadata **/ PalletForeignAssetsModuleAssetMetadata: { name: 'Bytes', @@ -1181,7 +1227,7 @@ minimalBalance: 'u128' }, /** - * Lookup106: pallet_evm::pallet::Event + * Lookup108: pallet_evm::pallet::Event **/ PalletEvmEvent: { _enum: { @@ -1203,7 +1249,7 @@ } }, /** - * Lookup107: ethereum::log::Log + * Lookup109: ethereum::log::Log **/ EthereumLog: { address: 'H160', @@ -1211,7 +1257,7 @@ data: 'Bytes' }, /** - * Lookup109: pallet_ethereum::pallet::Event + * Lookup111: pallet_ethereum::pallet::Event **/ PalletEthereumEvent: { _enum: { @@ -1224,7 +1270,7 @@ } }, /** - * Lookup110: evm_core::error::ExitReason + * Lookup112: evm_core::error::ExitReason **/ EvmCoreErrorExitReason: { _enum: { @@ -1235,13 +1281,13 @@ } }, /** - * Lookup111: evm_core::error::ExitSucceed + * Lookup113: evm_core::error::ExitSucceed **/ EvmCoreErrorExitSucceed: { _enum: ['Stopped', 'Returned', 'Suicided'] }, /** - * Lookup112: evm_core::error::ExitError + * Lookup114: evm_core::error::ExitError **/ EvmCoreErrorExitError: { _enum: { @@ -1263,13 +1309,13 @@ } }, /** - * Lookup115: evm_core::error::ExitRevert + * Lookup117: evm_core::error::ExitRevert **/ EvmCoreErrorExitRevert: { _enum: ['Reverted'] }, /** - * Lookup116: evm_core::error::ExitFatal + * Lookup118: evm_core::error::ExitFatal **/ EvmCoreErrorExitFatal: { _enum: { @@ -1280,7 +1326,7 @@ } }, /** - * Lookup117: pallet_evm_contract_helpers::pallet::Event + * Lookup119: pallet_evm_contract_helpers::pallet::Event **/ PalletEvmContractHelpersEvent: { _enum: { @@ -1290,25 +1336,25 @@ } }, /** - * Lookup118: pallet_evm_migration::pallet::Event + * Lookup120: pallet_evm_migration::pallet::Event **/ PalletEvmMigrationEvent: { _enum: ['TestEvent'] }, /** - * Lookup119: pallet_maintenance::pallet::Event + * Lookup121: pallet_maintenance::pallet::Event **/ PalletMaintenanceEvent: { _enum: ['MaintenanceEnabled', 'MaintenanceDisabled'] }, /** - * Lookup120: pallet_test_utils::pallet::Event + * Lookup122: pallet_test_utils::pallet::Event **/ PalletTestUtilsEvent: { _enum: ['ValueIsSet', 'ShouldRollback', 'BatchCompleted'] }, /** - * Lookup121: frame_system::Phase + * Lookup123: frame_system::Phase **/ FrameSystemPhase: { _enum: { @@ -1318,14 +1364,14 @@ } }, /** - * Lookup124: frame_system::LastRuntimeUpgradeInfo + * Lookup126: frame_system::LastRuntimeUpgradeInfo **/ FrameSystemLastRuntimeUpgradeInfo: { specVersion: 'Compact', specName: 'Text' }, /** - * Lookup125: frame_system::pallet::Call + * Lookup127: frame_system::pallet::Call **/ FrameSystemCall: { _enum: { @@ -1363,7 +1409,7 @@ } }, /** - * Lookup130: frame_system::limits::BlockWeights + * Lookup132: frame_system::limits::BlockWeights **/ FrameSystemLimitsBlockWeights: { baseBlock: 'SpWeightsWeightV2Weight', @@ -1371,7 +1417,7 @@ perClass: 'FrameSupportDispatchPerDispatchClassWeightsPerClass' }, /** - * Lookup131: frame_support::dispatch::PerDispatchClass + * Lookup133: frame_support::dispatch::PerDispatchClass **/ FrameSupportDispatchPerDispatchClassWeightsPerClass: { normal: 'FrameSystemLimitsWeightsPerClass', @@ -1379,7 +1425,7 @@ mandatory: 'FrameSystemLimitsWeightsPerClass' }, /** - * Lookup132: frame_system::limits::WeightsPerClass + * Lookup134: frame_system::limits::WeightsPerClass **/ FrameSystemLimitsWeightsPerClass: { baseExtrinsic: 'SpWeightsWeightV2Weight', @@ -1388,13 +1434,13 @@ reserved: 'Option' }, /** - * Lookup134: frame_system::limits::BlockLength + * Lookup136: frame_system::limits::BlockLength **/ FrameSystemLimitsBlockLength: { max: 'FrameSupportDispatchPerDispatchClassU32' }, /** - * Lookup135: frame_support::dispatch::PerDispatchClass + * Lookup137: frame_support::dispatch::PerDispatchClass **/ FrameSupportDispatchPerDispatchClassU32: { normal: 'u32', @@ -1402,14 +1448,14 @@ mandatory: 'u32' }, /** - * Lookup136: sp_weights::RuntimeDbWeight + * Lookup138: sp_weights::RuntimeDbWeight **/ SpWeightsRuntimeDbWeight: { read: 'u64', write: 'u64' }, /** - * Lookup137: sp_version::RuntimeVersion + * Lookup139: sp_version::RuntimeVersion **/ SpVersionRuntimeVersion: { specName: 'Text', @@ -1422,13 +1468,13 @@ stateVersion: 'u8' }, /** - * Lookup142: frame_system::pallet::Error + * Lookup144: frame_system::pallet::Error **/ FrameSystemError: { _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered'] }, /** - * Lookup143: polkadot_primitives::v2::PersistedValidationData + * Lookup145: polkadot_primitives::v2::PersistedValidationData **/ PolkadotPrimitivesV2PersistedValidationData: { parentHead: 'Bytes', @@ -1437,19 +1483,19 @@ maxPovSize: 'u32' }, /** - * Lookup146: polkadot_primitives::v2::UpgradeRestriction + * Lookup148: polkadot_primitives::v2::UpgradeRestriction **/ PolkadotPrimitivesV2UpgradeRestriction: { _enum: ['Present'] }, /** - * Lookup147: sp_trie::storage_proof::StorageProof + * Lookup149: sp_trie::storage_proof::StorageProof **/ SpTrieStorageProof: { trieNodes: 'BTreeSet' }, /** - * Lookup149: cumulus_pallet_parachain_system::relay_state_snapshot::MessagingStateSnapshot + * Lookup151: cumulus_pallet_parachain_system::relay_state_snapshot::MessagingStateSnapshot **/ CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot: { dmqMqcHead: 'H256', @@ -1458,7 +1504,7 @@ egressChannels: 'Vec<(u32,PolkadotPrimitivesV2AbridgedHrmpChannel)>' }, /** - * Lookup152: polkadot_primitives::v2::AbridgedHrmpChannel + * Lookup154: polkadot_primitives::v2::AbridgedHrmpChannel **/ PolkadotPrimitivesV2AbridgedHrmpChannel: { maxCapacity: 'u32', @@ -1469,7 +1515,7 @@ mqcHead: 'Option' }, /** - * Lookup153: polkadot_primitives::v2::AbridgedHostConfiguration + * Lookup155: polkadot_primitives::v2::AbridgedHostConfiguration **/ PolkadotPrimitivesV2AbridgedHostConfiguration: { maxCodeSize: 'u32', @@ -1483,14 +1529,14 @@ validationUpgradeDelay: 'u32' }, /** - * Lookup159: polkadot_core_primitives::OutboundHrmpMessage + * Lookup161: polkadot_core_primitives::OutboundHrmpMessage **/ PolkadotCorePrimitivesOutboundHrmpMessage: { recipient: 'u32', data: 'Bytes' }, /** - * Lookup160: cumulus_pallet_parachain_system::pallet::Call + * Lookup162: cumulus_pallet_parachain_system::pallet::Call **/ CumulusPalletParachainSystemCall: { _enum: { @@ -1509,7 +1555,7 @@ } }, /** - * Lookup161: cumulus_primitives_parachain_inherent::ParachainInherentData + * Lookup163: cumulus_primitives_parachain_inherent::ParachainInherentData **/ CumulusPrimitivesParachainInherentParachainInherentData: { validationData: 'PolkadotPrimitivesV2PersistedValidationData', @@ -1518,54 +1564,170 @@ horizontalMessages: 'BTreeMap>' }, /** - * Lookup163: polkadot_core_primitives::InboundDownwardMessage + * Lookup165: polkadot_core_primitives::InboundDownwardMessage **/ PolkadotCorePrimitivesInboundDownwardMessage: { sentAt: 'u32', msg: 'Bytes' }, /** - * Lookup166: polkadot_core_primitives::InboundHrmpMessage + * Lookup168: polkadot_core_primitives::InboundHrmpMessage **/ PolkadotCorePrimitivesInboundHrmpMessage: { sentAt: 'u32', data: 'Bytes' }, /** - * Lookup169: cumulus_pallet_parachain_system::pallet::Error + * Lookup171: cumulus_pallet_parachain_system::pallet::Error **/ CumulusPalletParachainSystemError: { _enum: ['OverlappingUpgrades', 'ProhibitedByPolkadot', 'TooBig', 'ValidationDataNotAvailable', 'HostConfigurationNotAvailable', 'NotScheduled', 'NothingAuthorized', 'Unauthorized'] }, /** - * Lookup171: pallet_balances::BalanceLock + * Lookup173: pallet_authorship::UncleEntryItem + **/ + PalletAuthorshipUncleEntryItem: { + _enum: { + InclusionHeight: 'u32', + Uncle: '(H256,Option)' + } + }, + /** + * Lookup175: pallet_authorship::pallet::Call + **/ + PalletAuthorshipCall: { + _enum: { + set_uncles: { + newUncles: 'Vec' + } + } + }, + /** + * Lookup177: sp_runtime::generic::header::Header + **/ + SpRuntimeHeader: { + parentHash: 'H256', + number: 'Compact', + stateRoot: 'H256', + extrinsicsRoot: 'H256', + digest: 'SpRuntimeDigest' + }, + /** + * Lookup178: sp_runtime::traits::BlakeTwo256 + **/ + SpRuntimeBlakeTwo256: 'Null', + /** + * Lookup179: pallet_authorship::pallet::Error + **/ + PalletAuthorshipError: { + _enum: ['InvalidUncleParent', 'UnclesAlreadySet', 'TooManyUncles', 'GenesisUncle', 'TooHighUncle', 'UncleAlreadyIncluded', 'OldUncle'] + }, + /** + * Lookup182: pallet_collator_selection::pallet::Call + **/ + PalletCollatorSelectionCall: { + _enum: { + add_invulnerable: { + _alias: { + new_: 'new', + }, + new_: 'AccountId32', + }, + remove_invulnerable: { + who: 'AccountId32', + }, + set_desired_collators: { + max: 'u32', + }, + set_license_bond: { + bond: 'u128', + }, + set_kick_threshold: { + kickThreshold: 'u32', + }, + get_license: 'Null', + onboard: 'Null', + offboard: 'Null', + release_license: 'Null', + force_revoke_license: { + who: 'AccountId32' + } + } + }, + /** + * Lookup183: pallet_collator_selection::pallet::Error **/ + PalletCollatorSelectionError: { + _enum: ['TooManyCandidates', 'Unknown', 'Permission', 'AlreadyHoldingLicense', 'NoLicense', 'AlreadyCandidate', 'NotCandidate', 'TooManyInvulnerables', 'TooFewInvulnerables', 'AlreadyInvulnerable', 'NotInvulnerable', 'NoAssociatedValidatorId', 'ValidatorNotRegistered'] + }, + /** + * Lookup186: opal_runtime::runtime_common::SessionKeys + **/ + OpalRuntimeRuntimeCommonSessionKeys: { + aura: 'SpConsensusAuraSr25519AppSr25519Public' + }, + /** + * Lookup187: sp_consensus_aura::sr25519::app_sr25519::Public + **/ + SpConsensusAuraSr25519AppSr25519Public: 'SpCoreSr25519Public', + /** + * Lookup188: sp_core::sr25519::Public + **/ + SpCoreSr25519Public: '[u8;32]', + /** + * Lookup191: sp_core::crypto::KeyTypeId + **/ + SpCoreCryptoKeyTypeId: '[u8;4]', + /** + * Lookup192: pallet_session::pallet::Call + **/ + PalletSessionCall: { + _enum: { + set_keys: { + _alias: { + keys_: 'keys', + }, + keys_: 'OpalRuntimeRuntimeCommonSessionKeys', + proof: 'Bytes', + }, + purge_keys: 'Null' + } + }, + /** + * Lookup193: pallet_session::pallet::Error + **/ + PalletSessionError: { + _enum: ['InvalidProof', 'NoAssociatedValidatorId', 'DuplicatedKey', 'NoKeys', 'NoAccount'] + }, + /** + * Lookup195: pallet_balances::BalanceLock + **/ PalletBalancesBalanceLock: { id: '[u8;8]', amount: 'u128', reasons: 'PalletBalancesReasons' }, /** - * Lookup172: pallet_balances::Reasons + * Lookup196: pallet_balances::Reasons **/ PalletBalancesReasons: { _enum: ['Fee', 'Misc', 'All'] }, /** - * Lookup175: pallet_balances::ReserveData + * Lookup199: pallet_balances::ReserveData **/ PalletBalancesReserveData: { id: '[u8;16]', amount: 'u128' }, /** - * Lookup177: pallet_balances::Releases + * Lookup201: pallet_balances::Releases **/ PalletBalancesReleases: { _enum: ['V1_0_0', 'V2_0_0'] }, /** - * Lookup178: pallet_balances::pallet::Call + * Lookup202: pallet_balances::pallet::Call **/ PalletBalancesCall: { _enum: { @@ -1598,13 +1760,13 @@ } }, /** - * Lookup181: pallet_balances::pallet::Error + * Lookup205: pallet_balances::pallet::Error **/ PalletBalancesError: { _enum: ['VestingBalance', 'LiquidityRestrictions', 'InsufficientBalance', 'ExistentialDeposit', 'KeepAlive', 'ExistingVestingSchedule', 'DeadAccount', 'TooManyReserves'] }, /** - * Lookup183: pallet_timestamp::pallet::Call + * Lookup207: pallet_timestamp::pallet::Call **/ PalletTimestampCall: { _enum: { @@ -1614,13 +1776,13 @@ } }, /** - * Lookup185: pallet_transaction_payment::Releases + * Lookup209: pallet_transaction_payment::Releases **/ PalletTransactionPaymentReleases: { _enum: ['V1Ancient', 'V2'] }, /** - * Lookup186: pallet_treasury::Proposal + * Lookup210: pallet_treasury::Proposal **/ PalletTreasuryProposal: { proposer: 'AccountId32', @@ -1629,7 +1791,7 @@ bond: 'u128' }, /** - * Lookup189: pallet_treasury::pallet::Call + * Lookup212: pallet_treasury::pallet::Call **/ PalletTreasuryCall: { _enum: { @@ -1653,17 +1815,17 @@ } }, /** - * Lookup192: frame_support::PalletId + * Lookup215: frame_support::PalletId **/ FrameSupportPalletId: '[u8;8]', /** - * Lookup193: pallet_treasury::pallet::Error + * Lookup216: pallet_treasury::pallet::Error **/ PalletTreasuryError: { _enum: ['InsufficientProposersBalance', 'InvalidIndex', 'TooManyApprovals', 'InsufficientPermission', 'ProposalNotApproved'] }, /** - * Lookup194: pallet_sudo::pallet::Call + * Lookup217: pallet_sudo::pallet::Call **/ PalletSudoCall: { _enum: { @@ -1687,7 +1849,7 @@ } }, /** - * Lookup196: orml_vesting::module::Call + * Lookup219: orml_vesting::module::Call **/ OrmlVestingModuleCall: { _enum: { @@ -1706,7 +1868,7 @@ } }, /** - * Lookup198: orml_xtokens::module::Call + * Lookup221: orml_xtokens::module::Call **/ OrmlXtokensModuleCall: { _enum: { @@ -1749,7 +1911,7 @@ } }, /** - * Lookup199: xcm::VersionedMultiAsset + * Lookup222: xcm::VersionedMultiAsset **/ XcmVersionedMultiAsset: { _enum: { @@ -1758,7 +1920,7 @@ } }, /** - * Lookup202: orml_tokens::module::Call + * Lookup225: orml_tokens::module::Call **/ OrmlTokensModuleCall: { _enum: { @@ -1792,7 +1954,7 @@ } }, /** - * Lookup203: cumulus_pallet_xcmp_queue::pallet::Call + * Lookup226: cumulus_pallet_xcmp_queue::pallet::Call **/ CumulusPalletXcmpQueueCall: { _enum: { @@ -1841,7 +2003,7 @@ } }, /** - * Lookup204: pallet_xcm::pallet::Call + * Lookup227: pallet_xcm::pallet::Call **/ PalletXcmCall: { _enum: { @@ -1895,7 +2057,7 @@ } }, /** - * Lookup205: xcm::VersionedXcm + * Lookup228: xcm::VersionedXcm **/ XcmVersionedXcm: { _enum: { @@ -1905,7 +2067,7 @@ } }, /** - * Lookup206: xcm::v0::Xcm + * Lookup229: xcm::v0::Xcm **/ XcmV0Xcm: { _enum: { @@ -1959,7 +2121,7 @@ } }, /** - * Lookup208: xcm::v0::order::Order + * Lookup231: xcm::v0::order::Order **/ XcmV0Order: { _enum: { @@ -2002,7 +2164,7 @@ } }, /** - * Lookup210: xcm::v0::Response + * Lookup233: xcm::v0::Response **/ XcmV0Response: { _enum: { @@ -2010,7 +2172,7 @@ } }, /** - * Lookup211: xcm::v1::Xcm + * Lookup234: xcm::v1::Xcm **/ XcmV1Xcm: { _enum: { @@ -2069,7 +2231,7 @@ } }, /** - * Lookup213: xcm::v1::order::Order + * Lookup236: xcm::v1::order::Order **/ XcmV1Order: { _enum: { @@ -2114,7 +2276,7 @@ } }, /** - * Lookup215: xcm::v1::Response + * Lookup238: xcm::v1::Response **/ XcmV1Response: { _enum: { @@ -2123,11 +2285,11 @@ } }, /** - * Lookup229: cumulus_pallet_xcm::pallet::Call + * Lookup252: cumulus_pallet_xcm::pallet::Call **/ CumulusPalletXcmCall: 'Null', /** - * Lookup230: cumulus_pallet_dmp_queue::pallet::Call + * Lookup253: cumulus_pallet_dmp_queue::pallet::Call **/ CumulusPalletDmpQueueCall: { _enum: { @@ -2138,7 +2300,7 @@ } }, /** - * Lookup231: pallet_inflation::pallet::Call + * Lookup254: pallet_inflation::pallet::Call **/ PalletInflationCall: { _enum: { @@ -2148,7 +2310,7 @@ } }, /** - * Lookup232: pallet_unique::Call + * Lookup255: pallet_unique::Call **/ PalletUniqueCall: { _enum: { @@ -2282,14 +2444,17 @@ operator: 'PalletEvmAccountBasicCrossAccountIdRepr', approve: 'bool', }, - repair_item: { + force_repair_collection: { + collectionId: 'u32', + }, + force_repair_item: { collectionId: 'u32', itemId: 'u32' } } }, /** - * Lookup237: up_data_structs::CollectionMode + * Lookup260: up_data_structs::CollectionMode **/ UpDataStructsCollectionMode: { _enum: { @@ -2299,7 +2464,7 @@ } }, /** - * Lookup238: up_data_structs::CreateCollectionData + * Lookup261: up_data_structs::CreateCollectionData **/ UpDataStructsCreateCollectionData: { mode: 'UpDataStructsCollectionMode', @@ -2314,13 +2479,13 @@ properties: 'Vec' }, /** - * Lookup240: up_data_structs::AccessMode + * Lookup263: up_data_structs::AccessMode **/ UpDataStructsAccessMode: { _enum: ['Normal', 'AllowList'] }, /** - * Lookup242: up_data_structs::CollectionLimits + * Lookup265: up_data_structs::CollectionLimits **/ UpDataStructsCollectionLimits: { accountTokenOwnershipLimit: 'Option', @@ -2334,7 +2499,7 @@ transfersEnabled: 'Option' }, /** - * Lookup244: up_data_structs::SponsoringRateLimit + * Lookup267: up_data_structs::SponsoringRateLimit **/ UpDataStructsSponsoringRateLimit: { _enum: { @@ -2343,7 +2508,7 @@ } }, /** - * Lookup247: up_data_structs::CollectionPermissions + * Lookup270: up_data_structs::CollectionPermissions **/ UpDataStructsCollectionPermissions: { access: 'Option', @@ -2351,7 +2516,7 @@ nesting: 'Option' }, /** - * Lookup249: up_data_structs::NestingPermissions + * Lookup272: up_data_structs::NestingPermissions **/ UpDataStructsNestingPermissions: { tokenOwner: 'bool', @@ -2359,18 +2524,18 @@ restricted: 'Option' }, /** - * Lookup251: up_data_structs::OwnerRestrictedSet + * Lookup274: up_data_structs::OwnerRestrictedSet **/ UpDataStructsOwnerRestrictedSet: 'BTreeSet', /** - * Lookup256: up_data_structs::PropertyKeyPermission + * Lookup279: up_data_structs::PropertyKeyPermission **/ UpDataStructsPropertyKeyPermission: { key: 'Bytes', permission: 'UpDataStructsPropertyPermission' }, /** - * Lookup257: up_data_structs::PropertyPermission + * Lookup280: up_data_structs::PropertyPermission **/ UpDataStructsPropertyPermission: { mutable: 'bool', @@ -2378,14 +2543,14 @@ tokenOwner: 'bool' }, /** - * Lookup260: up_data_structs::Property + * Lookup283: up_data_structs::Property **/ UpDataStructsProperty: { key: 'Bytes', value: 'Bytes' }, /** - * Lookup263: up_data_structs::CreateItemData + * Lookup286: up_data_structs::CreateItemData **/ UpDataStructsCreateItemData: { _enum: { @@ -2395,26 +2560,26 @@ } }, /** - * Lookup264: up_data_structs::CreateNftData + * Lookup287: up_data_structs::CreateNftData **/ UpDataStructsCreateNftData: { properties: 'Vec' }, /** - * Lookup265: up_data_structs::CreateFungibleData + * Lookup288: up_data_structs::CreateFungibleData **/ UpDataStructsCreateFungibleData: { value: 'u128' }, /** - * Lookup266: up_data_structs::CreateReFungibleData + * Lookup289: up_data_structs::CreateReFungibleData **/ UpDataStructsCreateReFungibleData: { pieces: 'u128', properties: 'Vec' }, /** - * Lookup269: up_data_structs::CreateItemExData> + * Lookup292: up_data_structs::CreateItemExData> **/ UpDataStructsCreateItemExData: { _enum: { @@ -2425,14 +2590,14 @@ } }, /** - * Lookup271: up_data_structs::CreateNftExData> + * Lookup294: up_data_structs::CreateNftExData> **/ UpDataStructsCreateNftExData: { properties: 'Vec', owner: 'PalletEvmAccountBasicCrossAccountIdRepr' }, /** - * Lookup278: up_data_structs::CreateRefungibleExSingleOwner> + * Lookup301: up_data_structs::CreateRefungibleExSingleOwner> **/ UpDataStructsCreateRefungibleExSingleOwner: { user: 'PalletEvmAccountBasicCrossAccountIdRepr', @@ -2440,14 +2605,14 @@ properties: 'Vec' }, /** - * Lookup280: up_data_structs::CreateRefungibleExMultipleOwners> + * Lookup303: up_data_structs::CreateRefungibleExMultipleOwners> **/ UpDataStructsCreateRefungibleExMultipleOwners: { users: 'BTreeMap', properties: 'Vec' }, /** - * Lookup281: pallet_configuration::pallet::Call + * Lookup304: pallet_configuration::pallet::Call **/ PalletConfigurationCall: { _enum: { @@ -2466,7 +2631,7 @@ } }, /** - * Lookup286: pallet_configuration::AppPromotionConfiguration + * Lookup309: pallet_configuration::AppPromotionConfiguration **/ PalletConfigurationAppPromotionConfiguration: { recalculationInterval: 'Option', @@ -2475,15 +2640,15 @@ maxStakersPerCalculation: 'Option' }, /** - * Lookup289: pallet_template_transaction_payment::Call + * Lookup312: pallet_template_transaction_payment::Call **/ PalletTemplateTransactionPaymentCall: 'Null', /** - * Lookup290: pallet_structure::pallet::Call + * Lookup313: pallet_structure::pallet::Call **/ PalletStructureCall: 'Null', /** - * Lookup291: pallet_rmrk_core::pallet::Call + * Lookup314: pallet_rmrk_core::pallet::Call **/ PalletRmrkCoreCall: { _enum: { @@ -2574,7 +2739,7 @@ } }, /** - * Lookup297: rmrk_traits::resource::ResourceTypes, sp_core::bounded::bounded_vec::BoundedVec> + * Lookup320: rmrk_traits::resource::ResourceTypes, sp_core::bounded::bounded_vec::BoundedVec> **/ RmrkTraitsResourceResourceTypes: { _enum: { @@ -2584,7 +2749,7 @@ } }, /** - * Lookup299: rmrk_traits::resource::BasicResource> + * Lookup322: rmrk_traits::resource::BasicResource> **/ RmrkTraitsResourceBasicResource: { src: 'Option', @@ -2593,7 +2758,7 @@ thumb: 'Option' }, /** - * Lookup301: rmrk_traits::resource::ComposableResource, sp_core::bounded::bounded_vec::BoundedVec> + * Lookup324: rmrk_traits::resource::ComposableResource, sp_core::bounded::bounded_vec::BoundedVec> **/ RmrkTraitsResourceComposableResource: { parts: 'Vec', @@ -2604,7 +2769,7 @@ thumb: 'Option' }, /** - * Lookup302: rmrk_traits::resource::SlotResource> + * Lookup325: rmrk_traits::resource::SlotResource> **/ RmrkTraitsResourceSlotResource: { base: 'u32', @@ -2615,7 +2780,7 @@ thumb: 'Option' }, /** - * Lookup305: pallet_rmrk_equip::pallet::Call + * Lookup328: pallet_rmrk_equip::pallet::Call **/ PalletRmrkEquipCall: { _enum: { @@ -2636,7 +2801,7 @@ } }, /** - * Lookup308: rmrk_traits::part::PartType, sp_core::bounded::bounded_vec::BoundedVec> + * Lookup331: rmrk_traits::part::PartType, sp_core::bounded::bounded_vec::BoundedVec> **/ RmrkTraitsPartPartType: { _enum: { @@ -2645,7 +2810,7 @@ } }, /** - * Lookup310: rmrk_traits::part::FixedPart> + * Lookup333: rmrk_traits::part::FixedPart> **/ RmrkTraitsPartFixedPart: { id: 'u32', @@ -2653,7 +2818,7 @@ src: 'Bytes' }, /** - * Lookup311: rmrk_traits::part::SlotPart, sp_core::bounded::bounded_vec::BoundedVec> + * Lookup334: rmrk_traits::part::SlotPart, sp_core::bounded::bounded_vec::BoundedVec> **/ RmrkTraitsPartSlotPart: { id: 'u32', @@ -2662,7 +2827,7 @@ z: 'u32' }, /** - * Lookup312: rmrk_traits::part::EquippableList> + * Lookup335: rmrk_traits::part::EquippableList> **/ RmrkTraitsPartEquippableList: { _enum: { @@ -2672,7 +2837,7 @@ } }, /** - * Lookup314: rmrk_traits::theme::Theme, sp_core::bounded::bounded_vec::BoundedVec>, S>> + * Lookup337: rmrk_traits::theme::Theme, sp_core::bounded::bounded_vec::BoundedVec>, S>> **/ RmrkTraitsTheme: { name: 'Bytes', @@ -2680,14 +2845,14 @@ inherit: 'bool' }, /** - * Lookup316: rmrk_traits::theme::ThemeProperty> + * Lookup339: rmrk_traits::theme::ThemeProperty> **/ RmrkTraitsThemeThemeProperty: { key: 'Bytes', value: 'Bytes' }, /** - * Lookup318: pallet_app_promotion::pallet::Call + * Lookup341: pallet_app_promotion::pallet::Call **/ PalletAppPromotionCall: { _enum: { @@ -2716,7 +2881,7 @@ } }, /** - * Lookup319: pallet_foreign_assets::module::Call + * Lookup342: pallet_foreign_assets::module::Call **/ PalletForeignAssetsModuleCall: { _enum: { @@ -2733,7 +2898,7 @@ } }, /** - * Lookup320: pallet_evm::pallet::Call + * Lookup343: pallet_evm::pallet::Call **/ PalletEvmCall: { _enum: { @@ -2776,7 +2941,7 @@ } }, /** - * Lookup326: pallet_ethereum::pallet::Call + * Lookup349: pallet_ethereum::pallet::Call **/ PalletEthereumCall: { _enum: { @@ -2786,7 +2951,7 @@ } }, /** - * Lookup327: ethereum::transaction::TransactionV2 + * Lookup350: ethereum::transaction::TransactionV2 **/ EthereumTransactionTransactionV2: { _enum: { @@ -2796,7 +2961,7 @@ } }, /** - * Lookup328: ethereum::transaction::LegacyTransaction + * Lookup351: ethereum::transaction::LegacyTransaction **/ EthereumTransactionLegacyTransaction: { nonce: 'U256', @@ -2808,7 +2973,7 @@ signature: 'EthereumTransactionTransactionSignature' }, /** - * Lookup329: ethereum::transaction::TransactionAction + * Lookup352: ethereum::transaction::TransactionAction **/ EthereumTransactionTransactionAction: { _enum: { @@ -2817,7 +2982,7 @@ } }, /** - * Lookup330: ethereum::transaction::TransactionSignature + * Lookup353: ethereum::transaction::TransactionSignature **/ EthereumTransactionTransactionSignature: { v: 'u64', @@ -2825,7 +2990,7 @@ s: 'H256' }, /** - * Lookup332: ethereum::transaction::EIP2930Transaction + * Lookup355: ethereum::transaction::EIP2930Transaction **/ EthereumTransactionEip2930Transaction: { chainId: 'u64', @@ -2841,14 +3006,14 @@ s: 'H256' }, /** - * Lookup334: ethereum::transaction::AccessListItem + * Lookup357: ethereum::transaction::AccessListItem **/ EthereumTransactionAccessListItem: { address: 'H160', storageKeys: 'Vec' }, /** - * Lookup335: ethereum::transaction::EIP1559Transaction + * Lookup358: ethereum::transaction::EIP1559Transaction **/ EthereumTransactionEip1559Transaction: { chainId: 'u64', @@ -2865,7 +3030,7 @@ s: 'H256' }, /** - * Lookup336: pallet_evm_migration::pallet::Call + * Lookup359: pallet_evm_migration::pallet::Call **/ PalletEvmMigrationCall: { _enum: { @@ -2889,13 +3054,13 @@ } }, /** - * Lookup340: pallet_maintenance::pallet::Call + * Lookup363: pallet_maintenance::pallet::Call **/ PalletMaintenanceCall: { _enum: ['enable', 'disable'] }, /** - * Lookup341: pallet_test_utils::pallet::Call + * Lookup364: pallet_test_utils::pallet::Call **/ PalletTestUtilsCall: { _enum: { @@ -2914,32 +3079,32 @@ } }, /** - * Lookup343: pallet_sudo::pallet::Error + * Lookup366: pallet_sudo::pallet::Error **/ PalletSudoError: { _enum: ['RequireSudo'] }, /** - * Lookup345: orml_vesting::module::Error + * Lookup368: orml_vesting::module::Error **/ OrmlVestingModuleError: { _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded'] }, /** - * Lookup346: orml_xtokens::module::Error + * Lookup369: 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 + * Lookup372: orml_tokens::BalanceLock **/ OrmlTokensBalanceLock: { id: '[u8;8]', amount: 'u128' }, /** - * Lookup351: orml_tokens::AccountData + * Lookup374: orml_tokens::AccountData **/ OrmlTokensAccountData: { free: 'u128', @@ -2947,20 +3112,20 @@ frozen: 'u128' }, /** - * Lookup353: orml_tokens::ReserveData + * Lookup376: orml_tokens::ReserveData **/ OrmlTokensReserveData: { id: 'Null', amount: 'u128' }, /** - * Lookup355: orml_tokens::module::Error + * Lookup378: orml_tokens::module::Error **/ OrmlTokensModuleError: { _enum: ['BalanceTooLow', 'AmountIntoBalanceFailed', 'LiquidityRestrictions', 'MaxLocksExceeded', 'KeepAlive', 'ExistentialDeposit', 'DeadAccount', 'TooManyReserves'] }, /** - * Lookup357: cumulus_pallet_xcmp_queue::InboundChannelDetails + * Lookup380: cumulus_pallet_xcmp_queue::InboundChannelDetails **/ CumulusPalletXcmpQueueInboundChannelDetails: { sender: 'u32', @@ -2968,19 +3133,19 @@ messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>' }, /** - * Lookup358: cumulus_pallet_xcmp_queue::InboundState + * Lookup381: cumulus_pallet_xcmp_queue::InboundState **/ CumulusPalletXcmpQueueInboundState: { _enum: ['Ok', 'Suspended'] }, /** - * Lookup361: polkadot_parachain::primitives::XcmpMessageFormat + * Lookup384: polkadot_parachain::primitives::XcmpMessageFormat **/ PolkadotParachainPrimitivesXcmpMessageFormat: { _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals'] }, /** - * Lookup364: cumulus_pallet_xcmp_queue::OutboundChannelDetails + * Lookup387: cumulus_pallet_xcmp_queue::OutboundChannelDetails **/ CumulusPalletXcmpQueueOutboundChannelDetails: { recipient: 'u32', @@ -2990,13 +3155,13 @@ lastIndex: 'u16' }, /** - * Lookup365: cumulus_pallet_xcmp_queue::OutboundState + * Lookup388: cumulus_pallet_xcmp_queue::OutboundState **/ CumulusPalletXcmpQueueOutboundState: { _enum: ['Ok', 'Suspended'] }, /** - * Lookup367: cumulus_pallet_xcmp_queue::QueueConfigData + * Lookup390: cumulus_pallet_xcmp_queue::QueueConfigData **/ CumulusPalletXcmpQueueQueueConfigData: { suspendThreshold: 'u32', @@ -3007,29 +3172,29 @@ xcmpMaxIndividualWeight: 'SpWeightsWeightV2Weight' }, /** - * Lookup369: cumulus_pallet_xcmp_queue::pallet::Error + * Lookup392: cumulus_pallet_xcmp_queue::pallet::Error **/ CumulusPalletXcmpQueueError: { _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit'] }, /** - * Lookup370: pallet_xcm::pallet::Error + * Lookup393: 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 + * Lookup394: cumulus_pallet_xcm::pallet::Error **/ CumulusPalletXcmError: 'Null', /** - * Lookup372: cumulus_pallet_dmp_queue::ConfigData + * Lookup395: cumulus_pallet_dmp_queue::ConfigData **/ CumulusPalletDmpQueueConfigData: { maxIndividual: 'SpWeightsWeightV2Weight' }, /** - * Lookup373: cumulus_pallet_dmp_queue::PageIndexData + * Lookup396: cumulus_pallet_dmp_queue::PageIndexData **/ CumulusPalletDmpQueuePageIndexData: { beginUsed: 'u32', @@ -3037,25 +3202,25 @@ overweightCount: 'u64' }, /** - * Lookup376: cumulus_pallet_dmp_queue::pallet::Error + * Lookup399: cumulus_pallet_dmp_queue::pallet::Error **/ CumulusPalletDmpQueueError: { _enum: ['Unknown', 'OverLimit'] }, /** - * Lookup380: pallet_unique::Error + * Lookup403: pallet_unique::Error **/ PalletUniqueError: { _enum: ['CollectionDecimalPointLimitExceeded', 'EmptyArgument', 'RepartitionCalledOnNonRefungibleCollection'] }, /** - * Lookup381: pallet_configuration::pallet::Error + * Lookup404: pallet_configuration::pallet::Error **/ PalletConfigurationError: { _enum: ['InconsistentConfiguration'] }, /** - * Lookup382: up_data_structs::Collection + * Lookup405: up_data_structs::Collection **/ UpDataStructsCollection: { owner: 'AccountId32', @@ -3069,7 +3234,7 @@ flags: '[u8;1]' }, /** - * Lookup383: up_data_structs::SponsorshipState + * Lookup406: up_data_structs::SponsorshipState **/ UpDataStructsSponsorshipStateAccountId32: { _enum: { @@ -3079,7 +3244,7 @@ } }, /** - * Lookup385: up_data_structs::Properties + * Lookup408: up_data_structs::Properties **/ UpDataStructsProperties: { map: 'UpDataStructsPropertiesMapBoundedVec', @@ -3087,15 +3252,15 @@ spaceLimit: 'u32' }, /** - * Lookup386: up_data_structs::PropertiesMap> + * Lookup409: up_data_structs::PropertiesMap> **/ UpDataStructsPropertiesMapBoundedVec: 'BTreeMap', /** - * Lookup391: up_data_structs::PropertiesMap + * Lookup414: up_data_structs::PropertiesMap **/ UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap', /** - * Lookup398: up_data_structs::CollectionStats + * Lookup421: up_data_structs::CollectionStats **/ UpDataStructsCollectionStats: { created: 'u32', @@ -3103,18 +3268,18 @@ alive: 'u32' }, /** - * Lookup399: up_data_structs::TokenChild + * Lookup422: up_data_structs::TokenChild **/ UpDataStructsTokenChild: { token: 'u32', collection: 'u32' }, /** - * Lookup400: PhantomType::up_data_structs + * Lookup423: PhantomType::up_data_structs **/ PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,RmrkTraitsCollectionCollectionInfo,RmrkTraitsNftNftInfo,RmrkTraitsResourceResourceInfo,RmrkTraitsPropertyPropertyInfo,RmrkTraitsBaseBaseInfo,RmrkTraitsPartPartType,RmrkTraitsTheme,RmrkTraitsNftNftChild);0]', /** - * Lookup402: up_data_structs::TokenData> + * Lookup425: up_data_structs::TokenData> **/ UpDataStructsTokenData: { properties: 'Vec', @@ -3122,7 +3287,7 @@ pieces: 'u128' }, /** - * Lookup404: up_data_structs::RpcCollection + * Lookup427: up_data_structs::RpcCollection **/ UpDataStructsRpcCollection: { owner: 'AccountId32', @@ -3139,14 +3304,14 @@ flags: 'UpDataStructsRpcCollectionFlags' }, /** - * Lookup405: up_data_structs::RpcCollectionFlags + * Lookup428: up_data_structs::RpcCollectionFlags **/ UpDataStructsRpcCollectionFlags: { foreign: 'bool', erc721metadata: 'bool' }, /** - * Lookup406: rmrk_traits::collection::CollectionInfo, sp_core::bounded::bounded_vec::BoundedVec, sp_core::crypto::AccountId32> + * Lookup429: rmrk_traits::collection::CollectionInfo, sp_core::bounded::bounded_vec::BoundedVec, sp_core::crypto::AccountId32> **/ RmrkTraitsCollectionCollectionInfo: { issuer: 'AccountId32', @@ -3156,7 +3321,7 @@ nftsCount: 'u32' }, /** - * Lookup407: rmrk_traits::nft::NftInfo> + * Lookup430: rmrk_traits::nft::NftInfo> **/ RmrkTraitsNftNftInfo: { owner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple', @@ -3166,14 +3331,14 @@ pending: 'bool' }, /** - * Lookup409: rmrk_traits::nft::RoyaltyInfo + * Lookup432: rmrk_traits::nft::RoyaltyInfo **/ RmrkTraitsNftRoyaltyInfo: { recipient: 'AccountId32', amount: 'Permill' }, /** - * Lookup410: rmrk_traits::resource::ResourceInfo, sp_core::bounded::bounded_vec::BoundedVec> + * Lookup433: rmrk_traits::resource::ResourceInfo, sp_core::bounded::bounded_vec::BoundedVec> **/ RmrkTraitsResourceResourceInfo: { id: 'u32', @@ -3182,14 +3347,14 @@ pendingRemoval: 'bool' }, /** - * Lookup411: rmrk_traits::property::PropertyInfo, sp_core::bounded::bounded_vec::BoundedVec> + * Lookup434: rmrk_traits::property::PropertyInfo, sp_core::bounded::bounded_vec::BoundedVec> **/ RmrkTraitsPropertyPropertyInfo: { key: 'Bytes', value: 'Bytes' }, /** - * Lookup412: rmrk_traits::base::BaseInfo> + * Lookup435: rmrk_traits::base::BaseInfo> **/ RmrkTraitsBaseBaseInfo: { issuer: 'AccountId32', @@ -3197,92 +3362,92 @@ symbol: 'Bytes' }, /** - * Lookup413: rmrk_traits::nft::NftChild + * Lookup436: rmrk_traits::nft::NftChild **/ RmrkTraitsNftNftChild: { collectionId: 'u32', nftId: 'u32' }, /** - * Lookup415: pallet_common::pallet::Error + * Lookup438: 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', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds', 'UserIsNotAllowedToNest', 'SourceCollectionIsNotAllowedToNest', 'CollectionFieldSizeExceeded', 'NoSpaceForProperty', 'PropertyLimitReached', 'PropertyKeyIsTooLong', 'InvalidCharacterInPropertyKey', 'EmptyPropertyKey', 'CollectionIsExternal', 'CollectionIsInternal', 'ConfirmSponsorshipFail', 'UserIsNotCollectionAdmin'] }, /** - * Lookup417: pallet_fungible::pallet::Error + * Lookup440: pallet_fungible::pallet::Error **/ PalletFungibleError: { _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed', 'SettingAllowanceForAllNotAllowed', 'FungibleTokensAreAlwaysValid'] }, /** - * Lookup418: pallet_refungible::ItemData + * Lookup441: pallet_refungible::ItemData **/ PalletRefungibleItemData: { constData: 'Bytes' }, /** - * Lookup423: pallet_refungible::pallet::Error + * Lookup446: pallet_refungible::pallet::Error **/ PalletRefungibleError: { _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RepartitionWhileNotOwningAllPieces', 'RefungibleDisallowsNesting', 'SettingPropertiesNotAllowed'] }, /** - * Lookup424: pallet_nonfungible::ItemData> + * Lookup447: pallet_nonfungible::ItemData> **/ PalletNonfungibleItemData: { owner: 'PalletEvmAccountBasicCrossAccountIdRepr' }, /** - * Lookup426: up_data_structs::PropertyScope + * Lookup449: up_data_structs::PropertyScope **/ UpDataStructsPropertyScope: { _enum: ['None', 'Rmrk'] }, /** - * Lookup428: pallet_nonfungible::pallet::Error + * Lookup451: pallet_nonfungible::pallet::Error **/ PalletNonfungibleError: { _enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount', 'CantBurnNftWithChildren'] }, /** - * Lookup429: pallet_structure::pallet::Error + * Lookup452: pallet_structure::pallet::Error **/ PalletStructureError: { _enum: ['OuroborosDetected', 'DepthLimit', 'BreadthLimit', 'TokenNotFound'] }, /** - * Lookup430: pallet_rmrk_core::pallet::Error + * Lookup453: 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'] }, /** - * Lookup432: pallet_rmrk_equip::pallet::Error + * Lookup455: pallet_rmrk_equip::pallet::Error **/ PalletRmrkEquipError: { _enum: ['PermissionError', 'NoAvailableBaseId', 'NoAvailablePartId', 'BaseDoesntExist', 'NeedsDefaultThemeFirst', 'PartDoesntExist', 'NoEquippableOnFixedPart'] }, /** - * Lookup438: pallet_app_promotion::pallet::Error + * Lookup461: pallet_app_promotion::pallet::Error **/ PalletAppPromotionError: { _enum: ['AdminNotSet', 'NoPermission', 'NotSufficientFunds', 'PendingForBlockOverflow', 'SponsorNotSet', 'IncorrectLockedBalanceOperation'] }, /** - * Lookup439: pallet_foreign_assets::module::Error + * Lookup462: pallet_foreign_assets::module::Error **/ PalletForeignAssetsModuleError: { _enum: ['BadLocation', 'MultiLocationExisted', 'AssetIdNotExists', 'AssetIdExisted'] }, /** - * Lookup441: pallet_evm::pallet::Error + * Lookup464: pallet_evm::pallet::Error **/ PalletEvmError: { _enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce', 'GasLimitTooLow', 'GasLimitTooHigh', 'Undefined', 'Reentrancy'] }, /** - * Lookup444: fp_rpc::TransactionStatus + * Lookup467: fp_rpc::TransactionStatus **/ FpRpcTransactionStatus: { transactionHash: 'H256', @@ -3294,11 +3459,11 @@ logsBloom: 'EthbloomBloom' }, /** - * Lookup446: ethbloom::Bloom + * Lookup469: ethbloom::Bloom **/ EthbloomBloom: '[u8;256]', /** - * Lookup448: ethereum::receipt::ReceiptV3 + * Lookup471: ethereum::receipt::ReceiptV3 **/ EthereumReceiptReceiptV3: { _enum: { @@ -3308,7 +3473,7 @@ } }, /** - * Lookup449: ethereum::receipt::EIP658ReceiptData + * Lookup472: ethereum::receipt::EIP658ReceiptData **/ EthereumReceiptEip658ReceiptData: { statusCode: 'u8', @@ -3317,7 +3482,7 @@ logs: 'Vec' }, /** - * Lookup450: ethereum::block::Block + * Lookup473: ethereum::block::Block **/ EthereumBlock: { header: 'EthereumHeader', @@ -3325,7 +3490,7 @@ ommers: 'Vec' }, /** - * Lookup451: ethereum::header::Header + * Lookup474: ethereum::header::Header **/ EthereumHeader: { parentHash: 'H256', @@ -3345,23 +3510,23 @@ nonce: 'EthereumTypesHashH64' }, /** - * Lookup452: ethereum_types::hash::H64 + * Lookup475: ethereum_types::hash::H64 **/ EthereumTypesHashH64: '[u8;8]', /** - * Lookup457: pallet_ethereum::pallet::Error + * Lookup480: pallet_ethereum::pallet::Error **/ PalletEthereumError: { _enum: ['InvalidSignature', 'PreLogExists'] }, /** - * Lookup458: pallet_evm_coder_substrate::pallet::Error + * Lookup481: pallet_evm_coder_substrate::pallet::Error **/ PalletEvmCoderSubstrateError: { _enum: ['OutOfGas', 'OutOfFund'] }, /** - * Lookup459: up_data_structs::SponsorshipState> + * Lookup482: up_data_structs::SponsorshipState> **/ UpDataStructsSponsorshipStateBasicCrossAccountIdRepr: { _enum: { @@ -3371,35 +3536,35 @@ } }, /** - * Lookup460: pallet_evm_contract_helpers::SponsoringModeT + * Lookup483: pallet_evm_contract_helpers::SponsoringModeT **/ PalletEvmContractHelpersSponsoringModeT: { _enum: ['Disabled', 'Allowlisted', 'Generous'] }, /** - * Lookup466: pallet_evm_contract_helpers::pallet::Error + * Lookup489: pallet_evm_contract_helpers::pallet::Error **/ PalletEvmContractHelpersError: { _enum: ['NoPermission', 'NoPendingSponsor', 'TooManyMethodsHaveSponsoredLimit'] }, /** - * Lookup467: pallet_evm_migration::pallet::Error + * Lookup490: pallet_evm_migration::pallet::Error **/ PalletEvmMigrationError: { _enum: ['AccountNotEmpty', 'AccountIsNotMigrating', 'BadEvent'] }, /** - * Lookup468: pallet_maintenance::pallet::Error + * Lookup491: pallet_maintenance::pallet::Error **/ PalletMaintenanceError: 'Null', /** - * Lookup469: pallet_test_utils::pallet::Error + * Lookup492: pallet_test_utils::pallet::Error **/ PalletTestUtilsError: { _enum: ['TestPalletDisabled', 'TriggerRollback'] }, /** - * Lookup471: sp_runtime::MultiSignature + * Lookup494: sp_runtime::MultiSignature **/ SpRuntimeMultiSignature: { _enum: { @@ -3409,51 +3574,51 @@ } }, /** - * Lookup472: sp_core::ed25519::Signature + * Lookup495: sp_core::ed25519::Signature **/ SpCoreEd25519Signature: '[u8;64]', /** - * Lookup474: sp_core::sr25519::Signature + * Lookup497: sp_core::sr25519::Signature **/ SpCoreSr25519Signature: '[u8;64]', /** - * Lookup475: sp_core::ecdsa::Signature + * Lookup498: sp_core::ecdsa::Signature **/ SpCoreEcdsaSignature: '[u8;65]', /** - * Lookup478: frame_system::extensions::check_spec_version::CheckSpecVersion + * Lookup501: frame_system::extensions::check_spec_version::CheckSpecVersion **/ FrameSystemExtensionsCheckSpecVersion: 'Null', /** - * Lookup479: frame_system::extensions::check_tx_version::CheckTxVersion + * Lookup502: frame_system::extensions::check_tx_version::CheckTxVersion **/ FrameSystemExtensionsCheckTxVersion: 'Null', /** - * Lookup480: frame_system::extensions::check_genesis::CheckGenesis + * Lookup503: frame_system::extensions::check_genesis::CheckGenesis **/ FrameSystemExtensionsCheckGenesis: 'Null', /** - * Lookup483: frame_system::extensions::check_nonce::CheckNonce + * Lookup506: frame_system::extensions::check_nonce::CheckNonce **/ FrameSystemExtensionsCheckNonce: 'Compact', /** - * Lookup484: frame_system::extensions::check_weight::CheckWeight + * Lookup507: frame_system::extensions::check_weight::CheckWeight **/ FrameSystemExtensionsCheckWeight: 'Null', /** - * Lookup485: opal_runtime::runtime_common::maintenance::CheckMaintenance + * Lookup508: opal_runtime::runtime_common::maintenance::CheckMaintenance **/ OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: 'Null', /** - * Lookup486: pallet_template_transaction_payment::ChargeTransactionPayment + * Lookup509: pallet_template_transaction_payment::ChargeTransactionPayment **/ PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact', /** - * Lookup487: opal_runtime::Runtime + * Lookup510: opal_runtime::Runtime **/ OpalRuntimeRuntime: 'Null', /** - * Lookup488: pallet_ethereum::FakeTransactionFinalizer + * Lookup511: 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, OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance, OrmlTokensAccountData, OrmlTokensBalanceLock, OrmlTokensModuleCall, OrmlTokensModuleError, OrmlTokensModuleEvent, OrmlTokensReserveData, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, OrmlXtokensModuleCall, OrmlXtokensModuleError, OrmlXtokensModuleEvent, PalletAppPromotionCall, PalletAppPromotionError, PalletAppPromotionEvent, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, 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, PalletRefungibleItemData, 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, 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, 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, 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, PalletBalancesReleases, PalletBalancesReserveData, PalletCollatorSelectionCall, PalletCollatorSelectionError, PalletCollatorSelectionEvent, PalletCommonError, PalletCommonEvent, PalletConfigurationAppPromotionConfiguration, PalletConfigurationCall, PalletConfigurationError, 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, PalletRefungibleItemData, PalletRmrkCoreCall, PalletRmrkCoreError, PalletRmrkCoreEvent, PalletRmrkEquipCall, PalletRmrkEquipError, PalletRmrkEquipEvent, 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, RmrkTraitsBaseBaseInfo, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsNftNftChild, RmrkTraitsNftNftInfo, RmrkTraitsNftRoyaltyInfo, RmrkTraitsPartEquippableList, RmrkTraitsPartFixedPart, RmrkTraitsPartPartType, RmrkTraitsPartSlotPart, RmrkTraitsPropertyPropertyInfo, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceInfo, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, RmrkTraitsThemeThemeProperty, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Public, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeBlakeTwo256, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeHeader, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, 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, 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 { @@ -75,6 +75,7 @@ FrameSystemPhase: FrameSystemPhase; OpalRuntimeRuntime: OpalRuntimeRuntime; OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance; + OpalRuntimeRuntimeCommonSessionKeys: OpalRuntimeRuntimeCommonSessionKeys; OrmlTokensAccountData: OrmlTokensAccountData; OrmlTokensBalanceLock: OrmlTokensBalanceLock; OrmlTokensModuleCall: OrmlTokensModuleCall; @@ -91,6 +92,9 @@ PalletAppPromotionCall: PalletAppPromotionCall; PalletAppPromotionError: PalletAppPromotionError; PalletAppPromotionEvent: PalletAppPromotionEvent; + PalletAuthorshipCall: PalletAuthorshipCall; + PalletAuthorshipError: PalletAuthorshipError; + PalletAuthorshipUncleEntryItem: PalletAuthorshipUncleEntryItem; PalletBalancesAccountData: PalletBalancesAccountData; PalletBalancesBalanceLock: PalletBalancesBalanceLock; PalletBalancesCall: PalletBalancesCall; @@ -99,6 +103,9 @@ PalletBalancesReasons: PalletBalancesReasons; PalletBalancesReleases: PalletBalancesReleases; PalletBalancesReserveData: PalletBalancesReserveData; + PalletCollatorSelectionCall: PalletCollatorSelectionCall; + PalletCollatorSelectionError: PalletCollatorSelectionError; + PalletCollatorSelectionEvent: PalletCollatorSelectionEvent; PalletCommonError: PalletCommonError; PalletCommonEvent: PalletCommonEvent; PalletConfigurationAppPromotionConfiguration: PalletConfigurationAppPromotionConfiguration; @@ -140,6 +147,9 @@ PalletRmrkEquipCall: PalletRmrkEquipCall; PalletRmrkEquipError: PalletRmrkEquipError; PalletRmrkEquipEvent: PalletRmrkEquipEvent; + PalletSessionCall: PalletSessionCall; + PalletSessionError: PalletSessionError; + PalletSessionEvent: PalletSessionEvent; PalletStructureCall: PalletStructureCall; PalletStructureError: PalletStructureError; PalletStructureEvent: PalletStructureEvent; @@ -190,13 +200,18 @@ RmrkTraitsResourceSlotResource: RmrkTraitsResourceSlotResource; RmrkTraitsTheme: RmrkTraitsTheme; RmrkTraitsThemeThemeProperty: RmrkTraitsThemeThemeProperty; + 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 @@ -196,7 +196,59 @@ readonly type: 'ValidationFunctionStored' | 'ValidationFunctionApplied' | 'ValidationFunctionDiscarded' | 'UpgradeAuthorized' | 'DownwardMessagesReceived' | 'DownwardMessagesProcessed'; } - /** @name PalletBalancesEvent (30) */ + /** @name PalletCollatorSelectionEvent (30) */ + interface PalletCollatorSelectionEvent extends Enum { + readonly isNewDesiredCollators: boolean; + readonly asNewDesiredCollators: { + readonly desiredCollators: u32; + } & Struct; + readonly isNewLicenseBond: boolean; + readonly asNewLicenseBond: { + readonly bondAmount: u128; + } & Struct; + readonly isNewKickThreshold: boolean; + readonly asNewKickThreshold: { + readonly lengthInBlocks: u32; + } & Struct; + 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 isLicenseForfeited: boolean; + readonly asLicenseForfeited: { + 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: 'NewDesiredCollators' | 'NewLicenseBond' | 'NewKickThreshold' | 'InvulnerableAdded' | 'InvulnerableRemoved' | 'LicenseObtained' | 'LicenseForfeited' | '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 +307,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 +325,7 @@ readonly type: 'TransactionFeePaid'; } - /** @name PalletTreasuryEvent (33) */ + /** @name PalletTreasuryEvent (35) */ interface PalletTreasuryEvent extends Enum { readonly isProposed: boolean; readonly asProposed: { @@ -315,7 +367,7 @@ readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit' | 'SpendApproved'; } - /** @name PalletSudoEvent (34) */ + /** @name PalletSudoEvent (36) */ interface PalletSudoEvent extends Enum { readonly isSudid: boolean; readonly asSudid: { @@ -332,7 +384,7 @@ readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone'; } - /** @name OrmlVestingModuleEvent (38) */ + /** @name OrmlVestingModuleEvent (40) */ interface OrmlVestingModuleEvent extends Enum { readonly isVestingScheduleAdded: boolean; readonly asVestingScheduleAdded: { @@ -352,7 +404,7 @@ readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated'; } - /** @name OrmlVestingVestingSchedule (39) */ + /** @name OrmlVestingVestingSchedule (41) */ interface OrmlVestingVestingSchedule extends Struct { readonly start: u32; readonly period: u32; @@ -360,7 +412,7 @@ readonly perPeriod: Compact; } - /** @name OrmlXtokensModuleEvent (41) */ + /** @name OrmlXtokensModuleEvent (43) */ interface OrmlXtokensModuleEvent extends Enum { readonly isTransferredMultiAssets: boolean; readonly asTransferredMultiAssets: { @@ -372,16 +424,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 +442,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 +470,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 +504,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 +514,7 @@ readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama'; } - /** @name XcmV0JunctionBodyId (53) */ + /** @name XcmV0JunctionBodyId (55) */ interface XcmV0JunctionBodyId extends Enum { readonly isUnit: boolean; readonly isNamed: boolean; @@ -476,7 +528,7 @@ readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial'; } - /** @name XcmV0JunctionBodyPart (54) */ + /** @name XcmV0JunctionBodyPart (56) */ interface XcmV0JunctionBodyPart extends Enum { readonly isVoice: boolean; readonly isMembers: boolean; @@ -501,7 +553,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 +562,7 @@ readonly type: 'Fungible' | 'NonFungible'; } - /** @name XcmV1MultiassetAssetInstance (56) */ + /** @name XcmV1MultiassetAssetInstance (58) */ interface XcmV1MultiassetAssetInstance extends Enum { readonly isUndefined: boolean; readonly isIndex: boolean; @@ -528,7 +580,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 +668,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 +677,14 @@ 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 CumulusPalletXcmpQueueEvent (64) */ interface CumulusPalletXcmpQueueEvent extends Enum { readonly isSuccess: boolean; readonly asSuccess: { @@ -676,7 +728,7 @@ readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced'; } - /** @name XcmV2TraitsError (64) */ + /** @name XcmV2TraitsError (66) */ interface XcmV2TraitsError extends Enum { readonly isOverflow: boolean; readonly isUnimplemented: boolean; @@ -709,7 +761,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 (68) */ interface PalletXcmEvent extends Enum { readonly isAttempted: boolean; readonly asAttempted: XcmV2TraitsOutcome; @@ -748,7 +800,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 (69) */ interface XcmV2TraitsOutcome extends Enum { readonly isComplete: boolean; readonly asComplete: u64; @@ -759,10 +811,10 @@ readonly type: 'Complete' | 'Incomplete' | 'Error'; } - /** @name XcmV2Xcm (68) */ + /** @name XcmV2Xcm (70) */ interface XcmV2Xcm extends Vec {} - /** @name XcmV2Instruction (70) */ + /** @name XcmV2Instruction (72) */ interface XcmV2Instruction extends Enum { readonly isWithdrawAsset: boolean; readonly asWithdrawAsset: XcmV1MultiassetMultiAssets; @@ -882,7 +934,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 (73) */ interface XcmV2Response extends Enum { readonly isNull: boolean; readonly isAssets: boolean; @@ -894,7 +946,7 @@ readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version'; } - /** @name XcmV0OriginKind (74) */ + /** @name XcmV0OriginKind (76) */ interface XcmV0OriginKind extends Enum { readonly isNative: boolean; readonly isSovereignAccount: boolean; @@ -903,12 +955,12 @@ readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm'; } - /** @name XcmDoubleEncoded (75) */ + /** @name XcmDoubleEncoded (77) */ interface XcmDoubleEncoded extends Struct { readonly encoded: Bytes; } - /** @name XcmV1MultiassetMultiAssetFilter (76) */ + /** @name XcmV1MultiassetMultiAssetFilter (78) */ interface XcmV1MultiassetMultiAssetFilter extends Enum { readonly isDefinite: boolean; readonly asDefinite: XcmV1MultiassetMultiAssets; @@ -917,7 +969,7 @@ readonly type: 'Definite' | 'Wild'; } - /** @name XcmV1MultiassetWildMultiAsset (77) */ + /** @name XcmV1MultiassetWildMultiAsset (79) */ interface XcmV1MultiassetWildMultiAsset extends Enum { readonly isAll: boolean; readonly isAllOf: boolean; @@ -928,14 +980,14 @@ readonly type: 'All' | 'AllOf'; } - /** @name XcmV1MultiassetWildFungibility (78) */ + /** @name XcmV1MultiassetWildFungibility (80) */ interface XcmV1MultiassetWildFungibility extends Enum { readonly isFungible: boolean; readonly isNonFungible: boolean; readonly type: 'Fungible' | 'NonFungible'; } - /** @name XcmV2WeightLimit (79) */ + /** @name XcmV2WeightLimit (81) */ interface XcmV2WeightLimit extends Enum { readonly isUnlimited: boolean; readonly isLimited: boolean; @@ -943,7 +995,7 @@ readonly type: 'Unlimited' | 'Limited'; } - /** @name XcmVersionedMultiAssets (81) */ + /** @name XcmVersionedMultiAssets (83) */ interface XcmVersionedMultiAssets extends Enum { readonly isV0: boolean; readonly asV0: Vec; @@ -952,7 +1004,7 @@ readonly type: 'V0' | 'V1'; } - /** @name XcmV0MultiAsset (83) */ + /** @name XcmV0MultiAsset (85) */ interface XcmV0MultiAsset extends Enum { readonly isNone: boolean; readonly isAll: boolean; @@ -997,7 +1049,7 @@ readonly type: 'None' | 'All' | 'AllFungible' | 'AllNonFungible' | 'AllAbstractFungible' | 'AllAbstractNonFungible' | 'AllConcreteFungible' | 'AllConcreteNonFungible' | 'AbstractFungible' | 'AbstractNonFungible' | 'ConcreteFungible' | 'ConcreteNonFungible'; } - /** @name XcmV0MultiLocation (84) */ + /** @name XcmV0MultiLocation (86) */ interface XcmV0MultiLocation extends Enum { readonly isNull: boolean; readonly isX1: boolean; @@ -1019,7 +1071,7 @@ readonly type: 'Null' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8'; } - /** @name XcmV0Junction (85) */ + /** @name XcmV0Junction (87) */ interface XcmV0Junction extends Enum { readonly isParent: boolean; readonly isParachain: boolean; @@ -1054,7 +1106,7 @@ readonly type: 'Parent' | 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality'; } - /** @name XcmVersionedMultiLocation (86) */ + /** @name XcmVersionedMultiLocation (88) */ interface XcmVersionedMultiLocation extends Enum { readonly isV0: boolean; readonly asV0: XcmV0MultiLocation; @@ -1063,7 +1115,7 @@ readonly type: 'V0' | 'V1'; } - /** @name CumulusPalletXcmEvent (87) */ + /** @name CumulusPalletXcmEvent (89) */ interface CumulusPalletXcmEvent extends Enum { readonly isInvalidFormat: boolean; readonly asInvalidFormat: U8aFixed; @@ -1074,7 +1126,7 @@ readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward'; } - /** @name CumulusPalletDmpQueueEvent (88) */ + /** @name CumulusPalletDmpQueueEvent (90) */ interface CumulusPalletDmpQueueEvent extends Enum { readonly isInvalidFormat: boolean; readonly asInvalidFormat: { @@ -1109,7 +1161,7 @@ readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced'; } - /** @name PalletCommonEvent (89) */ + /** @name PalletCommonEvent (91) */ interface PalletCommonEvent extends Enum { readonly isCollectionCreated: boolean; readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>; @@ -1158,7 +1210,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 (92) */ + /** @name PalletEvmAccountBasicCrossAccountIdRepr (94) */ interface PalletEvmAccountBasicCrossAccountIdRepr extends Enum { readonly isSubstrate: boolean; readonly asSubstrate: AccountId32; @@ -1167,14 +1219,14 @@ readonly type: 'Substrate' | 'Ethereum'; } - /** @name PalletStructureEvent (96) */ + /** @name PalletStructureEvent (98) */ interface PalletStructureEvent extends Enum { readonly isExecuted: boolean; readonly asExecuted: Result; readonly type: 'Executed'; } - /** @name PalletRmrkCoreEvent (97) */ + /** @name PalletRmrkCoreEvent (99) */ interface PalletRmrkCoreEvent extends Enum { readonly isCollectionCreated: boolean; readonly asCollectionCreated: { @@ -1264,7 +1316,7 @@ readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'IssuerChanged' | 'CollectionLocked' | 'NftMinted' | 'NftBurned' | 'NftSent' | 'NftAccepted' | 'NftRejected' | 'PropertySet' | 'ResourceAdded' | 'ResourceRemoval' | 'ResourceAccepted' | 'ResourceRemovalAccepted' | 'PrioritySet'; } - /** @name RmrkTraitsNftAccountIdOrCollectionNftTuple (98) */ + /** @name RmrkTraitsNftAccountIdOrCollectionNftTuple (100) */ interface RmrkTraitsNftAccountIdOrCollectionNftTuple extends Enum { readonly isAccountId: boolean; readonly asAccountId: AccountId32; @@ -1273,7 +1325,7 @@ readonly type: 'AccountId' | 'CollectionAndNftTuple'; } - /** @name PalletRmrkEquipEvent (102) */ + /** @name PalletRmrkEquipEvent (104) */ interface PalletRmrkEquipEvent extends Enum { readonly isBaseCreated: boolean; readonly asBaseCreated: { @@ -1288,7 +1340,7 @@ readonly type: 'BaseCreated' | 'EquippablesUpdated'; } - /** @name PalletAppPromotionEvent (103) */ + /** @name PalletAppPromotionEvent (105) */ interface PalletAppPromotionEvent extends Enum { readonly isStakingRecalculation: boolean; readonly asStakingRecalculation: ITuple<[AccountId32, u128, u128]>; @@ -1301,7 +1353,7 @@ readonly type: 'StakingRecalculation' | 'Stake' | 'Unstake' | 'SetAdmin'; } - /** @name PalletForeignAssetsModuleEvent (104) */ + /** @name PalletForeignAssetsModuleEvent (106) */ interface PalletForeignAssetsModuleEvent extends Enum { readonly isForeignAssetRegistered: boolean; readonly asForeignAssetRegistered: { @@ -1328,7 +1380,7 @@ readonly type: 'ForeignAssetRegistered' | 'ForeignAssetUpdated' | 'AssetRegistered' | 'AssetUpdated'; } - /** @name PalletForeignAssetsModuleAssetMetadata (105) */ + /** @name PalletForeignAssetsModuleAssetMetadata (107) */ interface PalletForeignAssetsModuleAssetMetadata extends Struct { readonly name: Bytes; readonly symbol: Bytes; @@ -1336,7 +1388,7 @@ readonly minimalBalance: u128; } - /** @name PalletEvmEvent (106) */ + /** @name PalletEvmEvent (108) */ interface PalletEvmEvent extends Enum { readonly isLog: boolean; readonly asLog: { @@ -1361,14 +1413,14 @@ readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed'; } - /** @name EthereumLog (107) */ + /** @name EthereumLog (109) */ interface EthereumLog extends Struct { readonly address: H160; readonly topics: Vec; readonly data: Bytes; } - /** @name PalletEthereumEvent (109) */ + /** @name PalletEthereumEvent (111) */ interface PalletEthereumEvent extends Enum { readonly isExecuted: boolean; readonly asExecuted: { @@ -1380,7 +1432,7 @@ readonly type: 'Executed'; } - /** @name EvmCoreErrorExitReason (110) */ + /** @name EvmCoreErrorExitReason (112) */ interface EvmCoreErrorExitReason extends Enum { readonly isSucceed: boolean; readonly asSucceed: EvmCoreErrorExitSucceed; @@ -1393,7 +1445,7 @@ readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal'; } - /** @name EvmCoreErrorExitSucceed (111) */ + /** @name EvmCoreErrorExitSucceed (113) */ interface EvmCoreErrorExitSucceed extends Enum { readonly isStopped: boolean; readonly isReturned: boolean; @@ -1401,7 +1453,7 @@ readonly type: 'Stopped' | 'Returned' | 'Suicided'; } - /** @name EvmCoreErrorExitError (112) */ + /** @name EvmCoreErrorExitError (114) */ interface EvmCoreErrorExitError extends Enum { readonly isStackUnderflow: boolean; readonly isStackOverflow: boolean; @@ -1422,13 +1474,13 @@ readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other' | 'InvalidCode'; } - /** @name EvmCoreErrorExitRevert (115) */ + /** @name EvmCoreErrorExitRevert (117) */ interface EvmCoreErrorExitRevert extends Enum { readonly isReverted: boolean; readonly type: 'Reverted'; } - /** @name EvmCoreErrorExitFatal (116) */ + /** @name EvmCoreErrorExitFatal (118) */ interface EvmCoreErrorExitFatal extends Enum { readonly isNotSupported: boolean; readonly isUnhandledInterrupt: boolean; @@ -1439,7 +1491,7 @@ readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other'; } - /** @name PalletEvmContractHelpersEvent (117) */ + /** @name PalletEvmContractHelpersEvent (119) */ interface PalletEvmContractHelpersEvent extends Enum { readonly isContractSponsorSet: boolean; readonly asContractSponsorSet: ITuple<[H160, AccountId32]>; @@ -1450,20 +1502,20 @@ readonly type: 'ContractSponsorSet' | 'ContractSponsorshipConfirmed' | 'ContractSponsorRemoved'; } - /** @name PalletEvmMigrationEvent (118) */ + /** @name PalletEvmMigrationEvent (120) */ interface PalletEvmMigrationEvent extends Enum { readonly isTestEvent: boolean; readonly type: 'TestEvent'; } - /** @name PalletMaintenanceEvent (119) */ + /** @name PalletMaintenanceEvent (121) */ interface PalletMaintenanceEvent extends Enum { readonly isMaintenanceEnabled: boolean; readonly isMaintenanceDisabled: boolean; readonly type: 'MaintenanceEnabled' | 'MaintenanceDisabled'; } - /** @name PalletTestUtilsEvent (120) */ + /** @name PalletTestUtilsEvent (122) */ interface PalletTestUtilsEvent extends Enum { readonly isValueIsSet: boolean; readonly isShouldRollback: boolean; @@ -1471,7 +1523,7 @@ readonly type: 'ValueIsSet' | 'ShouldRollback' | 'BatchCompleted'; } - /** @name FrameSystemPhase (121) */ + /** @name FrameSystemPhase (123) */ interface FrameSystemPhase extends Enum { readonly isApplyExtrinsic: boolean; readonly asApplyExtrinsic: u32; @@ -1480,13 +1532,13 @@ readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization'; } - /** @name FrameSystemLastRuntimeUpgradeInfo (124) */ + /** @name FrameSystemLastRuntimeUpgradeInfo (126) */ interface FrameSystemLastRuntimeUpgradeInfo extends Struct { readonly specVersion: Compact; readonly specName: Text; } - /** @name FrameSystemCall (125) */ + /** @name FrameSystemCall (127) */ interface FrameSystemCall extends Enum { readonly isFillBlock: boolean; readonly asFillBlock: { @@ -1528,21 +1580,21 @@ readonly type: 'FillBlock' | 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent'; } - /** @name FrameSystemLimitsBlockWeights (130) */ + /** @name FrameSystemLimitsBlockWeights (132) */ interface FrameSystemLimitsBlockWeights extends Struct { readonly baseBlock: SpWeightsWeightV2Weight; readonly maxBlock: SpWeightsWeightV2Weight; readonly perClass: FrameSupportDispatchPerDispatchClassWeightsPerClass; } - /** @name FrameSupportDispatchPerDispatchClassWeightsPerClass (131) */ + /** @name FrameSupportDispatchPerDispatchClassWeightsPerClass (133) */ interface FrameSupportDispatchPerDispatchClassWeightsPerClass extends Struct { readonly normal: FrameSystemLimitsWeightsPerClass; readonly operational: FrameSystemLimitsWeightsPerClass; readonly mandatory: FrameSystemLimitsWeightsPerClass; } - /** @name FrameSystemLimitsWeightsPerClass (132) */ + /** @name FrameSystemLimitsWeightsPerClass (134) */ interface FrameSystemLimitsWeightsPerClass extends Struct { readonly baseExtrinsic: SpWeightsWeightV2Weight; readonly maxExtrinsic: Option; @@ -1550,25 +1602,25 @@ readonly reserved: Option; } - /** @name FrameSystemLimitsBlockLength (134) */ + /** @name FrameSystemLimitsBlockLength (136) */ interface FrameSystemLimitsBlockLength extends Struct { readonly max: FrameSupportDispatchPerDispatchClassU32; } - /** @name FrameSupportDispatchPerDispatchClassU32 (135) */ + /** @name FrameSupportDispatchPerDispatchClassU32 (137) */ interface FrameSupportDispatchPerDispatchClassU32 extends Struct { readonly normal: u32; readonly operational: u32; readonly mandatory: u32; } - /** @name SpWeightsRuntimeDbWeight (136) */ + /** @name SpWeightsRuntimeDbWeight (138) */ interface SpWeightsRuntimeDbWeight extends Struct { readonly read: u64; readonly write: u64; } - /** @name SpVersionRuntimeVersion (137) */ + /** @name SpVersionRuntimeVersion (139) */ interface SpVersionRuntimeVersion extends Struct { readonly specName: Text; readonly implName: Text; @@ -1580,7 +1632,7 @@ readonly stateVersion: u8; } - /** @name FrameSystemError (142) */ + /** @name FrameSystemError (144) */ interface FrameSystemError extends Enum { readonly isInvalidSpecName: boolean; readonly isSpecVersionNeedsToIncrease: boolean; @@ -1591,7 +1643,7 @@ readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered'; } - /** @name PolkadotPrimitivesV2PersistedValidationData (143) */ + /** @name PolkadotPrimitivesV2PersistedValidationData (145) */ interface PolkadotPrimitivesV2PersistedValidationData extends Struct { readonly parentHead: Bytes; readonly relayParentNumber: u32; @@ -1599,18 +1651,18 @@ readonly maxPovSize: u32; } - /** @name PolkadotPrimitivesV2UpgradeRestriction (146) */ + /** @name PolkadotPrimitivesV2UpgradeRestriction (148) */ interface PolkadotPrimitivesV2UpgradeRestriction extends Enum { readonly isPresent: boolean; readonly type: 'Present'; } - /** @name SpTrieStorageProof (147) */ + /** @name SpTrieStorageProof (149) */ interface SpTrieStorageProof extends Struct { readonly trieNodes: BTreeSet; } - /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (149) */ + /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (151) */ interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct { readonly dmqMqcHead: H256; readonly relayDispatchQueueSize: ITuple<[u32, u32]>; @@ -1618,7 +1670,7 @@ readonly egressChannels: Vec>; } - /** @name PolkadotPrimitivesV2AbridgedHrmpChannel (152) */ + /** @name PolkadotPrimitivesV2AbridgedHrmpChannel (154) */ interface PolkadotPrimitivesV2AbridgedHrmpChannel extends Struct { readonly maxCapacity: u32; readonly maxTotalSize: u32; @@ -1628,7 +1680,7 @@ readonly mqcHead: Option; } - /** @name PolkadotPrimitivesV2AbridgedHostConfiguration (153) */ + /** @name PolkadotPrimitivesV2AbridgedHostConfiguration (155) */ interface PolkadotPrimitivesV2AbridgedHostConfiguration extends Struct { readonly maxCodeSize: u32; readonly maxHeadDataSize: u32; @@ -1641,13 +1693,13 @@ readonly validationUpgradeDelay: u32; } - /** @name PolkadotCorePrimitivesOutboundHrmpMessage (159) */ + /** @name PolkadotCorePrimitivesOutboundHrmpMessage (161) */ interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct { readonly recipient: u32; readonly data: Bytes; } - /** @name CumulusPalletParachainSystemCall (160) */ + /** @name CumulusPalletParachainSystemCall (162) */ interface CumulusPalletParachainSystemCall extends Enum { readonly isSetValidationData: boolean; readonly asSetValidationData: { @@ -1668,7 +1720,7 @@ readonly type: 'SetValidationData' | 'SudoSendUpwardMessage' | 'AuthorizeUpgrade' | 'EnactAuthorizedUpgrade'; } - /** @name CumulusPrimitivesParachainInherentParachainInherentData (161) */ + /** @name CumulusPrimitivesParachainInherentParachainInherentData (163) */ interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct { readonly validationData: PolkadotPrimitivesV2PersistedValidationData; readonly relayChainState: SpTrieStorageProof; @@ -1676,19 +1728,19 @@ readonly horizontalMessages: BTreeMap>; } - /** @name PolkadotCorePrimitivesInboundDownwardMessage (163) */ + /** @name PolkadotCorePrimitivesInboundDownwardMessage (165) */ interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct { readonly sentAt: u32; readonly msg: Bytes; } - /** @name PolkadotCorePrimitivesInboundHrmpMessage (166) */ + /** @name PolkadotCorePrimitivesInboundHrmpMessage (168) */ interface PolkadotCorePrimitivesInboundHrmpMessage extends Struct { readonly sentAt: u32; readonly data: Bytes; } - /** @name CumulusPalletParachainSystemError (169) */ + /** @name CumulusPalletParachainSystemError (171) */ interface CumulusPalletParachainSystemError extends Enum { readonly isOverlappingUpgrades: boolean; readonly isProhibitedByPolkadot: boolean; @@ -1701,14 +1753,142 @@ readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized'; } - /** @name PalletBalancesBalanceLock (171) */ + /** @name PalletAuthorshipUncleEntryItem (173) */ + interface PalletAuthorshipUncleEntryItem extends Enum { + readonly isInclusionHeight: boolean; + readonly asInclusionHeight: u32; + readonly isUncle: boolean; + readonly asUncle: ITuple<[H256, Option]>; + readonly type: 'InclusionHeight' | 'Uncle'; + } + + /** @name PalletAuthorshipCall (175) */ + interface PalletAuthorshipCall extends Enum { + readonly isSetUncles: boolean; + readonly asSetUncles: { + readonly newUncles: Vec; + } & Struct; + readonly type: 'SetUncles'; + } + + /** @name SpRuntimeHeader (177) */ + interface SpRuntimeHeader extends Struct { + readonly parentHash: H256; + readonly number: Compact; + readonly stateRoot: H256; + readonly extrinsicsRoot: H256; + readonly digest: SpRuntimeDigest; + } + + /** @name SpRuntimeBlakeTwo256 (178) */ + type SpRuntimeBlakeTwo256 = Null; + + /** @name PalletAuthorshipError (179) */ + 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 (182) */ + interface PalletCollatorSelectionCall extends Enum { + readonly isAddInvulnerable: boolean; + readonly asAddInvulnerable: { + readonly new_: AccountId32; + } & Struct; + readonly isRemoveInvulnerable: boolean; + readonly asRemoveInvulnerable: { + readonly who: AccountId32; + } & Struct; + readonly isSetDesiredCollators: boolean; + readonly asSetDesiredCollators: { + readonly max: u32; + } & Struct; + readonly isSetLicenseBond: boolean; + readonly asSetLicenseBond: { + readonly bond: u128; + } & Struct; + readonly isSetKickThreshold: boolean; + readonly asSetKickThreshold: { + readonly kickThreshold: u32; + } & Struct; + readonly isGetLicense: boolean; + readonly isOnboard: boolean; + readonly isOffboard: boolean; + readonly isReleaseLicense: boolean; + readonly isForceRevokeLicense: boolean; + readonly asForceRevokeLicense: { + readonly who: AccountId32; + } & Struct; + readonly type: 'AddInvulnerable' | 'RemoveInvulnerable' | 'SetDesiredCollators' | 'SetLicenseBond' | 'SetKickThreshold' | 'GetLicense' | 'Onboard' | 'Offboard' | 'ReleaseLicense' | 'ForceRevokeLicense'; + } + + /** @name PalletCollatorSelectionError (183) */ + 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 (186) */ + interface OpalRuntimeRuntimeCommonSessionKeys extends Struct { + readonly aura: SpConsensusAuraSr25519AppSr25519Public; + } + + /** @name SpConsensusAuraSr25519AppSr25519Public (187) */ + interface SpConsensusAuraSr25519AppSr25519Public extends SpCoreSr25519Public {} + + /** @name SpCoreSr25519Public (188) */ + interface SpCoreSr25519Public extends U8aFixed {} + + /** @name SpCoreCryptoKeyTypeId (191) */ + interface SpCoreCryptoKeyTypeId extends U8aFixed {} + + /** @name PalletSessionCall (192) */ + 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 (193) */ + 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 (195) */ interface PalletBalancesBalanceLock extends Struct { readonly id: U8aFixed; readonly amount: u128; readonly reasons: PalletBalancesReasons; } - /** @name PalletBalancesReasons (172) */ + /** @name PalletBalancesReasons (196) */ interface PalletBalancesReasons extends Enum { readonly isFee: boolean; readonly isMisc: boolean; @@ -1716,20 +1896,20 @@ readonly type: 'Fee' | 'Misc' | 'All'; } - /** @name PalletBalancesReserveData (175) */ + /** @name PalletBalancesReserveData (199) */ interface PalletBalancesReserveData extends Struct { readonly id: U8aFixed; readonly amount: u128; } - /** @name PalletBalancesReleases (177) */ + /** @name PalletBalancesReleases (201) */ interface PalletBalancesReleases extends Enum { readonly isV100: boolean; readonly isV200: boolean; readonly type: 'V100' | 'V200'; } - /** @name PalletBalancesCall (178) */ + /** @name PalletBalancesCall (202) */ interface PalletBalancesCall extends Enum { readonly isTransfer: boolean; readonly asTransfer: { @@ -1766,7 +1946,7 @@ readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve'; } - /** @name PalletBalancesError (181) */ + /** @name PalletBalancesError (205) */ interface PalletBalancesError extends Enum { readonly isVestingBalance: boolean; readonly isLiquidityRestrictions: boolean; @@ -1779,7 +1959,7 @@ readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves'; } - /** @name PalletTimestampCall (183) */ + /** @name PalletTimestampCall (207) */ interface PalletTimestampCall extends Enum { readonly isSet: boolean; readonly asSet: { @@ -1788,14 +1968,14 @@ readonly type: 'Set'; } - /** @name PalletTransactionPaymentReleases (185) */ + /** @name PalletTransactionPaymentReleases (209) */ interface PalletTransactionPaymentReleases extends Enum { readonly isV1Ancient: boolean; readonly isV2: boolean; readonly type: 'V1Ancient' | 'V2'; } - /** @name PalletTreasuryProposal (186) */ + /** @name PalletTreasuryProposal (210) */ interface PalletTreasuryProposal extends Struct { readonly proposer: AccountId32; readonly value: u128; @@ -1803,7 +1983,7 @@ readonly bond: u128; } - /** @name PalletTreasuryCall (189) */ + /** @name PalletTreasuryCall (212) */ interface PalletTreasuryCall extends Enum { readonly isProposeSpend: boolean; readonly asProposeSpend: { @@ -1830,10 +2010,10 @@ readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal' | 'Spend' | 'RemoveApproval'; } - /** @name FrameSupportPalletId (192) */ + /** @name FrameSupportPalletId (215) */ interface FrameSupportPalletId extends U8aFixed {} - /** @name PalletTreasuryError (193) */ + /** @name PalletTreasuryError (216) */ interface PalletTreasuryError extends Enum { readonly isInsufficientProposersBalance: boolean; readonly isInvalidIndex: boolean; @@ -1843,7 +2023,7 @@ readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals' | 'InsufficientPermission' | 'ProposalNotApproved'; } - /** @name PalletSudoCall (194) */ + /** @name PalletSudoCall (217) */ interface PalletSudoCall extends Enum { readonly isSudo: boolean; readonly asSudo: { @@ -1866,7 +2046,7 @@ readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs'; } - /** @name OrmlVestingModuleCall (196) */ + /** @name OrmlVestingModuleCall (219) */ interface OrmlVestingModuleCall extends Enum { readonly isClaim: boolean; readonly isVestedTransfer: boolean; @@ -1886,7 +2066,7 @@ readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor'; } - /** @name OrmlXtokensModuleCall (198) */ + /** @name OrmlXtokensModuleCall (221) */ interface OrmlXtokensModuleCall extends Enum { readonly isTransfer: boolean; readonly asTransfer: { @@ -1933,7 +2113,7 @@ readonly type: 'Transfer' | 'TransferMultiasset' | 'TransferWithFee' | 'TransferMultiassetWithFee' | 'TransferMulticurrencies' | 'TransferMultiassets'; } - /** @name XcmVersionedMultiAsset (199) */ + /** @name XcmVersionedMultiAsset (222) */ interface XcmVersionedMultiAsset extends Enum { readonly isV0: boolean; readonly asV0: XcmV0MultiAsset; @@ -1942,7 +2122,7 @@ readonly type: 'V0' | 'V1'; } - /** @name OrmlTokensModuleCall (202) */ + /** @name OrmlTokensModuleCall (225) */ interface OrmlTokensModuleCall extends Enum { readonly isTransfer: boolean; readonly asTransfer: { @@ -1979,7 +2159,7 @@ readonly type: 'Transfer' | 'TransferAll' | 'TransferKeepAlive' | 'ForceTransfer' | 'SetBalance'; } - /** @name CumulusPalletXcmpQueueCall (203) */ + /** @name CumulusPalletXcmpQueueCall (226) */ interface CumulusPalletXcmpQueueCall extends Enum { readonly isServiceOverweight: boolean; readonly asServiceOverweight: { @@ -2015,7 +2195,7 @@ readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight'; } - /** @name PalletXcmCall (204) */ + /** @name PalletXcmCall (227) */ interface PalletXcmCall extends Enum { readonly isSend: boolean; readonly asSend: { @@ -2077,7 +2257,7 @@ readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets'; } - /** @name XcmVersionedXcm (205) */ + /** @name XcmVersionedXcm (228) */ interface XcmVersionedXcm extends Enum { readonly isV0: boolean; readonly asV0: XcmV0Xcm; @@ -2088,7 +2268,7 @@ readonly type: 'V0' | 'V1' | 'V2'; } - /** @name XcmV0Xcm (206) */ + /** @name XcmV0Xcm (229) */ interface XcmV0Xcm extends Enum { readonly isWithdrawAsset: boolean; readonly asWithdrawAsset: { @@ -2151,7 +2331,7 @@ readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom'; } - /** @name XcmV0Order (208) */ + /** @name XcmV0Order (231) */ interface XcmV0Order extends Enum { readonly isNull: boolean; readonly isDepositAsset: boolean; @@ -2199,14 +2379,14 @@ readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution'; } - /** @name XcmV0Response (210) */ + /** @name XcmV0Response (233) */ interface XcmV0Response extends Enum { readonly isAssets: boolean; readonly asAssets: Vec; readonly type: 'Assets'; } - /** @name XcmV1Xcm (211) */ + /** @name XcmV1Xcm (234) */ interface XcmV1Xcm extends Enum { readonly isWithdrawAsset: boolean; readonly asWithdrawAsset: { @@ -2275,7 +2455,7 @@ readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion'; } - /** @name XcmV1Order (213) */ + /** @name XcmV1Order (236) */ interface XcmV1Order extends Enum { readonly isNoop: boolean; readonly isDepositAsset: boolean; @@ -2325,7 +2505,7 @@ readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution'; } - /** @name XcmV1Response (215) */ + /** @name XcmV1Response (238) */ interface XcmV1Response extends Enum { readonly isAssets: boolean; readonly asAssets: XcmV1MultiassetMultiAssets; @@ -2334,10 +2514,10 @@ readonly type: 'Assets' | 'Version'; } - /** @name CumulusPalletXcmCall (229) */ + /** @name CumulusPalletXcmCall (252) */ type CumulusPalletXcmCall = Null; - /** @name CumulusPalletDmpQueueCall (230) */ + /** @name CumulusPalletDmpQueueCall (253) */ interface CumulusPalletDmpQueueCall extends Enum { readonly isServiceOverweight: boolean; readonly asServiceOverweight: { @@ -2347,7 +2527,7 @@ readonly type: 'ServiceOverweight'; } - /** @name PalletInflationCall (231) */ + /** @name PalletInflationCall (254) */ interface PalletInflationCall extends Enum { readonly isStartInflation: boolean; readonly asStartInflation: { @@ -2356,7 +2536,7 @@ readonly type: 'StartInflation'; } - /** @name PalletUniqueCall (232) */ + /** @name PalletUniqueCall (255) */ interface PalletUniqueCall extends Enum { readonly isCreateCollection: boolean; readonly asCreateCollection: { @@ -2517,15 +2697,19 @@ readonly operator: PalletEvmAccountBasicCrossAccountIdRepr; readonly approve: bool; } & Struct; - readonly isRepairItem: boolean; - readonly asRepairItem: { + readonly isForceRepairCollection: boolean; + readonly asForceRepairCollection: { + readonly collectionId: u32; + } & Struct; + readonly isForceRepairItem: boolean; + readonly asForceRepairItem: { readonly collectionId: u32; readonly itemId: u32; } & Struct; - 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' | 'TransferFrom' | 'SetCollectionLimits' | 'SetCollectionPermissions' | 'Repartition' | 'SetAllowanceForAll' | 'RepairItem'; + 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' | 'TransferFrom' | 'SetCollectionLimits' | 'SetCollectionPermissions' | 'Repartition' | 'SetAllowanceForAll' | 'ForceRepairCollection' | 'ForceRepairItem'; } - /** @name UpDataStructsCollectionMode (237) */ + /** @name UpDataStructsCollectionMode (260) */ interface UpDataStructsCollectionMode extends Enum { readonly isNft: boolean; readonly isFungible: boolean; @@ -2534,7 +2718,7 @@ readonly type: 'Nft' | 'Fungible' | 'ReFungible'; } - /** @name UpDataStructsCreateCollectionData (238) */ + /** @name UpDataStructsCreateCollectionData (261) */ interface UpDataStructsCreateCollectionData extends Struct { readonly mode: UpDataStructsCollectionMode; readonly access: Option; @@ -2548,14 +2732,14 @@ readonly properties: Vec; } - /** @name UpDataStructsAccessMode (240) */ + /** @name UpDataStructsAccessMode (263) */ interface UpDataStructsAccessMode extends Enum { readonly isNormal: boolean; readonly isAllowList: boolean; readonly type: 'Normal' | 'AllowList'; } - /** @name UpDataStructsCollectionLimits (242) */ + /** @name UpDataStructsCollectionLimits (265) */ interface UpDataStructsCollectionLimits extends Struct { readonly accountTokenOwnershipLimit: Option; readonly sponsoredDataSize: Option; @@ -2568,7 +2752,7 @@ readonly transfersEnabled: Option; } - /** @name UpDataStructsSponsoringRateLimit (244) */ + /** @name UpDataStructsSponsoringRateLimit (267) */ interface UpDataStructsSponsoringRateLimit extends Enum { readonly isSponsoringDisabled: boolean; readonly isBlocks: boolean; @@ -2576,43 +2760,43 @@ readonly type: 'SponsoringDisabled' | 'Blocks'; } - /** @name UpDataStructsCollectionPermissions (247) */ + /** @name UpDataStructsCollectionPermissions (270) */ interface UpDataStructsCollectionPermissions extends Struct { readonly access: Option; readonly mintMode: Option; readonly nesting: Option; } - /** @name UpDataStructsNestingPermissions (249) */ + /** @name UpDataStructsNestingPermissions (272) */ interface UpDataStructsNestingPermissions extends Struct { readonly tokenOwner: bool; readonly collectionAdmin: bool; readonly restricted: Option; } - /** @name UpDataStructsOwnerRestrictedSet (251) */ + /** @name UpDataStructsOwnerRestrictedSet (274) */ interface UpDataStructsOwnerRestrictedSet extends BTreeSet {} - /** @name UpDataStructsPropertyKeyPermission (256) */ + /** @name UpDataStructsPropertyKeyPermission (279) */ interface UpDataStructsPropertyKeyPermission extends Struct { readonly key: Bytes; readonly permission: UpDataStructsPropertyPermission; } - /** @name UpDataStructsPropertyPermission (257) */ + /** @name UpDataStructsPropertyPermission (280) */ interface UpDataStructsPropertyPermission extends Struct { readonly mutable: bool; readonly collectionAdmin: bool; readonly tokenOwner: bool; } - /** @name UpDataStructsProperty (260) */ + /** @name UpDataStructsProperty (283) */ interface UpDataStructsProperty extends Struct { readonly key: Bytes; readonly value: Bytes; } - /** @name UpDataStructsCreateItemData (263) */ + /** @name UpDataStructsCreateItemData (286) */ interface UpDataStructsCreateItemData extends Enum { readonly isNft: boolean; readonly asNft: UpDataStructsCreateNftData; @@ -2623,23 +2807,23 @@ readonly type: 'Nft' | 'Fungible' | 'ReFungible'; } - /** @name UpDataStructsCreateNftData (264) */ + /** @name UpDataStructsCreateNftData (287) */ interface UpDataStructsCreateNftData extends Struct { readonly properties: Vec; } - /** @name UpDataStructsCreateFungibleData (265) */ + /** @name UpDataStructsCreateFungibleData (288) */ interface UpDataStructsCreateFungibleData extends Struct { readonly value: u128; } - /** @name UpDataStructsCreateReFungibleData (266) */ + /** @name UpDataStructsCreateReFungibleData (289) */ interface UpDataStructsCreateReFungibleData extends Struct { readonly pieces: u128; readonly properties: Vec; } - /** @name UpDataStructsCreateItemExData (269) */ + /** @name UpDataStructsCreateItemExData (292) */ interface UpDataStructsCreateItemExData extends Enum { readonly isNft: boolean; readonly asNft: Vec; @@ -2652,26 +2836,26 @@ readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners'; } - /** @name UpDataStructsCreateNftExData (271) */ + /** @name UpDataStructsCreateNftExData (294) */ interface UpDataStructsCreateNftExData extends Struct { readonly properties: Vec; readonly owner: PalletEvmAccountBasicCrossAccountIdRepr; } - /** @name UpDataStructsCreateRefungibleExSingleOwner (278) */ + /** @name UpDataStructsCreateRefungibleExSingleOwner (301) */ interface UpDataStructsCreateRefungibleExSingleOwner extends Struct { readonly user: PalletEvmAccountBasicCrossAccountIdRepr; readonly pieces: u128; readonly properties: Vec; } - /** @name UpDataStructsCreateRefungibleExMultipleOwners (280) */ + /** @name UpDataStructsCreateRefungibleExMultipleOwners (303) */ interface UpDataStructsCreateRefungibleExMultipleOwners extends Struct { readonly users: BTreeMap; readonly properties: Vec; } - /** @name PalletConfigurationCall (281) */ + /** @name PalletConfigurationCall (304) */ interface PalletConfigurationCall extends Enum { readonly isSetWeightToFeeCoefficientOverride: boolean; readonly asSetWeightToFeeCoefficientOverride: { @@ -2692,7 +2876,7 @@ readonly type: 'SetWeightToFeeCoefficientOverride' | 'SetMinGasPriceOverride' | 'SetXcmAllowedLocations' | 'SetAppPromotionConfigurationOverride'; } - /** @name PalletConfigurationAppPromotionConfiguration (286) */ + /** @name PalletConfigurationAppPromotionConfiguration (309) */ interface PalletConfigurationAppPromotionConfiguration extends Struct { readonly recalculationInterval: Option; readonly pendingInterval: Option; @@ -2700,13 +2884,13 @@ readonly maxStakersPerCalculation: Option; } - /** @name PalletTemplateTransactionPaymentCall (289) */ + /** @name PalletTemplateTransactionPaymentCall (312) */ type PalletTemplateTransactionPaymentCall = Null; - /** @name PalletStructureCall (290) */ + /** @name PalletStructureCall (313) */ type PalletStructureCall = Null; - /** @name PalletRmrkCoreCall (291) */ + /** @name PalletRmrkCoreCall (314) */ interface PalletRmrkCoreCall extends Enum { readonly isCreateCollection: boolean; readonly asCreateCollection: { @@ -2812,7 +2996,7 @@ readonly type: 'CreateCollection' | 'DestroyCollection' | 'ChangeCollectionIssuer' | 'LockCollection' | 'MintNft' | 'BurnNft' | 'Send' | 'AcceptNft' | 'RejectNft' | 'AcceptResource' | 'AcceptResourceRemoval' | 'SetProperty' | 'SetPriority' | 'AddBasicResource' | 'AddComposableResource' | 'AddSlotResource' | 'RemoveResource'; } - /** @name RmrkTraitsResourceResourceTypes (297) */ + /** @name RmrkTraitsResourceResourceTypes (320) */ interface RmrkTraitsResourceResourceTypes extends Enum { readonly isBasic: boolean; readonly asBasic: RmrkTraitsResourceBasicResource; @@ -2823,7 +3007,7 @@ readonly type: 'Basic' | 'Composable' | 'Slot'; } - /** @name RmrkTraitsResourceBasicResource (299) */ + /** @name RmrkTraitsResourceBasicResource (322) */ interface RmrkTraitsResourceBasicResource extends Struct { readonly src: Option; readonly metadata: Option; @@ -2831,7 +3015,7 @@ readonly thumb: Option; } - /** @name RmrkTraitsResourceComposableResource (301) */ + /** @name RmrkTraitsResourceComposableResource (324) */ interface RmrkTraitsResourceComposableResource extends Struct { readonly parts: Vec; readonly base: u32; @@ -2841,7 +3025,7 @@ readonly thumb: Option; } - /** @name RmrkTraitsResourceSlotResource (302) */ + /** @name RmrkTraitsResourceSlotResource (325) */ interface RmrkTraitsResourceSlotResource extends Struct { readonly base: u32; readonly src: Option; @@ -2851,7 +3035,7 @@ readonly thumb: Option; } - /** @name PalletRmrkEquipCall (305) */ + /** @name PalletRmrkEquipCall (328) */ interface PalletRmrkEquipCall extends Enum { readonly isCreateBase: boolean; readonly asCreateBase: { @@ -2873,7 +3057,7 @@ readonly type: 'CreateBase' | 'ThemeAdd' | 'Equippable'; } - /** @name RmrkTraitsPartPartType (308) */ + /** @name RmrkTraitsPartPartType (331) */ interface RmrkTraitsPartPartType extends Enum { readonly isFixedPart: boolean; readonly asFixedPart: RmrkTraitsPartFixedPart; @@ -2882,14 +3066,14 @@ readonly type: 'FixedPart' | 'SlotPart'; } - /** @name RmrkTraitsPartFixedPart (310) */ + /** @name RmrkTraitsPartFixedPart (333) */ interface RmrkTraitsPartFixedPart extends Struct { readonly id: u32; readonly z: u32; readonly src: Bytes; } - /** @name RmrkTraitsPartSlotPart (311) */ + /** @name RmrkTraitsPartSlotPart (334) */ interface RmrkTraitsPartSlotPart extends Struct { readonly id: u32; readonly equippable: RmrkTraitsPartEquippableList; @@ -2897,7 +3081,7 @@ readonly z: u32; } - /** @name RmrkTraitsPartEquippableList (312) */ + /** @name RmrkTraitsPartEquippableList (335) */ interface RmrkTraitsPartEquippableList extends Enum { readonly isAll: boolean; readonly isEmpty: boolean; @@ -2906,20 +3090,20 @@ readonly type: 'All' | 'Empty' | 'Custom'; } - /** @name RmrkTraitsTheme (314) */ + /** @name RmrkTraitsTheme (337) */ interface RmrkTraitsTheme extends Struct { readonly name: Bytes; readonly properties: Vec; readonly inherit: bool; } - /** @name RmrkTraitsThemeThemeProperty (316) */ + /** @name RmrkTraitsThemeThemeProperty (339) */ interface RmrkTraitsThemeThemeProperty extends Struct { readonly key: Bytes; readonly value: Bytes; } - /** @name PalletAppPromotionCall (318) */ + /** @name PalletAppPromotionCall (341) */ interface PalletAppPromotionCall extends Enum { readonly isSetAdminAddress: boolean; readonly asSetAdminAddress: { @@ -2953,7 +3137,7 @@ readonly type: 'SetAdminAddress' | 'Stake' | 'Unstake' | 'SponsorCollection' | 'StopSponsoringCollection' | 'SponsorContract' | 'StopSponsoringContract' | 'PayoutStakers'; } - /** @name PalletForeignAssetsModuleCall (319) */ + /** @name PalletForeignAssetsModuleCall (342) */ interface PalletForeignAssetsModuleCall extends Enum { readonly isRegisterForeignAsset: boolean; readonly asRegisterForeignAsset: { @@ -2970,7 +3154,7 @@ readonly type: 'RegisterForeignAsset' | 'UpdateForeignAsset'; } - /** @name PalletEvmCall (320) */ + /** @name PalletEvmCall (343) */ interface PalletEvmCall extends Enum { readonly isWithdraw: boolean; readonly asWithdraw: { @@ -3015,7 +3199,7 @@ readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2'; } - /** @name PalletEthereumCall (326) */ + /** @name PalletEthereumCall (349) */ interface PalletEthereumCall extends Enum { readonly isTransact: boolean; readonly asTransact: { @@ -3024,7 +3208,7 @@ readonly type: 'Transact'; } - /** @name EthereumTransactionTransactionV2 (327) */ + /** @name EthereumTransactionTransactionV2 (350) */ interface EthereumTransactionTransactionV2 extends Enum { readonly isLegacy: boolean; readonly asLegacy: EthereumTransactionLegacyTransaction; @@ -3035,7 +3219,7 @@ readonly type: 'Legacy' | 'Eip2930' | 'Eip1559'; } - /** @name EthereumTransactionLegacyTransaction (328) */ + /** @name EthereumTransactionLegacyTransaction (351) */ interface EthereumTransactionLegacyTransaction extends Struct { readonly nonce: U256; readonly gasPrice: U256; @@ -3046,7 +3230,7 @@ readonly signature: EthereumTransactionTransactionSignature; } - /** @name EthereumTransactionTransactionAction (329) */ + /** @name EthereumTransactionTransactionAction (352) */ interface EthereumTransactionTransactionAction extends Enum { readonly isCall: boolean; readonly asCall: H160; @@ -3054,14 +3238,14 @@ readonly type: 'Call' | 'Create'; } - /** @name EthereumTransactionTransactionSignature (330) */ + /** @name EthereumTransactionTransactionSignature (353) */ interface EthereumTransactionTransactionSignature extends Struct { readonly v: u64; readonly r: H256; readonly s: H256; } - /** @name EthereumTransactionEip2930Transaction (332) */ + /** @name EthereumTransactionEip2930Transaction (355) */ interface EthereumTransactionEip2930Transaction extends Struct { readonly chainId: u64; readonly nonce: U256; @@ -3076,13 +3260,13 @@ readonly s: H256; } - /** @name EthereumTransactionAccessListItem (334) */ + /** @name EthereumTransactionAccessListItem (357) */ interface EthereumTransactionAccessListItem extends Struct { readonly address: H160; readonly storageKeys: Vec; } - /** @name EthereumTransactionEip1559Transaction (335) */ + /** @name EthereumTransactionEip1559Transaction (358) */ interface EthereumTransactionEip1559Transaction extends Struct { readonly chainId: u64; readonly nonce: U256; @@ -3098,7 +3282,7 @@ readonly s: H256; } - /** @name PalletEvmMigrationCall (336) */ + /** @name PalletEvmMigrationCall (359) */ interface PalletEvmMigrationCall extends Enum { readonly isBegin: boolean; readonly asBegin: { @@ -3125,14 +3309,14 @@ readonly type: 'Begin' | 'SetData' | 'Finish' | 'InsertEthLogs' | 'InsertEvents'; } - /** @name PalletMaintenanceCall (340) */ + /** @name PalletMaintenanceCall (363) */ interface PalletMaintenanceCall extends Enum { readonly isEnable: boolean; readonly isDisable: boolean; readonly type: 'Enable' | 'Disable'; } - /** @name PalletTestUtilsCall (341) */ + /** @name PalletTestUtilsCall (364) */ interface PalletTestUtilsCall extends Enum { readonly isEnable: boolean; readonly isSetTestValue: boolean; @@ -3152,13 +3336,13 @@ readonly type: 'Enable' | 'SetTestValue' | 'SetTestValueAndRollback' | 'IncTestValue' | 'JustTakeFee' | 'BatchAll'; } - /** @name PalletSudoError (343) */ + /** @name PalletSudoError (366) */ interface PalletSudoError extends Enum { readonly isRequireSudo: boolean; readonly type: 'RequireSudo'; } - /** @name OrmlVestingModuleError (345) */ + /** @name OrmlVestingModuleError (368) */ interface OrmlVestingModuleError extends Enum { readonly isZeroVestingPeriod: boolean; readonly isZeroVestingPeriodCount: boolean; @@ -3169,7 +3353,7 @@ readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded'; } - /** @name OrmlXtokensModuleError (346) */ + /** @name OrmlXtokensModuleError (369) */ interface OrmlXtokensModuleError extends Enum { readonly isAssetHasNoReserve: boolean; readonly isNotCrossChainTransfer: boolean; @@ -3193,26 +3377,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 (372) */ interface OrmlTokensBalanceLock extends Struct { readonly id: U8aFixed; readonly amount: u128; } - /** @name OrmlTokensAccountData (351) */ + /** @name OrmlTokensAccountData (374) */ interface OrmlTokensAccountData extends Struct { readonly free: u128; readonly reserved: u128; readonly frozen: u128; } - /** @name OrmlTokensReserveData (353) */ + /** @name OrmlTokensReserveData (376) */ interface OrmlTokensReserveData extends Struct { readonly id: Null; readonly amount: u128; } - /** @name OrmlTokensModuleError (355) */ + /** @name OrmlTokensModuleError (378) */ interface OrmlTokensModuleError extends Enum { readonly isBalanceTooLow: boolean; readonly isAmountIntoBalanceFailed: boolean; @@ -3225,21 +3409,21 @@ readonly type: 'BalanceTooLow' | 'AmountIntoBalanceFailed' | 'LiquidityRestrictions' | 'MaxLocksExceeded' | 'KeepAlive' | 'ExistentialDeposit' | 'DeadAccount' | 'TooManyReserves'; } - /** @name CumulusPalletXcmpQueueInboundChannelDetails (357) */ + /** @name CumulusPalletXcmpQueueInboundChannelDetails (380) */ interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct { readonly sender: u32; readonly state: CumulusPalletXcmpQueueInboundState; readonly messageMetadata: Vec>; } - /** @name CumulusPalletXcmpQueueInboundState (358) */ + /** @name CumulusPalletXcmpQueueInboundState (381) */ interface CumulusPalletXcmpQueueInboundState extends Enum { readonly isOk: boolean; readonly isSuspended: boolean; readonly type: 'Ok' | 'Suspended'; } - /** @name PolkadotParachainPrimitivesXcmpMessageFormat (361) */ + /** @name PolkadotParachainPrimitivesXcmpMessageFormat (384) */ interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum { readonly isConcatenatedVersionedXcm: boolean; readonly isConcatenatedEncodedBlob: boolean; @@ -3247,7 +3431,7 @@ readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals'; } - /** @name CumulusPalletXcmpQueueOutboundChannelDetails (364) */ + /** @name CumulusPalletXcmpQueueOutboundChannelDetails (387) */ interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct { readonly recipient: u32; readonly state: CumulusPalletXcmpQueueOutboundState; @@ -3256,14 +3440,14 @@ readonly lastIndex: u16; } - /** @name CumulusPalletXcmpQueueOutboundState (365) */ + /** @name CumulusPalletXcmpQueueOutboundState (388) */ interface CumulusPalletXcmpQueueOutboundState extends Enum { readonly isOk: boolean; readonly isSuspended: boolean; readonly type: 'Ok' | 'Suspended'; } - /** @name CumulusPalletXcmpQueueQueueConfigData (367) */ + /** @name CumulusPalletXcmpQueueQueueConfigData (390) */ interface CumulusPalletXcmpQueueQueueConfigData extends Struct { readonly suspendThreshold: u32; readonly dropThreshold: u32; @@ -3273,7 +3457,7 @@ readonly xcmpMaxIndividualWeight: SpWeightsWeightV2Weight; } - /** @name CumulusPalletXcmpQueueError (369) */ + /** @name CumulusPalletXcmpQueueError (392) */ interface CumulusPalletXcmpQueueError extends Enum { readonly isFailedToSend: boolean; readonly isBadXcmOrigin: boolean; @@ -3283,7 +3467,7 @@ readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit'; } - /** @name PalletXcmError (370) */ + /** @name PalletXcmError (393) */ interface PalletXcmError extends Enum { readonly isUnreachable: boolean; readonly isSendFailure: boolean; @@ -3301,29 +3485,29 @@ readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed'; } - /** @name CumulusPalletXcmError (371) */ + /** @name CumulusPalletXcmError (394) */ type CumulusPalletXcmError = Null; - /** @name CumulusPalletDmpQueueConfigData (372) */ + /** @name CumulusPalletDmpQueueConfigData (395) */ interface CumulusPalletDmpQueueConfigData extends Struct { readonly maxIndividual: SpWeightsWeightV2Weight; } - /** @name CumulusPalletDmpQueuePageIndexData (373) */ + /** @name CumulusPalletDmpQueuePageIndexData (396) */ interface CumulusPalletDmpQueuePageIndexData extends Struct { readonly beginUsed: u32; readonly endUsed: u32; readonly overweightCount: u64; } - /** @name CumulusPalletDmpQueueError (376) */ + /** @name CumulusPalletDmpQueueError (399) */ interface CumulusPalletDmpQueueError extends Enum { readonly isUnknown: boolean; readonly isOverLimit: boolean; readonly type: 'Unknown' | 'OverLimit'; } - /** @name PalletUniqueError (380) */ + /** @name PalletUniqueError (403) */ interface PalletUniqueError extends Enum { readonly isCollectionDecimalPointLimitExceeded: boolean; readonly isEmptyArgument: boolean; @@ -3331,13 +3515,13 @@ readonly type: 'CollectionDecimalPointLimitExceeded' | 'EmptyArgument' | 'RepartitionCalledOnNonRefungibleCollection'; } - /** @name PalletConfigurationError (381) */ + /** @name PalletConfigurationError (404) */ interface PalletConfigurationError extends Enum { readonly isInconsistentConfiguration: boolean; readonly type: 'InconsistentConfiguration'; } - /** @name UpDataStructsCollection (382) */ + /** @name UpDataStructsCollection (405) */ interface UpDataStructsCollection extends Struct { readonly owner: AccountId32; readonly mode: UpDataStructsCollectionMode; @@ -3350,7 +3534,7 @@ readonly flags: U8aFixed; } - /** @name UpDataStructsSponsorshipStateAccountId32 (383) */ + /** @name UpDataStructsSponsorshipStateAccountId32 (406) */ interface UpDataStructsSponsorshipStateAccountId32 extends Enum { readonly isDisabled: boolean; readonly isUnconfirmed: boolean; @@ -3360,43 +3544,43 @@ readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed'; } - /** @name UpDataStructsProperties (385) */ + /** @name UpDataStructsProperties (408) */ interface UpDataStructsProperties extends Struct { readonly map: UpDataStructsPropertiesMapBoundedVec; readonly consumedSpace: u32; readonly spaceLimit: u32; } - /** @name UpDataStructsPropertiesMapBoundedVec (386) */ + /** @name UpDataStructsPropertiesMapBoundedVec (409) */ interface UpDataStructsPropertiesMapBoundedVec extends BTreeMap {} - /** @name UpDataStructsPropertiesMapPropertyPermission (391) */ + /** @name UpDataStructsPropertiesMapPropertyPermission (414) */ interface UpDataStructsPropertiesMapPropertyPermission extends BTreeMap {} - /** @name UpDataStructsCollectionStats (398) */ + /** @name UpDataStructsCollectionStats (421) */ interface UpDataStructsCollectionStats extends Struct { readonly created: u32; readonly destroyed: u32; readonly alive: u32; } - /** @name UpDataStructsTokenChild (399) */ + /** @name UpDataStructsTokenChild (422) */ interface UpDataStructsTokenChild extends Struct { readonly token: u32; readonly collection: u32; } - /** @name PhantomTypeUpDataStructs (400) */ + /** @name PhantomTypeUpDataStructs (423) */ interface PhantomTypeUpDataStructs extends Vec> {} - /** @name UpDataStructsTokenData (402) */ + /** @name UpDataStructsTokenData (425) */ interface UpDataStructsTokenData extends Struct { readonly properties: Vec; readonly owner: Option; readonly pieces: u128; } - /** @name UpDataStructsRpcCollection (404) */ + /** @name UpDataStructsRpcCollection (427) */ interface UpDataStructsRpcCollection extends Struct { readonly owner: AccountId32; readonly mode: UpDataStructsCollectionMode; @@ -3412,13 +3596,13 @@ readonly flags: UpDataStructsRpcCollectionFlags; } - /** @name UpDataStructsRpcCollectionFlags (405) */ + /** @name UpDataStructsRpcCollectionFlags (428) */ interface UpDataStructsRpcCollectionFlags extends Struct { readonly foreign: bool; readonly erc721metadata: bool; } - /** @name RmrkTraitsCollectionCollectionInfo (406) */ + /** @name RmrkTraitsCollectionCollectionInfo (429) */ interface RmrkTraitsCollectionCollectionInfo extends Struct { readonly issuer: AccountId32; readonly metadata: Bytes; @@ -3427,7 +3611,7 @@ readonly nftsCount: u32; } - /** @name RmrkTraitsNftNftInfo (407) */ + /** @name RmrkTraitsNftNftInfo (430) */ interface RmrkTraitsNftNftInfo extends Struct { readonly owner: RmrkTraitsNftAccountIdOrCollectionNftTuple; readonly royalty: Option; @@ -3436,13 +3620,13 @@ readonly pending: bool; } - /** @name RmrkTraitsNftRoyaltyInfo (409) */ + /** @name RmrkTraitsNftRoyaltyInfo (432) */ interface RmrkTraitsNftRoyaltyInfo extends Struct { readonly recipient: AccountId32; readonly amount: Permill; } - /** @name RmrkTraitsResourceResourceInfo (410) */ + /** @name RmrkTraitsResourceResourceInfo (433) */ interface RmrkTraitsResourceResourceInfo extends Struct { readonly id: u32; readonly resource: RmrkTraitsResourceResourceTypes; @@ -3450,26 +3634,26 @@ readonly pendingRemoval: bool; } - /** @name RmrkTraitsPropertyPropertyInfo (411) */ + /** @name RmrkTraitsPropertyPropertyInfo (434) */ interface RmrkTraitsPropertyPropertyInfo extends Struct { readonly key: Bytes; readonly value: Bytes; } - /** @name RmrkTraitsBaseBaseInfo (412) */ + /** @name RmrkTraitsBaseBaseInfo (435) */ interface RmrkTraitsBaseBaseInfo extends Struct { readonly issuer: AccountId32; readonly baseType: Bytes; readonly symbol: Bytes; } - /** @name RmrkTraitsNftNftChild (413) */ + /** @name RmrkTraitsNftNftChild (436) */ interface RmrkTraitsNftNftChild extends Struct { readonly collectionId: u32; readonly nftId: u32; } - /** @name PalletCommonError (415) */ + /** @name PalletCommonError (438) */ interface PalletCommonError extends Enum { readonly isCollectionNotFound: boolean; readonly isMustBeTokenOwner: boolean; @@ -3510,7 +3694,7 @@ readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'CantDestroyNotEmptyCollection' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'UserIsNotAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached' | 'PropertyKeyIsTooLong' | 'InvalidCharacterInPropertyKey' | 'EmptyPropertyKey' | 'CollectionIsExternal' | 'CollectionIsInternal' | 'ConfirmSponsorshipFail' | 'UserIsNotCollectionAdmin'; } - /** @name PalletFungibleError (417) */ + /** @name PalletFungibleError (440) */ interface PalletFungibleError extends Enum { readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean; readonly isFungibleItemsHaveNoId: boolean; @@ -3522,12 +3706,12 @@ readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed' | 'SettingAllowanceForAllNotAllowed' | 'FungibleTokensAreAlwaysValid'; } - /** @name PalletRefungibleItemData (418) */ + /** @name PalletRefungibleItemData (441) */ interface PalletRefungibleItemData extends Struct { readonly constData: Bytes; } - /** @name PalletRefungibleError (423) */ + /** @name PalletRefungibleError (446) */ interface PalletRefungibleError extends Enum { readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean; readonly isWrongRefungiblePieces: boolean; @@ -3537,19 +3721,19 @@ readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RepartitionWhileNotOwningAllPieces' | 'RefungibleDisallowsNesting' | 'SettingPropertiesNotAllowed'; } - /** @name PalletNonfungibleItemData (424) */ + /** @name PalletNonfungibleItemData (447) */ interface PalletNonfungibleItemData extends Struct { readonly owner: PalletEvmAccountBasicCrossAccountIdRepr; } - /** @name UpDataStructsPropertyScope (426) */ + /** @name UpDataStructsPropertyScope (449) */ interface UpDataStructsPropertyScope extends Enum { readonly isNone: boolean; readonly isRmrk: boolean; readonly type: 'None' | 'Rmrk'; } - /** @name PalletNonfungibleError (428) */ + /** @name PalletNonfungibleError (451) */ interface PalletNonfungibleError extends Enum { readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean; readonly isNonfungibleItemsHaveNoAmount: boolean; @@ -3557,7 +3741,7 @@ readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount' | 'CantBurnNftWithChildren'; } - /** @name PalletStructureError (429) */ + /** @name PalletStructureError (452) */ interface PalletStructureError extends Enum { readonly isOuroborosDetected: boolean; readonly isDepthLimit: boolean; @@ -3566,7 +3750,7 @@ readonly type: 'OuroborosDetected' | 'DepthLimit' | 'BreadthLimit' | 'TokenNotFound'; } - /** @name PalletRmrkCoreError (430) */ + /** @name PalletRmrkCoreError (453) */ interface PalletRmrkCoreError extends Enum { readonly isCorruptedCollectionType: boolean; readonly isRmrkPropertyKeyIsTooLong: boolean; @@ -3590,7 +3774,7 @@ readonly type: 'CorruptedCollectionType' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'RmrkPropertyIsNotFound' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'CannotRejectNonPendingNft' | 'ResourceNotPending' | 'NoAvailableResourceId'; } - /** @name PalletRmrkEquipError (432) */ + /** @name PalletRmrkEquipError (455) */ interface PalletRmrkEquipError extends Enum { readonly isPermissionError: boolean; readonly isNoAvailableBaseId: boolean; @@ -3602,7 +3786,7 @@ readonly type: 'PermissionError' | 'NoAvailableBaseId' | 'NoAvailablePartId' | 'BaseDoesntExist' | 'NeedsDefaultThemeFirst' | 'PartDoesntExist' | 'NoEquippableOnFixedPart'; } - /** @name PalletAppPromotionError (438) */ + /** @name PalletAppPromotionError (461) */ interface PalletAppPromotionError extends Enum { readonly isAdminNotSet: boolean; readonly isNoPermission: boolean; @@ -3613,7 +3797,7 @@ readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'SponsorNotSet' | 'IncorrectLockedBalanceOperation'; } - /** @name PalletForeignAssetsModuleError (439) */ + /** @name PalletForeignAssetsModuleError (462) */ interface PalletForeignAssetsModuleError extends Enum { readonly isBadLocation: boolean; readonly isMultiLocationExisted: boolean; @@ -3622,7 +3806,7 @@ readonly type: 'BadLocation' | 'MultiLocationExisted' | 'AssetIdNotExists' | 'AssetIdExisted'; } - /** @name PalletEvmError (441) */ + /** @name PalletEvmError (464) */ interface PalletEvmError extends Enum { readonly isBalanceLow: boolean; readonly isFeeOverflow: boolean; @@ -3637,7 +3821,7 @@ readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce' | 'GasLimitTooLow' | 'GasLimitTooHigh' | 'Undefined' | 'Reentrancy'; } - /** @name FpRpcTransactionStatus (444) */ + /** @name FpRpcTransactionStatus (467) */ interface FpRpcTransactionStatus extends Struct { readonly transactionHash: H256; readonly transactionIndex: u32; @@ -3648,10 +3832,10 @@ readonly logsBloom: EthbloomBloom; } - /** @name EthbloomBloom (446) */ + /** @name EthbloomBloom (469) */ interface EthbloomBloom extends U8aFixed {} - /** @name EthereumReceiptReceiptV3 (448) */ + /** @name EthereumReceiptReceiptV3 (471) */ interface EthereumReceiptReceiptV3 extends Enum { readonly isLegacy: boolean; readonly asLegacy: EthereumReceiptEip658ReceiptData; @@ -3662,7 +3846,7 @@ readonly type: 'Legacy' | 'Eip2930' | 'Eip1559'; } - /** @name EthereumReceiptEip658ReceiptData (449) */ + /** @name EthereumReceiptEip658ReceiptData (472) */ interface EthereumReceiptEip658ReceiptData extends Struct { readonly statusCode: u8; readonly usedGas: U256; @@ -3670,14 +3854,14 @@ readonly logs: Vec; } - /** @name EthereumBlock (450) */ + /** @name EthereumBlock (473) */ interface EthereumBlock extends Struct { readonly header: EthereumHeader; readonly transactions: Vec; readonly ommers: Vec; } - /** @name EthereumHeader (451) */ + /** @name EthereumHeader (474) */ interface EthereumHeader extends Struct { readonly parentHash: H256; readonly ommersHash: H256; @@ -3696,24 +3880,24 @@ readonly nonce: EthereumTypesHashH64; } - /** @name EthereumTypesHashH64 (452) */ + /** @name EthereumTypesHashH64 (475) */ interface EthereumTypesHashH64 extends U8aFixed {} - /** @name PalletEthereumError (457) */ + /** @name PalletEthereumError (480) */ interface PalletEthereumError extends Enum { readonly isInvalidSignature: boolean; readonly isPreLogExists: boolean; readonly type: 'InvalidSignature' | 'PreLogExists'; } - /** @name PalletEvmCoderSubstrateError (458) */ + /** @name PalletEvmCoderSubstrateError (481) */ interface PalletEvmCoderSubstrateError extends Enum { readonly isOutOfGas: boolean; readonly isOutOfFund: boolean; readonly type: 'OutOfGas' | 'OutOfFund'; } - /** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr (459) */ + /** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr (482) */ interface UpDataStructsSponsorshipStateBasicCrossAccountIdRepr extends Enum { readonly isDisabled: boolean; readonly isUnconfirmed: boolean; @@ -3723,7 +3907,7 @@ readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed'; } - /** @name PalletEvmContractHelpersSponsoringModeT (460) */ + /** @name PalletEvmContractHelpersSponsoringModeT (483) */ interface PalletEvmContractHelpersSponsoringModeT extends Enum { readonly isDisabled: boolean; readonly isAllowlisted: boolean; @@ -3731,7 +3915,7 @@ readonly type: 'Disabled' | 'Allowlisted' | 'Generous'; } - /** @name PalletEvmContractHelpersError (466) */ + /** @name PalletEvmContractHelpersError (489) */ interface PalletEvmContractHelpersError extends Enum { readonly isNoPermission: boolean; readonly isNoPendingSponsor: boolean; @@ -3739,7 +3923,7 @@ readonly type: 'NoPermission' | 'NoPendingSponsor' | 'TooManyMethodsHaveSponsoredLimit'; } - /** @name PalletEvmMigrationError (467) */ + /** @name PalletEvmMigrationError (490) */ interface PalletEvmMigrationError extends Enum { readonly isAccountNotEmpty: boolean; readonly isAccountIsNotMigrating: boolean; @@ -3747,17 +3931,17 @@ readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating' | 'BadEvent'; } - /** @name PalletMaintenanceError (468) */ + /** @name PalletMaintenanceError (491) */ type PalletMaintenanceError = Null; - /** @name PalletTestUtilsError (469) */ + /** @name PalletTestUtilsError (492) */ interface PalletTestUtilsError extends Enum { readonly isTestPalletDisabled: boolean; readonly isTriggerRollback: boolean; readonly type: 'TestPalletDisabled' | 'TriggerRollback'; } - /** @name SpRuntimeMultiSignature (471) */ + /** @name SpRuntimeMultiSignature (494) */ interface SpRuntimeMultiSignature extends Enum { readonly isEd25519: boolean; readonly asEd25519: SpCoreEd25519Signature; @@ -3768,40 +3952,40 @@ readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa'; } - /** @name SpCoreEd25519Signature (472) */ + /** @name SpCoreEd25519Signature (495) */ interface SpCoreEd25519Signature extends U8aFixed {} - /** @name SpCoreSr25519Signature (474) */ + /** @name SpCoreSr25519Signature (497) */ interface SpCoreSr25519Signature extends U8aFixed {} - /** @name SpCoreEcdsaSignature (475) */ + /** @name SpCoreEcdsaSignature (498) */ interface SpCoreEcdsaSignature extends U8aFixed {} - /** @name FrameSystemExtensionsCheckSpecVersion (478) */ + /** @name FrameSystemExtensionsCheckSpecVersion (501) */ type FrameSystemExtensionsCheckSpecVersion = Null; - /** @name FrameSystemExtensionsCheckTxVersion (479) */ + /** @name FrameSystemExtensionsCheckTxVersion (502) */ type FrameSystemExtensionsCheckTxVersion = Null; - /** @name FrameSystemExtensionsCheckGenesis (480) */ + /** @name FrameSystemExtensionsCheckGenesis (503) */ type FrameSystemExtensionsCheckGenesis = Null; - /** @name FrameSystemExtensionsCheckNonce (483) */ + /** @name FrameSystemExtensionsCheckNonce (506) */ interface FrameSystemExtensionsCheckNonce extends Compact {} - /** @name FrameSystemExtensionsCheckWeight (484) */ + /** @name FrameSystemExtensionsCheckWeight (507) */ type FrameSystemExtensionsCheckWeight = Null; - /** @name OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance (485) */ + /** @name OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance (508) */ type OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance = Null; - /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (486) */ + /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (509) */ interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact {} - /** @name OpalRuntimeRuntime (487) */ + /** @name OpalRuntimeRuntime (510) */ type OpalRuntimeRuntime = Null; - /** @name PalletEthereumFakeTransactionFinalizer (488) */ + /** @name PalletEthereumFakeTransactionFinalizer (511) */ type PalletEthereumFakeTransactionFinalizer = Null; } // declare module --- a/tests/src/util/playgrounds/unique.dev.ts +++ b/tests/src/util/playgrounds/unique.dev.ts @@ -445,6 +445,30 @@ return promise; } + /** + * Wait for the specified number of sessions to pass. + * Only applicable if the Session pallet is turned on. + * @param sessionCount number of sessions to wait + * @param blockTimeout time in ms until panicking that the chain has stopped producing blocks + * @returns + */ + async newSessions(sessionCount = 1, blockTimeout = 60000): Promise { + console.log(`Waiting for ${sessionCount} new session${sessionCount > 1 ? 's' : ''}.` + + ' This might take a while -- check SessionPeriod in pallet_session::Config for session time.'); + + const expectedSessionIndex = await this.helper.session.getIndex() + sessionCount; + let currentSessionIndex = -1; + + while (currentSessionIndex < expectedSessionIndex) { + // eslint-disable-next-line no-async-promise-executor + currentSessionIndex = await this.withTimeout(new Promise(async (resolve) => { + await this.newBlocks(1); + const res = this.helper.session.getIndex(); + resolve(res); + }), blockTimeout, 'The chain has stopped producing blocks!'); + } + } + async forParachainBlockNumber(blockNumber: bigint | number, timeout?: number) { timeout = timeout ?? 30 * 60 * 1000; // eslint-disable-next-line no-async-promise-executor --- a/tests/src/util/playgrounds/unique.ts +++ b/tests/src/util/playgrounds/unique.ts @@ -11,7 +11,6 @@ import {IKeyringPair} from '@polkadot/types/types'; import {hexToU8a} from '@polkadot/util/hex'; import {u8aConcat} from '@polkadot/util/u8a'; -import {BN} from '@polkadot/util/bn'; import { IApiListeners, IBlock, @@ -46,6 +45,7 @@ import {RuntimeDispatchInfo} from '@polkadot/types/interfaces'; import type {Vec} from '@polkadot/types-codec'; import {FrameSystemEventRecord} from '@polkadot/types/lookup'; +import {DevUniqueHelper} from './unique.dev'; export class CrossAccountId implements ICrossAccountId { Substrate?: TSubstrateAccount; @@ -376,6 +376,7 @@ children: ChainHelperBase[]; address: AddressGroup; chain: ChainGroup; + session: SessionGroup; constructor(logger?: ILogger, helperBase?: any) { this.helperBase = helperBase; @@ -391,6 +392,7 @@ this.children = []; this.address = new AddressGroup(this); this.chain = new ChainGroup(this); + this.session = new SessionGroup(this); } clone(helperCls: ChainHelperBaseConstructor, options: {[key: string]: any} = {}) { @@ -2643,24 +2645,32 @@ } } -class CollatorSelectionGroup extends HelperGroup { +class SessionGroup extends HelperGroup { //todo:collator documentation - setKeys(signer: TSigner, key: string) { + async getIndex(): Promise { + return (await this.helper.callRpc('api.query.session.currentIndex')).toNumber(); + } + + newSessions(sessionCount = 1, blockTimeout = 24000): Promise { + return (this.helper as DevUniqueHelper).wait.newSessions(sessionCount, blockTimeout); + } + + setOwnKeys(signer: TSigner, key: string) { return this.helper.executeExtrinsic( signer, 'api.tx.session.setKeys', - [ - key, - '0x0', - ], + [key, '0x0'], true, ); } - setOwnKeys(signer: TSigner) { - return this.setKeys(signer, '0x' + Buffer.from(signer.addressRaw).toString('hex')); + setOwnKeysFromAddress(signer: TSigner) { + return this.setOwnKeys(signer, '0x' + Buffer.from(signer.addressRaw).toString('hex')); } +} +class CollatorSelectionGroup extends HelperGroup { + //todo:collator documentation addInvulnerable(signer: TSigner, address: string) { return this.helper.executeExtrinsic(signer, 'api.tx.collatorSelection.addInvulnerable', [address]); } @@ -2669,9 +2679,45 @@ return this.helper.executeExtrinsic(signer, 'api.tx.collatorSelection.removeInvulnerable', [address]); } - async getInvulnerables() { + async getInvulnerables(): Promise { return (await this.helper.callRpc('api.query.collatorSelection.invulnerables')).map((x: any) => x.toHuman()); } + + setLicenseBond(signer: TSigner, amount: bigint) { + return this.helper.executeExtrinsic(signer, 'api.tx.collatorSelection.setLicenseBond', [amount]); + } + + async getLicenseBond(): Promise { + return (await this.helper.callRpc('api.query.collatorSelection.licenseBond')).toBigInt(); + } + + obtainLicense(signer: TSigner) { + return this.helper.executeExtrinsic(signer, 'api.tx.collatorSelection.getLicense', []); + } + + releaseLicense(signer: TSigner) { + return this.helper.executeExtrinsic(signer, 'api.tx.collatorSelection.releaseLicense', []); + } + + forceRevokeLicense(signer: TSigner, released: string) { + return this.helper.executeExtrinsic(signer, 'api.tx.collatorSelection.forceRevokeLicense', [released]); + } + + async hasLicense(address: string): Promise { + return (await this.helper.callRpc('api.query.collatorSelection.licenses', [address])).toBigInt(); + } + + onboard(signer: TSigner) { + return this.helper.executeExtrinsic(signer, 'api.tx.collatorSelection.onboard', []); + } + + offboard(signer: TSigner) { + return this.helper.executeExtrinsic(signer, 'api.tx.collatorSelection.offboard', []); + } + + async getCandidates(): Promise { + return (await this.helper.callRpc('api.query.collatorSelection.candidates')).map((x: any) => x.toHuman()); + } } class ForeignAssetsGroup extends HelperGroup { @@ -3040,12 +3086,15 @@ if (result.status === 'Fail') return result; - const data = this.eventHelper.extractEvents(result.result.events).find(x => x.section == 'sudo')?.data[0]; - if (data.err) { - const error = data.err.module; - // todo:collator - const metaError = super.getApi()?.registry.findMetaError({index: new BN(error.index), error: new BN(9)}); - throw new Error(`${data.err.module.error} ${metaError.section}.${metaError.name}`); + const data = (result.result.events.find(x => x.event.section == 'sudo' && x.event.method == 'Sudid')?.event.data as any).sudoResult; + if (data.isErr) { + if (data.asErr.isModule) { + const error = (result.result.events[1].event.data as any).sudoResult.asErr.asModule; + const metaError = super.getApi()?.registry.findMetaError(error); + throw new Error(`${metaError.section}.${metaError.name}`); + } else { + throw new Error(data.asErr.toHuman()); + } } return result; } -- gitstuff