git.delta.rocks / unique-network / refs/commits / cfd200020468

difftreelog

fix after rebase

Trubnikov Sergey2022-12-14parent: #56ba79b.patch.diff
in: master

9 files changed

modifiedtests/src/interfaces/augment-api-consts.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-consts.ts
+++ b/tests/src/interfaces/augment-api-consts.ts
@@ -81,6 +81,7 @@
     configuration: {
       defaultMinGasPrice: u64 & AugmentedConst<ApiType>;
       defaultWeightToFeeCoefficient: u32 & AugmentedConst<ApiType>;
+      maxOverridedAllowedLocations: u32 & AugmentedConst<ApiType>;
       /**
        * Generic const
        **/
modifiedtests/src/interfaces/augment-api-query.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-query.ts
+++ b/tests/src/interfaces/augment-api-query.ts
@@ -162,6 +162,7 @@
     configuration: {
       minGasPriceOverride: AugmentedQuery<ApiType, () => Observable<u64>, []> & QueryableStorageEntry<ApiType, []>;
       weightToFeeCoefficientOverride: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
+      xcmAllowedLocationsOverride: AugmentedQuery<ApiType, () => Observable<Option<Vec<XcmV1MultiLocation>>>, []> & QueryableStorageEntry<ApiType, []>;
       /**
        * Generic query
        **/
modifiedtests/src/interfaces/augment-api-rpc.tsdiffbeforeafterboth
--- 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, InstantiateRequestV1 } from '@polkadot/types/interfaces/contracts';
+import type { CodeUploadRequest, CodeUploadResult, ContractCallRequest, ContractExecResult, ContractInstantiateResult, InstantiateRequest } 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, RuntimeDispatchInfoV1 } from '@polkadot/types/interfaces/payment';
+import type { FeeDetails, RuntimeDispatchInfo } 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: InstantiateRequestV1 | { origin?: any; value?: any; gasLimit?: any; code?: any; data?: any; salt?: any } | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable<ContractInstantiateResult>>;
+      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<ContractInstantiateResult>>;
       /**
        * @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,15 +426,13 @@
     };
     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<FeeDetails>>;
       /**
-       * @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<RuntimeDispatchInfoV1>>;
+      queryInfo: AugmentedRpc<(extrinsic: Bytes | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable<RuntimeDispatchInfo>>;
     };
     rmrk: {
       /**
modifiedtests/src/interfaces/augment-api-runtime.tsdiffbeforeafterboth
--- 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, u32, u64 } from '@polkadot/types-codec';
+import type { Bytes, Null, Option, Result, U256, Vec, bool, u256, 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,7 +16,6 @@
 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';
@@ -224,21 +223,6 @@
        * Validate the transaction.
        **/
       validateTransaction: AugmentedCall<ApiType, (source: TransactionSource | 'InBlock' | 'Local' | 'External' | number | Uint8Array, tx: Extrinsic | IExtrinsic | string | Uint8Array, blockHash: BlockHash | string | Uint8Array) => Observable<TransactionValidity>>;
