difftreelog
code refactor & comments
in: master
12 files changed
Cargo.lockdiffbeforeafterboth--- a/Cargo.lock
+++ b/Cargo.lock
@@ -12147,7 +12147,7 @@
[[package]]
name = "uc-rpc"
-version = "0.1.3"
+version = "0.1.4"
dependencies = [
"anyhow",
"app-promotion-rpc",
client/rpc/CHANGELOG.mddiffbeforeafterboth--- a/client/rpc/CHANGELOG.md
+++ b/client/rpc/CHANGELOG.md
@@ -3,15 +3,21 @@
All notable changes to this project will be documented in this file.
<!-- bureaucrate goes here -->
+
+## [v0.1.4] 2022-09-08
+
+### Added
+- Support RPC for `AppPromotion` pallet.
+
## [v0.1.3] 2022-08-16
### Other changes
-- build: Upgrade polkadot to v0.9.27 2c498572636f2b34d53b1c51b7283a761a7dc90a
+- build: Upgrade polkadot to v0.9.27 2c498572636f2b34d53b1c51b7283a761a7dc90a
-- build: Upgrade polkadot to v0.9.26 85515e54c4ca1b82a2630034e55dcc804c643bf8
+- build: Upgrade polkadot to v0.9.26 85515e54c4ca1b82a2630034e55dcc804c643bf8
-- build: Upgrade polkadot to v0.9.25 cdfb9bdc7b205ff1b5134f034ef9973d769e5e6b
+- build: Upgrade polkadot to v0.9.25 cdfb9bdc7b205ff1b5134f034ef9973d769e5e6b
## [0.1.2] - 2022-08-12
client/rpc/Cargo.tomldiffbeforeafterboth--- a/client/rpc/Cargo.toml
+++ b/client/rpc/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "uc-rpc"
-version = "0.1.3"
+version = "0.1.4"
license = "GPLv3"
edition = "2021"
pallets/app-promotion/src/lib.rsdiffbeforeafterboth--- a/pallets/app-promotion/src/lib.rs
+++ b/pallets/app-promotion/src/lib.rs
@@ -22,9 +22,6 @@
//!
//! ### Dispatchable Functions
//!
-//! * `start_inflation` - This method sets the inflation start date. Can be only called once.
-//! Inflation start block can be backdated and will catch up. The method will create Treasury
-//! account if it does not exist and perform the first inflation deposit.
// #![recursion_limit = "1024"]
#![cfg_attr(not(feature = "std"), no_std)]
@@ -48,7 +45,6 @@
use pallet_balances::BalanceLock;
pub use types::*;
-// use up_common::constants::{DAYS, UNIQUE};
use up_data_structs::CollectionId;
use frame_support::{
@@ -87,16 +83,20 @@
#[pallet::config]
pub trait Config: frame_system::Config + pallet_evm::account::Config {
+ /// Type to interact with the native token
type Currency: ExtendedLockableCurrency<Self::AccountId>
+ ReservableCurrency<Self::AccountId>;
+ /// Type for interacting with collections
type CollectionHandler: CollectionHandler<
AccountId = Self::AccountId,
CollectionId = CollectionId,
>;
+ /// Type for interacting with conrtacts
type ContractHandler: ContractHandler<AccountId = Self::CrossAccountId, ContractId = H160>;
+ /// ID for treasury
type TreasuryAccountId: Get<Self::AccountId>;
/// The app's pallet id, used for deriving its sovereign account ID.
@@ -106,15 +106,18 @@
/// In relay blocks.
#[pallet::constant]
type RecalculationInterval: Get<Self::BlockNumber>;
- /// In relay blocks.
+
+ /// In parachain blocks.
#[pallet::constant]
type PendingInterval: Get<Self::BlockNumber>;
+ /// Rate of return for interval in blocks defined in `RecalculationInterval`.
#[pallet::constant]
- type Nominal: Get<BalanceOf<Self>>;
+ type IntervalIncome: Get<Perbill>;
+ /// Decimals for the `Currency`.
#[pallet::constant]
- type IntervalIncome: Get<Perbill>;
+ type Nominal: Get<BalanceOf<Self>>;
/// Weight information for extrinsics in this pallet.
type WeightInfo: WeightInfo;
@@ -133,6 +136,12 @@
#[pallet::event]
#[pallet::generate_deposit(fn deposit_event)]
pub enum Event<T: Config> {
+ /// Staking recalculation was performed
+ ///
+ /// # Arguments
+ /// * AccountId: ID of the staker.
+ /// * Balance : recalculation base
+ /// * Balance : total income
StakingRecalculation(
/// An recalculated staker
T::AccountId,
@@ -141,22 +150,42 @@
/// Amount of accrued interest
BalanceOf<T>,
),
+
+ /// Staking was performed
+ ///
+ /// # Arguments
+ /// * AccountId: ID of the staker
+ /// * Balance : staking amount
Stake(T::AccountId, BalanceOf<T>),
+
+ /// Unstaking was performed
+ ///
+ /// # Arguments
+ /// * AccountId: ID of the staker
+ /// * Balance : unstaking amount
Unstake(T::AccountId, BalanceOf<T>),
+
+ /// The admin was set
+ ///
+ /// # Arguments
+ /// * AccountId: ID of the admin
SetAdmin(T::AccountId),
}
#[pallet::error]
pub enum Error<T> {
- /// Error due to action requiring admin to be set
+ /// Error due to action requiring admin to be set.
AdminNotSet,
- /// No permission to perform an action
+ /// No permission to perform an action.
NoPermission,
- /// Insufficient funds to perform an action
+ /// Insufficient funds to perform an action.
NotSufficientFunds,
+ /// Occurs when a pending unstake cannot be added in this block. PENDING_LIMIT_PER_BLOCK` limits exceeded.
PendingForBlockOverflow,
- /// An error related to the fact that an invalid argument was passed to perform an action
+ /// The error is due to the fact that the collection/contract must already be sponsored in order to perform the action.
SponsorNotSet,
+ /// Errors caused by incorrect actions with a locked balance.
+ IncorrectLockedBalanceOperation,
}
#[pallet::storage]
@@ -189,7 +218,7 @@
ValueQuery,
>;
- /// Stores hash a record for which the last revenue recalculation was performed.
+ /// Stores a key for record for which the next revenue recalculation would be performed.
/// If `None`, then recalculation has not yet been performed or calculations have been completed for all stakers.
#[pallet::storage]
#[pallet::getter(fn get_next_calculated_record)]
@@ -198,6 +227,9 @@
#[pallet::hooks]
impl<T: Config> Hooks<BlockNumberFor<T>> for Pallet<T> {
+ /// Block overflow is impossible due to the fact that the unstake algorithm in on_initialize
+ /// implies the execution of a strictly limited number of relatively lightweight operations.
+ /// A separate benchmark has been implemented to scale the weight depending on the number of pendings.
fn on_initialize(current_block_number: T::BlockNumber) -> Weight
where
<T as frame_system::Config>::BlockNumber: From<u32>,
@@ -242,15 +274,13 @@
);
ensure!(
- amount >= Into::<BalanceOf<T>>::into(100u128) * T::Nominal::get(),
+ amount >= <BalanceOf<T>>::from(100u128) * T::Nominal::get(),
ArithmeticError::Underflow
);
let balance =
<<T as Config>::Currency as Currency<T::AccountId>>::free_balance(&staker_id);
- // ensure!(balance >= amount, ArithmeticError::Underflow);
-
<<T as Config>::Currency as Currency<T::AccountId>>::ensure_can_withdraw(
&staker_id,
amount,
@@ -325,7 +355,7 @@
<PendingUnstake<T>>::insert(block, pendings);
- Self::unlock_balance_unchecked(&staker_id, total_staked);
+ Self::unlock_balance(&staker_id, total_staked)?;
<T::Currency as ReservableCurrency<T::AccountId>>::reserve(&staker_id, total_staked)?;
@@ -400,8 +430,9 @@
);
ensure!(
- T::ContractHandler::sponsor(contract_id)?.ok_or(<Error<T>>::SponsorNotSet)?
- == T::CrossAccountId::from_sub(Self::account_id()),
+ T::ContractHandler::sponsor(contract_id)?
+ .ok_or(<Error<T>>::SponsorNotSet)?
+ .as_sub() == &Self::account_id(),
<Error<T>>::NoPermission
);
T::ContractHandler::remove_contract_sponsor(contract_id)
@@ -469,77 +500,9 @@
// / T::RecalculationInterval::get())
// .into() + 1,
// &mut income_acc,
- // );
- // }
- // }
- // }
-
- // {
- // let mut stakers_number = stakers_number.unwrap_or(20);
- // let last_id = RefCell::new(None);
- // let income_acc = RefCell::new(BalanceOf::<T>::default());
- // let amount_acc = RefCell::new(BalanceOf::<T>::default());
-
- // let flush_stake = || -> DispatchResult {
- // if let Some(last_id) = &*last_id.borrow() {
- // if !income_acc.borrow().is_zero() {
- // <T::Currency as Currency<T::AccountId>>::transfer(
- // &T::TreasuryAccountId::get(),
- // last_id,
- // *income_acc.borrow(),
- // ExistenceRequirement::KeepAlive,
- // )
- // .and_then(|_| {
- // Self::add_lock_balance(last_id, *income_acc.borrow());
- // <TotalStaked<T>>::try_mutate(|staked| {
- // staked
- // .checked_add(&*income_acc.borrow())
- // .ok_or(ArithmeticError::Overflow.into())
- // })
- // })?;
-
- // Self::deposit_event(Event::StakingRecalculation(
- // last_id.clone(),
- // *amount_acc.borrow(),
- // *income_acc.borrow(),
- // ));
- // }
-
- // *income_acc.borrow_mut() = BalanceOf::<T>::default();
- // *amount_acc.borrow_mut() = BalanceOf::<T>::default();
- // }
- // Ok(())
- // };
-
- // while let Some((
- // (current_id, staked_block),
- // (amount, next_recalc_block_for_stake),
- // )) = storage_iterator.next()
- // {
- // if stakers_number == 0 {
- // NextCalculatedRecord::<T>::set(Some((current_id, staked_block)));
- // break;
- // }
- // stakers_number -= 1;
- // if last_id.borrow().as_ref() != Some(¤t_id) {
- // flush_stake()?;
- // };
- // *last_id.borrow_mut() = Some(current_id.clone());
- // if current_recalc_block >= next_recalc_block_for_stake {
- // *amount_acc.borrow_mut() += amount;
- // Self::recalculate_and_insert_stake(
- // ¤t_id,
- // staked_block,
- // next_recalc_block,
- // amount,
- // ((current_recalc_block - next_recalc_block_for_stake)
- // / T::RecalculationInterval::get())
- // .into() + 1,
- // &mut *income_acc.borrow_mut(),
// );
// }
// }
- // flush_stake()?;
// }
{
@@ -620,10 +583,20 @@
T::PalletId::get().into_account_truncating()
}
- fn unlock_balance_unchecked(staker: &T::AccountId, amount: BalanceOf<T>) {
- let mut locked_balance = Self::get_locked_balance(staker).map(|l| l.amount).unwrap();
- locked_balance -= amount;
- Self::set_lock_unchecked(staker, locked_balance);
+ fn unlock_balance(staker: &T::AccountId, amount: BalanceOf<T>) -> DispatchResult {
+ let locked_balance = Self::get_locked_balance(staker)
+ .map(|l| l.amount)
+ .ok_or(<Error<T>>::IncorrectLockedBalanceOperation)?;
+
+ // It is understood that we cannot unlock more funds than were locked by staking.
+ // Therefore, if implemented correctly, this error should not occur.
+ Self::set_lock_unchecked(
+ staker,
+ locked_balance
+ .checked_sub(&amount)
+ .ok_or(ArithmeticError::Underflow)?,
+ );
+ Ok(())
}
fn add_lock_balance(staker: &T::AccountId, amount: BalanceOf<T>) -> DispatchResult {
@@ -745,6 +718,9 @@
where
<<T as Config>::Currency as Currency<T::AccountId>>::Balance: Sum,
{
+ /// Since user funds are not transferred anywhere by staking, overflow protection is provided
+ /// at the level of the associated type `Balance` of `Currency` trait. In order to overflow,
+ /// the staker must have more funds on his account than the maximum set for `Balance` type.
pub fn cross_id_pending_unstake(staker: Option<T::CrossAccountId>) -> BalanceOf<T> {
staker.map_or(
PendingUnstake::<T>::iter_values()
pallets/unique/CHANGELOG.mddiffbeforeafterboth--- a/pallets/unique/CHANGELOG.md
+++ b/pallets/unique/CHANGELOG.md
@@ -8,6 +8,8 @@
### Added
+- Methods `force_set_sponsor` , `force_remove_collection_sponsor` to be able to administer sponsorships with other pallets. Added to implement `AppPromotion` pallet logic.
+
## [v0.1.3] 2022-08-16
### Other changes
tests/src/interfaces/augment-api-consts.tsdiffbeforeafterboth--- a/tests/src/interfaces/augment-api-consts.ts
+++ b/tests/src/interfaces/augment-api-consts.ts
@@ -16,14 +16,20 @@
declare module '@polkadot/api-base/types/consts' {
interface AugmentedConsts<ApiType extends ApiTypes> {
appPromotion: {
+ /**
+ * Rate of return for interval in blocks defined in `RecalculationInterval`.
+ **/
intervalIncome: Perbill & AugmentedConst<ApiType>;
+ /**
+ * Decimals for the `Currency`.
+ **/
nominal: u128 & AugmentedConst<ApiType>;
/**
* The app's pallet id, used for deriving its sovereign account ID.
**/
palletId: FrameSupportPalletId & AugmentedConst<ApiType>;
/**
- * In relay blocks.
+ * In parachain blocks.
**/
pendingInterval: u32 & AugmentedConst<ApiType>;
/**
tests/src/interfaces/augment-api-errors.tsdiffbeforeafterboth--- a/tests/src/interfaces/augment-api-errors.ts
+++ b/tests/src/interfaces/augment-api-errors.ts
@@ -13,23 +13,30 @@
interface AugmentedErrors<ApiType extends ApiTypes> {
appPromotion: {
/**
- * Error due to action requiring admin to be set
+ * Error due to action requiring admin to be set.
**/
AdminNotSet: AugmentedError<ApiType>;
/**
- * An error related to the fact that an invalid argument was passed to perform an action
+ * Errors caused by incorrect actions with a locked balance.
**/
- InvalidArgument: AugmentedError<ApiType>;
+ IncorrectLockedBalanceOperation: AugmentedError<ApiType>;
/**
- * No permission to perform an action
+ * No permission to perform an action.
**/
NoPermission: AugmentedError<ApiType>;
/**
- * Insufficient funds to perform an action
+ * Insufficient funds to perform an action.
**/
NotSufficientFunds: AugmentedError<ApiType>;
+ /**
+ * Occurs when a pending unstake cannot be added in this block. PENDING_LIMIT_PER_BLOCK` limits exceeded.
+ **/
PendingForBlockOverflow: AugmentedError<ApiType>;
/**
+ * The error is due to the fact that the collection/contract must already be sponsored in order to perform the action.
+ **/
+ SponsorNotSet: AugmentedError<ApiType>;
+ /**
* Generic error
**/
[key: string]: AugmentedError<ApiType>;
tests/src/interfaces/augment-api-events.tsdiffbeforeafterboth--- a/tests/src/interfaces/augment-api-events.ts
+++ b/tests/src/interfaces/augment-api-events.ts
@@ -16,9 +16,37 @@
declare module '@polkadot/api-base/types/events' {
interface AugmentedEvents<ApiType extends ApiTypes> {
appPromotion: {
+ /**
+ * The admin was set
+ *
+ * # Arguments
+ * * AccountId: ID of the admin
+ **/
SetAdmin: AugmentedEvent<ApiType, [AccountId32]>;
+ /**
+ * Staking was performed
+ *
+ * # Arguments
+ * * AccountId: ID of the staker
+ * * Balance : staking amount
+ **/
Stake: AugmentedEvent<ApiType, [AccountId32, u128]>;
+ /**
+ * Staking recalculation was performed
+ *
+ * # Arguments
+ * * AccountId: ID of the staker.
+ * * Balance : recalculation base
+ * * Balance : total income
+ **/
StakingRecalculation: AugmentedEvent<ApiType, [AccountId32, u128, u128]>;
+ /**
+ * Unstaking was performed
+ *
+ * # Arguments
+ * * AccountId: ID of the staker
+ * * Balance : unstaking amount
+ **/
Unstake: AugmentedEvent<ApiType, [AccountId32, u128]>;
/**
* Generic event
tests/src/interfaces/augment-api-query.tsdiffbeforeafterboth1// 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/storage';78import type { ApiTypes, AugmentedQuery, QueryableStorageEntry } from '@polkadot/api-base/types';9import type { BTreeMap, Bytes, Option, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';10import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';11import type { AccountId32, H160, H256 } from '@polkadot/types/interfaces/runtime';12import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumLog, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportWeightsPerDispatchClassU64, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletNonfungibleItemData, PalletRefungibleItemData, PalletTransactionPaymentReleases, PalletTreasuryProposal, PalletUniqueSchedulerScheduledV3, PhantomTypeUpDataStructs, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, SpRuntimeDigest, SpTrieStorageProof, UpDataStructsCollection, UpDataStructsCollectionStats, UpDataStructsProperties, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild } from '@polkadot/types/lookup';13import type { Observable } from '@polkadot/types/types';1415export type __AugmentedQuery<ApiType extends ApiTypes> = AugmentedQuery<ApiType, () => unknown>;16export type __QueryableStorageEntry<ApiType extends ApiTypes> = QueryableStorageEntry<ApiType>;1718declare module '@polkadot/api-base/types/storage' {19 interface AugmentedQueries<ApiType extends ApiTypes> {20 appPromotion: {21 admin: AugmentedQuery<ApiType, () => Observable<Option<AccountId32>>, []> & QueryableStorageEntry<ApiType, []>;22 /**23 * Stores hash a record for which the last revenue recalculation was performed.24 * If `None`, then recalculation has not yet been performed or calculations have been completed for all stakers.25 **/26 nextCalculatedRecord: AugmentedQuery<ApiType, () => Observable<Option<ITuple<[AccountId32, u32]>>>, []> & QueryableStorageEntry<ApiType, []>;27 /**28 * Amount of tokens pending unstake per user per block.29 **/30 pendingUnstake: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Vec<ITuple<[AccountId32, u128]>>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;31 /**32 * Amount of tokens staked by account in the blocknumber.33 **/34 staked: AugmentedQuery<ApiType, (arg1: AccountId32 | string | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<ITuple<[u128, u32]>>, [AccountId32, u32]> & QueryableStorageEntry<ApiType, [AccountId32, u32]>;35 /**36 * Amount of stakes for an Account37 **/38 stakesPerAccount: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<u8>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;39 totalStaked: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;40 /**41 * Generic query42 **/43 [key: string]: QueryableStorageEntry<ApiType>;44 };45 balances: {46 /**47 * The Balances pallet example of storing the balance of an account.48 * 49 * # Example50 * 51 * ```nocompile52 * impl pallet_balances::Config for Runtime {53 * type AccountStore = StorageMapShim<Self::Account<Runtime>, frame_system::Provider<Runtime>, AccountId, Self::AccountData<Balance>>54 * }55 * ```56 * 57 * You can also store the balance of an account in the `System` pallet.58 * 59 * # Example60 * 61 * ```nocompile62 * impl pallet_balances::Config for Runtime {63 * type AccountStore = System64 * }65 * ```66 * 67 * But this comes with tradeoffs, storing account balances in the system pallet stores68 * `frame_system` data alongside the account data contrary to storing account balances in the69 * `Balances` pallet, which uses a `StorageMap` to store balances data only.70 * NOTE: This is only used in the case that this pallet is used to store balances.71 **/72 account: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<PalletBalancesAccountData>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;73 /**74 * Any liquidity locks on some account balances.75 * NOTE: Should only be accessed when setting, changing and freeing a lock.76 **/77 locks: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<PalletBalancesBalanceLock>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;78 /**79 * Named reserves on some account balances.80 **/81 reserves: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<PalletBalancesReserveData>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;82 /**83 * Storage version of the pallet.84 * 85 * This is set to v2.0.0 for new networks.86 **/87 storageVersion: AugmentedQuery<ApiType, () => Observable<PalletBalancesReleases>, []> & QueryableStorageEntry<ApiType, []>;88 /**89 * The total units issued in the system.90 **/91 totalIssuance: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;92 /**93 * Generic query94 **/95 [key: string]: QueryableStorageEntry<ApiType>;96 };97 charging: {98 /**99 * Generic query100 **/101 [key: string]: QueryableStorageEntry<ApiType>;102 };103 common: {104 /**105 * Storage of the amount of collection admins.106 **/107 adminAmount: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;108 /**109 * Allowlisted collection users.110 **/111 allowlist: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;112 /**113 * Storage of collection info.114 **/115 collectionById: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<UpDataStructsCollection>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;116 /**117 * Storage of collection properties.118 **/119 collectionProperties: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<UpDataStructsProperties>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;120 /**121 * Storage of token property permissions of a collection.122 **/123 collectionPropertyPermissions: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<BTreeMap<Bytes, UpDataStructsPropertyPermission>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;124 /**125 * Storage of the count of created collections. Essentially contains the last collection ID.126 **/127 createdCollectionCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;128 /**129 * Storage of the count of deleted collections.130 **/131 destroyedCollectionCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;132 /**133 * Not used by code, exists only to provide some types to metadata.134 **/135 dummyStorageValue: AugmentedQuery<ApiType, () => Observable<Option<ITuple<[UpDataStructsCollectionStats, u32, u32, UpDataStructsTokenChild, PhantomTypeUpDataStructs]>>>, []> & QueryableStorageEntry<ApiType, []>;136 /**137 * List of collection admins.138 **/139 isAdmin: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;140 /**141 * Generic query142 **/143 [key: string]: QueryableStorageEntry<ApiType>;144 };145 configuration: {146 minGasPriceOverride: AugmentedQuery<ApiType, () => Observable<u64>, []> & QueryableStorageEntry<ApiType, []>;147 weightToFeeCoefficientOverride: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;148 /**149 * Generic query150 **/151 [key: string]: QueryableStorageEntry<ApiType>;152 };153 dmpQueue: {154 /**155 * The configuration.156 **/157 configuration: AugmentedQuery<ApiType, () => Observable<CumulusPalletDmpQueueConfigData>, []> & QueryableStorageEntry<ApiType, []>;158 /**159 * The overweight messages.160 **/161 overweight: AugmentedQuery<ApiType, (arg: u64 | AnyNumber | Uint8Array) => Observable<Option<ITuple<[u32, Bytes]>>>, [u64]> & QueryableStorageEntry<ApiType, [u64]>;162 /**163 * The page index.164 **/165 pageIndex: AugmentedQuery<ApiType, () => Observable<CumulusPalletDmpQueuePageIndexData>, []> & QueryableStorageEntry<ApiType, []>;166 /**167 * The queue pages.168 **/169 pages: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Vec<ITuple<[u32, Bytes]>>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;170 /**171 * Generic query172 **/173 [key: string]: QueryableStorageEntry<ApiType>;174 };175 ethereum: {176 blockHash: AugmentedQuery<ApiType, (arg: U256 | AnyNumber | Uint8Array) => Observable<H256>, [U256]> & QueryableStorageEntry<ApiType, [U256]>;177 /**178 * The current Ethereum block.179 **/180 currentBlock: AugmentedQuery<ApiType, () => Observable<Option<EthereumBlock>>, []> & QueryableStorageEntry<ApiType, []>;181 /**182 * The current Ethereum receipts.183 **/184 currentReceipts: AugmentedQuery<ApiType, () => Observable<Option<Vec<EthereumReceiptReceiptV3>>>, []> & QueryableStorageEntry<ApiType, []>;185 /**186 * The current transaction statuses.187 **/188 currentTransactionStatuses: AugmentedQuery<ApiType, () => Observable<Option<Vec<FpRpcTransactionStatus>>>, []> & QueryableStorageEntry<ApiType, []>;189 /**190 * Injected transactions should have unique nonce, here we store current191 **/192 injectedNonce: AugmentedQuery<ApiType, () => Observable<U256>, []> & QueryableStorageEntry<ApiType, []>;193 /**194 * Current building block's transactions and receipts.195 **/196 pending: AugmentedQuery<ApiType, () => Observable<Vec<ITuple<[EthereumTransactionTransactionV2, FpRpcTransactionStatus, EthereumReceiptReceiptV3]>>>, []> & QueryableStorageEntry<ApiType, []>;197 /**198 * Generic query199 **/200 [key: string]: QueryableStorageEntry<ApiType>;201 };202 evm: {203 accountCodes: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<Bytes>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;204 accountStorages: AugmentedQuery<ApiType, (arg1: H160 | string | Uint8Array, arg2: H256 | string | Uint8Array) => Observable<H256>, [H160, H256]> & QueryableStorageEntry<ApiType, [H160, H256]>;205 /**206 * Written on log, reset after transaction207 * Should be empty between transactions208 **/209 currentLogs: AugmentedQuery<ApiType, () => Observable<Vec<EthereumLog>>, []> & QueryableStorageEntry<ApiType, []>;210 /**211 * Generic query212 **/213 [key: string]: QueryableStorageEntry<ApiType>;214 };215 evmCoderSubstrate: {216 /**217 * Generic query218 **/219 [key: string]: QueryableStorageEntry<ApiType>;220 };221 evmContractHelpers: {222 /**223 * Storage for users that allowed for sponsorship.224 * 225 * ### Usage226 * Prefer to delete record from storage if user no more allowed for sponsorship.227 * 228 * * **Key1** - contract address.229 * * **Key2** - user that allowed for sponsorship.230 * * **Value** - allowance for sponsorship.231 **/232 allowlist: AugmentedQuery<ApiType, (arg1: H160 | string | Uint8Array, arg2: H160 | string | Uint8Array) => Observable<bool>, [H160, H160]> & QueryableStorageEntry<ApiType, [H160, H160]>;233 /**234 * Storege for contracts with [`Allowlisted`](SponsoringModeT::Allowlisted) sponsoring mode.235 * 236 * ### Usage237 * Prefer to delete collection from storage if mode chaged to non `Allowlisted`, than set **Value** to **false**.238 * 239 * * **Key** - contract address.240 * * **Value** - is contract in [`Allowlisted`](SponsoringModeT::Allowlisted) mode.241 **/242 allowlistEnabled: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<bool>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;243 /**244 * Store owner for contract.245 * 246 * * **Key** - contract address.247 * * **Value** - owner for contract.248 **/249 owner: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<H160>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;250 selfSponsoring: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<bool>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;251 /**252 * Storage for last sponsored block.253 * 254 * * **Key1** - contract address.255 * * **Key2** - sponsored user address.256 * * **Value** - last sponsored block number.257 **/258 sponsorBasket: AugmentedQuery<ApiType, (arg1: H160 | string | Uint8Array, arg2: H160 | string | Uint8Array) => Observable<Option<u32>>, [H160, H160]> & QueryableStorageEntry<ApiType, [H160, H160]>;259 /**260 * Store for contract sponsorship state.261 * 262 * * **Key** - contract address.263 * * **Value** - sponsorship state.264 **/265 sponsoring: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<UpDataStructsSponsorshipStateBasicCrossAccountIdRepr>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;266 /**267 * Store for sponsoring mode.268 * 269 * ### Usage270 * Prefer to delete collection from storage if mode chaged to [`Disabled`](SponsoringModeT::Disabled).271 * 272 * * **Key** - contract address.273 * * **Value** - [`sponsoring mode`](SponsoringModeT).274 **/275 sponsoringMode: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<Option<PalletEvmContractHelpersSponsoringModeT>>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;276 /**277 * Storage for sponsoring rate limit in blocks.278 * 279 * * **Key** - contract address.280 * * **Value** - amount of sponsored blocks.281 **/282 sponsoringRateLimit: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<u32>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;283 /**284 * Generic query285 **/286 [key: string]: QueryableStorageEntry<ApiType>;287 };288 evmMigration: {289 migrationPending: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<bool>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;290 /**291 * Generic query292 **/293 [key: string]: QueryableStorageEntry<ApiType>;294 };295 fungible: {296 /**297 * Storage for assets delegated to a limited extent to other users.298 **/299 allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]>;300 /**301 * Amount of tokens owned by an account inside a collection.302 **/303 balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;304 /**305 * Total amount of fungible tokens inside a collection.306 **/307 totalSupply: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u128>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;308 /**309 * Generic query310 **/311 [key: string]: QueryableStorageEntry<ApiType>;312 };313 inflation: {314 /**315 * Current inflation for `InflationBlockInterval` number of blocks316 **/317 blockInflation: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;318 /**319 * Next target (relay) block when inflation will be applied320 **/321 nextInflationBlock: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;322 /**323 * Next target (relay) block when inflation is recalculated324 **/325 nextRecalculationBlock: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;326 /**327 * Relay block when inflation has started328 **/329 startBlock: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;330 /**331 * starting year total issuance332 **/333 startingYearTotalIssuance: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;334 /**335 * Generic query336 **/337 [key: string]: QueryableStorageEntry<ApiType>;338 };339 nonfungible: {340 /**341 * Amount of tokens owned by an account in a collection.342 **/343 accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;344 /**345 * Allowance set by a token owner for another user to perform one of certain transactions on a token.346 **/347 allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletEvmAccountBasicCrossAccountIdRepr>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;348 /**349 * Used to enumerate tokens owned by account.350 **/351 owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]>;352 /**353 * Custom data of a token that is serialized to bytes,354 * primarily reserved for on-chain operations,355 * normally obscured from the external users.356 * 357 * Auxiliary properties are slightly different from358 * usual [`TokenProperties`] due to an unlimited number359 * and separately stored and written-to key-value pairs.360 * 361 * Currently used to store RMRK data.362 **/363 tokenAuxProperties: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: UpDataStructsPropertyScope | 'None' | 'Rmrk' | number | Uint8Array, arg4: Bytes | string | Uint8Array) => Observable<Option<Bytes>>, [u32, u32, UpDataStructsPropertyScope, Bytes]> & QueryableStorageEntry<ApiType, [u32, u32, UpDataStructsPropertyScope, Bytes]>;364 /**365 * Used to enumerate token's children.366 **/367 tokenChildren: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array]) => Observable<bool>, [u32, u32, ITuple<[u32, u32]>]> & QueryableStorageEntry<ApiType, [u32, u32, ITuple<[u32, u32]>]>;368 /**369 * Token data, used to partially describe a token.370 **/371 tokenData: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletNonfungibleItemData>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;372 /**373 * Map of key-value pairs, describing the metadata of a token.374 **/375 tokenProperties: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<UpDataStructsProperties>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;376 /**377 * Amount of burnt tokens in a collection.378 **/379 tokensBurnt: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;380 /**381 * Total amount of minted tokens in a collection.382 **/383 tokensMinted: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;384 /**385 * Generic query386 **/387 [key: string]: QueryableStorageEntry<ApiType>;388 };389 parachainInfo: {390 parachainId: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;391 /**392 * Generic query393 **/394 [key: string]: QueryableStorageEntry<ApiType>;395 };396 parachainSystem: {397 /**398 * The number of HRMP messages we observed in `on_initialize` and thus used that number for399 * announcing the weight of `on_initialize` and `on_finalize`.400 **/401 announcedHrmpMessagesPerCandidate: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;402 /**403 * The next authorized upgrade, if there is one.404 **/405 authorizedUpgrade: AugmentedQuery<ApiType, () => Observable<Option<H256>>, []> & QueryableStorageEntry<ApiType, []>;406 /**407 * A custom head data that should be returned as result of `validate_block`.408 * 409 * See [`Pallet::set_custom_validation_head_data`] for more information.410 **/411 customValidationHeadData: AugmentedQuery<ApiType, () => Observable<Option<Bytes>>, []> & QueryableStorageEntry<ApiType, []>;412 /**413 * Were the validation data set to notify the relay chain?414 **/415 didSetValidationCode: AugmentedQuery<ApiType, () => Observable<bool>, []> & QueryableStorageEntry<ApiType, []>;416 /**417 * The parachain host configuration that was obtained from the relay parent.418 * 419 * This field is meant to be updated each block with the validation data inherent. Therefore,420 * before processing of the inherent, e.g. in `on_initialize` this data may be stale.421 * 422 * This data is also absent from the genesis.423 **/424 hostConfiguration: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV2AbridgedHostConfiguration>>, []> & QueryableStorageEntry<ApiType, []>;425 /**426 * HRMP messages that were sent in a block.427 * 428 * This will be cleared in `on_initialize` of each new block.429 **/430 hrmpOutboundMessages: AugmentedQuery<ApiType, () => Observable<Vec<PolkadotCorePrimitivesOutboundHrmpMessage>>, []> & QueryableStorageEntry<ApiType, []>;431 /**432 * HRMP watermark that was set in a block.433 * 434 * This will be cleared in `on_initialize` of each new block.435 **/436 hrmpWatermark: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;437 /**438 * The last downward message queue chain head we have observed.439 * 440 * This value is loaded before and saved after processing inbound downward messages carried441 * by the system inherent.442 **/443 lastDmqMqcHead: AugmentedQuery<ApiType, () => Observable<H256>, []> & QueryableStorageEntry<ApiType, []>;444 /**445 * The message queue chain heads we have observed per each channel incoming channel.446 * 447 * This value is loaded before and saved after processing inbound downward messages carried448 * by the system inherent.449 **/450 lastHrmpMqcHeads: AugmentedQuery<ApiType, () => Observable<BTreeMap<u32, H256>>, []> & QueryableStorageEntry<ApiType, []>;451 /**452 * The relay chain block number associated with the last parachain block.453 **/454 lastRelayChainBlockNumber: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;455 /**456 * Validation code that is set by the parachain and is to be communicated to collator and457 * consequently the relay-chain.458 * 459 * This will be cleared in `on_initialize` of each new block if no other pallet already set460 * the value.461 **/462 newValidationCode: AugmentedQuery<ApiType, () => Observable<Option<Bytes>>, []> & QueryableStorageEntry<ApiType, []>;463 /**464 * Upward messages that are still pending and not yet send to the relay chain.465 **/466 pendingUpwardMessages: AugmentedQuery<ApiType, () => Observable<Vec<Bytes>>, []> & QueryableStorageEntry<ApiType, []>;467 /**468 * In case of a scheduled upgrade, this storage field contains the validation code to be applied.469 * 470 * As soon as the relay chain gives us the go-ahead signal, we will overwrite the [`:code`][well_known_keys::CODE]471 * which will result the next block process with the new validation code. This concludes the upgrade process.472 * 473 * [well_known_keys::CODE]: sp_core::storage::well_known_keys::CODE474 **/475 pendingValidationCode: AugmentedQuery<ApiType, () => Observable<Bytes>, []> & QueryableStorageEntry<ApiType, []>;476 /**477 * Number of downward messages processed in a block.478 * 479 * This will be cleared in `on_initialize` of each new block.480 **/481 processedDownwardMessages: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;482 /**483 * The state proof for the last relay parent block.484 * 485 * This field is meant to be updated each block with the validation data inherent. Therefore,486 * before processing of the inherent, e.g. in `on_initialize` this data may be stale.487 * 488 * This data is also absent from the genesis.489 **/490 relayStateProof: AugmentedQuery<ApiType, () => Observable<Option<SpTrieStorageProof>>, []> & QueryableStorageEntry<ApiType, []>;491 /**492 * The snapshot of some state related to messaging relevant to the current parachain as per493 * the relay parent.494 * 495 * This field is meant to be updated each block with the validation data inherent. Therefore,496 * before processing of the inherent, e.g. in `on_initialize` this data may be stale.497 * 498 * This data is also absent from the genesis.499 **/500 relevantMessagingState: AugmentedQuery<ApiType, () => Observable<Option<CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot>>, []> & QueryableStorageEntry<ApiType, []>;501 /**502 * The weight we reserve at the beginning of the block for processing DMP messages. This503 * overrides the amount set in the Config trait.504 **/505 reservedDmpWeightOverride: AugmentedQuery<ApiType, () => Observable<Option<u64>>, []> & QueryableStorageEntry<ApiType, []>;506 /**507 * The weight we reserve at the beginning of the block for processing XCMP messages. This508 * overrides the amount set in the Config trait.509 **/510 reservedXcmpWeightOverride: AugmentedQuery<ApiType, () => Observable<Option<u64>>, []> & QueryableStorageEntry<ApiType, []>;511 /**512 * An option which indicates if the relay-chain restricts signalling a validation code upgrade.513 * In other words, if this is `Some` and [`NewValidationCode`] is `Some` then the produced514 * candidate will be invalid.515 * 516 * This storage item is a mirror of the corresponding value for the current parachain from the517 * relay-chain. This value is ephemeral which means it doesn't hit the storage. This value is518 * set after the inherent.519 **/520 upgradeRestrictionSignal: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV2UpgradeRestriction>>, []> & QueryableStorageEntry<ApiType, []>;521 /**522 * Upward messages that were sent in a block.523 * 524 * This will be cleared in `on_initialize` of each new block.525 **/526 upwardMessages: AugmentedQuery<ApiType, () => Observable<Vec<Bytes>>, []> & QueryableStorageEntry<ApiType, []>;527 /**528 * The [`PersistedValidationData`] set for this block.529 * This value is expected to be set only once per block and it's never stored530 * in the trie.531 **/532 validationData: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV2PersistedValidationData>>, []> & QueryableStorageEntry<ApiType, []>;533 /**534 * Generic query535 **/536 [key: string]: QueryableStorageEntry<ApiType>;537 };538 randomnessCollectiveFlip: {539 /**540 * Series of block headers from the last 81 blocks that acts as random seed material. This541 * is arranged as a ring buffer with `block_number % 81` being the index into the `Vec` of542 * the oldest hash.543 **/544 randomMaterial: AugmentedQuery<ApiType, () => Observable<Vec<H256>>, []> & QueryableStorageEntry<ApiType, []>;545 /**546 * Generic query547 **/548 [key: string]: QueryableStorageEntry<ApiType>;549 };550 refungible: {551 /**552 * Amount of tokens (not pieces) partially owned by an account within a collection.553 **/554 accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;555 /**556 * Allowance set by a token owner for another user to perform one of certain transactions on a number of pieces of a token.557 **/558 allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg4: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]>;559 /**560 * Amount of token pieces owned by account.561 **/562 balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr]>;563 /**564 * Used to enumerate tokens owned by account.565 **/566 owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]>;567 /**568 * Token data, used to partially describe a token.569 **/570 tokenData: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<PalletRefungibleItemData>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;571 /**572 * Amount of pieces a refungible token is split into.573 **/574 tokenProperties: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<UpDataStructsProperties>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;575 /**576 * Amount of tokens burnt in a collection.577 **/578 tokensBurnt: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;579 /**580 * Total amount of minted tokens in a collection.581 **/582 tokensMinted: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;583 /**584 * Total amount of pieces for token585 **/586 totalSupply: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<u128>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;587 /**588 * Generic query589 **/590 [key: string]: QueryableStorageEntry<ApiType>;591 };592 rmrkCore: {593 /**594 * Latest yet-unused collection ID.595 **/596 collectionIndex: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;597 /**598 * Mapping from RMRK collection ID to Unique's.599 **/600 uniqueCollectionId: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;601 /**602 * Generic query603 **/604 [key: string]: QueryableStorageEntry<ApiType>;605 };606 rmrkEquip: {607 /**608 * Checkmark that a Base has a Theme NFT named "default".609 **/610 baseHasDefaultTheme: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;611 /**612 * Map of a Base ID and a Part ID to an NFT in the Base collection serving as the Part.613 **/614 inernalPartId: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;615 /**616 * Generic query617 **/618 [key: string]: QueryableStorageEntry<ApiType>;619 };620 scheduler: {621 /**622 * Items to be executed, indexed by the block number that they should be executed on.623 **/624 agenda: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Vec<Option<PalletUniqueSchedulerScheduledV3>>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;625 /**626 * Lookup from identity to the block number and index of the task.627 **/628 lookup: AugmentedQuery<ApiType, (arg: U8aFixed | string | Uint8Array) => Observable<Option<ITuple<[u32, u32]>>>, [U8aFixed]> & QueryableStorageEntry<ApiType, [U8aFixed]>;629 /**630 * Generic query631 **/632 [key: string]: QueryableStorageEntry<ApiType>;633 };634 structure: {635 /**636 * Generic query637 **/638 [key: string]: QueryableStorageEntry<ApiType>;639 };640 sudo: {641 /**642 * The `AccountId` of the sudo key.643 **/644 key: AugmentedQuery<ApiType, () => Observable<Option<AccountId32>>, []> & QueryableStorageEntry<ApiType, []>;645 /**646 * Generic query647 **/648 [key: string]: QueryableStorageEntry<ApiType>;649 };650 system: {651 /**652 * The full account information for a particular account ID.653 **/654 account: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<FrameSystemAccountInfo>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;655 /**656 * Total length (in bytes) for all extrinsics put together, for the current block.657 **/658 allExtrinsicsLen: AugmentedQuery<ApiType, () => Observable<Option<u32>>, []> & QueryableStorageEntry<ApiType, []>;659 /**660 * Map of block numbers to block hashes.661 **/662 blockHash: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<H256>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;663 /**664 * The current weight for the block.665 **/666 blockWeight: AugmentedQuery<ApiType, () => Observable<FrameSupportWeightsPerDispatchClassU64>, []> & QueryableStorageEntry<ApiType, []>;667 /**668 * Digest of the current block, also part of the block header.669 **/670 digest: AugmentedQuery<ApiType, () => Observable<SpRuntimeDigest>, []> & QueryableStorageEntry<ApiType, []>;671 /**672 * The number of events in the `Events<T>` list.673 **/674 eventCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;675 /**676 * Events deposited for the current block.677 * 678 * NOTE: The item is unbound and should therefore never be read on chain.679 * It could otherwise inflate the PoV size of a block.680 * 681 * Events have a large in-memory size. Box the events to not go out-of-memory682 * just in case someone still reads them from within the runtime.683 **/684 events: AugmentedQuery<ApiType, () => Observable<Vec<FrameSystemEventRecord>>, []> & QueryableStorageEntry<ApiType, []>;685 /**686 * Mapping between a topic (represented by T::Hash) and a vector of indexes687 * of events in the `<Events<T>>` list.688 * 689 * All topic vectors have deterministic storage locations depending on the topic. This690 * allows light-clients to leverage the changes trie storage tracking mechanism and691 * in case of changes fetch the list of events of interest.692 * 693 * The value has the type `(T::BlockNumber, EventIndex)` because if we used only just694 * the `EventIndex` then in case if the topic has the same contents on the next block695 * no notification will be triggered thus the event might be lost.696 **/697 eventTopics: AugmentedQuery<ApiType, (arg: H256 | string | Uint8Array) => Observable<Vec<ITuple<[u32, u32]>>>, [H256]> & QueryableStorageEntry<ApiType, [H256]>;698 /**699 * The execution phase of the block.700 **/701 executionPhase: AugmentedQuery<ApiType, () => Observable<Option<FrameSystemPhase>>, []> & QueryableStorageEntry<ApiType, []>;702 /**703 * Total extrinsics count for the current block.704 **/705 extrinsicCount: AugmentedQuery<ApiType, () => Observable<Option<u32>>, []> & QueryableStorageEntry<ApiType, []>;706 /**707 * Extrinsics data for the current block (maps an extrinsic's index to its data).708 **/709 extrinsicData: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Bytes>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;710 /**711 * Stores the `spec_version` and `spec_name` of when the last runtime upgrade happened.712 **/713 lastRuntimeUpgrade: AugmentedQuery<ApiType, () => Observable<Option<FrameSystemLastRuntimeUpgradeInfo>>, []> & QueryableStorageEntry<ApiType, []>;714 /**715 * The current block number being processed. Set by `execute_block`.716 **/717 number: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;718 /**719 * Hash of the previous block.720 **/721 parentHash: AugmentedQuery<ApiType, () => Observable<H256>, []> & QueryableStorageEntry<ApiType, []>;722 /**723 * True if we have upgraded so that AccountInfo contains three types of `RefCount`. False724 * (default) if not.725 **/726 upgradedToTripleRefCount: AugmentedQuery<ApiType, () => Observable<bool>, []> & QueryableStorageEntry<ApiType, []>;727 /**728 * True if we have upgraded so that `type RefCount` is `u32`. False (default) if not.729 **/730 upgradedToU32RefCount: AugmentedQuery<ApiType, () => Observable<bool>, []> & QueryableStorageEntry<ApiType, []>;731 /**732 * Generic query733 **/734 [key: string]: QueryableStorageEntry<ApiType>;735 };736 timestamp: {737 /**738 * Did the timestamp get updated in this block?739 **/740 didUpdate: AugmentedQuery<ApiType, () => Observable<bool>, []> & QueryableStorageEntry<ApiType, []>;741 /**742 * Current time for the current block.743 **/744 now: AugmentedQuery<ApiType, () => Observable<u64>, []> & QueryableStorageEntry<ApiType, []>;745 /**746 * Generic query747 **/748 [key: string]: QueryableStorageEntry<ApiType>;749 };750 transactionPayment: {751 nextFeeMultiplier: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;752 storageVersion: AugmentedQuery<ApiType, () => Observable<PalletTransactionPaymentReleases>, []> & QueryableStorageEntry<ApiType, []>;753 /**754 * Generic query755 **/756 [key: string]: QueryableStorageEntry<ApiType>;757 };758 treasury: {759 /**760 * Proposal indices that have been approved but not yet awarded.761 **/762 approvals: AugmentedQuery<ApiType, () => Observable<Vec<u32>>, []> & QueryableStorageEntry<ApiType, []>;763 /**764 * Number of proposals that have been made.765 **/766 proposalCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;767 /**768 * Proposals that have been made.769 **/770 proposals: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletTreasuryProposal>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;771 /**772 * Generic query773 **/774 [key: string]: QueryableStorageEntry<ApiType>;775 };776 unique: {777 /**778 * Used for migrations779 **/780 chainVersion: AugmentedQuery<ApiType, () => Observable<u64>, []> & QueryableStorageEntry<ApiType, []>;781 /**782 * (Collection id (controlled?2), who created (real))783 * TODO: Off chain worker should remove from this map when collection gets removed784 **/785 createItemBasket: AugmentedQuery<ApiType, (arg: ITuple<[u32, AccountId32]> | [u32 | AnyNumber | Uint8Array, AccountId32 | string | Uint8Array]) => Observable<Option<u32>>, [ITuple<[u32, AccountId32]>]> & QueryableStorageEntry<ApiType, [ITuple<[u32, AccountId32]>]>;786 /**787 * Last sponsoring of fungible tokens approval in a collection788 **/789 fungibleApproveBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array) => Observable<Option<u32>>, [u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, AccountId32]>;790 /**791 * Collection id (controlled?2), owning user (real)792 **/793 fungibleTransferBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array) => Observable<Option<u32>>, [u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, AccountId32]>;794 /**795 * Last sponsoring of NFT approval in a collection796 **/797 nftApproveBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;798 /**799 * Collection id (controlled?2), token id (controlled?2)800 **/801 nftTransferBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;802 /**803 * Last sponsoring of RFT approval in a collection804 **/805 refungibleApproveBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: AccountId32 | string | Uint8Array) => Observable<Option<u32>>, [u32, u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, u32, AccountId32]>;806 /**807 * Collection id (controlled?2), token id (controlled?2)808 **/809 reFungibleTransferBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: AccountId32 | string | Uint8Array) => Observable<Option<u32>>, [u32, u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, u32, AccountId32]>;810 /**811 * Last sponsoring of token property setting // todo:doc rephrase this and the following812 **/813 tokenPropertyBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;814 /**815 * Variable metadata sponsoring816 * Collection id (controlled?2), token id (controlled?2)817 **/818 variableMetaDataBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;819 /**820 * Generic query821 **/822 [key: string]: QueryableStorageEntry<ApiType>;823 };824 vesting: {825 /**826 * Vesting schedules of an account.827 * 828 * VestingSchedules: map AccountId => Vec<VestingSchedule>829 **/830 vestingSchedules: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<OrmlVestingVestingSchedule>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;831 /**832 * Generic query833 **/834 [key: string]: QueryableStorageEntry<ApiType>;835 };836 xcmpQueue: {837 /**838 * Inbound aggregate XCMP messages. It can only be one per ParaId/block.839 **/840 inboundXcmpMessages: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Bytes>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;841 /**842 * Status of the inbound XCMP channels.843 **/844 inboundXcmpStatus: AugmentedQuery<ApiType, () => Observable<Vec<CumulusPalletXcmpQueueInboundChannelDetails>>, []> & QueryableStorageEntry<ApiType, []>;845 /**846 * The messages outbound in a given XCMP channel.847 **/848 outboundXcmpMessages: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u16 | AnyNumber | Uint8Array) => Observable<Bytes>, [u32, u16]> & QueryableStorageEntry<ApiType, [u32, u16]>;849 /**850 * The non-empty XCMP channels in order of becoming non-empty, and the index of the first851 * and last outbound message. If the two indices are equal, then it indicates an empty852 * queue and there must be a non-`Ok` `OutboundStatus`. We assume queues grow no greater853 * than 65535 items. Queue indices for normal messages begin at one; zero is reserved in854 * case of the need to send a high-priority signal message this block.855 * The bool is true if there is a signal message waiting to be sent.856 **/857 outboundXcmpStatus: AugmentedQuery<ApiType, () => Observable<Vec<CumulusPalletXcmpQueueOutboundChannelDetails>>, []> & QueryableStorageEntry<ApiType, []>;858 /**859 * The messages that exceeded max individual message weight budget.860 * 861 * These message stay in this storage map until they are manually dispatched via862 * `service_overweight`.863 **/864 overweight: AugmentedQuery<ApiType, (arg: u64 | AnyNumber | Uint8Array) => Observable<Option<ITuple<[u32, u32, Bytes]>>>, [u64]> & QueryableStorageEntry<ApiType, [u64]>;865 /**866 * The number of overweight messages ever recorded in `Overweight`. Also doubles as the next867 * available free overweight index.868 **/869 overweightCount: AugmentedQuery<ApiType, () => Observable<u64>, []> & QueryableStorageEntry<ApiType, []>;870 /**871 * The configuration which controls the dynamics of the outbound queue.872 **/873 queueConfig: AugmentedQuery<ApiType, () => Observable<CumulusPalletXcmpQueueQueueConfigData>, []> & QueryableStorageEntry<ApiType, []>;874 /**875 * Whether or not the XCMP queue is suspended from executing incoming XCMs or not.876 **/877 queueSuspended: AugmentedQuery<ApiType, () => Observable<bool>, []> & QueryableStorageEntry<ApiType, []>;878 /**879 * Any signal messages waiting to be sent.880 **/881 signalMessages: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Bytes>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;882 /**883 * Generic query884 **/885 [key: string]: QueryableStorageEntry<ApiType>;886 };887 } // AugmentedQueries888} // declare module1// 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/storage';78import type { ApiTypes, AugmentedQuery, QueryableStorageEntry } from '@polkadot/api-base/types';9import type { BTreeMap, Bytes, Option, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';10import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';11import type { AccountId32, H160, H256 } from '@polkadot/types/interfaces/runtime';12import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumLog, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportWeightsPerDispatchClassU64, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletNonfungibleItemData, PalletRefungibleItemData, PalletTransactionPaymentReleases, PalletTreasuryProposal, PalletUniqueSchedulerScheduledV3, PhantomTypeUpDataStructs, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, SpRuntimeDigest, SpTrieStorageProof, UpDataStructsCollection, UpDataStructsCollectionStats, UpDataStructsProperties, UpDataStructsPropertiesMapPropertyPermission, UpDataStructsPropertyPermission, UpDataStructsPropertyScope, UpDataStructsSponsorshipStateBasicCrossAccountIdRepr, UpDataStructsTokenChild } from '@polkadot/types/lookup';13import type { Observable } from '@polkadot/types/types';1415export type __AugmentedQuery<ApiType extends ApiTypes> = AugmentedQuery<ApiType, () => unknown>;16export type __QueryableStorageEntry<ApiType extends ApiTypes> = QueryableStorageEntry<ApiType>;1718declare module '@polkadot/api-base/types/storage' {19 interface AugmentedQueries<ApiType extends ApiTypes> {20 appPromotion: {21 admin: AugmentedQuery<ApiType, () => Observable<Option<AccountId32>>, []> & QueryableStorageEntry<ApiType, []>;22 /**23 * Stores a key for record for which the next revenue recalculation would be performed.24 * If `None`, then recalculation has not yet been performed or calculations have been completed for all stakers.25 **/26 nextCalculatedRecord: AugmentedQuery<ApiType, () => Observable<Option<ITuple<[AccountId32, u32]>>>, []> & QueryableStorageEntry<ApiType, []>;27 pendingUnstake: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Vec<ITuple<[AccountId32, u128]>>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;28 /**29 * Amount of tokens staked by account in the blocknumber.30 **/31 staked: AugmentedQuery<ApiType, (arg1: AccountId32 | string | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<ITuple<[u128, u32]>>, [AccountId32, u32]> & QueryableStorageEntry<ApiType, [AccountId32, u32]>;32 /**33 * Amount of stakes for an Account34 **/35 stakesPerAccount: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<u8>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;36 totalStaked: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;37 /**38 * Generic query39 **/40 [key: string]: QueryableStorageEntry<ApiType>;41 };42 balances: {43 /**44 * The Balances pallet example of storing the balance of an account.45 * 46 * # Example47 * 48 * ```nocompile49 * impl pallet_balances::Config for Runtime {50 * type AccountStore = StorageMapShim<Self::Account<Runtime>, frame_system::Provider<Runtime>, AccountId, Self::AccountData<Balance>>51 * }52 * ```53 * 54 * You can also store the balance of an account in the `System` pallet.55 * 56 * # Example57 * 58 * ```nocompile59 * impl pallet_balances::Config for Runtime {60 * type AccountStore = System61 * }62 * ```63 * 64 * But this comes with tradeoffs, storing account balances in the system pallet stores65 * `frame_system` data alongside the account data contrary to storing account balances in the66 * `Balances` pallet, which uses a `StorageMap` to store balances data only.67 * NOTE: This is only used in the case that this pallet is used to store balances.68 **/69 account: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<PalletBalancesAccountData>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;70 /**71 * Any liquidity locks on some account balances.72 * NOTE: Should only be accessed when setting, changing and freeing a lock.73 **/74 locks: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<PalletBalancesBalanceLock>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;75 /**76 * Named reserves on some account balances.77 **/78 reserves: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<PalletBalancesReserveData>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;79 /**80 * Storage version of the pallet.81 * 82 * This is set to v2.0.0 for new networks.83 **/84 storageVersion: AugmentedQuery<ApiType, () => Observable<PalletBalancesReleases>, []> & QueryableStorageEntry<ApiType, []>;85 /**86 * The total units issued in the system.87 **/88 totalIssuance: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;89 /**90 * Generic query91 **/92 [key: string]: QueryableStorageEntry<ApiType>;93 };94 charging: {95 /**96 * Generic query97 **/98 [key: string]: QueryableStorageEntry<ApiType>;99 };100 common: {101 /**102 * Storage of the amount of collection admins.103 **/104 adminAmount: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;105 /**106 * Allowlisted collection users.107 **/108 allowlist: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;109 /**110 * Storage of collection info.111 **/112 collectionById: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<UpDataStructsCollection>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;113 /**114 * Storage of collection properties.115 **/116 collectionProperties: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<UpDataStructsProperties>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;117 /**118 * Storage of token property permissions of a collection.119 **/120 collectionPropertyPermissions: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<BTreeMap<Bytes, UpDataStructsPropertyPermission>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;121 /**122 * Storage of the count of created collections. Essentially contains the last collection ID.123 **/124 createdCollectionCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;125 /**126 * Storage of the count of deleted collections.127 **/128 destroyedCollectionCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;129 /**130 * Not used by code, exists only to provide some types to metadata.131 **/132 dummyStorageValue: AugmentedQuery<ApiType, () => Observable<Option<ITuple<[UpDataStructsCollectionStats, u32, u32, UpDataStructsTokenChild, PhantomTypeUpDataStructs]>>>, []> & QueryableStorageEntry<ApiType, []>;133 /**134 * List of collection admins.135 **/136 isAdmin: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;137 /**138 * Generic query139 **/140 [key: string]: QueryableStorageEntry<ApiType>;141 };142 configuration: {143 minGasPriceOverride: AugmentedQuery<ApiType, () => Observable<u64>, []> & QueryableStorageEntry<ApiType, []>;144 weightToFeeCoefficientOverride: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;145 /**146 * Generic query147 **/148 [key: string]: QueryableStorageEntry<ApiType>;149 };150 dmpQueue: {151 /**152 * The configuration.153 **/154 configuration: AugmentedQuery<ApiType, () => Observable<CumulusPalletDmpQueueConfigData>, []> & QueryableStorageEntry<ApiType, []>;155 /**156 * The overweight messages.157 **/158 overweight: AugmentedQuery<ApiType, (arg: u64 | AnyNumber | Uint8Array) => Observable<Option<ITuple<[u32, Bytes]>>>, [u64]> & QueryableStorageEntry<ApiType, [u64]>;159 /**160 * The page index.161 **/162 pageIndex: AugmentedQuery<ApiType, () => Observable<CumulusPalletDmpQueuePageIndexData>, []> & QueryableStorageEntry<ApiType, []>;163 /**164 * The queue pages.165 **/166 pages: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Vec<ITuple<[u32, Bytes]>>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;167 /**168 * Generic query169 **/170 [key: string]: QueryableStorageEntry<ApiType>;171 };172 ethereum: {173 blockHash: AugmentedQuery<ApiType, (arg: U256 | AnyNumber | Uint8Array) => Observable<H256>, [U256]> & QueryableStorageEntry<ApiType, [U256]>;174 /**175 * The current Ethereum block.176 **/177 currentBlock: AugmentedQuery<ApiType, () => Observable<Option<EthereumBlock>>, []> & QueryableStorageEntry<ApiType, []>;178 /**179 * The current Ethereum receipts.180 **/181 currentReceipts: AugmentedQuery<ApiType, () => Observable<Option<Vec<EthereumReceiptReceiptV3>>>, []> & QueryableStorageEntry<ApiType, []>;182 /**183 * The current transaction statuses.184 **/185 currentTransactionStatuses: AugmentedQuery<ApiType, () => Observable<Option<Vec<FpRpcTransactionStatus>>>, []> & QueryableStorageEntry<ApiType, []>;186 /**187 * Injected transactions should have unique nonce, here we store current188 **/189 injectedNonce: AugmentedQuery<ApiType, () => Observable<U256>, []> & QueryableStorageEntry<ApiType, []>;190 /**191 * Current building block's transactions and receipts.192 **/193 pending: AugmentedQuery<ApiType, () => Observable<Vec<ITuple<[EthereumTransactionTransactionV2, FpRpcTransactionStatus, EthereumReceiptReceiptV3]>>>, []> & QueryableStorageEntry<ApiType, []>;194 /**195 * Generic query196 **/197 [key: string]: QueryableStorageEntry<ApiType>;198 };199 evm: {200 accountCodes: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<Bytes>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;201 accountStorages: AugmentedQuery<ApiType, (arg1: H160 | string | Uint8Array, arg2: H256 | string | Uint8Array) => Observable<H256>, [H160, H256]> & QueryableStorageEntry<ApiType, [H160, H256]>;202 /**203 * Written on log, reset after transaction204 * Should be empty between transactions205 **/206 currentLogs: AugmentedQuery<ApiType, () => Observable<Vec<EthereumLog>>, []> & QueryableStorageEntry<ApiType, []>;207 /**208 * Generic query209 **/210 [key: string]: QueryableStorageEntry<ApiType>;211 };212 evmCoderSubstrate: {213 /**214 * Generic query215 **/216 [key: string]: QueryableStorageEntry<ApiType>;217 };218 evmContractHelpers: {219 /**220 * Storage for users that allowed for sponsorship.221 * 222 * ### Usage223 * Prefer to delete record from storage if user no more allowed for sponsorship.224 * 225 * * **Key1** - contract address.226 * * **Key2** - user that allowed for sponsorship.227 * * **Value** - allowance for sponsorship.228 **/229 allowlist: AugmentedQuery<ApiType, (arg1: H160 | string | Uint8Array, arg2: H160 | string | Uint8Array) => Observable<bool>, [H160, H160]> & QueryableStorageEntry<ApiType, [H160, H160]>;230 /**231 * Storege for contracts with [`Allowlisted`](SponsoringModeT::Allowlisted) sponsoring mode.232 * 233 * ### Usage234 * Prefer to delete collection from storage if mode chaged to non `Allowlisted`, than set **Value** to **false**.235 * 236 * * **Key** - contract address.237 * * **Value** - is contract in [`Allowlisted`](SponsoringModeT::Allowlisted) mode.238 **/239 allowlistEnabled: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<bool>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;240 /**241 * Store owner for contract.242 * 243 * * **Key** - contract address.244 * * **Value** - owner for contract.245 **/246 owner: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<H160>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;247 selfSponsoring: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<bool>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;248 /**249 * Storage for last sponsored block.250 * 251 * * **Key1** - contract address.252 * * **Key2** - sponsored user address.253 * * **Value** - last sponsored block number.254 **/255 sponsorBasket: AugmentedQuery<ApiType, (arg1: H160 | string | Uint8Array, arg2: H160 | string | Uint8Array) => Observable<Option<u32>>, [H160, H160]> & QueryableStorageEntry<ApiType, [H160, H160]>;256 /**257 * Store for contract sponsorship state.258 * 259 * * **Key** - contract address.260 * * **Value** - sponsorship state.261 **/262 sponsoring: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<UpDataStructsSponsorshipStateBasicCrossAccountIdRepr>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;263 /**264 * Store for sponsoring mode.265 * 266 * ### Usage267 * Prefer to delete collection from storage if mode chaged to [`Disabled`](SponsoringModeT::Disabled).268 * 269 * * **Key** - contract address.270 * * **Value** - [`sponsoring mode`](SponsoringModeT).271 **/272 sponsoringMode: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<Option<PalletEvmContractHelpersSponsoringModeT>>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;273 /**274 * Storage for sponsoring rate limit in blocks.275 * 276 * * **Key** - contract address.277 * * **Value** - amount of sponsored blocks.278 **/279 sponsoringRateLimit: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<u32>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;280 /**281 * Generic query282 **/283 [key: string]: QueryableStorageEntry<ApiType>;284 };285 evmMigration: {286 migrationPending: AugmentedQuery<ApiType, (arg: H160 | string | Uint8Array) => Observable<bool>, [H160]> & QueryableStorageEntry<ApiType, [H160]>;287 /**288 * Generic query289 **/290 [key: string]: QueryableStorageEntry<ApiType>;291 };292 fungible: {293 /**294 * Storage for assets delegated to a limited extent to other users.295 **/296 allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]>;297 /**298 * Amount of tokens owned by an account inside a collection.299 **/300 balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;301 /**302 * Total amount of fungible tokens inside a collection.303 **/304 totalSupply: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u128>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;305 /**306 * Generic query307 **/308 [key: string]: QueryableStorageEntry<ApiType>;309 };310 inflation: {311 /**312 * Current inflation for `InflationBlockInterval` number of blocks313 **/314 blockInflation: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;315 /**316 * Next target (relay) block when inflation will be applied317 **/318 nextInflationBlock: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;319 /**320 * Next target (relay) block when inflation is recalculated321 **/322 nextRecalculationBlock: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;323 /**324 * Relay block when inflation has started325 **/326 startBlock: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;327 /**328 * starting year total issuance329 **/330 startingYearTotalIssuance: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;331 /**332 * Generic query333 **/334 [key: string]: QueryableStorageEntry<ApiType>;335 };336 nonfungible: {337 /**338 * Amount of tokens owned by an account in a collection.339 **/340 accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;341 /**342 * Allowance set by a token owner for another user to perform one of certain transactions on a token.343 **/344 allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletEvmAccountBasicCrossAccountIdRepr>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;345 /**346 * Used to enumerate tokens owned by account.347 **/348 owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]>;349 /**350 * Custom data of a token that is serialized to bytes,351 * primarily reserved for on-chain operations,352 * normally obscured from the external users.353 * 354 * Auxiliary properties are slightly different from355 * usual [`TokenProperties`] due to an unlimited number356 * and separately stored and written-to key-value pairs.357 * 358 * Currently used to store RMRK data.359 **/360 tokenAuxProperties: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: UpDataStructsPropertyScope | 'None' | 'Rmrk' | number | Uint8Array, arg4: Bytes | string | Uint8Array) => Observable<Option<Bytes>>, [u32, u32, UpDataStructsPropertyScope, Bytes]> & QueryableStorageEntry<ApiType, [u32, u32, UpDataStructsPropertyScope, Bytes]>;361 /**362 * Used to enumerate token's children.363 **/364 tokenChildren: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array]) => Observable<bool>, [u32, u32, ITuple<[u32, u32]>]> & QueryableStorageEntry<ApiType, [u32, u32, ITuple<[u32, u32]>]>;365 /**366 * Token data, used to partially describe a token.367 **/368 tokenData: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletNonfungibleItemData>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;369 /**370 * Map of key-value pairs, describing the metadata of a token.371 **/372 tokenProperties: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<UpDataStructsProperties>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;373 /**374 * Amount of burnt tokens in a collection.375 **/376 tokensBurnt: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;377 /**378 * Total amount of minted tokens in a collection.379 **/380 tokensMinted: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;381 /**382 * Generic query383 **/384 [key: string]: QueryableStorageEntry<ApiType>;385 };386 parachainInfo: {387 parachainId: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;388 /**389 * Generic query390 **/391 [key: string]: QueryableStorageEntry<ApiType>;392 };393 parachainSystem: {394 /**395 * The number of HRMP messages we observed in `on_initialize` and thus used that number for396 * announcing the weight of `on_initialize` and `on_finalize`.397 **/398 announcedHrmpMessagesPerCandidate: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;399 /**400 * The next authorized upgrade, if there is one.401 **/402 authorizedUpgrade: AugmentedQuery<ApiType, () => Observable<Option<H256>>, []> & QueryableStorageEntry<ApiType, []>;403 /**404 * A custom head data that should be returned as result of `validate_block`.405 * 406 * See [`Pallet::set_custom_validation_head_data`] for more information.407 **/408 customValidationHeadData: AugmentedQuery<ApiType, () => Observable<Option<Bytes>>, []> & QueryableStorageEntry<ApiType, []>;409 /**410 * Were the validation data set to notify the relay chain?411 **/412 didSetValidationCode: AugmentedQuery<ApiType, () => Observable<bool>, []> & QueryableStorageEntry<ApiType, []>;413 /**414 * The parachain host configuration that was obtained from the relay parent.415 * 416 * This field is meant to be updated each block with the validation data inherent. Therefore,417 * before processing of the inherent, e.g. in `on_initialize` this data may be stale.418 * 419 * This data is also absent from the genesis.420 **/421 hostConfiguration: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV2AbridgedHostConfiguration>>, []> & QueryableStorageEntry<ApiType, []>;422 /**423 * HRMP messages that were sent in a block.424 * 425 * This will be cleared in `on_initialize` of each new block.426 **/427 hrmpOutboundMessages: AugmentedQuery<ApiType, () => Observable<Vec<PolkadotCorePrimitivesOutboundHrmpMessage>>, []> & QueryableStorageEntry<ApiType, []>;428 /**429 * HRMP watermark that was set in a block.430 * 431 * This will be cleared in `on_initialize` of each new block.432 **/433 hrmpWatermark: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;434 /**435 * The last downward message queue chain head we have observed.436 * 437 * This value is loaded before and saved after processing inbound downward messages carried438 * by the system inherent.439 **/440 lastDmqMqcHead: AugmentedQuery<ApiType, () => Observable<H256>, []> & QueryableStorageEntry<ApiType, []>;441 /**442 * The message queue chain heads we have observed per each channel incoming channel.443 * 444 * This value is loaded before and saved after processing inbound downward messages carried445 * by the system inherent.446 **/447 lastHrmpMqcHeads: AugmentedQuery<ApiType, () => Observable<BTreeMap<u32, H256>>, []> & QueryableStorageEntry<ApiType, []>;448 /**449 * The relay chain block number associated with the last parachain block.450 **/451 lastRelayChainBlockNumber: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;452 /**453 * Validation code that is set by the parachain and is to be communicated to collator and454 * consequently the relay-chain.455 * 456 * This will be cleared in `on_initialize` of each new block if no other pallet already set457 * the value.458 **/459 newValidationCode: AugmentedQuery<ApiType, () => Observable<Option<Bytes>>, []> & QueryableStorageEntry<ApiType, []>;460 /**461 * Upward messages that are still pending and not yet send to the relay chain.462 **/463 pendingUpwardMessages: AugmentedQuery<ApiType, () => Observable<Vec<Bytes>>, []> & QueryableStorageEntry<ApiType, []>;464 /**465 * In case of a scheduled upgrade, this storage field contains the validation code to be applied.466 * 467 * As soon as the relay chain gives us the go-ahead signal, we will overwrite the [`:code`][well_known_keys::CODE]468 * which will result the next block process with the new validation code. This concludes the upgrade process.469 * 470 * [well_known_keys::CODE]: sp_core::storage::well_known_keys::CODE471 **/472 pendingValidationCode: AugmentedQuery<ApiType, () => Observable<Bytes>, []> & QueryableStorageEntry<ApiType, []>;473 /**474 * Number of downward messages processed in a block.475 * 476 * This will be cleared in `on_initialize` of each new block.477 **/478 processedDownwardMessages: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;479 /**480 * The state proof for the last relay parent block.481 * 482 * This field is meant to be updated each block with the validation data inherent. Therefore,483 * before processing of the inherent, e.g. in `on_initialize` this data may be stale.484 * 485 * This data is also absent from the genesis.486 **/487 relayStateProof: AugmentedQuery<ApiType, () => Observable<Option<SpTrieStorageProof>>, []> & QueryableStorageEntry<ApiType, []>;488 /**489 * The snapshot of some state related to messaging relevant to the current parachain as per490 * the relay parent.491 * 492 * This field is meant to be updated each block with the validation data inherent. Therefore,493 * before processing of the inherent, e.g. in `on_initialize` this data may be stale.494 * 495 * This data is also absent from the genesis.496 **/497 relevantMessagingState: AugmentedQuery<ApiType, () => Observable<Option<CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot>>, []> & QueryableStorageEntry<ApiType, []>;498 /**499 * The weight we reserve at the beginning of the block for processing DMP messages. This500 * overrides the amount set in the Config trait.501 **/502 reservedDmpWeightOverride: AugmentedQuery<ApiType, () => Observable<Option<u64>>, []> & QueryableStorageEntry<ApiType, []>;503 /**504 * The weight we reserve at the beginning of the block for processing XCMP messages. This505 * overrides the amount set in the Config trait.506 **/507 reservedXcmpWeightOverride: AugmentedQuery<ApiType, () => Observable<Option<u64>>, []> & QueryableStorageEntry<ApiType, []>;508 /**509 * An option which indicates if the relay-chain restricts signalling a validation code upgrade.510 * In other words, if this is `Some` and [`NewValidationCode`] is `Some` then the produced511 * candidate will be invalid.512 * 513 * This storage item is a mirror of the corresponding value for the current parachain from the514 * relay-chain. This value is ephemeral which means it doesn't hit the storage. This value is515 * set after the inherent.516 **/517 upgradeRestrictionSignal: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV2UpgradeRestriction>>, []> & QueryableStorageEntry<ApiType, []>;518 /**519 * Upward messages that were sent in a block.520 * 521 * This will be cleared in `on_initialize` of each new block.522 **/523 upwardMessages: AugmentedQuery<ApiType, () => Observable<Vec<Bytes>>, []> & QueryableStorageEntry<ApiType, []>;524 /**525 * The [`PersistedValidationData`] set for this block.526 * This value is expected to be set only once per block and it's never stored527 * in the trie.528 **/529 validationData: AugmentedQuery<ApiType, () => Observable<Option<PolkadotPrimitivesV2PersistedValidationData>>, []> & QueryableStorageEntry<ApiType, []>;530 /**531 * Generic query532 **/533 [key: string]: QueryableStorageEntry<ApiType>;534 };535 randomnessCollectiveFlip: {536 /**537 * Series of block headers from the last 81 blocks that acts as random seed material. This538 * is arranged as a ring buffer with `block_number % 81` being the index into the `Vec` of539 * the oldest hash.540 **/541 randomMaterial: AugmentedQuery<ApiType, () => Observable<Vec<H256>>, []> & QueryableStorageEntry<ApiType, []>;542 /**543 * Generic query544 **/545 [key: string]: QueryableStorageEntry<ApiType>;546 };547 refungible: {548 /**549 * Amount of tokens (not pieces) partially owned by an account within a collection.550 **/551 accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;552 /**553 * Allowance set by a token owner for another user to perform one of certain transactions on a number of pieces of a token.554 **/555 allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg4: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]>;556 /**557 * Amount of token pieces owned by account.558 **/559 balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr]>;560 /**561 * Used to enumerate tokens owned by account.562 **/563 owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]>;564 /**565 * Token data, used to partially describe a token.566 **/567 tokenData: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<PalletRefungibleItemData>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;568 /**569 * Amount of pieces a refungible token is split into.570 **/571 tokenProperties: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<UpDataStructsProperties>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;572 /**573 * Amount of tokens burnt in a collection.574 **/575 tokensBurnt: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;576 /**577 * Total amount of minted tokens in a collection.578 **/579 tokensMinted: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;580 /**581 * Total amount of pieces for token582 **/583 totalSupply: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<u128>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;584 /**585 * Generic query586 **/587 [key: string]: QueryableStorageEntry<ApiType>;588 };589 rmrkCore: {590 /**591 * Latest yet-unused collection ID.592 **/593 collectionIndex: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;594 /**595 * Mapping from RMRK collection ID to Unique's.596 **/597 uniqueCollectionId: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;598 /**599 * Generic query600 **/601 [key: string]: QueryableStorageEntry<ApiType>;602 };603 rmrkEquip: {604 /**605 * Checkmark that a Base has a Theme NFT named "default".606 **/607 baseHasDefaultTheme: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;608 /**609 * Map of a Base ID and a Part ID to an NFT in the Base collection serving as the Part.610 **/611 inernalPartId: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;612 /**613 * Generic query614 **/615 [key: string]: QueryableStorageEntry<ApiType>;616 };617 scheduler: {618 /**619 * Items to be executed, indexed by the block number that they should be executed on.620 **/621 agenda: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Vec<Option<PalletUniqueSchedulerScheduledV3>>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;622 /**623 * Lookup from identity to the block number and index of the task.624 **/625 lookup: AugmentedQuery<ApiType, (arg: U8aFixed | string | Uint8Array) => Observable<Option<ITuple<[u32, u32]>>>, [U8aFixed]> & QueryableStorageEntry<ApiType, [U8aFixed]>;626 /**627 * Generic query628 **/629 [key: string]: QueryableStorageEntry<ApiType>;630 };631 structure: {632 /**633 * Generic query634 **/635 [key: string]: QueryableStorageEntry<ApiType>;636 };637 sudo: {638 /**639 * The `AccountId` of the sudo key.640 **/641 key: AugmentedQuery<ApiType, () => Observable<Option<AccountId32>>, []> & QueryableStorageEntry<ApiType, []>;642 /**643 * Generic query644 **/645 [key: string]: QueryableStorageEntry<ApiType>;646 };647 system: {648 /**649 * The full account information for a particular account ID.650 **/651 account: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<FrameSystemAccountInfo>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;652 /**653 * Total length (in bytes) for all extrinsics put together, for the current block.654 **/655 allExtrinsicsLen: AugmentedQuery<ApiType, () => Observable<Option<u32>>, []> & QueryableStorageEntry<ApiType, []>;656 /**657 * Map of block numbers to block hashes.658 **/659 blockHash: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<H256>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;660 /**661 * The current weight for the block.662 **/663 blockWeight: AugmentedQuery<ApiType, () => Observable<FrameSupportWeightsPerDispatchClassU64>, []> & QueryableStorageEntry<ApiType, []>;664 /**665 * Digest of the current block, also part of the block header.666 **/667 digest: AugmentedQuery<ApiType, () => Observable<SpRuntimeDigest>, []> & QueryableStorageEntry<ApiType, []>;668 /**669 * The number of events in the `Events<T>` list.670 **/671 eventCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;672 /**673 * Events deposited for the current block.674 * 675 * NOTE: The item is unbound and should therefore never be read on chain.676 * It could otherwise inflate the PoV size of a block.677 * 678 * Events have a large in-memory size. Box the events to not go out-of-memory679 * just in case someone still reads them from within the runtime.680 **/681 events: AugmentedQuery<ApiType, () => Observable<Vec<FrameSystemEventRecord>>, []> & QueryableStorageEntry<ApiType, []>;682 /**683 * Mapping between a topic (represented by T::Hash) and a vector of indexes684 * of events in the `<Events<T>>` list.685 * 686 * All topic vectors have deterministic storage locations depending on the topic. This687 * allows light-clients to leverage the changes trie storage tracking mechanism and688 * in case of changes fetch the list of events of interest.689 * 690 * The value has the type `(T::BlockNumber, EventIndex)` because if we used only just691 * the `EventIndex` then in case if the topic has the same contents on the next block692 * no notification will be triggered thus the event might be lost.693 **/694 eventTopics: AugmentedQuery<ApiType, (arg: H256 | string | Uint8Array) => Observable<Vec<ITuple<[u32, u32]>>>, [H256]> & QueryableStorageEntry<ApiType, [H256]>;695 /**696 * The execution phase of the block.697 **/698 executionPhase: AugmentedQuery<ApiType, () => Observable<Option<FrameSystemPhase>>, []> & QueryableStorageEntry<ApiType, []>;699 /**700 * Total extrinsics count for the current block.701 **/702 extrinsicCount: AugmentedQuery<ApiType, () => Observable<Option<u32>>, []> & QueryableStorageEntry<ApiType, []>;703 /**704 * Extrinsics data for the current block (maps an extrinsic's index to its data).705 **/706 extrinsicData: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Bytes>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;707 /**708 * Stores the `spec_version` and `spec_name` of when the last runtime upgrade happened.709 **/710 lastRuntimeUpgrade: AugmentedQuery<ApiType, () => Observable<Option<FrameSystemLastRuntimeUpgradeInfo>>, []> & QueryableStorageEntry<ApiType, []>;711 /**712 * The current block number being processed. Set by `execute_block`.713 **/714 number: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;715 /**716 * Hash of the previous block.717 **/718 parentHash: AugmentedQuery<ApiType, () => Observable<H256>, []> & QueryableStorageEntry<ApiType, []>;719 /**720 * True if we have upgraded so that AccountInfo contains three types of `RefCount`. False721 * (default) if not.722 **/723 upgradedToTripleRefCount: AugmentedQuery<ApiType, () => Observable<bool>, []> & QueryableStorageEntry<ApiType, []>;724 /**725 * True if we have upgraded so that `type RefCount` is `u32`. False (default) if not.726 **/727 upgradedToU32RefCount: AugmentedQuery<ApiType, () => Observable<bool>, []> & QueryableStorageEntry<ApiType, []>;728 /**729 * Generic query730 **/731 [key: string]: QueryableStorageEntry<ApiType>;732 };733 timestamp: {734 /**735 * Did the timestamp get updated in this block?736 **/737 didUpdate: AugmentedQuery<ApiType, () => Observable<bool>, []> & QueryableStorageEntry<ApiType, []>;738 /**739 * Current time for the current block.740 **/741 now: AugmentedQuery<ApiType, () => Observable<u64>, []> & QueryableStorageEntry<ApiType, []>;742 /**743 * Generic query744 **/745 [key: string]: QueryableStorageEntry<ApiType>;746 };747 transactionPayment: {748 nextFeeMultiplier: AugmentedQuery<ApiType, () => Observable<u128>, []> & QueryableStorageEntry<ApiType, []>;749 storageVersion: AugmentedQuery<ApiType, () => Observable<PalletTransactionPaymentReleases>, []> & QueryableStorageEntry<ApiType, []>;750 /**751 * Generic query752 **/753 [key: string]: QueryableStorageEntry<ApiType>;754 };755 treasury: {756 /**757 * Proposal indices that have been approved but not yet awarded.758 **/759 approvals: AugmentedQuery<ApiType, () => Observable<Vec<u32>>, []> & QueryableStorageEntry<ApiType, []>;760 /**761 * Number of proposals that have been made.762 **/763 proposalCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;764 /**765 * Proposals that have been made.766 **/767 proposals: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletTreasuryProposal>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;768 /**769 * Generic query770 **/771 [key: string]: QueryableStorageEntry<ApiType>;772 };773 unique: {774 /**775 * Used for migrations776 **/777 chainVersion: AugmentedQuery<ApiType, () => Observable<u64>, []> & QueryableStorageEntry<ApiType, []>;778 /**779 * (Collection id (controlled?2), who created (real))780 * TODO: Off chain worker should remove from this map when collection gets removed781 **/782 createItemBasket: AugmentedQuery<ApiType, (arg: ITuple<[u32, AccountId32]> | [u32 | AnyNumber | Uint8Array, AccountId32 | string | Uint8Array]) => Observable<Option<u32>>, [ITuple<[u32, AccountId32]>]> & QueryableStorageEntry<ApiType, [ITuple<[u32, AccountId32]>]>;783 /**784 * Last sponsoring of fungible tokens approval in a collection785 **/786 fungibleApproveBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array) => Observable<Option<u32>>, [u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, AccountId32]>;787 /**788 * Collection id (controlled?2), owning user (real)789 **/790 fungibleTransferBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: AccountId32 | string | Uint8Array) => Observable<Option<u32>>, [u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, AccountId32]>;791 /**792 * Last sponsoring of NFT approval in a collection793 **/794 nftApproveBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;795 /**796 * Collection id (controlled?2), token id (controlled?2)797 **/798 nftTransferBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;799 /**800 * Last sponsoring of RFT approval in a collection801 **/802 refungibleApproveBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: AccountId32 | string | Uint8Array) => Observable<Option<u32>>, [u32, u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, u32, AccountId32]>;803 /**804 * Collection id (controlled?2), token id (controlled?2)805 **/806 reFungibleTransferBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: AccountId32 | string | Uint8Array) => Observable<Option<u32>>, [u32, u32, AccountId32]> & QueryableStorageEntry<ApiType, [u32, u32, AccountId32]>;807 /**808 * Last sponsoring of token property setting // todo:doc rephrase this and the following809 **/810 tokenPropertyBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;811 /**812 * Variable metadata sponsoring813 * Collection id (controlled?2), token id (controlled?2)814 **/815 variableMetaDataBasket: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<u32>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;816 /**817 * Generic query818 **/819 [key: string]: QueryableStorageEntry<ApiType>;820 };821 vesting: {822 /**823 * Vesting schedules of an account.824 * 825 * VestingSchedules: map AccountId => Vec<VestingSchedule>826 **/827 vestingSchedules: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Vec<OrmlVestingVestingSchedule>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;828 /**829 * Generic query830 **/831 [key: string]: QueryableStorageEntry<ApiType>;832 };833 xcmpQueue: {834 /**835 * Inbound aggregate XCMP messages. It can only be one per ParaId/block.836 **/837 inboundXcmpMessages: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Bytes>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;838 /**839 * Status of the inbound XCMP channels.840 **/841 inboundXcmpStatus: AugmentedQuery<ApiType, () => Observable<Vec<CumulusPalletXcmpQueueInboundChannelDetails>>, []> & QueryableStorageEntry<ApiType, []>;842 /**843 * The messages outbound in a given XCMP channel.844 **/845 outboundXcmpMessages: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u16 | AnyNumber | Uint8Array) => Observable<Bytes>, [u32, u16]> & QueryableStorageEntry<ApiType, [u32, u16]>;846 /**847 * The non-empty XCMP channels in order of becoming non-empty, and the index of the first848 * and last outbound message. If the two indices are equal, then it indicates an empty849 * queue and there must be a non-`Ok` `OutboundStatus`. We assume queues grow no greater850 * than 65535 items. Queue indices for normal messages begin at one; zero is reserved in851 * case of the need to send a high-priority signal message this block.852 * The bool is true if there is a signal message waiting to be sent.853 **/854 outboundXcmpStatus: AugmentedQuery<ApiType, () => Observable<Vec<CumulusPalletXcmpQueueOutboundChannelDetails>>, []> & QueryableStorageEntry<ApiType, []>;855 /**856 * The messages that exceeded max individual message weight budget.857 * 858 * These message stay in this storage map until they are manually dispatched via859 * `service_overweight`.860 **/861 overweight: AugmentedQuery<ApiType, (arg: u64 | AnyNumber | Uint8Array) => Observable<Option<ITuple<[u32, u32, Bytes]>>>, [u64]> & QueryableStorageEntry<ApiType, [u64]>;862 /**863 * The number of overweight messages ever recorded in `Overweight`. Also doubles as the next864 * available free overweight index.865 **/866 overweightCount: AugmentedQuery<ApiType, () => Observable<u64>, []> & QueryableStorageEntry<ApiType, []>;867 /**868 * The configuration which controls the dynamics of the outbound queue.869 **/870 queueConfig: AugmentedQuery<ApiType, () => Observable<CumulusPalletXcmpQueueQueueConfigData>, []> & QueryableStorageEntry<ApiType, []>;871 /**872 * Whether or not the XCMP queue is suspended from executing incoming XCMs or not.873 **/874 queueSuspended: AugmentedQuery<ApiType, () => Observable<bool>, []> & QueryableStorageEntry<ApiType, []>;875 /**876 * Any signal messages waiting to be sent.877 **/878 signalMessages: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Bytes>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;879 /**880 * Generic query881 **/882 [key: string]: QueryableStorageEntry<ApiType>;883 };884 } // AugmentedQueries885} // declare moduletests/src/interfaces/default/types.tsdiffbeforeafterboth--- a/tests/src/interfaces/default/types.ts
+++ b/tests/src/interfaces/default/types.ts
@@ -846,8 +846,9 @@
readonly isNoPermission: boolean;
readonly isNotSufficientFunds: boolean;
readonly isPendingForBlockOverflow: boolean;
- readonly isInvalidArgument: boolean;
- readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'InvalidArgument';
+ readonly isSponsorNotSet: boolean;
+ readonly isIncorrectLockedBalanceOperation: boolean;
+ readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'SponsorNotSet' | 'IncorrectLockedBalanceOperation';
}
/** @name PalletAppPromotionEvent */
tests/src/interfaces/lookup.tsdiffbeforeafterboth--- a/tests/src/interfaces/lookup.ts
+++ b/tests/src/interfaces/lookup.ts
@@ -3115,7 +3115,7 @@
* Lookup416: pallet_app_promotion::pallet::Error<T>
**/
PalletAppPromotionError: {
- _enum: ['AdminNotSet', 'NoPermission', 'NotSufficientFunds', 'PendingForBlockOverflow', 'InvalidArgument']
+ _enum: ['AdminNotSet', 'NoPermission', 'NotSufficientFunds', 'PendingForBlockOverflow', 'SponsorNotSet', 'IncorrectLockedBalanceOperation']
},
/**
* Lookup419: pallet_evm::pallet::Error<T>
tests/src/interfaces/types-lookup.tsdiffbeforeafterboth--- a/tests/src/interfaces/types-lookup.ts
+++ b/tests/src/interfaces/types-lookup.ts
@@ -3309,8 +3309,9 @@
readonly isNoPermission: boolean;
readonly isNotSufficientFunds: boolean;
readonly isPendingForBlockOverflow: boolean;
- readonly isInvalidArgument: boolean;
- readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'InvalidArgument';
+ readonly isSponsorNotSet: boolean;
+ readonly isIncorrectLockedBalanceOperation: boolean;
+ readonly type: 'AdminNotSet' | 'NoPermission' | 'NotSufficientFunds' | 'PendingForBlockOverflow' | 'SponsorNotSet' | 'IncorrectLockedBalanceOperation';
}
/** @name PalletEvmError (419) */