-      /**
-       * Generic call
-       **/
-      [key: string]: DecoratedCallBase<ApiType>;
-    };
-    /** 0x37c8bb1350a9a2a8/2 */
-    transactionPaymentApi: {
-      /**
-       * The transaction fee details
-       **/
-      queryFeeDetails: AugmentedCall<ApiType, (uxt: Extrinsic | IExtrinsic | string | Uint8Array, len: u32 | AnyNumber | Uint8Array) => Observable<FeeDetails>>;
-      /**
-       * The transaction info
-       **/
-      queryInfo: AugmentedCall<ApiType, (uxt: Extrinsic | IExtrinsic | string | Uint8Array, len: u32 | AnyNumber | Uint8Array) => Observable<RuntimeDispatchInfo>>;
       /**
        * Generic call
        **/
modifiedtests/src/interfaces/augment-api-tx.tsdiffbeforeafterboth
before · tests/src/interfaces/augment-api-tx.ts
1// Auto-generated via `yarn polkadot-types-from-chain`, do not edit2/* eslint-disable */34// import type lookup before we augment - in some environments5// this is required to allow for ambient/previous definitions6import '@polkadot/api-base/types/submittable';78import type { ApiTypes, AugmentedSubmittable, SubmittableExtrinsic, SubmittableExtrinsicFunction } from '@polkadot/api-base/types';9import type { Bytes, Compact, Option, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';10import type { AnyNumber, IMethod, ITuple } from '@polkadot/types-codec/types';11import type { AccountId32, Call, H160, H256, MultiAddress, Perbill, Permill } from '@polkadot/types/interfaces/runtime';12import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumLog, EthereumTransactionTransactionV2, OrmlVestingVestingSchedule, 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';1314export type __AugmentedSubmittable = AugmentedSubmittable<() => unknown>;15export type __SubmittableExtrinsic<ApiType extends ApiTypes> = SubmittableExtrinsic<ApiType>;16export type __SubmittableExtrinsicFunction<ApiType extends ApiTypes> = SubmittableExtrinsicFunction<ApiType>;1718declare module '@polkadot/api-base/types/submittable' {19  interface AugmentedSubmittables<ApiType extends ApiTypes> {20    appPromotion: {21      /**22       * Recalculates interest for the specified number of stakers.23       * If all stakers are not recalculated, the next call of the extrinsic24       * will continue the recalculation, from those stakers for whom this25       * was not perform in last call.26       * 27       * # Permissions28       * 29       * * Pallet admin30       * 31       * # Arguments32       * 33       * * `stakers_number`: the number of stakers for which recalculation will be performed34       **/35      payoutStakers: AugmentedSubmittable<(stakersNumber: Option<u8> | null | Uint8Array | u8 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u8>]>;36      /**37       * Sets an address as the the admin.38       * 39       * # Permissions40       * 41       * * Sudo42       * 43       * # Arguments44       * 45       * * `admin`: account of the new admin.46       **/47      setAdminAddress: AugmentedSubmittable<(admin: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr]>;48      /**49       * Sets the pallet to be the sponsor for the collection.50       * 51       * # Permissions52       * 53       * * Pallet admin54       * 55       * # Arguments56       * 57       * * `collection_id`: ID of the collection that will be sponsored by `pallet_id`58       **/59      sponsorCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;60      /**61       * Sets the pallet to be the sponsor for the contract.62       * 63       * # Permissions64       * 65       * * Pallet admin66       * 67       * # Arguments68       * 69       * * `contract_id`: the contract address that will be sponsored by `pallet_id`70       **/71      sponsorContract: AugmentedSubmittable<(contractId: H160 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H160]>;72      /**73       * Stakes the amount of native tokens.74       * Sets `amount` to the locked state.75       * The maximum number of stakes for a staker is 10.76       * 77       * # Arguments78       * 79       * * `amount`: in native tokens.80       **/81      stake: AugmentedSubmittable<(amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u128]>;82      /**83       * Removes the pallet as the sponsor for the collection.84       * Returns [`NoPermission`][`Error::NoPermission`]85       * if the pallet wasn't the sponsor.86       * 87       * # Permissions88       * 89       * * Pallet admin90       * 91       * # Arguments92       * 93       * * `collection_id`: ID of the collection that is sponsored by `pallet_id`94       **/95      stopSponsoringCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;96      /**97       * Removes the pallet as the sponsor for the contract.98       * Returns [`NoPermission`][`Error::NoPermission`]99       * if the pallet wasn't the sponsor.100       * 101       * # Permissions102       * 103       * * Pallet admin104       * 105       * # Arguments106       * 107       * * `contract_id`: the contract address that is sponsored by `pallet_id`108       **/109      stopSponsoringContract: AugmentedSubmittable<(contractId: H160 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H160]>;110      /**111       * Unstakes all stakes.112       * Moves the sum of all stakes to the `reserved` state.113       * After the end of `PendingInterval` this sum becomes completely114       * free for further use.115       **/116      unstake: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;117      /**118       * Generic tx119       **/120      [key: string]: SubmittableExtrinsicFunction<ApiType>;121    };122    balances: {123      /**124       * Exactly as `transfer`, except the origin must be root and the source account may be125       * specified.126       * # <weight>127       * - Same as transfer, but additional read and write because the source account is not128       * assumed to be in the overlay.129       * # </weight>130       **/131      forceTransfer: AugmentedSubmittable<(source: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, MultiAddress, Compact<u128>]>;132      /**133       * Unreserve some balance from a user by force.134       * 135       * Can only be called by ROOT.136       **/137      forceUnreserve: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, u128]>;138      /**139       * Set the balances of a given account.140       * 141       * This will alter `FreeBalance` and `ReservedBalance` in storage. it will142       * also alter the total issuance of the system (`TotalIssuance`) appropriately.143       * If the new free or reserved balance is below the existential deposit,144       * it will reset the account nonce (`frame_system::AccountNonce`).145       * 146       * The dispatch origin for this call is `root`.147       **/148      setBalance: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, newFree: Compact<u128> | AnyNumber | Uint8Array, newReserved: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>, Compact<u128>]>;149      /**150       * Transfer some liquid free balance to another account.151       * 152       * `transfer` will set the `FreeBalance` of the sender and receiver.153       * If the sender's account is below the existential deposit as a result154       * of the transfer, the account will be reaped.155       * 156       * The dispatch origin for this call must be `Signed` by the transactor.157       * 158       * # <weight>159       * - Dependent on arguments but not critical, given proper implementations for input config160       * types. See related functions below.161       * - It contains a limited number of reads and writes internally and no complex162       * computation.163       * 164       * Related functions:165       * 166       * - `ensure_can_withdraw` is always called internally but has a bounded complexity.167       * - Transferring balances to accounts that did not exist before will cause168       * `T::OnNewAccount::on_new_account` to be called.169       * - Removing enough funds from an account will trigger `T::DustRemoval::on_unbalanced`.170       * - `transfer_keep_alive` works the same way as `transfer`, but has an additional check171       * that the transfer will not kill the origin account.172       * ---------------------------------173       * - Origin account is already in memory, so no DB operations for them.174       * # </weight>175       **/176      transfer: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>]>;177      /**178       * Transfer the entire transferable balance from the caller account.179       * 180       * NOTE: This function only attempts to transfer _transferable_ balances. This means that181       * any locked, reserved, or existential deposits (when `keep_alive` is `true`), will not be182       * transferred by this function. To ensure that this function results in a killed account,183       * you might need to prepare the account by removing any reference counters, storage184       * deposits, etc...185       * 186       * The dispatch origin of this call must be Signed.187       * 188       * - `dest`: The recipient of the transfer.189       * - `keep_alive`: A boolean to determine if the `transfer_all` operation should send all190       * of the funds the account has, causing the sender account to be killed (false), or191       * transfer everything except at least the existential deposit, which will guarantee to192       * keep the sender account alive (true). # <weight>193       * - O(1). Just like transfer, but reading the user's transferable balance first.194       * #</weight>195       **/196      transferAll: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, keepAlive: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, bool]>;197      /**198       * Same as the [`transfer`] call, but with a check that the transfer will not kill the199       * origin account.200       * 201       * 99% of the time you want [`transfer`] instead.202       * 203       * [`transfer`]: struct.Pallet.html#method.transfer204       **/205      transferKeepAlive: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>]>;206      /**207       * Generic tx208       **/209      [key: string]: SubmittableExtrinsicFunction<ApiType>;210    };211    charging: {212      /**213       * Generic tx214       **/215      [key: string]: SubmittableExtrinsicFunction<ApiType>;216    };217    configuration: {218      setMinGasPriceOverride: AugmentedSubmittable<(coeff: Option<u64> | null | Uint8Array | u64 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u64>]>;219      setWeightToFeeCoefficientOverride: AugmentedSubmittable<(coeff: Option<u32> | null | Uint8Array | u32 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u32>]>;220      /**221       * Generic tx222       **/223      [key: string]: SubmittableExtrinsicFunction<ApiType>;224    };225    cumulusXcm: {226      /**227       * Generic tx228       **/229      [key: string]: SubmittableExtrinsicFunction<ApiType>;230    };231    dmpQueue: {232      /**233       * Service a single overweight message.234       * 235       * - `origin`: Must pass `ExecuteOverweightOrigin`.236       * - `index`: The index of the overweight message to service.237       * - `weight_limit`: The amount of weight that message execution may take.238       * 239       * Errors:240       * - `Unknown`: Message of `index` is unknown.241       * - `OverLimit`: Message execution may use greater than `weight_limit`.242       * 243       * Events:244       * - `OverweightServiced`: On success.245       **/246      serviceOverweight: AugmentedSubmittable<(index: u64 | AnyNumber | Uint8Array, weightLimit: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64, u64]>;247      /**248       * Generic tx249       **/250      [key: string]: SubmittableExtrinsicFunction<ApiType>;251    };252    ethereum: {253      /**254       * Transact an Ethereum transaction.255       **/256      transact: AugmentedSubmittable<(transaction: EthereumTransactionTransactionV2 | { Legacy: any } | { EIP2930: any } | { EIP1559: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [EthereumTransactionTransactionV2]>;257      /**258       * Generic tx259       **/260      [key: string]: SubmittableExtrinsicFunction<ApiType>;261    };262    evm: {263      /**264       * Issue an EVM call operation. This is similar to a message call transaction in Ethereum.265       **/266      call: AugmentedSubmittable<(source: H160 | string | Uint8Array, target: H160 | string | Uint8Array, input: Bytes | string | Uint8Array, value: U256 | AnyNumber | Uint8Array, gasLimit: u64 | AnyNumber | Uint8Array, maxFeePerGas: U256 | AnyNumber | Uint8Array, maxPriorityFeePerGas: Option<U256> | null | Uint8Array | U256 | AnyNumber, nonce: Option<U256> | null | Uint8Array | U256 | AnyNumber, accessList: Vec<ITuple<[H160, Vec<H256>]>> | ([H160 | string | Uint8Array, Vec<H256> | (H256 | string | Uint8Array)[]])[]) => SubmittableExtrinsic<ApiType>, [H160, H160, Bytes, U256, u64, U256, Option<U256>, Option<U256>, Vec<ITuple<[H160, Vec<H256>]>>]>;267      /**268       * Issue an EVM create operation. This is similar to a contract creation transaction in269       * Ethereum.270       **/271      create: AugmentedSubmittable<(source: H160 | string | Uint8Array, init: Bytes | string | Uint8Array, value: U256 | AnyNumber | Uint8Array, gasLimit: u64 | AnyNumber | Uint8Array, maxFeePerGas: U256 | AnyNumber | Uint8Array, maxPriorityFeePerGas: Option<U256> | null | Uint8Array | U256 | AnyNumber, nonce: Option<U256> | null | Uint8Array | U256 | AnyNumber, accessList: Vec<ITuple<[H160, Vec<H256>]>> | ([H160 | string | Uint8Array, Vec<H256> | (H256 | string | Uint8Array)[]])[]) => SubmittableExtrinsic<ApiType>, [H160, Bytes, U256, u64, U256, Option<U256>, Option<U256>, Vec<ITuple<[H160, Vec<H256>]>>]>;272      /**273       * Issue an EVM create2 operation.274       **/275      create2: AugmentedSubmittable<(source: H160 | string | Uint8Array, init: Bytes | string | Uint8Array, salt: H256 | string | Uint8Array, value: U256 | AnyNumber | Uint8Array, gasLimit: u64 | AnyNumber | Uint8Array, maxFeePerGas: U256 | AnyNumber | Uint8Array, maxPriorityFeePerGas: Option<U256> | null | Uint8Array | U256 | AnyNumber, nonce: Option<U256> | null | Uint8Array | U256 | AnyNumber, accessList: Vec<ITuple<[H160, Vec<H256>]>> | ([H160 | string | Uint8Array, Vec<H256> | (H256 | string | Uint8Array)[]])[]) => SubmittableExtrinsic<ApiType>, [H160, Bytes, H256, U256, u64, U256, Option<U256>, Option<U256>, Vec<ITuple<[H160, Vec<H256>]>>]>;276      /**277       * Withdraw balance from EVM into currency/balances pallet.278       **/279      withdraw: AugmentedSubmittable<(address: H160 | string | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H160, u128]>;280      /**281       * Generic tx282       **/283      [key: string]: SubmittableExtrinsicFunction<ApiType>;284    };285    evmMigration: {286      /**287       * Start contract migration, inserts contract stub at target address,288       * and marks account as pending, allowing to insert storage289       **/290      begin: AugmentedSubmittable<(address: H160 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H160]>;291      /**292       * Finish contract migration, allows it to be called.293       * It is not possible to alter contract storage via [`Self::set_data`]294       * after this call.295       **/296      finish: AugmentedSubmittable<(address: H160 | string | Uint8Array, code: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H160, Bytes]>;297      /**298       * Create ethereum events attached to the fake transaction299       **/300      insertEthLogs: AugmentedSubmittable<(logs: Vec<EthereumLog> | (EthereumLog | { address?: any; topics?: any; data?: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<EthereumLog>]>;301      /**302       * Create substrate events303       **/304      insertEvents: AugmentedSubmittable<(events: Vec<Bytes> | (Bytes | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<Bytes>]>;305      /**306       * Insert items into contract storage, this method can be called307       * multiple times308       **/309      setData: AugmentedSubmittable<(address: H160 | string | Uint8Array, data: Vec<ITuple<[H256, H256]>> | ([H256 | string | Uint8Array, H256 | string | Uint8Array])[]) => SubmittableExtrinsic<ApiType>, [H160, Vec<ITuple<[H256, H256]>>]>;310      /**311       * Generic tx312       **/313      [key: string]: SubmittableExtrinsicFunction<ApiType>;314    };315    foreignAssets: {316      registerForeignAsset: AugmentedSubmittable<(owner: AccountId32 | string | Uint8Array, location: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, metadata: PalletForeignAssetsModuleAssetMetadata | { name?: any; symbol?: any; decimals?: any; minimalBalance?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32, XcmVersionedMultiLocation, PalletForeignAssetsModuleAssetMetadata]>;317      updateForeignAsset: AugmentedSubmittable<(foreignAssetId: u32 | AnyNumber | Uint8Array, location: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, metadata: PalletForeignAssetsModuleAssetMetadata | { name?: any; symbol?: any; decimals?: any; minimalBalance?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, XcmVersionedMultiLocation, PalletForeignAssetsModuleAssetMetadata]>;318      /**319       * Generic tx320       **/321      [key: string]: SubmittableExtrinsicFunction<ApiType>;322    };323    inflation: {324      /**325       * This method sets the inflation start date. Can be only called once.326       * Inflation start block can be backdated and will catch up. The method will create Treasury327       * account if it does not exist and perform the first inflation deposit.328       * 329       * # Permissions330       * 331       * * Root332       * 333       * # Arguments334       * 335       * * inflation_start_relay_block: The relay chain block at which inflation should start336       **/337      startInflation: AugmentedSubmittable<(inflationStartRelayBlock: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;338      /**339       * Generic tx340       **/341      [key: string]: SubmittableExtrinsicFunction<ApiType>;342    };343    maintenance: {344      disable: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;345      enable: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;346      /**347       * Generic tx348       **/349      [key: string]: SubmittableExtrinsicFunction<ApiType>;350    };351    parachainSystem: {352      authorizeUpgrade: AugmentedSubmittable<(codeHash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;353      enactAuthorizedUpgrade: AugmentedSubmittable<(code: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;354      /**355       * Set the current validation data.356       * 357       * This should be invoked exactly once per block. It will panic at the finalization358       * phase if the call was not invoked.359       * 360       * The dispatch origin for this call must be `Inherent`361       * 362       * As a side effect, this function upgrades the current validation function363       * if the appropriate time has come.364       **/365      setValidationData: AugmentedSubmittable<(data: CumulusPrimitivesParachainInherentParachainInherentData | { validationData?: any; relayChainState?: any; downwardMessages?: any; horizontalMessages?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [CumulusPrimitivesParachainInherentParachainInherentData]>;366      sudoSendUpwardMessage: AugmentedSubmittable<(message: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;367      /**368       * Generic tx369       **/370      [key: string]: SubmittableExtrinsicFunction<ApiType>;371    };372    polkadotXcm: {373      /**374       * Execute an XCM message from a local, signed, origin.375       * 376       * An event is deposited indicating whether `msg` could be executed completely or only377       * partially.378       * 379       * No more than `max_weight` will be used in its attempted execution. If this is less than the380       * maximum amount of weight that the message could take to be executed, then no execution381       * attempt will be made.382       * 383       * NOTE: A successful return to this does *not* imply that the `msg` was executed successfully384       * to completion; only that *some* of it was executed.385       **/386      execute: AugmentedSubmittable<(message: XcmVersionedXcm | { V0: any } | { V1: any } | { V2: any } | string | Uint8Array, maxWeight: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedXcm, u64]>;387      /**388       * Set a safe XCM version (the version that XCM should be encoded with if the most recent389       * version a destination can accept is unknown).390       * 391       * - `origin`: Must be Root.392       * - `maybe_xcm_version`: The default XCM encoding version, or `None` to disable.393       **/394      forceDefaultXcmVersion: AugmentedSubmittable<(maybeXcmVersion: Option<u32> | null | Uint8Array | u32 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u32>]>;395      /**396       * Ask a location to notify us regarding their XCM version and any changes to it.397       * 398       * - `origin`: Must be Root.399       * - `location`: The location to which we should subscribe for XCM version notifications.400       **/401      forceSubscribeVersionNotify: AugmentedSubmittable<(location: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation]>;402      /**403       * Require that a particular destination should no longer notify us regarding any XCM404       * version changes.405       * 406       * - `origin`: Must be Root.407       * - `location`: The location to which we are currently subscribed for XCM version408       * notifications which we no longer desire.409       **/410      forceUnsubscribeVersionNotify: AugmentedSubmittable<(location: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation]>;411      /**412       * Extoll that a particular destination can be communicated with through a particular413       * version of XCM.414       * 415       * - `origin`: Must be Root.416       * - `location`: The destination that is being described.417       * - `xcm_version`: The latest version of XCM that `location` supports.418       **/419      forceXcmVersion: AugmentedSubmittable<(location: XcmV1MultiLocation | { parents?: any; interior?: any } | string | Uint8Array, xcmVersion: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmV1MultiLocation, u32]>;420      /**421       * Transfer some assets from the local chain to the sovereign account of a destination422       * chain and forward a notification XCM.423       * 424       * Fee payment on the destination side is made from the asset in the `assets` vector of425       * index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight426       * is needed than `weight_limit`, then the operation will fail and the assets send may be427       * at risk.428       * 429       * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.430       * - `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send431       * from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.432       * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be433       * an `AccountId32` value.434       * - `assets`: The assets to be withdrawn. This should include the assets used to pay the fee on the435       * `dest` side.436       * - `fee_asset_item`: The index into `assets` of the item which should be used to pay437       * fees.438       * - `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.439       **/440      limitedReserveTransferAssets: AugmentedSubmittable<(dest: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, beneficiary: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, assets: XcmVersionedMultiAssets | { V0: any } | { V1: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array, weightLimit: XcmV2WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation, XcmVersionedMultiLocation, XcmVersionedMultiAssets, u32, XcmV2WeightLimit]>;441      /**442       * Teleport some assets from the local chain to some destination chain.443       * 444       * Fee payment on the destination side is made from the asset in the `assets` vector of445       * index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight446       * is needed than `weight_limit`, then the operation will fail and the assets send may be447       * at risk.448       * 449       * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.450       * - `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send451       * from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.452       * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be453       * an `AccountId32` value.454       * - `assets`: The assets to be withdrawn. The first item should be the currency used to to pay the fee on the455       * `dest` side. May not be empty.456       * - `fee_asset_item`: The index into `assets` of the item which should be used to pay457       * fees.458       * - `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.459       **/460      limitedTeleportAssets: AugmentedSubmittable<(dest: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, beneficiary: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, assets: XcmVersionedMultiAssets | { V0: any } | { V1: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array, weightLimit: XcmV2WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation, XcmVersionedMultiLocation, XcmVersionedMultiAssets, u32, XcmV2WeightLimit]>;461      /**462       * Transfer some assets from the local chain to the sovereign account of a destination463       * chain and forward a notification XCM.464       * 465       * Fee payment on the destination side is made from the asset in the `assets` vector of466       * index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,467       * with all fees taken as needed from the asset.468       * 469       * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.470       * - `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send471       * from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.472       * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be473       * an `AccountId32` value.474       * - `assets`: The assets to be withdrawn. This should include the assets used to pay the fee on the475       * `dest` side.476       * - `fee_asset_item`: The index into `assets` of the item which should be used to pay477       * fees.478       **/479      reserveTransferAssets: AugmentedSubmittable<(dest: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, beneficiary: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, assets: XcmVersionedMultiAssets | { V0: any } | { V1: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation, XcmVersionedMultiLocation, XcmVersionedMultiAssets, u32]>;480      send: AugmentedSubmittable<(dest: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, message: XcmVersionedXcm | { V0: any } | { V1: any } | { V2: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation, XcmVersionedXcm]>;481      /**482       * Teleport some assets from the local chain to some destination chain.483       * 484       * Fee payment on the destination side is made from the asset in the `assets` vector of485       * index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,486       * with all fees taken as needed from the asset.487       * 488       * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.489       * - `dest`: Destination context for the assets. Will typically be `X2(Parent, Parachain(..))` to send490       * from parachain to parachain, or `X1(Parachain(..))` to send from relay to parachain.491       * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will generally be492       * an `AccountId32` value.493       * - `assets`: The assets to be withdrawn. The first item should be the currency used to to pay the fee on the494       * `dest` side. May not be empty.495       * - `fee_asset_item`: The index into `assets` of the item which should be used to pay496       * fees.497       **/498      teleportAssets: AugmentedSubmittable<(dest: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, beneficiary: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, assets: XcmVersionedMultiAssets | { V0: any } | { V1: any } | string | Uint8Array, feeAssetItem: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiLocation, XcmVersionedMultiLocation, XcmVersionedMultiAssets, u32]>;499      /**500       * Generic tx501       **/502      [key: string]: SubmittableExtrinsicFunction<ApiType>;503    };504    rmrkCore: {505      /**506       * Accept an NFT sent from another account to self or an owned NFT.507       * 508       * The NFT in question must be pending, and, thus, be [sent](`Pallet::send`) first.509       * 510       * # Permissions:511       * - Token-owner-to-be512       * 513       * # Arguments:514       * - `origin`: sender of the transaction515       * - `rmrk_collection_id`: RMRK collection ID of the NFT to be accepted.516       * - `rmrk_nft_id`: ID of the NFT to be accepted.517       * - `new_owner`: Either the sender's account ID or a sender-owned NFT,518       * whichever the accepted NFT was sent to.519       **/520      acceptNft: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple | { AccountId: any } | { CollectionAndNftTuple: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsNftAccountIdOrCollectionNftTuple]>;521      /**522       * Accept the addition of a newly created pending resource to an existing NFT.523       * 524       * This transaction is needed when a resource is created and assigned to an NFT525       * by a non-owner, i.e. the collection issuer, with one of the526       * [`add_...` transactions](Pallet::add_basic_resource).527       * 528       * # Permissions:529       * - Token owner530       * 531       * # Arguments:532       * - `origin`: sender of the transaction533       * - `rmrk_collection_id`: RMRK collection ID of the NFT.534       * - `rmrk_nft_id`: ID of the NFT with a pending resource to be accepted.535       * - `resource_id`: ID of the newly created pending resource.536       * accept the addition of a new resource to an existing NFT537       **/538      acceptResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;539      /**540       * Accept the removal of a removal-pending resource from an NFT.541       * 542       * This transaction is needed when a non-owner, i.e. the collection issuer,543       * requests a [removal](`Pallet::remove_resource`) of a resource from an NFT.544       * 545       * # Permissions:546       * - Token owner547       * 548       * # Arguments:549       * - `origin`: sender of the transaction550       * - `rmrk_collection_id`: RMRK collection ID of the NFT.551       * - `rmrk_nft_id`: ID of the NFT with a resource to be removed.552       * - `resource_id`: ID of the removal-pending resource.553       **/554      acceptResourceRemoval: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;555      /**556       * Create and set/propose a basic resource for an NFT.557       * 558       * A basic resource is the simplest, lacking a Base and anything that comes with it.559       * See RMRK docs for more information and examples.560       * 561       * # Permissions:562       * - Collection issuer - if not the token owner, adding the resource will warrant563       * the owner's [acceptance](Pallet::accept_resource).564       * 565       * # Arguments:566       * - `origin`: sender of the transaction567       * - `rmrk_collection_id`: RMRK collection ID of the NFT.568       * - `nft_id`: ID of the NFT to assign a resource to.569       * - `resource`: Data of the resource to be created.570       **/571      addBasicResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceBasicResource | { src?: any; metadata?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsResourceBasicResource]>;572      /**573       * Create and set/propose a composable resource for an NFT.574       * 575       * A composable resource links to a Base and has a subset of its Parts it is composed of.576       * See RMRK docs for more information and examples.577       * 578       * # Permissions:579       * - Collection issuer - if not the token owner, adding the resource will warrant580       * the owner's [acceptance](Pallet::accept_resource).581       * 582       * # Arguments:583       * - `origin`: sender of the transaction584       * - `rmrk_collection_id`: RMRK collection ID of the NFT.585       * - `nft_id`: ID of the NFT to assign a resource to.586       * - `resource`: Data of the resource to be created.587       **/588      addComposableResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceComposableResource | { parts?: any; base?: any; src?: any; metadata?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsResourceComposableResource]>;589      /**590       * Create and set/propose a slot resource for an NFT.591       * 592       * A slot resource links to a Base and a slot ID in it which it can fit into.593       * See RMRK docs for more information and examples.594       * 595       * # Permissions:596       * - Collection issuer - if not the token owner, adding the resource will warrant597       * the owner's [acceptance](Pallet::accept_resource).598       * 599       * # Arguments:600       * - `origin`: sender of the transaction601       * - `rmrk_collection_id`: RMRK collection ID of the NFT.602       * - `nft_id`: ID of the NFT to assign a resource to.603       * - `resource`: Data of the resource to be created.604       **/605      addSlotResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceSlotResource | { base?: any; src?: any; metadata?: any; slot?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsResourceSlotResource]>;606      /**607       * Burn an NFT, destroying it and its nested tokens up to the specified limit.608       * If the burning budget is exceeded, the transaction is reverted.609       * 610       * This is the way to burn a nested token as well.611       * 612       * For more information, see [`burn_recursively`](pallet_nonfungible::pallet::Pallet::burn_recursively).613       * 614       * # Permissions:615       * * Token owner616       * 617       * # Arguments:618       * - `origin`: sender of the transaction619       * - `collection_id`: RMRK ID of the collection in which the NFT to burn belongs to.620       * - `nft_id`: ID of the NFT to be destroyed.621       * - `max_burns`: Maximum number of tokens to burn, assuming nesting. The transaction622       * is reverted if there are more tokens to burn in the nesting tree than this number.623       * This is primarily a mechanism of transaction weight control.624       **/625      burnNft: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, maxBurns: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;626      /**627       * Change the issuer of a collection. Analogous to Unique's collection's [`owner`](up_data_structs::Collection).628       * 629       * # Permissions:630       * * Collection issuer631       * 632       * # Arguments:633       * - `origin`: sender of the transaction634       * - `collection_id`: RMRK collection ID to change the issuer of.635       * - `new_issuer`: Collection's new issuer.636       **/637      changeCollectionIssuer: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newIssuer: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, MultiAddress]>;638      /**639       * Create a new collection of NFTs.640       * 641       * # Permissions:642       * * Anyone - will be assigned as the issuer of the collection.643       * 644       * # Arguments:645       * - `origin`: sender of the transaction646       * - `metadata`: Metadata describing the collection, e.g. IPFS hash. Cannot be changed.647       * - `max`: Optional maximum number of tokens.648       * - `symbol`: UTF-8 string with token prefix, by which to represent the token in wallets and UIs.649       * Analogous to Unique's [`token_prefix`](up_data_structs::Collection). Cannot be changed.650       **/651      createCollection: AugmentedSubmittable<(metadata: Bytes | string | Uint8Array, max: Option<u32> | null | Uint8Array | u32 | AnyNumber, symbol: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes, Option<u32>, Bytes]>;652      /**653       * Destroy a collection.654       * 655       * Only empty collections can be destroyed. If it has any tokens, they must be burned first.656       * 657       * # Permissions:658       * * Collection issuer659       * 660       * # Arguments:661       * - `origin`: sender of the transaction662       * - `collection_id`: RMRK ID of the collection to destroy.663       **/664      destroyCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;665      /**666       * "Lock" the collection and prevent new token creation. Cannot be undone.667       * 668       * # Permissions:669       * * Collection issuer670       * 671       * # Arguments:672       * - `origin`: sender of the transaction673       * - `collection_id`: RMRK ID of the collection to lock.674       **/675      lockCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;676      /**677       * Mint an NFT in a specified collection.678       * 679       * # Permissions:680       * * Collection issuer681       * 682       * # Arguments:683       * - `origin`: sender of the transaction684       * - `owner`: Owner account of the NFT. If set to None, defaults to the sender (collection issuer).685       * - `collection_id`: RMRK collection ID for the NFT to be minted within. Cannot be changed.686       * - `recipient`: Receiver account of the royalty. Has no effect if the `royalty_amount` is not set. Cannot be changed.687       * - `royalty_amount`: Optional permillage reward from each trade for the `recipient`. Cannot be changed.688       * - `metadata`: Arbitrary data about an NFT, e.g. IPFS hash. Cannot be changed.689       * - `transferable`: Can this NFT be transferred? Cannot be changed.690       * - `resources`: Resource data to be added to the NFT immediately after minting.691       **/692      mintNft: AugmentedSubmittable<(owner: Option<AccountId32> | null | Uint8Array | AccountId32 | string, collectionId: u32 | AnyNumber | Uint8Array, recipient: Option<AccountId32> | null | Uint8Array | AccountId32 | string, royaltyAmount: Option<Permill> | null | Uint8Array | Permill | AnyNumber, metadata: Bytes | string | Uint8Array, transferable: bool | boolean | Uint8Array, resources: Option<Vec<RmrkTraitsResourceResourceTypes>> | null | Uint8Array | Vec<RmrkTraitsResourceResourceTypes> | (RmrkTraitsResourceResourceTypes | { Basic: any } | { Composable: any } | { Slot: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Option<AccountId32>, u32, Option<AccountId32>, Option<Permill>, Bytes, bool, Option<Vec<RmrkTraitsResourceResourceTypes>>]>;693      /**694       * Reject an NFT sent from another account to self or owned NFT.695       * The NFT in question will not be sent back and burnt instead.696       * 697       * The NFT in question must be pending, and, thus, be [sent](`Pallet::send`) first.698       * 699       * # Permissions:700       * - Token-owner-to-be-not701       * 702       * # Arguments:703       * - `origin`: sender of the transaction704       * - `rmrk_collection_id`: RMRK ID of the NFT to be rejected.705       * - `rmrk_nft_id`: ID of the NFT to be rejected.706       **/707      rejectNft: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32]>;708      /**709       * Remove and erase a resource from an NFT.710       * 711       * If the sender does not own the NFT, then it will be pending confirmation,712       * and will have to be [accepted](Pallet::accept_resource_removal) by the token owner.713       * 714       * # Permissions715       * - Collection issuer716       * 717       * # Arguments718       * - `origin`: sender of the transaction719       * - `rmrk_collection_id`: RMRK ID of a collection to which the NFT making use of the resource belongs to.720       * - `nft_id`: ID of the NFT with a resource to be removed.721       * - `resource_id`: ID of the resource to be removed.722       **/723      removeResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resourceId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;724      /**725       * Transfer an NFT from an account/NFT A to another account/NFT B.726       * The token must be transferable. Nesting cannot occur deeper than the [`NESTING_BUDGET`].727       * 728       * If the target owner is an NFT owned by another account, then the NFT will enter729       * the pending state and will have to be accepted by the other account.730       * 731       * # Permissions:732       * - Token owner733       * 734       * # Arguments:735       * - `origin`: sender of the transaction736       * - `rmrk_collection_id`: RMRK ID of the collection of the NFT to be transferred.737       * - `rmrk_nft_id`: ID of the NFT to be transferred.738       * - `new_owner`: New owner of the nft which can be either an account or a NFT.739       **/740      send: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, newOwner: RmrkTraitsNftAccountIdOrCollectionNftTuple | { AccountId: any } | { CollectionAndNftTuple: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsNftAccountIdOrCollectionNftTuple]>;741      /**742       * Set a different order of resource priorities for an NFT. Priorities can be used,743       * for example, for order of rendering.744       * 745       * Note that the priorities are not updated automatically, and are an empty vector746       * by default. There is no pre-set definition for the order to be particular,747       * it can be interpreted arbitrarily use-case by use-case.748       * 749       * # Permissions:750       * - Token owner751       * 752       * # Arguments:753       * - `origin`: sender of the transaction754       * - `rmrk_collection_id`: RMRK collection ID of the NFT.755       * - `rmrk_nft_id`: ID of the NFT to rearrange resource priorities for.756       * - `priorities`: Ordered vector of resource IDs.757       **/758      setPriority: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, rmrkNftId: u32 | AnyNumber | Uint8Array, priorities: Vec<u32> | (u32 | AnyNumber | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, u32, Vec<u32>]>;759      /**760       * Add or edit a custom user property, a key-value pair, describing the metadata761       * of a token or a collection, on either one of these.762       * 763       * Note that in this proxy implementation many details regarding RMRK are stored764       * as scoped properties prefixed with "rmrk:", normally inaccessible765       * to external transactions and RPCs.766       * 767       * # Permissions:768       * - Collection issuer - in case of collection property769       * - Token owner - in case of NFT property770       * 771       * # Arguments:772       * - `origin`: sender of the transaction773       * - `rmrk_collection_id`: RMRK collection ID.774       * - `maybe_nft_id`: Optional ID of the NFT. If left empty, then the property is set for the collection.775       * - `key`: Key of the custom property to be referenced by.776       * - `value`: Value of the custom property to be stored.777       **/778      setProperty: AugmentedSubmittable<(rmrkCollectionId: Compact<u32> | AnyNumber | Uint8Array, maybeNftId: Option<u32> | null | Uint8Array | u32 | AnyNumber, key: Bytes | string | Uint8Array, value: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, Option<u32>, Bytes, Bytes]>;779      /**780       * Generic tx781       **/782      [key: string]: SubmittableExtrinsicFunction<ApiType>;783    };784    rmrkEquip: {785      /**786       * Create a new Base.787       * 788       * Modeled after the [Base interaction](https://github.com/rmrk-team/rmrk-spec/blob/master/standards/rmrk2.0.0/interactions/base.md)789       * 790       * # Permissions791       * - Anyone - will be assigned as the issuer of the Base.792       * 793       * # Arguments:794       * - `origin`: Caller, will be assigned as the issuer of the Base795       * - `base_type`: Arbitrary media type, e.g. "svg".796       * - `symbol`: Arbitrary client-chosen symbol.797       * - `parts`: Array of Fixed and Slot Parts composing the Base,798       * confined in length by [`RmrkPartsLimit`](up_data_structs::RmrkPartsLimit).799       **/800      createBase: AugmentedSubmittable<(baseType: Bytes | string | Uint8Array, symbol: Bytes | string | Uint8Array, parts: Vec<RmrkTraitsPartPartType> | (RmrkTraitsPartPartType | { FixedPart: any } | { SlotPart: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Bytes, Bytes, Vec<RmrkTraitsPartPartType>]>;801      /**802       * Update the array of Collections allowed to be equipped to a Base's specified Slot Part.803       * 804       * Modeled after [equippable interaction](https://github.com/rmrk-team/rmrk-spec/blob/master/standards/rmrk2.0.0/interactions/equippable.md).805       * 806       * # Permissions:807       * - Base issuer808       * 809       * # Arguments:810       * - `origin`: sender of the transaction811       * - `base_id`: Base containing the Slot Part to be updated.812       * - `slot_id`: Slot Part whose Equippable List is being updated .813       * - `equippables`: List of equippables that will override the current Equippables list.814       **/815      equippable: AugmentedSubmittable<(baseId: u32 | AnyNumber | Uint8Array, slotId: u32 | AnyNumber | Uint8Array, equippables: RmrkTraitsPartEquippableList | { All: any } | { Empty: any } | { Custom: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsPartEquippableList]>;816      /**817       * Add a Theme to a Base.818       * A Theme named "default" is required prior to adding other Themes.819       * 820       * Modeled after [Themeadd interaction](https://github.com/rmrk-team/rmrk-spec/blob/master/standards/rmrk2.0.0/interactions/themeadd.md).821       * 822       * # Permissions:823       * - Base issuer824       * 825       * # Arguments:826       * - `origin`: sender of the transaction827       * - `base_id`: Base ID containing the Theme to be updated.828       * - `theme`: Theme to add to the Base.  A Theme has a name and properties, which are an829       * array of [key, value, inherit].830       * - `key`: Arbitrary BoundedString, defined by client.831       * - `value`: Arbitrary BoundedString, defined by client.832       * - `inherit`: Optional bool.833       **/834      themeAdd: AugmentedSubmittable<(baseId: u32 | AnyNumber | Uint8Array, theme: RmrkTraitsTheme | { name?: any; properties?: any; inherit?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, RmrkTraitsTheme]>;835      /**836       * Generic tx837       **/838      [key: string]: SubmittableExtrinsicFunction<ApiType>;839    };840    scheduler: {841      /**842       * Cancel an anonymously scheduled task.843       * 844       * The `T::OriginPrivilegeCmp` decides whether the given origin is allowed to cancel the task or not.845       **/846      cancel: AugmentedSubmittable<(when: u32 | AnyNumber | Uint8Array, index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32]>;847      /**848       * Cancel a named scheduled task.849       * 850       * The `T::OriginPrivilegeCmp` decides whether the given origin is allowed to cancel the task or not.851       **/852      cancelNamed: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [U8aFixed]>;853      /**854       * Change a named task's priority.855       * 856       * Only the `T::PrioritySetOrigin` is allowed to change the task's priority.857       **/858      changeNamedPriority: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array, priority: u8 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [U8aFixed, u8]>;859      /**860       * Anonymously schedule a task.861       * 862       * Only `T::ScheduleOrigin` is allowed to schedule a task.863       * Only `T::PrioritySetOrigin` is allowed to set the task's priority.864       **/865      schedule: AugmentedSubmittable<(when: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: Option<u8> | null | Uint8Array | u8 | AnyNumber, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, Option<ITuple<[u32, u32]>>, Option<u8>, Call]>;866      /**867       * Anonymously schedule a task after a delay.868       * 869       * # <weight>870       * Same as [`schedule`].871       * # </weight>872       **/873      scheduleAfter: AugmentedSubmittable<(after: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: Option<u8> | null | Uint8Array | u8 | AnyNumber, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, Option<ITuple<[u32, u32]>>, Option<u8>, Call]>;874      /**875       * Schedule a named task.876       * 877       * Only `T::ScheduleOrigin` is allowed to schedule a task.878       * Only `T::PrioritySetOrigin` is allowed to set the task's priority.879       **/880      scheduleNamed: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array, when: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: Option<u8> | null | Uint8Array | u8 | AnyNumber, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [U8aFixed, u32, Option<ITuple<[u32, u32]>>, Option<u8>, Call]>;881      /**882       * Schedule a named task after a delay.883       * 884       * Only `T::ScheduleOrigin` is allowed to schedule a task.885       * Only `T::PrioritySetOrigin` is allowed to set the task's priority.886       * 887       * # <weight>888       * Same as [`schedule_named`](Self::schedule_named).889       * # </weight>890       **/891      scheduleNamedAfter: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array, after: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: Option<u8> | null | Uint8Array | u8 | AnyNumber, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [U8aFixed, u32, Option<ITuple<[u32, u32]>>, Option<u8>, Call]>;892      /**893       * Generic tx894       **/895      [key: string]: SubmittableExtrinsicFunction<ApiType>;896    };897    structure: {898      /**899       * Generic tx900       **/901      [key: string]: SubmittableExtrinsicFunction<ApiType>;902    };903    sudo: {904      /**905       * Authenticates the current sudo key and sets the given AccountId (`new`) as the new sudo906       * key.907       * 908       * The dispatch origin for this call must be _Signed_.909       * 910       * # <weight>911       * - O(1).912       * - Limited storage reads.913       * - One DB change.914       * # </weight>915       **/916      setKey: AugmentedSubmittable<(updated: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;917      /**918       * Authenticates the sudo key and dispatches a function call with `Root` origin.919       * 920       * The dispatch origin for this call must be _Signed_.921       * 922       * # <weight>923       * - O(1).924       * - Limited storage reads.925       * - One DB write (event).926       * - Weight of derivative `call` execution + 10,000.927       * # </weight>928       **/929      sudo: AugmentedSubmittable<(call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call]>;930      /**931       * Authenticates the sudo key and dispatches a function call with `Signed` origin from932       * a given account.933       * 934       * The dispatch origin for this call must be _Signed_.935       * 936       * # <weight>937       * - O(1).938       * - Limited storage reads.939       * - One DB write (event).940       * - Weight of derivative `call` execution + 10,000.941       * # </weight>942       **/943      sudoAs: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Call]>;944      /**945       * Authenticates the sudo key and dispatches a function call with `Root` origin.946       * This function does not check the weight of the call, and instead allows the947       * Sudo user to specify the weight of the call.948       * 949       * The dispatch origin for this call must be _Signed_.950       * 951       * # <weight>952       * - O(1).953       * - The weight of this call is defined by the caller.954       * # </weight>955       **/956      sudoUncheckedWeight: AugmentedSubmittable<(call: Call | IMethod | string | Uint8Array, weight: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call, SpWeightsWeightV2Weight]>;957      /**958       * Generic tx959       **/960      [key: string]: SubmittableExtrinsicFunction<ApiType>;961    };962    system: {963      /**964       * A dispatch that will fill the block weight up to the given ratio.965       **/966      fillBlock: AugmentedSubmittable<(ratio: Perbill | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Perbill]>;967      /**968       * Kill all storage items with a key that starts with the given prefix.969       * 970       * **NOTE:** We rely on the Root origin to provide us the number of subkeys under971       * the prefix we are removing to accurately calculate the weight of this function.972       **/973      killPrefix: AugmentedSubmittable<(prefix: Bytes | string | Uint8Array, subkeys: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes, u32]>;974      /**975       * Kill some items from storage.976       **/977      killStorage: AugmentedSubmittable<(keys: Vec<Bytes> | (Bytes | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<Bytes>]>;978      /**979       * Make some on-chain remark.980       * 981       * # <weight>982       * - `O(1)`983       * # </weight>984       **/985      remark: AugmentedSubmittable<(remark: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;986      /**987       * Make some on-chain remark and emit event.988       **/989      remarkWithEvent: AugmentedSubmittable<(remark: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;990      /**991       * Set the new runtime code.992       * 993       * # <weight>994       * - `O(C + S)` where `C` length of `code` and `S` complexity of `can_set_code`995       * - 1 call to `can_set_code`: `O(S)` (calls `sp_io::misc::runtime_version` which is996       * expensive).997       * - 1 storage write (codec `O(C)`).998       * - 1 digest item.999       * - 1 event.1000       * The weight of this function is dependent on the runtime, but generally this is very1001       * expensive. We will treat this as a full block.1002       * # </weight>1003       **/1004      setCode: AugmentedSubmittable<(code: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;1005      /**1006       * Set the new runtime code without doing any checks of the given `code`.1007       * 1008       * # <weight>1009       * - `O(C)` where `C` length of `code`1010       * - 1 storage write (codec `O(C)`).1011       * - 1 digest item.1012       * - 1 event.1013       * The weight of this function is dependent on the runtime. We will treat this as a full1014       * block. # </weight>1015       **/1016      setCodeWithoutChecks: AugmentedSubmittable<(code: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;1017      /**1018       * Set the number of pages in the WebAssembly environment's heap.1019       **/1020      setHeapPages: AugmentedSubmittable<(pages: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64]>;1021      /**1022       * Set some items of storage.1023       **/1024      setStorage: AugmentedSubmittable<(items: Vec<ITuple<[Bytes, Bytes]>> | ([Bytes | string | Uint8Array, Bytes | string | Uint8Array])[]) => SubmittableExtrinsic<ApiType>, [Vec<ITuple<[Bytes, Bytes]>>]>;1025      /**1026       * Generic tx1027       **/1028      [key: string]: SubmittableExtrinsicFunction<ApiType>;1029    };1030    testUtils: {1031      batchAll: AugmentedSubmittable<(calls: Vec<Call> | (Call | IMethod | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Vec<Call>]>;1032      enable: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;1033      incTestValue: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;1034      justTakeFee: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;1035      selfCancelingInc: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array, maxTestValue: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [U8aFixed, u32]>;1036      setTestValue: AugmentedSubmittable<(value: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;1037      setTestValueAndRollback: AugmentedSubmittable<(value: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;1038      /**1039       * Generic tx1040       **/1041      [key: string]: SubmittableExtrinsicFunction<ApiType>;1042    };1043    timestamp: {1044      /**1045       * Set the current time.1046       * 1047       * This call should be invoked exactly once per block. It will panic at the finalization1048       * phase, if this call hasn't been invoked by that time.1049       * 1050       * The timestamp should be greater than the previous one by the amount specified by1051       * `MinimumPeriod`.1052       * 1053       * The dispatch origin for this call must be `Inherent`.1054       * 1055       * # <weight>1056       * - `O(1)` (Note that implementations of `OnTimestampSet` must also be `O(1)`)1057       * - 1 storage read and 1 storage mutation (codec `O(1)`). (because of `DidUpdate::take` in1058       * `on_finalize`)1059       * - 1 event handler `on_timestamp_set`. Must be `O(1)`.1060       * # </weight>1061       **/1062      set: AugmentedSubmittable<(now: Compact<u64> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u64>]>;1063      /**1064       * Generic tx1065       **/1066      [key: string]: SubmittableExtrinsicFunction<ApiType>;1067    };1068    tokens: {1069      /**1070       * Exactly as `transfer`, except the origin must be root and the source1071       * account may be specified.1072       * 1073       * The dispatch origin for this call must be _Root_.1074       * 1075       * - `source`: The sender of the transfer.1076       * - `dest`: The recipient of the transfer.1077       * - `currency_id`: currency type.1078       * - `amount`: free balance amount to tranfer.1079       **/1080      forceTransfer: AugmentedSubmittable<(source: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, MultiAddress, PalletForeignAssetsAssetIds, Compact<u128>]>;1081      /**1082       * Set the balances of a given account.1083       * 1084       * This will alter `FreeBalance` and `ReservedBalance` in storage. it1085       * will also decrease the total issuance of the system1086       * (`TotalIssuance`). If the new free or reserved balance is below the1087       * existential deposit, it will reap the `AccountInfo`.1088       * 1089       * The dispatch origin for this call is `root`.1090       **/1091      setBalance: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, newFree: Compact<u128> | AnyNumber | Uint8Array, newReserved: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetIds, Compact<u128>, Compact<u128>]>;1092      /**1093       * Transfer some liquid free balance to another account.1094       * 1095       * `transfer` will set the `FreeBalance` of the sender and receiver.1096       * It will decrease the total issuance of the system by the1097       * `TransferFee`. If the sender's account is below the existential1098       * deposit as a result of the transfer, the account will be reaped.1099       * 1100       * The dispatch origin for this call must be `Signed` by the1101       * transactor.1102       * 1103       * - `dest`: The recipient of the transfer.1104       * - `currency_id`: currency type.1105       * - `amount`: free balance amount to tranfer.1106       **/1107      transfer: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetIds, Compact<u128>]>;1108      /**1109       * Transfer all remaining balance to the given account.1110       * 1111       * NOTE: This function only attempts to transfer _transferable_1112       * balances. This means that any locked, reserved, or existential1113       * deposits (when `keep_alive` is `true`), will not be transferred by1114       * this function. To ensure that this function results in a killed1115       * account, you might need to prepare the account by removing any1116       * reference counters, storage deposits, etc...1117       * 1118       * The dispatch origin for this call must be `Signed` by the1119       * transactor.1120       * 1121       * - `dest`: The recipient of the transfer.1122       * - `currency_id`: currency type.1123       * - `keep_alive`: A boolean to determine if the `transfer_all`1124       * operation should send all of the funds the account has, causing1125       * the sender account to be killed (false), or transfer everything1126       * except at least the existential deposit, which will guarantee to1127       * keep the sender account alive (true).1128       **/1129      transferAll: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, keepAlive: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetIds, bool]>;1130      /**1131       * Same as the [`transfer`] call, but with a check that the transfer1132       * will not kill the origin account.1133       * 1134       * 99% of the time you want [`transfer`] instead.1135       * 1136       * The dispatch origin for this call must be `Signed` by the1137       * transactor.1138       * 1139       * - `dest`: The recipient of the transfer.1140       * - `currency_id`: currency type.1141       * - `amount`: free balance amount to tranfer.1142       **/1143      transferKeepAlive: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, PalletForeignAssetsAssetIds, Compact<u128>]>;1144      /**1145       * Generic tx1146       **/1147      [key: string]: SubmittableExtrinsicFunction<ApiType>;1148    };1149    treasury: {1150      /**1151       * Approve a proposal. At a later time, the proposal will be allocated to the beneficiary1152       * and the original deposit will be returned.1153       * 1154       * May only be called from `T::ApproveOrigin`.1155       * 1156       * # <weight>1157       * - Complexity: O(1).1158       * - DbReads: `Proposals`, `Approvals`1159       * - DbWrite: `Approvals`1160       * # </weight>1161       **/1162      approveProposal: AugmentedSubmittable<(proposalId: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;1163      /**1164       * Put forward a suggestion for spending. A deposit proportional to the value1165       * is reserved and slashed if the proposal is rejected. It is returned once the1166       * proposal is awarded.1167       * 1168       * # <weight>1169       * - Complexity: O(1)1170       * - DbReads: `ProposalCount`, `origin account`1171       * - DbWrites: `ProposalCount`, `Proposals`, `origin account`1172       * # </weight>1173       **/1174      proposeSpend: AugmentedSubmittable<(value: Compact<u128> | AnyNumber | Uint8Array, beneficiary: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, MultiAddress]>;1175      /**1176       * Reject a proposed spend. The original deposit will be slashed.1177       * 1178       * May only be called from `T::RejectOrigin`.1179       * 1180       * # <weight>1181       * - Complexity: O(1)1182       * - DbReads: `Proposals`, `rejected proposer account`1183       * - DbWrites: `Proposals`, `rejected proposer account`1184       * # </weight>1185       **/1186      rejectProposal: AugmentedSubmittable<(proposalId: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;1187      /**1188       * Force a previously approved proposal to be removed from the approval queue.1189       * The original deposit will no longer be returned.1190       * 1191       * May only be called from `T::RejectOrigin`.1192       * - `proposal_id`: The index of a proposal1193       * 1194       * # <weight>1195       * - Complexity: O(A) where `A` is the number of approvals1196       * - Db reads and writes: `Approvals`1197       * # </weight>1198       * 1199       * Errors:1200       * - `ProposalNotApproved`: The `proposal_id` supplied was not found in the approval queue,1201       * i.e., the proposal has not been approved. This could also mean the proposal does not1202       * exist altogether, thus there is no way it would have been approved in the first place.1203       **/1204      removeApproval: AugmentedSubmittable<(proposalId: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;1205      /**1206       * Propose and approve a spend of treasury funds.1207       * 1208       * - `origin`: Must be `SpendOrigin` with the `Success` value being at least `amount`.1209       * - `amount`: The amount to be transferred from the treasury to the `beneficiary`.1210       * - `beneficiary`: The destination account for the transfer.1211       * 1212       * NOTE: For record-keeping purposes, the proposer is deemed to be equivalent to the1213       * beneficiary.1214       **/1215      spend: AugmentedSubmittable<(amount: Compact<u128> | AnyNumber | Uint8Array, beneficiary: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, MultiAddress]>;1216      /**1217       * Generic tx1218       **/1219      [key: string]: SubmittableExtrinsicFunction<ApiType>;1220    };1221    unique: {1222      /**1223       * Add an admin to a collection.1224       * 1225       * NFT Collection can be controlled by multiple admin addresses1226       * (some which can also be servers, for example). Admins can issue1227       * and burn NFTs, as well as add and remove other admins,1228       * but cannot change NFT or Collection ownership.1229       * 1230       * # Permissions1231       * 1232       * * Collection owner1233       * * Collection admin1234       * 1235       * # Arguments1236       * 1237       * * `collection_id`: ID of the Collection to add an admin for.1238       * * `new_admin`: Address of new admin to add.1239       **/1240      addCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newAdminId: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1241      /**1242       * Add an address to allow list.1243       * 1244       * # Permissions1245       * 1246       * * Collection owner1247       * * Collection admin1248       * 1249       * # Arguments1250       * 1251       * * `collection_id`: ID of the modified collection.1252       * * `address`: ID of the address to be added to the allowlist.1253       **/1254      addToAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1255      /**1256       * Allow a non-permissioned address to transfer or burn an item.1257       * 1258       * # Permissions1259       * 1260       * * Collection owner1261       * * Collection admin1262       * * Current item owner1263       * 1264       * # Arguments1265       * 1266       * * `spender`: Account to be approved to make specific transactions on non-owned tokens.1267       * * `collection_id`: ID of the collection the item belongs to.1268       * * `item_id`: ID of the item transactions on which are now approved.1269       * * `amount`: Number of pieces of the item approved for a transaction (maximum of 1 for NFTs).1270       * Set to 0 to revoke the approval.1271       **/1272      approve: AugmentedSubmittable<(spender: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;1273      /**1274       * Destroy a token on behalf of the owner as a non-owner account.1275       * 1276       * See also: [`approve`][`Pallet::approve`].1277       * 1278       * After this method executes, one approval is removed from the total so that1279       * the approved address will not be able to transfer this item again from this owner.1280       * 1281       * # Permissions1282       * 1283       * * Collection owner1284       * * Collection admin1285       * * Current token owner1286       * * Address approved by current item owner1287       * 1288       * # Arguments1289       * 1290       * * `from`: The owner of the burning item.1291       * * `collection_id`: ID of the collection to which the item belongs.1292       * * `item_id`: ID of item to burn.1293       * * `value`: Number of pieces to burn.1294       * * Non-Fungible Mode: An NFT is indivisible, there is always 1 corresponding to an ID.1295       * * Fungible Mode: The desired number of pieces to burn.1296       * * Re-Fungible Mode: The desired number of pieces to burn.1297       **/1298      burnFrom: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, from: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32, u128]>;1299      /**1300       * Destroy an item.1301       * 1302       * # Permissions1303       * 1304       * * Collection owner1305       * * Collection admin1306       * * Current item owner1307       * 1308       * # Arguments1309       * 1310       * * `collection_id`: ID of the collection to which the item belongs.1311       * * `item_id`: ID of item to burn.1312       * * `value`: Number of pieces of the item to destroy.1313       * * Non-Fungible Mode: An NFT is indivisible, there is always 1 corresponding to an ID.1314       * * Fungible Mode: The desired number of pieces to burn.1315       * * Re-Fungible Mode: The desired number of pieces to burn.1316       **/1317      burnItem: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u128]>;1318      /**1319       * Change the owner of the collection.1320       * 1321       * # Permissions1322       * 1323       * * Collection owner1324       * 1325       * # Arguments1326       * 1327       * * `collection_id`: ID of the modified collection.1328       * * `new_owner`: ID of the account that will become the owner.1329       **/1330      changeCollectionOwner: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newOwner: AccountId32 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, AccountId32]>;1331      /**1332       * Confirm own sponsorship of a collection, becoming the sponsor.1333       * 1334       * An invitation must be pending, see [`set_collection_sponsor`][`Pallet::set_collection_sponsor`].1335       * Sponsor can pay the fees of a transaction instead of the sender,1336       * but only within specified limits.1337       * 1338       * # Permissions1339       * 1340       * * Sponsor-to-be1341       * 1342       * # Arguments1343       * 1344       * * `collection_id`: ID of the collection with the pending sponsor.1345       **/1346      confirmSponsorship: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;1347      /**1348       * Create a collection of tokens.1349       * 1350       * Each Token may have multiple properties encoded as an array of bytes1351       * of certain length. The initial owner of the collection is set1352       * to the address that signed the transaction and can be changed later.1353       * 1354       * Prefer the more advanced [`create_collection_ex`][`Pallet::create_collection_ex`] instead.1355       * 1356       * # Permissions1357       * 1358       * * Anyone - becomes the owner of the new collection.1359       * 1360       * # Arguments1361       * 1362       * * `collection_name`: Wide-character string with collection name1363       * (limit [`MAX_COLLECTION_NAME_LENGTH`]).1364       * * `collection_description`: Wide-character string with collection description1365       * (limit [`MAX_COLLECTION_DESCRIPTION_LENGTH`]).1366       * * `token_prefix`: Byte string containing the token prefix to mark a collection1367       * to which a token belongs (limit [`MAX_TOKEN_PREFIX_LENGTH`]).1368       * * `mode`: Type of items stored in the collection and type dependent data.1369       **/1370      createCollection: AugmentedSubmittable<(collectionName: Vec<u16> | (u16 | AnyNumber | Uint8Array)[], collectionDescription: Vec<u16> | (u16 | AnyNumber | Uint8Array)[], tokenPrefix: Bytes | string | Uint8Array, mode: UpDataStructsCollectionMode | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Vec<u16>, Vec<u16>, Bytes, UpDataStructsCollectionMode]>;1371      /**1372       * Create a collection with explicit parameters.1373       * 1374       * Prefer it to the deprecated [`create_collection`][`Pallet::create_collection`] method.1375       * 1376       * # Permissions1377       * 1378       * * Anyone - becomes the owner of the new collection.1379       * 1380       * # Arguments1381       * 1382       * * `data`: Explicit data of a collection used for its creation.1383       **/1384      createCollectionEx: AugmentedSubmittable<(data: UpDataStructsCreateCollectionData | { mode?: any; access?: any; name?: any; description?: any; tokenPrefix?: any; pendingSponsor?: any; limits?: any; permissions?: any; tokenPropertyPermissions?: any; properties?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [UpDataStructsCreateCollectionData]>;1385      /**1386       * Mint an item within a collection.1387       * 1388       * A collection must exist first, see [`create_collection_ex`][`Pallet::create_collection_ex`].1389       * 1390       * # Permissions1391       * 1392       * * Collection owner1393       * * Collection admin1394       * * Anyone if1395       * * Allow List is enabled, and1396       * * Address is added to allow list, and1397       * * MintPermission is enabled (see [`set_collection_permissions`][`Pallet::set_collection_permissions`])1398       * 1399       * # Arguments1400       * 1401       * * `collection_id`: ID of the collection to which an item would belong.1402       * * `owner`: Address of the initial owner of the item.1403       * * `data`: Token data describing the item to store on chain.1404       **/1405      createItem: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, data: UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, UpDataStructsCreateItemData]>;1406      /**1407       * Create multiple items within a collection.1408       * 1409       * A collection must exist first, see [`create_collection_ex`][`Pallet::create_collection_ex`].1410       * 1411       * # Permissions1412       * 1413       * * Collection owner1414       * * Collection admin1415       * * Anyone if1416       * * Allow List is enabled, and1417       * * Address is added to the allow list, and1418       * * MintPermission is enabled (see [`set_collection_permissions`][`Pallet::set_collection_permissions`])1419       * 1420       * # Arguments1421       * 1422       * * `collection_id`: ID of the collection to which the tokens would belong.1423       * * `owner`: Address of the initial owner of the tokens.1424       * * `items_data`: Vector of data describing each item to be created.1425       **/1426      createMultipleItems: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemsData: Vec<UpDataStructsCreateItemData> | (UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, Vec<UpDataStructsCreateItemData>]>;1427      /**1428       * Create multiple items within a collection with explicitly specified initial parameters.1429       * 1430       * # Permissions1431       * 1432       * * Collection owner1433       * * Collection admin1434       * * Anyone if1435       * * Allow List is enabled, and1436       * * Address is added to allow list, and1437       * * MintPermission is enabled (see [`set_collection_permissions`][`Pallet::set_collection_permissions`])1438       * 1439       * # Arguments1440       * 1441       * * `collection_id`: ID of the collection to which the tokens would belong.1442       * * `data`: Explicit item creation data.1443       **/1444      createMultipleItemsEx: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, data: UpDataStructsCreateItemExData | { NFT: any } | { Fungible: any } | { RefungibleMultipleItems: any } | { RefungibleMultipleOwners: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, UpDataStructsCreateItemExData]>;1445      /**1446       * Delete specified collection properties.1447       * 1448       * # Permissions1449       * 1450       * * Collection Owner1451       * * Collection Admin1452       * 1453       * # Arguments1454       * 1455       * * `collection_id`: ID of the modified collection.1456       * * `property_keys`: Vector of keys of the properties to be deleted.1457       * Keys support Latin letters, `-`, `_`, and `.` as symbols.1458       **/1459      deleteCollectionProperties: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, propertyKeys: Vec<Bytes> | (Bytes | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, Vec<Bytes>]>;1460      /**1461       * Delete specified token properties. Currently properties only work with NFTs.1462       * 1463       * # Permissions1464       * 1465       * * Depends on collection's token property permissions and specified property mutability:1466       * * Collection owner1467       * * Collection admin1468       * * Token owner1469       * 1470       * # Arguments1471       * 1472       * * `collection_id`: ID of the collection to which the token belongs.1473       * * `token_id`: ID of the modified token.1474       * * `property_keys`: Vector of keys of the properties to be deleted.1475       * Keys support Latin letters, `-`, `_`, and `.` as symbols.1476       **/1477      deleteTokenProperties: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, propertyKeys: Vec<Bytes> | (Bytes | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, u32, Vec<Bytes>]>;1478      /**1479       * Destroy a collection if no tokens exist within.1480       * 1481       * # Permissions1482       * 1483       * * Collection owner1484       * 1485       * # Arguments1486       * 1487       * * `collection_id`: Collection to destroy.1488       **/1489      destroyCollection: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;1490      /**1491       * Remove admin of a collection.1492       * 1493       * An admin address can remove itself. List of admins may become empty,1494       * in which case only Collection Owner will be able to add an Admin.1495       * 1496       * # Permissions1497       * 1498       * * Collection owner1499       * * Collection admin1500       * 1501       * # Arguments1502       * 1503       * * `collection_id`: ID of the collection to remove the admin for.1504       * * `account_id`: Address of the admin to remove.1505       **/1506      removeCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, accountId: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1507      /**1508       * Remove a collection's a sponsor, making everyone pay for their own transactions.1509       * 1510       * # Permissions1511       * 1512       * * Collection owner1513       * 1514       * # Arguments1515       * 1516       * * `collection_id`: ID of the collection with the sponsor to remove.1517       **/1518      removeCollectionSponsor: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;1519      /**1520       * Remove an address from allow list.1521       * 1522       * # Permissions1523       * 1524       * * Collection owner1525       * * Collection admin1526       * 1527       * # Arguments1528       * 1529       * * `collection_id`: ID of the modified collection.1530       * * `address`: ID of the address to be removed from the allowlist.1531       **/1532      removeFromAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1533      /**1534       * Re-partition a refungible token, while owning all of its parts/pieces.1535       * 1536       * # Permissions1537       * 1538       * * Token owner (must own every part)1539       * 1540       * # Arguments1541       * 1542       * * `collection_id`: ID of the collection the RFT belongs to.1543       * * `token_id`: ID of the RFT.1544       * * `amount`: New number of parts/pieces into which the token shall be partitioned.1545       **/1546      repartition: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u128]>;1547      /**1548       * Sets or unsets the approval of a given operator.1549       * 1550       * The `operator` is allowed to transfer all tokens of the `owner` on their behalf.1551       * 1552       * # Arguments1553       * 1554       * * `owner`: Token owner1555       * * `operator`: Operator1556       * * `approve`: Should operator status be granted or revoked?1557       **/1558      setAllowanceForAll: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, operator: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, approve: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, bool]>;1559      /**1560       * Set specific limits of a collection. Empty, or None fields mean chain default.1561       * 1562       * # Permissions1563       * 1564       * * Collection owner1565       * * Collection admin1566       * 1567       * # Arguments1568       * 1569       * * `collection_id`: ID of the modified collection.1570       * * `new_limit`: New limits of the collection. Fields that are not set (None)1571       * will not overwrite the old ones.1572       **/1573      setCollectionLimits: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newLimit: UpDataStructsCollectionLimits | { accountTokenOwnershipLimit?: any; sponsoredDataSize?: any; sponsoredDataRateLimit?: any; tokenLimit?: any; sponsorTransferTimeout?: any; sponsorApproveTimeout?: any; ownerCanTransfer?: any; ownerCanDestroy?: any; transfersEnabled?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, UpDataStructsCollectionLimits]>;1574      /**1575       * Set specific permissions of a collection. Empty, or None fields mean chain default.1576       * 1577       * # Permissions1578       * 1579       * * Collection owner1580       * * Collection admin1581       * 1582       * # Arguments1583       * 1584       * * `collection_id`: ID of the modified collection.1585       * * `new_permission`: New permissions of the collection. Fields that are not set (None)1586       * will not overwrite the old ones.1587       **/1588      setCollectionPermissions: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newPermission: UpDataStructsCollectionPermissions | { access?: any; mintMode?: any; nesting?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, UpDataStructsCollectionPermissions]>;1589      /**1590       * Add or change collection properties.1591       * 1592       * # Permissions1593       * 1594       * * Collection owner1595       * * Collection admin1596       * 1597       * # Arguments1598       * 1599       * * `collection_id`: ID of the modified collection.1600       * * `properties`: Vector of key-value pairs stored as the collection's metadata.1601       * Keys support Latin letters, `-`, `_`, and `.` as symbols.1602       **/1603      setCollectionProperties: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, properties: Vec<UpDataStructsProperty> | (UpDataStructsProperty | { key?: any; value?: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, Vec<UpDataStructsProperty>]>;1604      /**1605       * Set (invite) a new collection sponsor.1606       * 1607       * If successful, confirmation from the sponsor-to-be will be pending.1608       * 1609       * # Permissions1610       * 1611       * * Collection owner1612       * * Collection admin1613       * 1614       * # Arguments1615       * 1616       * * `collection_id`: ID of the modified collection.1617       * * `new_sponsor`: ID of the account of the sponsor-to-be.1618       **/1619      setCollectionSponsor: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newSponsor: AccountId32 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, AccountId32]>;1620      /**1621       * Add or change token properties according to collection's permissions.1622       * Currently properties only work with NFTs.1623       * 1624       * # Permissions1625       * 1626       * * Depends on collection's token property permissions and specified property mutability:1627       * * Collection owner1628       * * Collection admin1629       * * Token owner1630       * 1631       * See [`set_token_property_permissions`][`Pallet::set_token_property_permissions`].1632       * 1633       * # Arguments1634       * 1635       * * `collection_id: ID of the collection to which the token belongs.1636       * * `token_id`: ID of the modified token.1637       * * `properties`: Vector of key-value pairs stored as the token's metadata.1638       * Keys support Latin letters, `-`, `_`, and `.` as symbols.1639       **/1640      setTokenProperties: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, properties: Vec<UpDataStructsProperty> | (UpDataStructsProperty | { key?: any; value?: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, u32, Vec<UpDataStructsProperty>]>;1641      /**1642       * Add or change token property permissions of a collection.1643       * 1644       * Without a permission for a particular key, a property with that key1645       * cannot be created in a token.1646       * 1647       * # Permissions1648       * 1649       * * Collection owner1650       * * Collection admin1651       * 1652       * # Arguments1653       * 1654       * * `collection_id`: ID of the modified collection.1655       * * `property_permissions`: Vector of permissions for property keys.1656       * Keys support Latin letters, `-`, `_`, and `.` as symbols.1657       **/1658      setTokenPropertyPermissions: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, propertyPermissions: Vec<UpDataStructsPropertyKeyPermission> | (UpDataStructsPropertyKeyPermission | { key?: any; permission?: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, Vec<UpDataStructsPropertyKeyPermission>]>;1659      /**1660       * Completely allow or disallow transfers for a particular collection.1661       * 1662       * # Permissions1663       * 1664       * * Collection owner1665       * 1666       * # Arguments1667       * 1668       * * `collection_id`: ID of the collection.1669       * * `value`: New value of the flag, are transfers allowed?1670       **/1671      setTransfersEnabledFlag: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, value: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, bool]>;1672      /**1673       * Change ownership of the token.1674       * 1675       * # Permissions1676       * 1677       * * Collection owner1678       * * Collection admin1679       * * Current token owner1680       * 1681       * # Arguments1682       * 1683       * * `recipient`: Address of token recipient.1684       * * `collection_id`: ID of the collection the item belongs to.1685       * * `item_id`: ID of the item.1686       * * Non-Fungible Mode: Required.1687       * * Fungible Mode: Ignored.1688       * * Re-Fungible Mode: Required.1689       * 1690       * * `value`: Amount to transfer.1691       * * Non-Fungible Mode: An NFT is indivisible, there is always 1 corresponding to an ID.1692       * * Fungible Mode: The desired number of pieces to transfer.1693       * * Re-Fungible Mode: The desired number of pieces to transfer.1694       **/1695      transfer: AugmentedSubmittable<(recipient: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;1696      /**1697       * Change ownership of an item on behalf of the owner as a non-owner account.1698       * 1699       * See the [`approve`][`Pallet::approve`] method for additional information.1700       * 1701       * After this method executes, one approval is removed from the total so that1702       * the approved address will not be able to transfer this item again from this owner.1703       * 1704       * # Permissions1705       * 1706       * * Collection owner1707       * * Collection admin1708       * * Current item owner1709       * * Address approved by current item owner1710       * 1711       * # Arguments1712       * 1713       * * `from`: Address that currently owns the token.1714       * * `recipient`: Address of the new token-owner-to-be.1715       * * `collection_id`: ID of the collection the item.1716       * * `item_id`: ID of the item to be transferred.1717       * * `value`: Amount to transfer.1718       * * Non-Fungible Mode: An NFT is indivisible, there is always 1 corresponding to an ID.1719       * * Fungible Mode: The desired number of pieces to transfer.1720       * * Re-Fungible Mode: The desired number of pieces to transfer.1721       **/1722      transferFrom: AugmentedSubmittable<(from: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, recipient: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;1723      /**1724       * Generic tx1725       **/1726      [key: string]: SubmittableExtrinsicFunction<ApiType>;1727    };1728    vesting: {1729      claim: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;1730      claimFor: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress]>;1731      updateVestingSchedules: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, vestingSchedules: Vec<OrmlVestingVestingSchedule> | (OrmlVestingVestingSchedule | { start?: any; period?: any; periodCount?: any; perPeriod?: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [MultiAddress, Vec<OrmlVestingVestingSchedule>]>;1732      vestedTransfer: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, schedule: OrmlVestingVestingSchedule | { start?: any; period?: any; periodCount?: any; perPeriod?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, OrmlVestingVestingSchedule]>;1733      /**1734       * Generic tx1735       **/1736      [key: string]: SubmittableExtrinsicFunction<ApiType>;1737    };1738    xcmpQueue: {1739      /**1740       * Resumes all XCM executions for the XCMP queue.1741       * 1742       * Note that this function doesn't change the status of the in/out bound channels.1743       * 1744       * - `origin`: Must pass `ControllerOrigin`.1745       **/1746      resumeXcmExecution: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;1747      /**1748       * Services a single overweight XCM.1749       * 1750       * - `origin`: Must pass `ExecuteOverweightOrigin`.1751       * - `index`: The index of the overweight XCM to service1752       * - `weight_limit`: The amount of weight that XCM execution may take.1753       * 1754       * Errors:1755       * - `BadOverweightIndex`: XCM under `index` is not found in the `Overweight` storage map.1756       * - `BadXcm`: XCM under `index` cannot be properly decoded into a valid XCM format.1757       * - `WeightOverLimit`: XCM execution may use greater `weight_limit`.1758       * 1759       * Events:1760       * - `OverweightServiced`: On success.1761       **/1762      serviceOverweight: AugmentedSubmittable<(index: u64 | AnyNumber | Uint8Array, weightLimit: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64, u64]>;1763      /**1764       * Suspends all XCM executions for the XCMP queue, regardless of the sender's origin.1765       * 1766       * - `origin`: Must pass `ControllerOrigin`.1767       **/1768      suspendXcmExecution: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;1769      /**1770       * Overwrites the number of pages of messages which must be in the queue after which we drop any further1771       * messages from the channel.1772       * 1773       * - `origin`: Must pass `Root`.1774       * - `new`: Desired value for `QueueConfigData.drop_threshold`1775       **/1776      updateDropThreshold: AugmentedSubmittable<(updated: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;1777      /**1778       * Overwrites the number of pages of messages which the queue must be reduced to before it signals that1779       * message sending may recommence after it has been suspended.1780       * 1781       * - `origin`: Must pass `Root`.1782       * - `new`: Desired value for `QueueConfigData.resume_threshold`1783       **/1784      updateResumeThreshold: AugmentedSubmittable<(updated: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;1785      /**1786       * Overwrites the number of pages of messages which must be in the queue for the other side to be told to1787       * suspend their sending.1788       * 1789       * - `origin`: Must pass `Root`.1790       * - `new`: Desired value for `QueueConfigData.suspend_value`1791       **/1792      updateSuspendThreshold: AugmentedSubmittable<(updated: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;1793      /**1794       * Overwrites the amount of remaining weight under which we stop processing messages.1795       * 1796       * - `origin`: Must pass `Root`.1797       * - `new`: Desired value for `QueueConfigData.threshold_weight`1798       **/1799      updateThresholdWeight: AugmentedSubmittable<(updated: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64]>;1800      /**1801       * Overwrites the speed to which the available weight approaches the maximum weight.1802       * A lower number results in a faster progression. A value of 1 makes the entire weight available initially.1803       * 1804       * - `origin`: Must pass `Root`.1805       * - `new`: Desired value for `QueueConfigData.weight_restrict_decay`.1806       **/1807      updateWeightRestrictDecay: AugmentedSubmittable<(updated: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64]>;1808      /**1809       * Overwrite the maximum amount of weight any individual message may consume.1810       * Messages above this weight go into the overweight queue and may only be serviced explicitly.1811       * 1812       * - `origin`: Must pass `Root`.1813       * - `new`: Desired value for `QueueConfigData.xcmp_max_individual_weight`.1814       **/1815      updateXcmpMaxIndividualWeight: AugmentedSubmittable<(updated: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64]>;1816      /**1817       * Generic tx1818       **/1819      [key: string]: SubmittableExtrinsicFunction<ApiType>;1820    };1821    xTokens: {1822      /**1823       * Transfer native currencies.1824       * 1825       * `dest_weight_limit` is the weight for XCM execution on the dest1826       * chain, and it would be charged from the transferred assets. If set1827       * below requirements, the execution may fail and assets wouldn't be1828       * received.1829       * 1830       * It's a no-op if any error on local XCM execution or message sending.1831       * Note sending assets out per se doesn't guarantee they would be1832       * received. Receiving depends on if the XCM message could be delivered1833       * by the network, and if the receiving chain would handle1834       * messages correctly.1835       **/1836      transfer: AugmentedSubmittable<(currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array, dest: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, destWeightLimit: XcmV2WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletForeignAssetsAssetIds, u128, XcmVersionedMultiLocation, XcmV2WeightLimit]>;1837      /**1838       * Transfer `MultiAsset`.1839       * 1840       * `dest_weight_limit` is the weight for XCM execution on the dest1841       * chain, and it would be charged from the transferred assets. If set1842       * below requirements, the execution may fail and assets wouldn't be1843       * received.1844       * 1845       * It's a no-op if any error on local XCM execution or message sending.1846       * Note sending assets out per se doesn't guarantee they would be1847       * received. Receiving depends on if the XCM message could be delivered1848       * by the network, and if the receiving chain would handle1849       * messages correctly.1850       **/1851      transferMultiasset: AugmentedSubmittable<(asset: XcmVersionedMultiAsset | { V0: any } | { V1: any } | string | Uint8Array, dest: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, destWeightLimit: XcmV2WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiAsset, XcmVersionedMultiLocation, XcmV2WeightLimit]>;1852      /**1853       * Transfer several `MultiAsset` specifying the item to be used as fee1854       * 1855       * `dest_weight_limit` is the weight for XCM execution on the dest1856       * chain, and it would be charged from the transferred assets. If set1857       * below requirements, the execution may fail and assets wouldn't be1858       * received.1859       * 1860       * `fee_item` is index of the MultiAssets that we want to use for1861       * payment1862       * 1863       * It's a no-op if any error on local XCM execution or message sending.1864       * Note sending assets out per se doesn't guarantee they would be1865       * received. Receiving depends on if the XCM message could be delivered1866       * by the network, and if the receiving chain would handle1867       * messages correctly.1868       **/1869      transferMultiassets: AugmentedSubmittable<(assets: XcmVersionedMultiAssets | { V0: any } | { V1: any } | string | Uint8Array, feeItem: u32 | AnyNumber | Uint8Array, dest: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, destWeightLimit: XcmV2WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiAssets, u32, XcmVersionedMultiLocation, XcmV2WeightLimit]>;1870      /**1871       * Transfer `MultiAsset` specifying the fee and amount as separate.1872       * 1873       * `dest_weight_limit` is the weight for XCM execution on the dest1874       * chain, and it would be charged from the transferred assets. If set1875       * below requirements, the execution may fail and assets wouldn't be1876       * received.1877       * 1878       * `fee` is the multiasset to be spent to pay for execution in1879       * destination chain. Both fee and amount will be subtracted form the1880       * callers balance For now we only accept fee and asset having the same1881       * `MultiLocation` id.1882       * 1883       * If `fee` is not high enough to cover for the execution costs in the1884       * destination chain, then the assets will be trapped in the1885       * destination chain1886       * 1887       * It's a no-op if any error on local XCM execution or message sending.1888       * Note sending assets out per se doesn't guarantee they would be1889       * received. Receiving depends on if the XCM message could be delivered1890       * by the network, and if the receiving chain would handle1891       * messages correctly.1892       **/1893      transferMultiassetWithFee: AugmentedSubmittable<(asset: XcmVersionedMultiAsset | { V0: any } | { V1: any } | string | Uint8Array, fee: XcmVersionedMultiAsset | { V0: any } | { V1: any } | string | Uint8Array, dest: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, destWeightLimit: XcmV2WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [XcmVersionedMultiAsset, XcmVersionedMultiAsset, XcmVersionedMultiLocation, XcmV2WeightLimit]>;1894      /**1895       * Transfer several currencies specifying the item to be used as fee1896       * 1897       * `dest_weight_limit` is the weight for XCM execution on the dest1898       * chain, and it would be charged from the transferred assets. If set1899       * below requirements, the execution may fail and assets wouldn't be1900       * received.1901       * 1902       * `fee_item` is index of the currencies tuple that we want to use for1903       * payment1904       * 1905       * It's a no-op if any error on local XCM execution or message sending.1906       * Note sending assets out per se doesn't guarantee they would be1907       * received. Receiving depends on if the XCM message could be delivered1908       * by the network, and if the receiving chain would handle1909       * messages correctly.1910       **/1911      transferMulticurrencies: AugmentedSubmittable<(currencies: Vec<ITuple<[PalletForeignAssetsAssetIds, u128]>> | ([PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, u128 | AnyNumber | Uint8Array])[], feeItem: u32 | AnyNumber | Uint8Array, dest: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, destWeightLimit: XcmV2WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Vec<ITuple<[PalletForeignAssetsAssetIds, u128]>>, u32, XcmVersionedMultiLocation, XcmV2WeightLimit]>;1912      /**1913       * Transfer native currencies specifying the fee and amount as1914       * separate.1915       * 1916       * `dest_weight_limit` is the weight for XCM execution on the dest1917       * chain, and it would be charged from the transferred assets. If set1918       * below requirements, the execution may fail and assets wouldn't be1919       * received.1920       * 1921       * `fee` is the amount to be spent to pay for execution in destination1922       * chain. Both fee and amount will be subtracted form the callers1923       * balance.1924       * 1925       * If `fee` is not high enough to cover for the execution costs in the1926       * destination chain, then the assets will be trapped in the1927       * destination chain1928       * 1929       * It's a no-op if any error on local XCM execution or message sending.1930       * Note sending assets out per se doesn't guarantee they would be1931       * received. Receiving depends on if the XCM message could be delivered1932       * by the network, and if the receiving chain would handle1933       * messages correctly.1934       **/1935      transferWithFee: AugmentedSubmittable<(currencyId: PalletForeignAssetsAssetIds | { ForeignAssetId: any } | { NativeAssetId: any } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array, fee: u128 | AnyNumber | Uint8Array, dest: XcmVersionedMultiLocation | { V0: any } | { V1: any } | string | Uint8Array, destWeightLimit: XcmV2WeightLimit | { Unlimited: any } | { Limited: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletForeignAssetsAssetIds, u128, u128, XcmVersionedMultiLocation, XcmV2WeightLimit]>;1936      /**1937       * Generic tx1938       **/1939      [key: string]: SubmittableExtrinsicFunction<ApiType>;1940    };1941  } // AugmentedSubmittables1942} // declare module
modifiedtests/src/interfaces/augment-types.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-types.ts
+++ b/tests/src/interfaces/augment-types.ts
@@ -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, 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 { 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 { 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, RuntimeDispatchInfoV1, RuntimeDispatchInfoV2 } from '@polkadot/types/interfaces/payment';
+import type { FeeDetails, InclusionFee, RuntimeDispatchInfo } 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,12 +273,10 @@
     ContractExecResultTo255: ContractExecResultTo255;
     ContractExecResultTo260: ContractExecResultTo260;
     ContractExecResultTo267: ContractExecResultTo267;
-    ContractExecResultU64: ContractExecResultU64;
     ContractInfo: ContractInfo;
     ContractInstantiateResult: ContractInstantiateResult;
     ContractInstantiateResultTo267: ContractInstantiateResultTo267;
     ContractInstantiateResultTo299: ContractInstantiateResultTo299;
-    ContractInstantiateResultU64: ContractInstantiateResultU64;
     ContractLayoutArray: ContractLayoutArray;
     ContractLayoutCell: ContractLayoutCell;
     ContractLayoutEnum: ContractLayoutEnum;
@@ -1068,8 +1066,6 @@
     RpcMethods: RpcMethods;
     RuntimeDbWeight: RuntimeDbWeight;
     RuntimeDispatchInfo: RuntimeDispatchInfo;
-    RuntimeDispatchInfoV1: RuntimeDispatchInfoV1;
-    RuntimeDispatchInfoV2: RuntimeDispatchInfoV2;
     RuntimeVersion: RuntimeVersion;
     RuntimeVersionApi: RuntimeVersionApi;
     RuntimeVersionPartial: RuntimeVersionPartial;
modifiedtests/src/interfaces/default/types.tsdiffbeforeafterboth
--- a/tests/src/interfaces/default/types.ts
+++ b/tests/src/interfaces/default/types.ts
@@ -1333,7 +1333,11 @@
   readonly asSetMinGasPriceOverride: {
     readonly coeff: Option<u64>;
   } & Struct;
-  readonly type: 'SetWeightToFeeCoefficientOverride' | 'SetMinGasPriceOverride';
+  readonly isSetXcmAllowedLocations: boolean;
+  readonly asSetXcmAllowedLocations: {
+    readonly locations: Option<Vec<XcmV1MultiLocation>>;
+  } & Struct;
+  readonly type: 'SetWeightToFeeCoefficientOverride' | 'SetMinGasPriceOverride' | 'SetXcmAllowedLocations';
 }
 
 /** @name PalletEthereumCall */
modifiedtests/src/interfaces/lookup.tsdiffbeforeafterboth
--- a/tests/src/interfaces/lookup.ts
+++ b/tests/src/interfaces/lookup.ts
@@ -2527,20 +2527,23 @@
         coeff: 'Option<u32>',
       },
       set_min_gas_price_override: {
-        coeff: 'Option<u64>'
+        coeff: 'Option<u64>',
+      },
+      set_xcm_allowed_locations: {
+        locations: 'Option<Vec<XcmV1MultiLocation>>'
       }
     }
   },
   /**
-   * Lookup288: pallet_template_transaction_payment::Call<T>
+   * Lookup291: pallet_template_transaction_payment::Call<T>
    **/
   PalletTemplateTransactionPaymentCall: 'Null',
   /**
-   * Lookup289: pallet_structure::pallet::Call<T>
+   * Lookup292: pallet_structure::pallet::Call<T>
    **/
   PalletStructureCall: 'Null',
   /**
-   * Lookup290: pallet_rmrk_core::pallet::Call<T>
+   * Lookup293: pallet_rmrk_core::pallet::Call<T>
    **/
   PalletRmrkCoreCall: {
     _enum: {
@@ -2631,7 +2634,7 @@
     }
   },
   /**
-   * Lookup296: rmrk_traits::resource::ResourceTypes<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup299: rmrk_traits::resource::ResourceTypes<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsResourceResourceTypes: {
     _enum: {
@@ -2641,7 +2644,7 @@
     }
   },
   /**
-   * Lookup298: rmrk_traits::resource::BasicResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup301: rmrk_traits::resource::BasicResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsResourceBasicResource: {
     src: 'Option<Bytes>',
@@ -2650,7 +2653,7 @@
     thumb: 'Option<Bytes>'
   },
   /**
-   * Lookup300: rmrk_traits::resource::ComposableResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup303: rmrk_traits::resource::ComposableResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsResourceComposableResource: {
     parts: 'Vec<u32>',
@@ -2661,7 +2664,7 @@
     thumb: 'Option<Bytes>'
   },
   /**
-   * Lookup301: rmrk_traits::resource::SlotResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup304: rmrk_traits::resource::SlotResource<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsResourceSlotResource: {
     base: 'u32',
@@ -2672,7 +2675,7 @@
     thumb: 'Option<Bytes>'
   },
   /**
-   * Lookup304: pallet_rmrk_equip::pallet::Call<T>
+   * Lookup307: pallet_rmrk_equip::pallet::Call<T>
    **/
   PalletRmrkEquipCall: {
     _enum: {
@@ -2693,7 +2696,7 @@
     }
   },
   /**
-   * Lookup307: rmrk_traits::part::PartType<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup310: rmrk_traits::part::PartType<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsPartPartType: {
     _enum: {
@@ -2702,7 +2705,7 @@
     }
   },
   /**
-   * Lookup309: rmrk_traits::part::FixedPart<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup312: rmrk_traits::part::FixedPart<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsPartFixedPart: {
     id: 'u32',
@@ -2710,7 +2713,7 @@
     src: 'Bytes'
   },
   /**
-   * Lookup310: rmrk_traits::part::SlotPart<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup313: rmrk_traits::part::SlotPart<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsPartSlotPart: {
     id: 'u32',
@@ -2719,7 +2722,7 @@
     z: 'u32'
   },
   /**
-   * Lookup311: rmrk_traits::part::EquippableList<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup314: rmrk_traits::part::EquippableList<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsPartEquippableList: {
     _enum: {
@@ -2729,7 +2732,7 @@
     }
   },
   /**
-   * Lookup313: rmrk_traits::theme::Theme<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<rmrk_traits::theme::ThemeProperty<sp_core::bounded::bounded_vec::BoundedVec<T, S>>, S>>
+   * Lookup316: rmrk_traits::theme::Theme<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<rmrk_traits::theme::ThemeProperty<sp_core::bounded::bounded_vec::BoundedVec<T, S>>, S>>
    **/
   RmrkTraitsTheme: {
     name: 'Bytes',
@@ -2737,14 +2740,14 @@
     inherit: 'bool'
   },
   /**
-   * Lookup315: rmrk_traits::theme::ThemeProperty<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup318: rmrk_traits::theme::ThemeProperty<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsThemeThemeProperty: {
     key: 'Bytes',
     value: 'Bytes'
   },
   /**
-   * Lookup317: pallet_app_promotion::pallet::Call<T>
+   * Lookup320: pallet_app_promotion::pallet::Call<T>
    **/
   PalletAppPromotionCall: {
     _enum: {
@@ -2773,7 +2776,7 @@
     }
   },
   /**
-   * Lookup318: pallet_foreign_assets::module::Call<T>
+   * Lookup321: pallet_foreign_assets::module::Call<T>
    **/
   PalletForeignAssetsModuleCall: {
     _enum: {
@@ -2790,7 +2793,7 @@
     }
   },
   /**
-   * Lookup319: pallet_evm::pallet::Call<T>
+   * Lookup322: pallet_evm::pallet::Call<T>
    **/
   PalletEvmCall: {
     _enum: {
@@ -2833,7 +2836,7 @@
     }
   },
   /**
-   * Lookup325: pallet_ethereum::pallet::Call<T>
+   * Lookup328: pallet_ethereum::pallet::Call<T>
    **/
   PalletEthereumCall: {
     _enum: {
@@ -2843,7 +2846,7 @@
     }
   },
   /**
-   * Lookup326: ethereum::transaction::TransactionV2
+   * Lookup329: ethereum::transaction::TransactionV2
    **/
   EthereumTransactionTransactionV2: {
     _enum: {
@@ -2853,7 +2856,7 @@
     }
   },
   /**
-   * Lookup327: ethereum::transaction::LegacyTransaction
+   * Lookup330: ethereum::transaction::LegacyTransaction
    **/
   EthereumTransactionLegacyTransaction: {
     nonce: 'U256',
@@ -2865,7 +2868,7 @@
     signature: 'EthereumTransactionTransactionSignature'
   },
   /**
-   * Lookup328: ethereum::transaction::TransactionAction
+   * Lookup331: ethereum::transaction::TransactionAction
    **/
   EthereumTransactionTransactionAction: {
     _enum: {
@@ -2874,7 +2877,7 @@
     }
   },
   /**
-   * Lookup329: ethereum::transaction::TransactionSignature
+   * Lookup332: ethereum::transaction::TransactionSignature
    **/
   EthereumTransactionTransactionSignature: {
     v: 'u64',
@@ -2882,7 +2885,7 @@
     s: 'H256'
   },
   /**
-   * Lookup331: ethereum::transaction::EIP2930Transaction
+   * Lookup334: ethereum::transaction::EIP2930Transaction
    **/
   EthereumTransactionEip2930Transaction: {
     chainId: 'u64',
@@ -2898,14 +2901,14 @@
     s: 'H256'
   },
   /**
-   * Lookup333: ethereum::transaction::AccessListItem
+   * Lookup336: ethereum::transaction::AccessListItem
    **/
   EthereumTransactionAccessListItem: {
     address: 'H160',
     storageKeys: 'Vec<H256>'
   },
   /**
-   * Lookup334: ethereum::transaction::EIP1559Transaction
+   * Lookup337: ethereum::transaction::EIP1559Transaction
    **/
   EthereumTransactionEip1559Transaction: {
     chainId: 'u64',
@@ -2922,7 +2925,7 @@
     s: 'H256'
   },
   /**
-   * Lookup335: pallet_evm_migration::pallet::Call<T>
+   * Lookup338: pallet_evm_migration::pallet::Call<T>
    **/
   PalletEvmMigrationCall: {
     _enum: {
@@ -2946,13 +2949,13 @@
     }
   },
   /**
-   * Lookup339: pallet_maintenance::pallet::Call<T>
+   * Lookup342: pallet_maintenance::pallet::Call<T>
    **/
   PalletMaintenanceCall: {
     _enum: ['enable', 'disable']
   },
   /**
-   * Lookup340: pallet_test_utils::pallet::Call<T>
+   * Lookup343: pallet_test_utils::pallet::Call<T>
    **/
   PalletTestUtilsCall: {
     _enum: {
@@ -2975,32 +2978,32 @@
     }
   },
   /**
-   * Lookup342: pallet_sudo::pallet::Error<T>
+   * Lookup345: pallet_sudo::pallet::Error<T>
    **/
   PalletSudoError: {
     _enum: ['RequireSudo']
   },
   /**
-   * Lookup344: orml_vesting::module::Error<T>
+   * Lookup347: orml_vesting::module::Error<T>
    **/
   OrmlVestingModuleError: {
     _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded']
   },
   /**
-   * Lookup345: orml_xtokens::module::Error<T>
+   * Lookup348: orml_xtokens::module::Error<T>
    **/
   OrmlXtokensModuleError: {
     _enum: ['AssetHasNoReserve', 'NotCrossChainTransfer', 'InvalidDest', 'NotCrossChainTransferableCurrency', 'UnweighableMessage', 'XcmExecutionFailed', 'CannotReanchor', 'InvalidAncestry', 'InvalidAsset', 'DestinationNotInvertible', 'BadVersion', 'DistinctReserveForAssetAndFee', 'ZeroFee', 'ZeroAmount', 'TooManyAssetsBeingSent', 'AssetIndexNonExistent', 'FeeNotEnough', 'NotSupportedMultiLocation', 'MinXcmFeeNotDefined']
   },
   /**
-   * Lookup348: orml_tokens::BalanceLock<Balance>
+   * Lookup351: orml_tokens::BalanceLock<Balance>
    **/
   OrmlTokensBalanceLock: {
     id: '[u8;8]',
     amount: 'u128'
   },
   /**
-   * Lookup350: orml_tokens::AccountData<Balance>
+   * Lookup353: orml_tokens::AccountData<Balance>
    **/
   OrmlTokensAccountData: {
     free: 'u128',
@@ -3008,20 +3011,20 @@
     frozen: 'u128'
   },
   /**
-   * Lookup352: orml_tokens::ReserveData<ReserveIdentifier, Balance>
+   * Lookup355: orml_tokens::ReserveData<ReserveIdentifier, Balance>
    **/
   OrmlTokensReserveData: {
     id: 'Null',
     amount: 'u128'
   },
   /**
-   * Lookup354: orml_tokens::module::Error<T>
+   * Lookup357: orml_tokens::module::Error<T>
    **/
   OrmlTokensModuleError: {
     _enum: ['BalanceTooLow', 'AmountIntoBalanceFailed', 'LiquidityRestrictions', 'MaxLocksExceeded', 'KeepAlive', 'ExistentialDeposit', 'DeadAccount', 'TooManyReserves']
   },
   /**
-   * Lookup356: cumulus_pallet_xcmp_queue::InboundChannelDetails
+   * Lookup359: cumulus_pallet_xcmp_queue::InboundChannelDetails
    **/
   CumulusPalletXcmpQueueInboundChannelDetails: {
     sender: 'u32',
@@ -3029,19 +3032,19 @@
     messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>'
   },
   /**
-   * Lookup357: cumulus_pallet_xcmp_queue::InboundState
+   * Lookup360: cumulus_pallet_xcmp_queue::InboundState
    **/
   CumulusPalletXcmpQueueInboundState: {
     _enum: ['Ok', 'Suspended']
   },
   /**
-   * Lookup360: polkadot_parachain::primitives::XcmpMessageFormat
+   * Lookup363: polkadot_parachain::primitives::XcmpMessageFormat
    **/
   PolkadotParachainPrimitivesXcmpMessageFormat: {
     _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals']
   },
   /**
-   * Lookup363: cumulus_pallet_xcmp_queue::OutboundChannelDetails
+   * Lookup366: cumulus_pallet_xcmp_queue::OutboundChannelDetails
    **/
   CumulusPalletXcmpQueueOutboundChannelDetails: {
     recipient: 'u32',
@@ -3051,13 +3054,13 @@
     lastIndex: 'u16'
   },
   /**
-   * Lookup364: cumulus_pallet_xcmp_queue::OutboundState
+   * Lookup367: cumulus_pallet_xcmp_queue::OutboundState
    **/
   CumulusPalletXcmpQueueOutboundState: {
     _enum: ['Ok', 'Suspended']
   },
   /**
-   * Lookup366: cumulus_pallet_xcmp_queue::QueueConfigData
+   * Lookup369: cumulus_pallet_xcmp_queue::QueueConfigData
    **/
   CumulusPalletXcmpQueueQueueConfigData: {
     suspendThreshold: 'u32',
@@ -3068,29 +3071,29 @@
     xcmpMaxIndividualWeight: 'SpWeightsWeightV2Weight'
   },
   /**
-   * Lookup368: cumulus_pallet_xcmp_queue::pallet::Error<T>
+   * Lookup371: cumulus_pallet_xcmp_queue::pallet::Error<T>
    **/
   CumulusPalletXcmpQueueError: {
     _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit']
   },
   /**
-   * Lookup369: pallet_xcm::pallet::Error<T>
+   * Lookup372: pallet_xcm::pallet::Error<T>
    **/
   PalletXcmError: {
     _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed']
   },
   /**
-   * Lookup370: cumulus_pallet_xcm::pallet::Error<T>
+   * Lookup373: cumulus_pallet_xcm::pallet::Error<T>
    **/
   CumulusPalletXcmError: 'Null',
   /**
-   * Lookup371: cumulus_pallet_dmp_queue::ConfigData
+   * Lookup374: cumulus_pallet_dmp_queue::ConfigData
    **/
   CumulusPalletDmpQueueConfigData: {
     maxIndividual: 'SpWeightsWeightV2Weight'
   },
   /**
-   * Lookup372: cumulus_pallet_dmp_queue::PageIndexData
+   * Lookup375: cumulus_pallet_dmp_queue::PageIndexData
    **/
   CumulusPalletDmpQueuePageIndexData: {
     beginUsed: 'u32',
@@ -3098,26 +3101,26 @@
     overweightCount: 'u64'
   },
   /**
-   * Lookup375: cumulus_pallet_dmp_queue::pallet::Error<T>
+   * Lookup378: cumulus_pallet_dmp_queue::pallet::Error<T>
    **/
   CumulusPalletDmpQueueError: {
     _enum: ['Unknown', 'OverLimit']
   },
   /**
-   * Lookup379: pallet_unique::Error<T>
+   * Lookup382: pallet_unique::Error<T>
    **/
   PalletUniqueError: {
     _enum: ['CollectionDecimalPointLimitExceeded', 'EmptyArgument', 'RepartitionCalledOnNonRefungibleCollection']
   },
   /**
-   * Lookup380: pallet_unique_scheduler_v2::BlockAgenda<T>
+   * Lookup383: pallet_unique_scheduler_v2::BlockAgenda<T>
    **/
   PalletUniqueSchedulerV2BlockAgenda: {
     agenda: 'Vec<Option<PalletUniqueSchedulerV2Scheduled>>',
     freePlaces: 'u32'
   },
   /**
-   * Lookup383: pallet_unique_scheduler_v2::Scheduled<Name, pallet_unique_scheduler_v2::ScheduledCall<T>, BlockNumber, opal_runtime::OriginCaller, sp_core::crypto::AccountId32>
+   * Lookup386: pallet_unique_scheduler_v2::Scheduled<Name, pallet_unique_scheduler_v2::ScheduledCall<T>, BlockNumber, opal_runtime::OriginCaller, sp_core::crypto::AccountId32>
    **/
   PalletUniqueSchedulerV2Scheduled: {
     maybeId: 'Option<[u8;32]>',
@@ -3127,7 +3130,7 @@
     origin: 'OpalRuntimeOriginCaller'
   },
   /**
-   * Lookup384: pallet_unique_scheduler_v2::ScheduledCall<T>
+   * Lookup387: pallet_unique_scheduler_v2::ScheduledCall<T>
    **/
   PalletUniqueSchedulerV2ScheduledCall: {
     _enum: {
@@ -3142,7 +3145,7 @@
     }
   },
   /**
-   * Lookup386: opal_runtime::OriginCaller
+   * Lookup389: opal_runtime::OriginCaller
    **/
   OpalRuntimeOriginCaller: {
     _enum: {
@@ -3251,7 +3254,7 @@
     }
   },
   /**
-   * Lookup387: frame_support::dispatch::RawOrigin<sp_core::crypto::AccountId32>
+   * Lookup390: frame_support::dispatch::RawOrigin<sp_core::crypto::AccountId32>
    **/
   FrameSupportDispatchRawOrigin: {
     _enum: {
@@ -3261,7 +3264,7 @@
     }
   },
   /**
-   * Lookup388: pallet_xcm::pallet::Origin
+   * Lookup391: pallet_xcm::pallet::Origin
    **/
   PalletXcmOrigin: {
     _enum: {
@@ -3270,7 +3273,7 @@
     }
   },
   /**
-   * Lookup389: cumulus_pallet_xcm::pallet::Origin
+   * Lookup392: cumulus_pallet_xcm::pallet::Origin
    **/
   CumulusPalletXcmOrigin: {
     _enum: {
@@ -3279,7 +3282,7 @@
     }
   },
   /**
-   * Lookup390: pallet_ethereum::RawOrigin
+   * Lookup393: pallet_ethereum::RawOrigin
    **/
   PalletEthereumRawOrigin: {
     _enum: {
@@ -3287,17 +3290,17 @@
     }
   },
   /**
-   * Lookup391: sp_core::Void
+   * Lookup394: sp_core::Void
    **/
   SpCoreVoid: 'Null',
   /**
-   * Lookup393: pallet_unique_scheduler_v2::pallet::Error<T>
+   * Lookup396: pallet_unique_scheduler_v2::pallet::Error<T>
    **/
   PalletUniqueSchedulerV2Error: {
     _enum: ['FailedToSchedule', 'AgendaIsExhausted', 'ScheduledCallCorrupted', 'PreimageNotFound', 'TooBigScheduledCall', 'NotFound', 'TargetBlockNumberInPast', 'Named']
   },
   /**
-   * Lookup394: up_data_structs::Collection<sp_core::crypto::AccountId32>
+   * Lookup397: up_data_structs::Collection<sp_core::crypto::AccountId32>
    **/
   UpDataStructsCollection: {
     owner: 'AccountId32',
@@ -3311,7 +3314,7 @@
     flags: '[u8;1]'
   },
   /**
-   * Lookup395: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>
+   * Lookup398: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>
    **/
   UpDataStructsSponsorshipStateAccountId32: {
     _enum: {
@@ -3321,7 +3324,7 @@
     }
   },
   /**
-   * Lookup397: up_data_structs::Properties
+   * Lookup400: up_data_structs::Properties
    **/
   UpDataStructsProperties: {
     map: 'UpDataStructsPropertiesMapBoundedVec',
@@ -3329,15 +3332,15 @@
     spaceLimit: 'u32'
   },
   /**
-   * Lookup398: up_data_structs::PropertiesMap<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup401: up_data_structs::PropertiesMap<sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   UpDataStructsPropertiesMapBoundedVec: 'BTreeMap<Bytes, Bytes>',
   /**
-   * Lookup403: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>
+   * Lookup406: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>
    **/
   UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap<Bytes, UpDataStructsPropertyPermission>',
   /**
-   * Lookup410: up_data_structs::CollectionStats
+   * Lookup413: up_data_structs::CollectionStats
    **/
   UpDataStructsCollectionStats: {
     created: 'u32',
@@ -3345,18 +3348,18 @@
     alive: 'u32'
   },
   /**
-   * Lookup411: up_data_structs::TokenChild
+   * Lookup414: up_data_structs::TokenChild
    **/
   UpDataStructsTokenChild: {
     token: 'u32',
     collection: 'u32'
   },
   /**
-   * Lookup412: PhantomType::up_data_structs<T>
+   * Lookup415: PhantomType::up_data_structs<T>
    **/
   PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,RmrkTraitsCollectionCollectionInfo,RmrkTraitsNftNftInfo,RmrkTraitsResourceResourceInfo,RmrkTraitsPropertyPropertyInfo,RmrkTraitsBaseBaseInfo,RmrkTraitsPartPartType,RmrkTraitsTheme,RmrkTraitsNftNftChild);0]',
   /**
-   * Lookup414: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup417: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   UpDataStructsTokenData: {
     properties: 'Vec<UpDataStructsProperty>',
@@ -3364,7 +3367,7 @@
     pieces: 'u128'
   },
   /**
-   * Lookup416: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>
+   * Lookup419: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>
    **/
   UpDataStructsRpcCollection: {
     owner: 'AccountId32',
@@ -3381,14 +3384,14 @@
     flags: 'UpDataStructsRpcCollectionFlags'
   },
   /**
-   * Lookup417: up_data_structs::RpcCollectionFlags
+   * Lookup420: up_data_structs::RpcCollectionFlags
    **/
   UpDataStructsRpcCollectionFlags: {
     foreign: 'bool',
     erc721metadata: 'bool'
   },
   /**
-   * Lookup418: rmrk_traits::collection::CollectionInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::crypto::AccountId32>
+   * Lookup421: rmrk_traits::collection::CollectionInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::crypto::AccountId32>
    **/
   RmrkTraitsCollectionCollectionInfo: {
     issuer: 'AccountId32',
@@ -3398,7 +3401,7 @@
     nftsCount: 'u32'
   },
   /**
-   * Lookup419: rmrk_traits::nft::NftInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup422: rmrk_traits::nft::NftInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsNftNftInfo: {
     owner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple',
@@ -3408,14 +3411,14 @@
     pending: 'bool'
   },
   /**
-   * Lookup421: rmrk_traits::nft::RoyaltyInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill>
+   * Lookup424: rmrk_traits::nft::RoyaltyInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill>
    **/
   RmrkTraitsNftRoyaltyInfo: {
     recipient: 'AccountId32',
     amount: 'Permill'
   },
   /**
-   * Lookup422: rmrk_traits::resource::ResourceInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup425: rmrk_traits::resource::ResourceInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsResourceResourceInfo: {
     id: 'u32',
@@ -3424,14 +3427,14 @@
     pendingRemoval: 'bool'
   },
   /**
-   * Lookup423: rmrk_traits::property::PropertyInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup426: rmrk_traits::property::PropertyInfo<sp_core::bounded::bounded_vec::BoundedVec<T, S>, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsPropertyPropertyInfo: {
     key: 'Bytes',
     value: 'Bytes'
   },
   /**
-   * Lookup424: rmrk_traits::base::BaseInfo<sp_core::crypto::AccountId32, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
+   * Lookup427: rmrk_traits::base::BaseInfo<sp_core::crypto::AccountId32, sp_core::bounded::bounded_vec::BoundedVec<T, S>>
    **/
   RmrkTraitsBaseBaseInfo: {
     issuer: 'AccountId32',
@@ -3439,92 +3442,92 @@
     symbol: 'Bytes'
   },
   /**
-   * Lookup425: rmrk_traits::nft::NftChild
+   * Lookup428: rmrk_traits::nft::NftChild
    **/
   RmrkTraitsNftNftChild: {
     collectionId: 'u32',
     nftId: 'u32'
   },
   /**
-   * Lookup427: pallet_common::pallet::Error<T>
+   * Lookup430: pallet_common::pallet::Error<T>
    **/
   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']
   },
   /**
-   * Lookup429: pallet_fungible::pallet::Error<T>
+   * Lookup432: pallet_fungible::pallet::Error<T>
    **/
   PalletFungibleError: {
     _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed', 'SettingAllowanceForAllNotAllowed']
   },
   /**
-   * Lookup430: pallet_refungible::ItemData
+   * Lookup433: pallet_refungible::ItemData
    **/
   PalletRefungibleItemData: {
     constData: 'Bytes'
   },
   /**
-   * Lookup435: pallet_refungible::pallet::Error<T>
+   * Lookup438: pallet_refungible::pallet::Error<T>
    **/
   PalletRefungibleError: {
     _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RepartitionWhileNotOwningAllPieces', 'RefungibleDisallowsNesting', 'SettingPropertiesNotAllowed']
   },
   /**
-   * Lookup436: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup439: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   PalletNonfungibleItemData: {
     owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
   },
   /**
-   * Lookup438: up_data_structs::PropertyScope
+   * Lookup441: up_data_structs::PropertyScope
    **/
   UpDataStructsPropertyScope: {
     _enum: ['None', 'Rmrk']
   },
   /**
-   * Lookup440: pallet_nonfungible::pallet::Error<T>
+   * Lookup443: pallet_nonfungible::pallet::Error<T>
    **/
   PalletNonfungibleError: {
     _enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount', 'CantBurnNftWithChildren']
   },
   /**
-   * Lookup441: pallet_structure::pallet::Error<T>
+   * Lookup444: pallet_structure::pallet::Error<T>
    **/
   PalletStructureError: {
     _enum: ['OuroborosDetected', 'DepthLimit', 'BreadthLimit', 'TokenNotFound']
   },
   /**
-   * Lookup442: pallet_rmrk_core::pallet::Error<T>
+   * Lookup445: pallet_rmrk_core::pallet::Error<T>
    **/
   PalletRmrkCoreError: {
     _enum: ['CorruptedCollectionType', 'RmrkPropertyKeyIsTooLong', 'RmrkPropertyValueIsTooLong', 'RmrkPropertyIsNotFound', 'UnableToDecodeRmrkData', 'CollectionNotEmpty', 'NoAvailableCollectionId', 'NoAvailableNftId', 'CollectionUnknown', 'NoPermission', 'NonTransferable', 'CollectionFullOrLocked', 'ResourceDoesntExist', 'CannotSendToDescendentOrSelf', 'CannotAcceptNonOwnedNft', 'CannotRejectNonOwnedNft', 'CannotRejectNonPendingNft', 'ResourceNotPending', 'NoAvailableResourceId']
   },
   /**
-   * Lookup444: pallet_rmrk_equip::pallet::Error<T>
+   * Lookup447: pallet_rmrk_equip::pallet::Error<T>
    **/
   PalletRmrkEquipError: {
     _enum: ['PermissionError', 'NoAvailableBaseId', 'NoAvailablePartId', 'BaseDoesntExist', 'NeedsDefaultThemeFirst', 'PartDoesntExist', 'NoEquippableOnFixedPart']
   },
   /**
-   * Lookup450: pallet_app_promotion::pallet::Error<T>
+   * Lookup453: pallet_app_promotion::pallet::Error<T>
    **/
   PalletAppPromotionError: {
     _enum: ['AdminNotSet', 'NoPermission', 'NotSufficientFunds', 'PendingForBlockOverflow', 'SponsorNotSet', 'IncorrectLockedBalanceOperation']
   },
   /**
-   * Lookup451: pallet_foreign_assets::module::Error<T>
+   * Lookup454: pallet_foreign_assets::module::Error<T>
    **/
   PalletForeignAssetsModuleError: {
     _enum: ['BadLocation', 'MultiLocationExisted', 'AssetIdNotExists', 'AssetIdExisted']
   },
   /**
-   * Lookup453: pallet_evm::pallet::Error<T>
+   * Lookup456: pallet_evm::pallet::Error<T>
    **/
   PalletEvmError: {
     _enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce', 'GasLimitTooLow', 'GasLimitTooHigh', 'Undefined', 'Reentrancy']
   },
   /**
-   * Lookup456: fp_rpc::TransactionStatus
+   * Lookup459: fp_rpc::TransactionStatus
    **/
   FpRpcTransactionStatus: {
     transactionHash: 'H256',
@@ -3536,11 +3539,11 @@
     logsBloom: 'EthbloomBloom'
   },
   /**
-   * Lookup458: ethbloom::Bloom
+   * Lookup461: ethbloom::Bloom
    **/
   EthbloomBloom: '[u8;256]',
   /**
-   * Lookup460: ethereum::receipt::ReceiptV3
+   * Lookup463: ethereum::receipt::ReceiptV3
    **/
   EthereumReceiptReceiptV3: {
     _enum: {
@@ -3550,7 +3553,7 @@
     }
   },
   /**
-   * Lookup461: ethereum::receipt::EIP658ReceiptData
+   * Lookup464: ethereum::receipt::EIP658ReceiptData
    **/
   EthereumReceiptEip658ReceiptData: {
     statusCode: 'u8',
@@ -3559,7 +3562,7 @@
     logs: 'Vec<EthereumLog>'
   },
   /**
-   * Lookup462: ethereum::block::Block<ethereum::transaction::TransactionV2>
+   * Lookup465: ethereum::block::Block<ethereum::transaction::TransactionV2>
    **/
   EthereumBlock: {
     header: 'EthereumHeader',
@@ -3567,7 +3570,7 @@
     ommers: 'Vec<EthereumHeader>'
   },
   /**
-   * Lookup463: ethereum::header::Header
+   * Lookup466: ethereum::header::Header
    **/
   EthereumHeader: {
     parentHash: 'H256',
@@ -3587,23 +3590,23 @@
     nonce: 'EthereumTypesHashH64'
   },
   /**
-   * Lookup464: ethereum_types::hash::H64
+   * Lookup467: ethereum_types::hash::H64
    **/
   EthereumTypesHashH64: '[u8;8]',
   /**
-   * Lookup469: pallet_ethereum::pallet::Error<T>
+   * Lookup472: pallet_ethereum::pallet::Error<T>
    **/
   PalletEthereumError: {
     _enum: ['InvalidSignature', 'PreLogExists']
   },
   /**
-   * Lookup470: pallet_evm_coder_substrate::pallet::Error<T>
+   * Lookup473: pallet_evm_coder_substrate::pallet::Error<T>
    **/
   PalletEvmCoderSubstrateError: {
     _enum: ['OutOfGas', 'OutOfFund']
   },
   /**
-   * Lookup471: up_data_structs::SponsorshipState<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup474: up_data_structs::SponsorshipState<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   UpDataStructsSponsorshipStateBasicCrossAccountIdRepr: {
     _enum: {
@@ -3613,35 +3616,35 @@
     }
   },
   /**
-   * Lookup472: pallet_evm_contract_helpers::SponsoringModeT
+   * Lookup475: pallet_evm_contract_helpers::SponsoringModeT
    **/
   PalletEvmContractHelpersSponsoringModeT: {
     _enum: ['Disabled', 'Allowlisted', 'Generous']
   },
   /**
-   * Lookup478: pallet_evm_contract_helpers::pallet::Error<T>
+   * Lookup481: pallet_evm_contract_helpers::pallet::Error<T>
    **/
   PalletEvmContractHelpersError: {
     _enum: ['NoPermission', 'NoPendingSponsor', 'TooManyMethodsHaveSponsoredLimit']
   },
   /**
-   * Lookup479: pallet_evm_migration::pallet::Error<T>
+   * Lookup482: pallet_evm_migration::pallet::Error<T>
    **/
   PalletEvmMigrationError: {
     _enum: ['AccountNotEmpty', 'AccountIsNotMigrating', 'BadEvent']
   },
   /**
-   * Lookup480: pallet_maintenance::pallet::Error<T>
+   * Lookup483: pallet_maintenance::pallet::Error<T>
    **/
   PalletMaintenanceError: 'Null',
   /**
-   * Lookup481: pallet_test_utils::pallet::Error<T>
+   * Lookup484: pallet_test_utils::pallet::Error<T>
    **/
   PalletTestUtilsError: {
     _enum: ['TestPalletDisabled', 'TriggerRollback']
   },
   /**
-   * Lookup483: sp_runtime::MultiSignature
+   * Lookup486: sp_runtime::MultiSignature
    **/
   SpRuntimeMultiSignature: {
     _enum: {
@@ -3651,51 +3654,51 @@
     }
   },
   /**
-   * Lookup484: sp_core::ed25519::Signature
+   * Lookup487: sp_core::ed25519::Signature
    **/
   SpCoreEd25519Signature: '[u8;64]',
   /**
-   * Lookup486: sp_core::sr25519::Signature
+   * Lookup489: sp_core::sr25519::Signature
    **/
   SpCoreSr25519Signature: '[u8;64]',
   /**
-   * Lookup487: sp_core::ecdsa::Signature
+   * Lookup490: sp_core::ecdsa::Signature
    **/
   SpCoreEcdsaSignature: '[u8;65]',
   /**
-   * Lookup490: frame_system::extensions::check_spec_version::CheckSpecVersion<T>
+   * Lookup493: frame_system::extensions::check_spec_version::CheckSpecVersion<T>
    **/
   FrameSystemExtensionsCheckSpecVersion: 'Null',
   /**
-   * Lookup491: frame_system::extensions::check_tx_version::CheckTxVersion<T>
+   * Lookup494: frame_system::extensions::check_tx_version::CheckTxVersion<T>
    **/
   FrameSystemExtensionsCheckTxVersion: 'Null',
   /**
-   * Lookup492: frame_system::extensions::check_genesis::CheckGenesis<T>
+   * Lookup495: frame_system::extensions::check_genesis::CheckGenesis<T>
    **/
   FrameSystemExtensionsCheckGenesis: 'Null',
   /**
-   * Lookup495: frame_system::extensions::check_nonce::CheckNonce<T>
+   * Lookup498: frame_system::extensions::check_nonce::CheckNonce<T>
    **/
   FrameSystemExtensionsCheckNonce: 'Compact<u32>',
   /**
-   * Lookup496: frame_system::extensions::check_weight::CheckWeight<T>
+   * Lookup499: frame_system::extensions::check_weight::CheckWeight<T>
    **/
   FrameSystemExtensionsCheckWeight: 'Null',
   /**
-   * Lookup497: opal_runtime::runtime_common::maintenance::CheckMaintenance
+   * Lookup500: opal_runtime::runtime_common::maintenance::CheckMaintenance
    **/
   OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance: 'Null',
   /**
-   * Lookup498: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>
+   * Lookup501: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>
    **/
   PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',
   /**
-   * Lookup499: opal_runtime::Runtime
+   * Lookup502: opal_runtime::Runtime
    **/
   OpalRuntimeRuntime: 'Null',
   /**
-   * Lookup500: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>
+   * Lookup503: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>
    **/
   PalletEthereumFakeTransactionFinalizer: 'Null'
 };
modifiedtests/src/interfaces/types-lookup.tsdiffbeforeafterboth
--- a/tests/src/interfaces/types-lookup.ts
+++ b/tests/src/interfaces/types-lookup.ts
@@ -2761,16 +2761,20 @@
     readonly asSetMinGasPriceOverride: {
       readonly coeff: Option<u64>;
     } & Struct;
-    readonly type: 'SetWeightToFeeCoefficientOverride' | 'SetMinGasPriceOverride';
+    readonly isSetXcmAllowedLocations: boolean;
+    readonly asSetXcmAllowedLocations: {
+      readonly locations: Option<Vec<XcmV1MultiLocation>>;
+    } & Struct;
+    readonly type: 'SetWeightToFeeCoefficientOverride' | 'SetMinGasPriceOverride' | 'SetXcmAllowedLocations';
   }
 
-  /** @name PalletTemplateTransactionPaymentCall (288) */
+  /** @name PalletTemplateTransactionPaymentCall (291) */
   type PalletTemplateTransactionPaymentCall = Null;
 
-  /** @name PalletStructureCall (289) */
+  /** @name PalletStructureCall (292) */
   type PalletStructureCall = Null;
 
-  /** @name PalletRmrkCoreCall (290) */
+  /** @name PalletRmrkCoreCall (293) */
   interface PalletRmrkCoreCall extends Enum {
     readonly isCreateCollection: boolean;
     readonly asCreateCollection: {
@@ -2876,7 +2880,7 @@
     readonly type: 'CreateCollection' | 'DestroyCollection' | 'ChangeCollectionIssuer' | 'LockCollection' | 'MintNft' | 'BurnNft' | 'Send' | 'AcceptNft' | 'RejectNft' | 'AcceptResource' | 'AcceptResourceRemoval' | 'SetProperty' | 'SetPriority' | 'AddBasicResource' | 'AddComposableResource' | 'AddSlotResource' | 'RemoveResource';
   }
 
-  /** @name RmrkTraitsResourceResourceTypes (296) */
+  /** @name RmrkTraitsResourceResourceTypes (299) */
   interface RmrkTraitsResourceResourceTypes extends Enum {
     readonly isBasic: boolean;
     readonly asBasic: RmrkTraitsResourceBasicResource;
@@ -2887,7 +2891,7 @@
     readonly type: 'Basic' | 'Composable' | 'Slot';
   }
 
-  /** @name RmrkTraitsResourceBasicResource (298) */
+  /** @name RmrkTraitsResourceBasicResource (301) */
   interface RmrkTraitsResourceBasicResource extends Struct {
     readonly src: Option<Bytes>;
     readonly metadata: Option<Bytes>;
@@ -2895,7 +2899,7 @@
     readonly thumb: Option<Bytes>;
   }
 
-  /** @name RmrkTraitsResourceComposableResource (300) */
+  /** @name RmrkTraitsResourceComposableResource (303) */
   interface RmrkTraitsResourceComposableResource extends Struct {
     readonly parts: Vec<u32>;
     readonly base: u32;
@@ -2905,7 +2909,7 @@
     readonly thumb: Option<Bytes>;
   }
 
-  /** @name RmrkTraitsResourceSlotResource (301) */
+  /** @name RmrkTraitsResourceSlotResource (304) */
   interface RmrkTraitsResourceSlotResource extends Struct {
     readonly base: u32;
     readonly src: Option<Bytes>;
@@ -2915,7 +2919,7 @@
     readonly thumb: Option<Bytes>;
   }
 
-  /** @name PalletRmrkEquipCall (304) */
+  /** @name PalletRmrkEquipCall (307) */
   interface PalletRmrkEquipCall extends Enum {
     readonly isCreateBase: boolean;
     readonly asCreateBase: {
@@ -2937,7 +2941,7 @@
     readonly type: 'CreateBase' | 'ThemeAdd' | 'Equippable';
   }
 
-  /** @name RmrkTraitsPartPartType (307) */
+  /** @name RmrkTraitsPartPartType (310) */
   interface RmrkTraitsPartPartType extends Enum {
     readonly isFixedPart: boolean;
     readonly asFixedPart: RmrkTraitsPartFixedPart;
@@ -2946,14 +2950,14 @@
     readonly type: 'FixedPart' | 'SlotPart';
   }
 
-  /** @name RmrkTraitsPartFixedPart (309) */
+  /** @name RmrkTraitsPartFixedPart (312) */
   interface RmrkTraitsPartFixedPart extends Struct {
     readonly id: u32;
     readonly z: u32;
     readonly src: Bytes;
   }
 
-  /** @name RmrkTraitsPartSlotPart (310) */
+  /** @name RmrkTraitsPartSlotPart (313) */
   interface RmrkTraitsPartSlotPart extends Struct {
     readonly id: u32;
     readonly equippable: RmrkTraitsPartEquippableList;
@@ -2961,7 +2965,7 @@
     readonly z: u32;
   }
 
-  /** @name RmrkTraitsPartEquippableList (311) */
+  /** @name RmrkTraitsPartEquippableList (314) */
   interface RmrkTraitsPartEquippableList extends Enum {
     readonly isAll: boolean;
     readonly isEmpty: boolean;
@@ -2970,20 +2974,20 @@
     readonly type: 'All' | 'Empty' | 'Custom';
   }
 
-  /** @name RmrkTraitsTheme (313) */
+  /** @name RmrkTraitsTheme (316) */
   interface RmrkTraitsTheme extends Struct {
     readonly name: Bytes;
     readonly properties: Vec<RmrkTraitsThemeThemeProperty>;
     readonly inherit: bool;
   }
 
-  /** @name RmrkTraitsThemeThemeProperty (315) */
+  /** @name RmrkTraitsThemeThemeProperty (318) */
   interface RmrkTraitsThemeThemeProperty extends Struct {
     readonly key: Bytes;
     readonly value: Bytes;
   }
 
-  /** @name PalletAppPromotionCall (317) */
+  /** @name PalletAppPromotionCall (320) */
   interface PalletAppPromotionCall extends Enum {
     readonly isSetAdminAddress: boolean;
     readonly asSetAdminAddress: {
@@ -3017,7 +3021,7 @@
     readonly type: 'SetAdminAddress' | 'Stake' | 'Unstake' | 'SponsorCollection' | 'StopSponsoringCollection' | 'SponsorContract' | 'StopSponsoringContract' | 'PayoutStakers';
   }
 
-  /** @name PalletForeignAssetsModuleCall (318) */
+  /** @name PalletForeignAssetsModuleCall (321) */
   interface PalletForeignAssetsModuleCall extends Enum {
     readonly isRegisterForeignAsset: boolean;
     readonly asRegisterForeignAsset: {
@@ -3034,7 +3038,7 @@
     readonly type: 'RegisterForeignAsset' | 'UpdateForeignAsset';
   }
 
-  /** @name PalletEvmCall (319) */
+  /** @name PalletEvmCall (322) */
   interface PalletEvmCall extends Enum {
     readonly isWithdraw: boolean;
     readonly asWithdraw: {
@@ -3079,7 +3083,7 @@
     readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';
   }
 
-  /** @name PalletEthereumCall (325) */
+  /** @name PalletEthereumCall (328) */
   interface PalletEthereumCall extends Enum {
     readonly isTransact: boolean;
     readonly asTransact: {
@@ -3088,7 +3092,7 @@
     readonly type: 'Transact';
   }
 
-  /** @name EthereumTransactionTransactionV2 (326) */
+  /** @name EthereumTransactionTransactionV2 (329) */
   interface EthereumTransactionTransactionV2 extends Enum {
     readonly isLegacy: boolean;
     readonly asLegacy: EthereumTransactionLegacyTransaction;
@@ -3099,7 +3103,7 @@
     readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
   }
 
-  /** @name EthereumTransactionLegacyTransaction (327) */
+  /** @name EthereumTransactionLegacyTransaction (330) */
   interface EthereumTransactionLegacyTransaction extends Struct {
     readonly nonce: U256;
     readonly gasPrice: U256;
@@ -3110,7 +3114,7 @@
     readonly signature: EthereumTransactionTransactionSignature;
   }
 
-  /** @name EthereumTransactionTransactionAction (328) */
+  /** @name EthereumTransactionTransactionAction (331) */
   interface EthereumTransactionTransactionAction extends Enum {
     readonly isCall: boolean;
     readonly asCall: H160;
@@ -3118,14 +3122,14 @@
     readonly type: 'Call' | 'Create';
   }
 
-  /** @name EthereumTransactionTransactionSignature (329) */
+  /** @name EthereumTransactionTransactionSignature (332) */
   interface EthereumTransactionTransactionSignature extends Struct {
     readonly v: u64;
     readonly r: H256;
     readonly s: H256;
   }
 
-  /** @name EthereumTransactionEip2930Transaction (331) */
+  /** @name EthereumTransactionEip2930Transaction (334) */
   interface EthereumTransactionEip2930Transaction extends Struct {
     readonly chainId: u64;
     readonly nonce: U256;
@@ -3140,13 +3144,13 @@
     readonly s: H256;
   }
 
-  /** @name EthereumTransactionAccessListItem (333) */
+  /** @name EthereumTransactionAccessListItem (336) */
   interface EthereumTransactionAccessListItem extends Struct {
     readonly address: H160;
     readonly storageKeys: Vec<H256>;
   }
 
-  /** @name EthereumTransactionEip1559Transaction (334) */
+  /** @name EthereumTransactionEip1559Transaction (337) */
   interface EthereumTransactionEip1559Transaction extends Struct {
     readonly chainId: u64;
     readonly nonce: U256;
@@ -3162,7 +3166,7 @@
     readonly s: H256;
   }
 
-  /** @name PalletEvmMigrationCall (335) */
+  /** @name PalletEvmMigrationCall (338) */
   interface PalletEvmMigrationCall extends Enum {
     readonly isBegin: boolean;
     readonly asBegin: {
@@ -3189,14 +3193,14 @@
     readonly type: 'Begin' | 'SetData' | 'Finish' | 'InsertEthLogs' | 'InsertEvents';
   }
 
-  /** @name PalletMaintenanceCall (339) */
+  /** @name PalletMaintenanceCall (342) */
   interface PalletMaintenanceCall extends Enum {
     readonly isEnable: boolean;
     readonly isDisable: boolean;
     readonly type: 'Enable' | 'Disable';
   }
 
-  /** @name PalletTestUtilsCall (340) */
+  /** @name PalletTestUtilsCall (343) */
   interface PalletTestUtilsCall extends Enum {
     readonly isEnable: boolean;
     readonly isSetTestValue: boolean;
@@ -3221,13 +3225,13 @@
     readonly type: 'Enable' | 'SetTestValue' | 'SetTestValueAndRollback' | 'IncTestValue' | 'SelfCancelingInc' | 'JustTakeFee' | 'BatchAll';
   }
 
-  /** @name PalletSudoError (342) */
+  /** @name PalletSudoError (345) */
   interface PalletSudoError extends Enum {
     readonly isRequireSudo: boolean;
     readonly type: 'RequireSudo';
   }
 
-  /** @name OrmlVestingModuleError (344) */
+  /** @name OrmlVestingModuleError (347) */
   interface OrmlVestingModuleError extends Enum {
     readonly isZeroVestingPeriod: boolean;
     readonly isZeroVestingPeriodCount: boolean;
@@ -3238,7 +3242,7 @@
     readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';
   }
 
-  /** @name OrmlXtokensModuleError (345) */
+  /** @name OrmlXtokensModuleError (348) */
   interface OrmlXtokensModuleError extends Enum {
     readonly isAssetHasNoReserve: boolean;
     readonly isNotCrossChainTransfer: boolean;
@@ -3262,26 +3266,26 @@
     readonly type: 'AssetHasNoReserve' | 'NotCrossChainTransfer' | 'InvalidDest' | 'NotCrossChainTransferableCurrency' | 'UnweighableMessage' | 'XcmExecutionFailed' | 'CannotReanchor' | 'InvalidAncestry' | 'InvalidAsset' | 'DestinationNotInvertible' | 'BadVersion' | 'DistinctReserveForAssetAndFee' | 'ZeroFee' | 'ZeroAmount' | 'TooManyAssetsBeingSent' | 'AssetIndexNonExistent' | 'FeeNotEnough' | 'NotSupportedMultiLocation' | 'MinXcmFeeNotDefined';
   }
 
-  /** @name OrmlTokensBalanceLock (348) */
+  /** @name OrmlTokensBalanceLock (351) */
   interface OrmlTokensBalanceLock extends Struct {
     readonly id: U8aFixed;
     readonly amount: u128;
   }
 
-  /** @name OrmlTokensAccountData (350) */
+  /** @name OrmlTokensAccountData (353) */
   interface OrmlTokensAccountData extends Struct {
     readonly free: u128;
     readonly reserved: u128;
     readonly frozen: u128;
   }
 
-  /** @name OrmlTokensReserveData (352) */
+  /** @name OrmlTokensReserveData (355) */
   interface OrmlTokensReserveData extends Struct {
     readonly id: Null;
     readonly amount: u128;
   }
 
-  /** @name OrmlTokensModuleError (354) */
+  /** @name OrmlTokensModuleError (357) */
   interface OrmlTokensModuleError extends Enum {
     readonly isBalanceTooLow: boolean;
     readonly isAmountIntoBalanceFailed: boolean;
@@ -3294,21 +3298,21 @@
     readonly type: 'BalanceTooLow' | 'AmountIntoBalanceFailed' | 'LiquidityRestrictions' | 'MaxLocksExceeded' | 'KeepAlive' | 'ExistentialDeposit' | 'DeadAccount' | 'TooManyReserves';
   }
 
-  /** @name CumulusPalletXcmpQueueInboundChannelDetails (356) */
+  /** @name CumulusPalletXcmpQueueInboundChannelDetails (359) */
   interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {
     readonly sender: u32;
     readonly state: CumulusPalletXcmpQueueInboundState;
     readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;
   }
 
-  /** @name CumulusPalletXcmpQueueInboundState (357) */
+  /** @name CumulusPalletXcmpQueueInboundState (360) */
   interface CumulusPalletXcmpQueueInboundState extends Enum {
     readonly isOk: boolean;
     readonly isSuspended: boolean;
     readonly type: 'Ok' | 'Suspended';
   }
 
-  /** @name PolkadotParachainPrimitivesXcmpMessageFormat (360) */
+  /** @name PolkadotParachainPrimitivesXcmpMessageFormat (363) */
   interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {
     readonly isConcatenatedVersionedXcm: boolean;
     readonly isConcatenatedEncodedBlob: boolean;
@@ -3316,7 +3320,7 @@
     readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';
   }
 
-  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (363) */
+  /** @name CumulusPalletXcmpQueueOutboundChannelDetails (366) */
   interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {
     readonly recipient: u32;
     readonly state: CumulusPalletXcmpQueueOutboundState;
@@ -3325,14 +3329,14 @@
     readonly lastIndex: u16;
   }
 
-  /** @name CumulusPalletXcmpQueueOutboundState (364) */
+  /** @name CumulusPalletXcmpQueueOutboundState (367) */
   interface CumulusPalletXcmpQueueOutboundState extends Enum {
     readonly isOk: boolean;
     readonly isSuspended: boolean;
     readonly type: 'Ok' | 'Suspended';
   }
 
-  /** @name CumulusPalletXcmpQueueQueueConfigData (366) */
+  /** @name CumulusPalletXcmpQueueQueueConfigData (369) */
   interface CumulusPalletXcmpQueueQueueConfigData extends Struct {
     readonly suspendThreshold: u32;
     readonly dropThreshold: u32;
@@ -3342,7 +3346,7 @@
     readonly xcmpMaxIndividualWeight: SpWeightsWeightV2Weight;
   }
 
-  /** @name CumulusPalletXcmpQueueError (368) */
+  /** @name CumulusPalletXcmpQueueError (371) */
   interface CumulusPalletXcmpQueueError extends Enum {
     readonly isFailedToSend: boolean;
     readonly isBadXcmOrigin: boolean;
@@ -3352,7 +3356,7 @@
     readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';
   }
 
-  /** @name PalletXcmError (369) */
+  /** @name PalletXcmError (372) */
   interface PalletXcmError extends Enum {
     readonly isUnreachable: boolean;
     readonly isSendFailure: boolean;
@@ -3370,29 +3374,29 @@
     readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';
   }
 
-  /** @name CumulusPalletXcmError (370) */
+  /** @name CumulusPalletXcmError (373) */
   type CumulusPalletXcmError = Null;
 
-  /** @name CumulusPalletDmpQueueConfigData (371) */
+  /** @name CumulusPalletDmpQueueConfigData (374) */
   interface CumulusPalletDmpQueueConfigData extends Struct {
     readonly maxIndividual: SpWeightsWeightV2Weight;
   }
 
-  /** @name CumulusPalletDmpQueuePageIndexData (372) */
+  /** @name CumulusPalletDmpQueuePageIndexData (375) */
   interface CumulusPalletDmpQueuePageIndexData extends Struct {
     readonly beginUsed: u32;
     readonly endUsed: u32;
     readonly overweightCount: u64;
   }
 
-  /** @name CumulusPalletDmpQueueError (375) */
+  /** @name CumulusPalletDmpQueueError (378) */
   interface CumulusPalletDmpQueueError extends Enum {
     readonly isUnknown: boolean;
     readonly isOverLimit: boolean;
     readonly type: 'Unknown' | 'OverLimit';
   }
 
-  /** @name PalletUniqueError (379) */
+  /** @name PalletUniqueError (382) */
   interface PalletUniqueError extends Enum {
     readonly isCollectionDecimalPointLimitExceeded: boolean;
     readonly isEmptyArgument: boolean;
@@ -3400,13 +3404,13 @@
     readonly type: 'CollectionDecimalPointLimitExceeded' | 'EmptyArgument' | 'RepartitionCalledOnNonRefungibleCollection';
   }
 
-  /** @name PalletUniqueSchedulerV2BlockAgenda (380) */
+  /** @name PalletUniqueSchedulerV2BlockAgenda (383) */
   interface PalletUniqueSchedulerV2BlockAgenda extends Struct {
     readonly agenda: Vec<Option<PalletUniqueSchedulerV2Scheduled>>;
     readonly freePlaces: u32;
   }
 
-  /** @name PalletUniqueSchedulerV2Scheduled (383) */
+  /** @name PalletUniqueSchedulerV2Scheduled (386) */
   interface PalletUniqueSchedulerV2Scheduled extends Struct {
     readonly maybeId: Option<U8aFixed>;
     readonly priority: u8;
@@ -3415,7 +3419,7 @@
     readonly origin: OpalRuntimeOriginCaller;
   }
 
-  /** @name PalletUniqueSchedulerV2ScheduledCall (384) */
+  /** @name PalletUniqueSchedulerV2ScheduledCall (387) */
   interface PalletUniqueSchedulerV2ScheduledCall extends Enum {
     readonly isInline: boolean;
     readonly asInline: Bytes;
@@ -3427,7 +3431,7 @@
     readonly type: 'Inline' | 'PreimageLookup';
   }
 
-  /** @name OpalRuntimeOriginCaller (386) */
+  /** @name OpalRuntimeOriginCaller (389) */
   interface OpalRuntimeOriginCaller extends Enum {
     readonly isSystem: boolean;
     readonly asSystem: FrameSupportDispatchRawOrigin;
@@ -3441,7 +3445,7 @@
     readonly type: 'System' | 'Void' | 'PolkadotXcm' | 'CumulusXcm' | 'Ethereum';
   }
 
-  /** @name FrameSupportDispatchRawOrigin (387) */
+  /** @name FrameSupportDispatchRawOrigin (390) */
   interface FrameSupportDispatchRawOrigin extends Enum {
     readonly isRoot: boolean;
     readonly isSigned: boolean;
@@ -3450,7 +3454,7 @@
     readonly type: 'Root' | 'Signed' | 'None';
   }
 
-  /** @name PalletXcmOrigin (388) */
+  /** @name PalletXcmOrigin (391) */
   interface PalletXcmOrigin extends Enum {
     readonly isXcm: boolean;
     readonly asXcm: XcmV1MultiLocation;
@@ -3459,7 +3463,7 @@
     readonly type: 'Xcm' | 'Response';
   }
 
-  /** @name CumulusPalletXcmOrigin (389) */
+  /** @name CumulusPalletXcmOrigin (392) */
   interface CumulusPalletXcmOrigin extends Enum {
     readonly isRelay: boolean;
     readonly isSiblingParachain: boolean;
@@ -3467,17 +3471,17 @@
     readonly type: 'Relay' | 'SiblingParachain';
   }
 
-  /** @name PalletEthereumRawOrigin (390) */
+  /** @name PalletEthereumRawOrigin (393) */
   interface PalletEthereumRawOrigin extends Enum {
     readonly isEthereumTransaction: boolean;
     readonly asEthereumTransaction: H160;
     readonly type: 'EthereumTransaction';
   }
 
-  /** @name SpCoreVoid (391) */
+  /** @name SpCoreVoid (394) */
   type SpCoreVoid = Null;
 
-  /** @name PalletUniqueSchedulerV2Error (393) */
+  /** @name PalletUniqueSchedulerV2Error (396) */
   interface PalletUniqueSchedulerV2Error extends Enum {
     readonly isFailedToSchedule: boolean;
     readonly isAgendaIsExhausted: boolean;
@@ -3490,7 +3494,7 @@
     readonly type: 'FailedToSchedule' | 'AgendaIsExhausted' | 'ScheduledCallCorrupted' | 'PreimageNotFound' | 'TooBigScheduledCall' | 'NotFound' | 'TargetBlockNumberInPast' | 'Named';
   }
 
-  /** @name UpDataStructsCollection (394) */
+  /** @name UpDataStructsCollection (397) */
   interface UpDataStructsCollection extends Struct {
     readonly owner: AccountId32;
     readonly mode: UpDataStructsCollectionMode;
@@ -3503,7 +3507,7 @@
     readonly flags: U8aFixed;
   }
 
-  /** @name UpDataStructsSponsorshipStateAccountId32 (395) */
+  /** @name UpDataStructsSponsorshipStateAccountId32 (398) */
   interface UpDataStructsSponsorshipStateAccountId32 extends Enum {
     readonly isDisabled: boolean;
     readonly isUnconfirmed: boolean;
@@ -3513,43 +3517,43 @@
     readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
   }
 
-  /** @name UpDataStructsProperties (397) */
+  /** @name UpDataStructsProperties (400) */
   interface UpDataStructsProperties extends Struct {
     readonly map: UpDataStructsPropertiesMapBoundedVec;
     readonly consumedSpace: u32;
     readonly spaceLimit: u32;
   }
 
-  /** @name UpDataStructsPropertiesMapBoundedVec (398) */
+  /** @name UpDataStructsPropertiesMapBoundedVec (401) */
   interface UpDataStructsPropertiesMapBoundedVec extends BTreeMap<Bytes, Bytes> {}
 
-  /** @name UpDataStructsPropertiesMapPropertyPermission (403) */
+  /** @name UpDataStructsPropertiesMapPropertyPermission (406) */
   interface UpDataStructsPropertiesMapPropertyPermission extends BTreeMap<Bytes, UpDataStructsPropertyPermission> {}
 
-  /** @name UpDataStructsCollectionStats (410) */
+  /** @name UpDataStructsCollectionStats (413) */
   interface UpDataStructsCollectionStats extends Struct {
     readonly created: u32;
     readonly destroyed: u32;
     readonly alive: u32;
   }
 
-  /** @name UpDataStructsTokenChild (411) */
+  /** @name UpDataStructsTokenChild (414) */
   interface UpDataStructsTokenChild extends Struct {
     readonly token: u32;
     readonly collection: u32;
   }
 
-  /** @name PhantomTypeUpDataStructs (412) */
+  /** @name PhantomTypeUpDataStructs (415) */
   interface PhantomTypeUpDataStructs extends Vec<ITuple<[UpDataStructsTokenData, UpDataStructsRpcCollection, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftNftInfo, RmrkTraitsResourceResourceInfo, RmrkTraitsPropertyPropertyInfo, RmrkTraitsBaseBaseInfo, RmrkTraitsPartPartType, RmrkTraitsTheme, RmrkTraitsNftNftChild]>> {}
 
-  /** @name UpDataStructsTokenData (414) */
+  /** @name UpDataStructsTokenData (417) */
   interface UpDataStructsTokenData extends Struct {
     readonly properties: Vec<UpDataStructsProperty>;
     readonly owner: Option<PalletEvmAccountBasicCrossAccountIdRepr>;
     readonly pieces: u128;
   }
 
-  /** @name UpDataStructsRpcCollection (416) */
+  /** @name UpDataStructsRpcCollection (419) */
   interface UpDataStructsRpcCollection extends Struct {
     readonly owner: AccountId32;
     readonly mode: UpDataStructsCollectionMode;
@@ -3565,13 +3569,13 @@
     readonly flags: UpDataStructsRpcCollectionFlags;
   }
 
-  /** @name UpDataStructsRpcCollectionFlags (417) */
+  /** @name UpDataStructsRpcCollectionFlags (420) */
   interface UpDataStructsRpcCollectionFlags extends Struct {
     readonly foreign: bool;
     readonly erc721metadata: bool;
   }
 
-  /** @name RmrkTraitsCollectionCollectionInfo (418) */
+  /** @name RmrkTraitsCollectionCollectionInfo (421) */
   interface RmrkTraitsCollectionCollectionInfo extends Struct {
     readonly issuer: AccountId32;
     readonly metadata: Bytes;
@@ -3580,7 +3584,7 @@
     readonly nftsCount: u32;
   }
 
-  /** @name RmrkTraitsNftNftInfo (419) */
+  /** @name RmrkTraitsNftNftInfo (422) */
   interface RmrkTraitsNftNftInfo extends Struct {
     readonly owner: RmrkTraitsNftAccountIdOrCollectionNftTuple;
     readonly royalty: Option<RmrkTraitsNftRoyaltyInfo>;
@@ -3589,13 +3593,13 @@
     readonly pending: bool;
   }
 
-  /** @name RmrkTraitsNftRoyaltyInfo (421) */
+  /** @name RmrkTraitsNftRoyaltyInfo (424) */
   interface RmrkTraitsNftRoyaltyInfo extends Struct {
     readonly recipient: AccountId32;
     readonly amount: Permill;
   }
 
-  /** @name RmrkTraitsResourceResourceInfo (422) */
+  /** @name RmrkTraitsResourceResourceInfo (425) */
   interface RmrkTraitsResourceResourceInfo extends Struct {
     readonly id: u32;
     readonly resource: RmrkTraitsResourceResourceTypes;
@@ -3603,26 +3607,26 @@
     readonly pendingRemoval: bool;
   }
 
-  /** @name RmrkTraitsPropertyPropertyInfo (423) */
+  /** @name RmrkTraitsPropertyPropertyInfo (426) */
   interface RmrkTraitsPropertyPropertyInfo extends Struct {
     readonly key: Bytes;
     readonly value: Bytes;
   }
 
-  /** @name RmrkTraitsBaseBaseInfo (424) */
+  /** @name RmrkTraitsBaseBaseInfo (427) */
   interface RmrkTraitsBaseBaseInfo extends Struct {
     readonly issuer: AccountId32;
     readonly baseType: Bytes;
     readonly symbol: Bytes;
   }
 
-  /** @name RmrkTraitsNftNftChild (425) */
+  /** @name RmrkTraitsNftNftChild (428) */
   interface RmrkTraitsNftNftChild extends Struct {
     readonly collectionId: u32;
     readonly nftId: u32;
   }
 
-  /** @name PalletCommonError (427) */
+  /** @name PalletCommonError (430) */
   interface PalletCommonError extends Enum {
     readonly isCollectionNotFound: boolean;
     readonly isMustBeTokenOwner: boolean;
@@ -3663,7 +3667,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 (429) */
+  /** @name PalletFungibleError (432) */
   interface PalletFungibleError extends Enum {
     readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isFungibleItemsHaveNoId: boolean;
@@ -3674,12 +3678,12 @@
     readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed' | 'SettingAllowanceForAllNotAllowed';
   }
 
-  /** @name PalletRefungibleItemData (430) */
+  /** @name PalletRefungibleItemData (433) */
   interface PalletRefungibleItemData extends Struct {
     readonly constData: Bytes;
   }
 
-  /** @name PalletRefungibleError (435) */
+  /** @name PalletRefungibleError (438) */
   interface PalletRefungibleError extends Enum {
     readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isWrongRefungiblePieces: boolean;
@@ -3689,19 +3693,19 @@
     readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RepartitionWhileNotOwningAllPieces' | 'RefungibleDisallowsNesting' | 'SettingPropertiesNotAllowed';
   }
 
-  /** @name PalletNonfungibleItemData (436) */
+  /** @name PalletNonfungibleItemData (439) */
   interface PalletNonfungibleItemData extends Struct {
     readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
   }
 
-  /** @name UpDataStructsPropertyScope (438) */
+  /** @name UpDataStructsPropertyScope (441) */
   interface UpDataStructsPropertyScope extends Enum {
     readonly isNone: boolean;
     readonly isRmrk: boolean;
     readonly type: 'None' | 'Rmrk';
   }
 
-  /** @name PalletNonfungibleError (440) */
+  /** @name PalletNonfungibleError (443) */
   interface PalletNonfungibleError extends Enum {
     readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;
     readonly isNonfungibleItemsHaveNoAmount: boolean;
@@ -3709,7 +3713,7 @@
     readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount' | 'CantBurnNftWithChildren';
   }
 
-  /** @name PalletStructureError (441) */
+  /** @name PalletStructureError (444) */
   interface PalletStructureError extends Enum {
     readonly isOuroborosDetected: boolean;
     readonly isDepthLimit: boolean;
@@ -3718,7 +3722,7 @@
     readonly type: 'OuroborosDetected' | 'DepthLimit' | 'BreadthLimit' | 'TokenNotFound';
   }
 
-  /** @name PalletRmrkCoreError (442) */
+  /** @name PalletRmrkCoreError (445) */
   interface PalletRmrkCoreError extends Enum {
     readonly isCorruptedCollectionType: boolean;
     readonly isRmrkPropertyKeyIsTooLong: boolean;
@@ -3742,7 +3746,7 @@
     readonly type: 'CorruptedCollectionType' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'RmrkPropertyIsNotFound' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'CannotRejectNonPendingNft' | 'ResourceNotPending' | 'NoAvailableResourceId';
   }
 
-  /** @name PalletRmrkEquipError (444) */
+  /** @name PalletRmrkEquipError (447) */
   interface PalletRmrkEquipError extends Enum {
     readonly isPermissionError: boolean;
     readonly isNoAvailableBaseId: boolean;
@@ -3754,7 +3758,7 @@
     readonly type: 'PermissionError' | 'NoAvailableBaseId' | 'NoAvailablePartId' | 'BaseDoesntExist' | 'NeedsDefaultThemeFirst' | 'PartDoesntExist' | 'NoEquippableOnFixedPart';
   }
 
-  /** @name PalletAppPromotionError (450) */
+  /** @name PalletAppPromotionError (453) */
   interface PalletAppPromotionError extends Enum {
     readonly isAdminNotSet: boolean;
     readonly isNoPermission: boolean;
@@ -3765,7 +3769,7 @@
     readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'SponsorNotSet' | 'IncorrectLockedBalanceOperation';
   }
 
-  /** @name PalletForeignAssetsModuleError (451) */
+  /** @name PalletForeignAssetsModuleError (454) */
   interface PalletForeignAssetsModuleError extends Enum {
     readonly isBadLocation: boolean;
     readonly isMultiLocationExisted: boolean;
@@ -3774,7 +3778,7 @@
     readonly type: 'BadLocation' | 'MultiLocationExisted' | 'AssetIdNotExists' | 'AssetIdExisted';
   }
 
-  /** @name PalletEvmError (453) */
+  /** @name PalletEvmError (456) */
   interface PalletEvmError extends Enum {
     readonly isBalanceLow: boolean;
     readonly isFeeOverflow: boolean;
@@ -3789,7 +3793,7 @@
     readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce' | 'GasLimitTooLow' | 'GasLimitTooHigh' | 'Undefined' | 'Reentrancy';
   }
 
-  /** @name FpRpcTransactionStatus (456) */
+  /** @name FpRpcTransactionStatus (459) */
   interface FpRpcTransactionStatus extends Struct {
     readonly transactionHash: H256;
     readonly transactionIndex: u32;
@@ -3800,10 +3804,10 @@
     readonly logsBloom: EthbloomBloom;
   }
 
-  /** @name EthbloomBloom (458) */
+  /** @name EthbloomBloom (461) */
   interface EthbloomBloom extends U8aFixed {}
 
-  /** @name EthereumReceiptReceiptV3 (460) */
+  /** @name EthereumReceiptReceiptV3 (463) */
   interface EthereumReceiptReceiptV3 extends Enum {
     readonly isLegacy: boolean;
     readonly asLegacy: EthereumReceiptEip658ReceiptData;
@@ -3814,7 +3818,7 @@
     readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
   }
 
-  /** @name EthereumReceiptEip658ReceiptData (461) */
+  /** @name EthereumReceiptEip658ReceiptData (464) */
   interface EthereumReceiptEip658ReceiptData extends Struct {
     readonly statusCode: u8;
     readonly usedGas: U256;
@@ -3822,14 +3826,14 @@
     readonly logs: Vec<EthereumLog>;
   }
 
-  /** @name EthereumBlock (462) */
+  /** @name EthereumBlock (465) */
   interface EthereumBlock extends Struct {
     readonly header: EthereumHeader;
     readonly transactions: Vec<EthereumTransactionTransactionV2>;
     readonly ommers: Vec<EthereumHeader>;
   }
 
-  /** @name EthereumHeader (463) */
+  /** @name EthereumHeader (466) */
   interface EthereumHeader extends Struct {
     readonly parentHash: H256;
     readonly ommersHash: H256;
@@ -3848,24 +3852,24 @@
     readonly nonce: EthereumTypesHashH64;
   }
 
-  /** @name EthereumTypesHashH64 (464) */
+  /** @name EthereumTypesHashH64 (467) */
   interface EthereumTypesHashH64 extends U8aFixed {}
 
-  /** @name PalletEthereumError (469) */
+  /** @name PalletEthereumError (472) */
   interface PalletEthereumError extends Enum {
     readonly isInvalidSignature: boolean;
     readonly isPreLogExists: boolean;
     readonly type: 'InvalidSignature' | 'PreLogExists';
   }
 
-  /** @name PalletEvmCoderSubstrateError (470) */
+  /** @name PalletEvmCoderSubstrateError (473) */
   interface PalletEvmCoderSubstrateError extends Enum {
     readonly isOutOfGas: boolean;
     readonly isOutOfFund: boolean;
     readonly type: 'OutOfGas' | 'OutOfFund';
   }
 
-  /** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr (471) */
+  /** @name UpDataStructsSponsorshipStateBasicCrossAccountIdRepr (474) */
   interface UpDataStructsSponsorshipStateBasicCrossAccountIdRepr extends Enum {
     readonly isDisabled: boolean;
     readonly isUnconfirmed: boolean;
@@ -3875,7 +3879,7 @@
     readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
   }
 
-  /** @name PalletEvmContractHelpersSponsoringModeT (472) */
+  /** @name PalletEvmContractHelpersSponsoringModeT (475) */
   interface PalletEvmContractHelpersSponsoringModeT extends Enum {
     readonly isDisabled: boolean;
     readonly isAllowlisted: boolean;
@@ -3883,7 +3887,7 @@
     readonly type: 'Disabled' | 'Allowlisted' | 'Generous';
   }
 
-  /** @name PalletEvmContractHelpersError (478) */
+  /** @name PalletEvmContractHelpersError (481) */
   interface PalletEvmContractHelpersError extends Enum {
     readonly isNoPermission: boolean;
     readonly isNoPendingSponsor: boolean;
@@ -3891,7 +3895,7 @@
     readonly type: 'NoPermission' | 'NoPendingSponsor' | 'TooManyMethodsHaveSponsoredLimit';
   }
 
-  /** @name PalletEvmMigrationError (479) */
+  /** @name PalletEvmMigrationError (482) */
   interface PalletEvmMigrationError extends Enum {
     readonly isAccountNotEmpty: boolean;
     readonly isAccountIsNotMigrating: boolean;
@@ -3899,17 +3903,17 @@
     readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating' | 'BadEvent';
   }
 
-  /** @name PalletMaintenanceError (480) */
+  /** @name PalletMaintenanceError (483) */
   type PalletMaintenanceError = Null;
 
-  /** @name PalletTestUtilsError (481) */
+  /** @name PalletTestUtilsError (484) */
   interface PalletTestUtilsError extends Enum {
     readonly isTestPalletDisabled: boolean;
     readonly isTriggerRollback: boolean;
     readonly type: 'TestPalletDisabled' | 'TriggerRollback';
   }
 
-  /** @name SpRuntimeMultiSignature (483) */
+  /** @name SpRuntimeMultiSignature (486) */
   interface SpRuntimeMultiSignature extends Enum {
     readonly isEd25519: boolean;
     readonly asEd25519: SpCoreEd25519Signature;
@@ -3920,40 +3924,40 @@
     readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';
   }
 
-  /** @name SpCoreEd25519Signature (484) */
+  /** @name SpCoreEd25519Signature (487) */
   interface SpCoreEd25519Signature extends U8aFixed {}
 
-  /** @name SpCoreSr25519Signature (486) */
+  /** @name SpCoreSr25519Signature (489) */
   interface SpCoreSr25519Signature extends U8aFixed {}
 
-  /** @name SpCoreEcdsaSignature (487) */
+  /** @name SpCoreEcdsaSignature (490) */
   interface SpCoreEcdsaSignature extends U8aFixed {}
 
-  /** @name FrameSystemExtensionsCheckSpecVersion (490) */
+  /** @name FrameSystemExtensionsCheckSpecVersion (493) */
   type FrameSystemExtensionsCheckSpecVersion = Null;
 
-  /** @name FrameSystemExtensionsCheckTxVersion (491) */
+  /** @name FrameSystemExtensionsCheckTxVersion (494) */
   type FrameSystemExtensionsCheckTxVersion = Null;
 
-  /** @name FrameSystemExtensionsCheckGenesis (492) */
+  /** @name FrameSystemExtensionsCheckGenesis (495) */
   type FrameSystemExtensionsCheckGenesis = Null;
 
-  /** @name FrameSystemExtensionsCheckNonce (495) */
+  /** @name FrameSystemExtensionsCheckNonce (498) */
   interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}
 
-  /** @name FrameSystemExtensionsCheckWeight (496) */
+  /** @name FrameSystemExtensionsCheckWeight (499) */
   type FrameSystemExtensionsCheckWeight = Null;
 
-  /** @name OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance (497) */
+  /** @name OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance (500) */
   type OpalRuntimeRuntimeCommonMaintenanceCheckMaintenance = Null;
 
-  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (498) */
+  /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (501) */
   interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}
 
-  /** @name OpalRuntimeRuntime (499) */
+  /** @name OpalRuntimeRuntime (502) */
   type OpalRuntimeRuntime = Null;
 
-  /** @name PalletEthereumFakeTransactionFinalizer (500) */
+  /** @name PalletEthereumFakeTransactionFinalizer (503) */
   type PalletEthereumFakeTransactionFinalizer = Null;
 
 } // declare module